工行的支付接口

3 篇文章 0 订阅

前一阵开发的网站的网上支付部分终于拿到工商银行的文档了,开始做网站与工行的连接了。

下面公布一下SH接口模式的文档。

 

   HS通知接口模式

 

 

 

商户通过在订单支付表单中的interfaceType字段中写入值“HS”来通知工行该笔订单使用HS模式将交易结果信息通知商户。

此接口为工行最新提供的通知接口模式之一。在此通知接口模式中,商户需要开发一个CGI程序,开发语言由商户任意选择,可以是ASPJAVAPHPPerl等。该CGI程序完成接收工行通过http协议发送过来的交易结果信息,交易结果信息作为URL地址中的参数传递至商户,在传送给商户的参数中,包含使用工行私钥对交易结果数据的数字签名。商户应该先用工行的证书文件验证该数字签名,确认该通知信息的有效性。

工行调用商户端CGI程序的位置和程序名称由商户在订单支付表单中的merURL字段定义,如http://www.toICBCpay.com/sendOrder.asp等,URL中可以包括端口号。

客户在支付时,如果未能支付成功,可以对一笔订单多次发起支付请求。在HS模式中,工行通过订单支付表单中的hsmsgType字段决定什么情况下给商户发送交易结果。如果该字段为0,则客户对一笔订单的每一次支付操作结果无论成功失败都将发送给商户,因此商户对应一笔订单接收到的可能有多笔失败信息或全为失败信息,但一笔订单工行最多只会发送给商户一笔成功信息。如果该字段为1,则工行只会将最后一个成功的交易结果发送给商户,而无论客户对一笔订单支付了多少次,如果订单始终未能成功支付,工行不会向商户发送任何信息。

此通知接口模式还能够提供对信息化商品(如IP电话卡)等没有商品实体的实时取货功能。在将交易结果发送给商户后,如果商户认为该笔支付成功,需要向客户显示信息化商品的内容(如IP电话卡的卡号,卡密码等),则商户应将取货的URL地址作为回应信息传给工行,工行将该URL链接附加上工行的交易数据传递给客户浏览器,由客户浏览器端发起取货(页面使用javascript自动调用该链接)

程序示例

支付表单格式如下:

<form name=" sendOrder " method="post"

 

 

action="http://工行网上银行支付服务器IP地址/ servlet/com.icbc.inbs.b2c.pay.B2cMerPayReqServlet ">

 

 

<input type="text" name="merchantid" value="020000010001" >    --商城代码

 

 

<input type="text" name="interfaceType" value="HS" >  --接口类型

 

 

<input type="text" name="merURL" value="http://www.icbc_mert.com/toIcbcPay.asp" >        --接收工行支付结果信息的程序名称和地址

 

 

<input type="text" name="orderid" value="12345678912345" >  --订单号

 

 

<input type="text" name="amount" value="10056" >   --订单总金额(以分为单位)

 

 

<input type="text" name="curType" value="001" >   --币种

 

 

<input type="text" name="hsmsgType" value="0" >   --信息发送类型

 

 

<input type="text" name="signMsg" value="LKJDFKF#$LKJFDA090980LKJAFK" >   --BASE64编码后的交易数据签名信息

 

 

<input type="text" name="cert" value="%$#%#KLLK4LKJLJ67LJ8L54LH67L" >     --BASE64编码后的商户证书

 

 

<input type="text" name="comment1" value=" " >   --备注字段2

 

 

<input type="text" name="comment2" value=" " >   --备注字段3

 

 

<input type="submit" value="工行支付">

 

 

</form>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 



 
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值