導航:首頁 > 編程語言 > php銀聯支付介面申請

php銀聯支付介面申請

發布時間:2023-03-07 19:41:53

A. php怎麼做銀聯的支付介面調用

PHP做銀聯支付介面調用問題
//在工商支付介面之前要找到工行提供的介面文件級dll文件
//將訂單簽名數據公鑰加密提供給工行指定頁面
//組織要簽名的數據串
$src="ICBC_PERBANK_B2C1.0.0.0".$infomer["merid"].$infomer["meracct"].$returnaddress."HS".$ddnumber.$amount."0010".$nowtime."0";
$com=new com('ICBCEBANKUTIL.B2CUtil');
$rc=$com->init("c:\WINDOWS\user.crt","c:\WINDOWS\user.crt","c:\WINDOWS\user.key","11111111");
$ssrc=$com->signC($src, strlen($src)); //訂單簽名數據
$rc=$com->verifySignC($src,strlen($src), $ssrc, strlen($ssrc));
$cert=$com->getCert(1); //商城證書公鑰
//將商戶證書存儲到c:\WINDOWS目錄下,然後創建form表單,將指定的數據提交到工行指定的網頁中
<!--支付寶支付的介面操作,提交的數據-->
<td width="100"><a href="<{$link}>"><img src="images/sy_19.gif" width="90" height="25" border="0"></a></td>
<!--——————————————————-->
<!--工行支付的介面操作,提交的數據-->
<form action="https://mybank.icbc.com.cn/" method="post" name="form_bank">
<input name="interfaceName" type="hidden" value="ICBC_PERBANK_B2C"/>
<input name="interfaceVersion" type="hidden" value="1.0.0.0"/>
<input name="orderid" type="hidden" value="<{$ddnumber}>"/>
<input name="amount" type="hidden" value="<{$amount}>"/>
<input name="curType" type="hidden" value="001"/>
<input name="merID" type="hidden" value="<{$merid}>"/>
<input name="merAcct" type="hidden" value="<{$meracct}>"/>
<input name="verifyJoinFlag" type="hidden" value="0"/>
<input name="notifyType" type="hidden" value="HS"/>
<input name="merURL" type="hidden" value="<{$returnaddress}>"/>
<input name="resultType" type="hidden" value="0"/>
<input name="orderDate" type="hidden" value="<{$nowtime}>"/>
<input name="merSignMsg" type="hidden" value="<{$ssrc}>" />
<input name="merCert" type="hidden" value="<{$cert}>" />
</form>

B. 中國銀聯在線支付介面php開發怎麼做

可以參照第三方支付介面方法:

  1. 用戶下單,收集購物車內產品的總價。

  2. 拼裝支付參數URL跳轉進入支付網關進行支付(這里會用到支付網關提供的SDK)。

  3. 支付成功。

  4. 支付網關伺服器會非同步發送支付成功的通知到你的「通知URL」,你對過來的參數進行有效性驗證,確保是從支付網關發來的,進行業務邏輯處理,比如設置訂單完成標識等操作。

    注意這不是「返回URL」,這一步操作前台支付用戶不會看到。

  5. 網關一般在完成支付後,會自動返回網站,進入網站後提示用戶完成支付,並跳轉到相應頁面即可。

  6. PHP是將程序嵌入到HTML(標准通用標記語言下的一個應用)文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;PHP還可以執行編譯後代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。

C. php網站怎麼整合銀聯網上支付

大概分幾步,
1,你自己的網站把要交易的數據post給銀聯,
2,銀聯處理你post過來的數據,然後用戶輸入一些賬號信息,付款。
3,付款後,銀聯會post交易後的數據給你的網站,(這個地址會在開始你傳給銀聯的的數據裡面)
4,你接受銀聯傳輸回來的數據,自己處理!
注意的是,回調地址有個後台的,還有個前台的,不要搞混亂了!

D. 親,php銀聯在線支付,沒做過,請求幫助

支付介面現在有第三方的支付介面也有銀行的支付介面。這里就來介紹php版本銀聯支付介面開發的方法。

銀聯支付,首先要注意二重要的部分:

PHP運行環境是5.4.18以上

開了擴展openssl

開發手冊上面的列子只做參考,因為基本都是錯的。你可以試著去官網下一個demo。。。注意現在銀聯開發,沒有測試密鑰提供,只能在正式環境開發

下面是我用ThinkPHP編寫的一個支付類

/**
*銀聯支付v0.1
*@auther:Summer<[email protected]>;
*@date:20151202
***/
{
//在類初始化方法中,引入相關類庫
publicfunction_initialize(){
header("Content-type:text/html;charset=utf-8");
vendor('Netpay.util.common',"",".php");//導入加密核心文件夾
vendor('Netpay.util.SecssUtil',"",".class.php");//導入加密核心文件夾
vendor('Netpay.util.Settings_INI',"",".php");//導入加密核心文件夾
vendor('Netpay.util.Settings',"",".php");//導入加密核心文件夾
$this->securityPropFile=$_SERVER['DOCUMENT_ROOT']."/ThinkPHP/Extend/Vendor/Netpay/config/security.properties";//誰知道這是啥,反正他們要我加的
$this->b2cPaySend=__APP__."/Index/NetPay/b2cPaySend";
$this->b2cRefundSend=__APP__."/Index/NetPay/b2cRefundSend";
$this->b2cQuerySend=__APP__."/Index/NetPay/b2cQuerySend";
$this->;MerBgUrl=__APP__."/Index/NetPay/MerBgUrl";
$this->MerPageUrl=__APP__."/Index/NetPay/MerPageUrl";
}
publicfunctionindex()
{
$paramArray=array(
'MerId'=>'商戶號',
'MerOrderNo'=>'0000001944663232',
'OrderAmt'=>'1',
'TranDate'=>'20151219',
'TranTime'=>'171248',
'TranType'=>'0001',
'BusiType'=>'0001',
'Version'=>'20140728',
'CurryNo'=>'CNY',
'AccessType'=>;'0',
'CommodityMsg'=>'測試商品1號',
'MerPageUrl'=>$this->MerBgUrl,
'MerBgUrl'=>$this->MerPageUrl,
'MerResv'=>'MerResv',
);
if(count($paramArray)>0){
$dispatchUrl=$this->b2cPaySend;
$transResvedJson=array();
$cardInfoJson=array();
$sendMap=array();
foreach($paramArrayas$key=>$value){
if(isEmpty($value)){
continue;
}
if(startWith($key,"trans_")){
$key=substr($key,strlen("trans_"));
$transResvedJson[$key]=$value;
}else
if(startWith($key,"card_")){
$key=substr($key,strlen("card_"));
$cardInfoJson[$key]=$value;
}else{
$sendMap[$key]=$value;
}
}
$transResvedStr=null;
$cardResvedStr=null;
if(count($transResvedJson)>0){
$transResvedStr=json_encode($transResvedJson);
}
if(count($cardInfoJson)>0){
$cardResvedStr=json_encode($cardInfoJson);
}
$secssUtil=newSecssUtil();
if(!isEmpty($transResvedStr)){
$transResvedStr=$secssUtil->decryptData($transResvedStr);
$sendMap["TranReserved"]=$transResvedStr;
}
if(!isEmpty($cardResvedStr)){
$cardResvedStr=$secssUtil->decryptData($cardResvedStr);
$sendMap["card_"]=$cardResvedStr;
}
$securityPropFile=$this>securityPropFile;
$secssUtil->init($securityPropFile);
$secssUtil->sign($sendMap);
$sendMap["Signature"]=$secssUtil->getSign();
$_SESSION=$sendMap;
header("Location:".$dispatchUrl);
}
}
publicfunctionb2cPaySend(){
layout(false);
$settings=newSettings_INI();
$settings->oad($this->securityPropFile);
$pay_url="https://payment.chinapay.com/CTITS/service/rest/page/nref/000000000017/0/0/0/0/0";
$html="<formname='payment'action='{$pay_url}'method='POST'target='_blank'>;";
$params="TranReserved;MerId;MerOrderNo;OrderAmt;CurryNo;TranDate;SplitMethod;BusiType;MerPageUrl;MerBgUrl;SplitType;MerSplitMsg;PayTimeOut;MerResv;Version;BankInstNo;CommodityMsg;Signature;AccessType;AcqCode;OrderExpiryTime;TranType;RemoteAddr;Referred;TranTime;TimeStamp;CardTranData";
foreach($_SESSIONas$k=>$v){
if(strstr($params,$k)){
$html.="<inputtype='hidden'name='".$k."'value='".$v."'/>";
}
}
$html.="<nputtype='button'type='hidden'value='提交訂單'>";
$html.="<;/from>";
$this->html=$html;
$this->display();
}
publicfunctionpgReturn(){
if($_POST){
if(count($_POST)>0){
$secssUtil=newSecssUtil();
$securityPropFile=$this>securityPropFile;
$secssUtil->init($securityPropFile);
$text=array();
foreach($_POSTas$key=>$value){
$text[$key]=urldecode($value);
}
if($secssUtil->verify($text)){
//支付成功
$_SESSION["VERIFY_KEY"]="success";
}else{
//支付失敗
$_SESSION["VERIFY_KEY"]="fail";
}
}
}
}
}

銀聯支付應該是算比較簡單的!!

E. 怎麼申請銀聯在線支付介面

1、五證齊全:營業執照、稅務登記證(國地稅兩證)、組織機構代碼證、銀行開戶許可證。

2、ICP備案:公司網站進行ICP備案。這個應該不是問題。上面兩項通過之後基本上銀行會和公司來進行協議蓋章了,也算是合同,就說明已經生效了。

3、簽訂完合同蓋完章後基本上就會給商戶下發介面文件,介面文件有多種語言,asp,java,.net等根據自己網站語言需要來索要即可。

4、測試開通可以找相關介面開發人員及進行介面整合對接到公司網站上面即可進行交易了。

(5)php銀聯支付介面申請擴展閱讀

異常應答說明

1、不返回報文體的情況:

版本號,交易類型、子類,簽名方法,簽名值等關鍵域未上送,返回「Invalid request.」; 交易類型和請求地址校驗有誤,返回「Invalid request URI.」

2、返回全部的請求報文,附加應答碼和應答描述(包括的應答碼有:01、02、03、10、11、32):

驗證簽名失敗;

報文格式錯(包含,必填域缺失,上送銀聯報文未定義的域,報文域的格式非法,交易時間超出范圍);

簽名失敗;超時等其他系統異常

閱讀全文

與php銀聯支付介面申請相關的資料

熱點內容
android錄音開源 瀏覽:455
弗洛伊德演算法c 瀏覽:10
udp命令字 瀏覽:659
app服務端java源碼 瀏覽:798
電腦用文件夾玩大型游戲 瀏覽:254
安卓耳塞失靈怎麼辦 瀏覽:765
華三交換機保存命令 瀏覽:605
命令方塊怎麼調鍵盤 瀏覽:841
不把密碼存在伺服器上怎麼辦 瀏覽:398
怎麼讓指令方塊的命令消失 瀏覽:543
用單片機做plc 瀏覽:404
雲伺服器進入子目錄命令 瀏覽:795
伺服器機櫃如何配電 瀏覽:578
怎麼刪除iphone資源庫里的app 瀏覽:940
pdf魚 瀏覽:648
單片機pcf8591什麼作用 瀏覽:805
sql命令學院 瀏覽:283
加密軟體在電腦那個盤 瀏覽:988
android獲取外部存儲 瀏覽:573
怎麼查自己家的伺服器地址 瀏覽:858