中国工商银行网上银行C2C在线支付接口说明V1001

合集下载

中国银行B2C商户端接口说明(ver 2.3)

中国银行B2C商户端接口说明(ver 2.3)
orderAmount
X(13)
必填
格式:整数位不前补零,小数位补齐2位
即:不超过10位整数位+1位小数点+2位小数
无效格式如123,.10,1.1,有效格式如1.00,0.10
06
订单时间
orderTime
9(14)
必填
格式:YYYYMMDD24HHMMSS
其中时间为24小时格式,如下午3点15表示为151500
2.2.4
接口名称:无
接口说明:
为避免银行支付界面反馈支付结果失效,中行支付网关按此数据规格将B2C订单支付结果主动通过HTTP或HTTPS方式POST发往商户系统。参数的编码方式使用UTF-8编码后,再用application/x-www-form-urlencoded方式转译后发出。
数据项说明:
格式:n.n.n.n
其中n为0-255的数字
例如:192.168.0.1
09
客户浏览器Refer信息
orderRefer
X(200)
客户浏览器跳转至网银支付登录界面前所在页面的URL(urlEncode格式)
10
银行交易流水号
bankTranSeq
X(22)
银行交易流水号
银行交易日期(8位)+POS终端号(8位)+POS流水号(6位)
数据项说明:
序号
名称
字段
最大长度
说明
01
商户号
merchantNo
X(20)
BOC商户ID
02
商户订单号
orderNo
X(19)
商户系统产生的订单号
03
银行订单流水号
orderSeq

网银在线被动对帐接口

网银在线被动对帐接口

网银在线被动对帐接口一、使用对象所有使用网银在线支付平台的签约商户。

二、接口程序开发说明1.商户在使用此被动对帐接口之前需开发并测试通过网银在线支付接口。

2.此对帐接口由商户端自动发起,提交订单对帐接口参数有:v_oid 商户订单号v_mid 商户编号v_url 返回页面地址billNo_md5 md5数字签名拼凑串:v_oid+key(商户md5私钥)商户只需修改网银在线给出的模版程序中的key值即可。

3. 自动对帐接口返回参数有:v_oid 商户订单编号v_pmode 持卡人支付方式(即银行名称,如“工商银行”)v_pstatus 支付结果状态码,20表示支付成功,30表示支付失败,0 表示传递到网银的MD5校验码错误或者订单不存在,40表示订单是未支付订单,v_pstring 支付结果状态说明:“支付完成”(支付状态为20时);失败原因(支付状态30时)v_md5str MD5校验码v_amount 支付金额v_moneytype 支付币种remark1 支付金额remark2 支付币种其中md5校验的字符串是:v_oid+v_pstatus+v_amount+v_moneytype+key说明:1.当商户发起被动对帐时如果传递的md5数字签名不正确(即billNo_md5不正确),则返回V_oid为提交的订单号,v_pstring为“MD5校验码错误”,v_pstatus为“0”,其余参数均为空。

2.当商户提交的订单号不正确时,则返回V_oid为提交的订单号,v_pstring为“订单不存在”,v_pstatus为“0”,其余参数均为空。

3.当商户提交的订单未支付时,则返回V_oid为提交的订单号,v_pstring为未支付,v_pstatus为“0”。

中国工商银行电子银行产品简介

中国工商银行电子银行产品简介

中国工商银行电子银行产品简介目录金融e通道电子银行业务综述------------------- 2-3 企业电子银行业务简介------------------------ 4-10 个人电子银行业务系列知识------------------- 11-26 U盾介绍----------------------------------- 27-28电子银行口令卡业务介绍--------------------- 29-38 电话银行业务介绍--------------------------- 39-44“金融e通道”电子银行业务综述我行于2002年5月在国内率先推出了电子银行品牌——金融e 通道,并陆续推出了“理财e站通”企业网上银行、“金融@家”个人网上银行、“95588”电话银行、手机银行“随机而动的银行”、自助终端等金融e通道的系列子品牌。

★在企业服务方面,工商银行的“理财e站通”现金管理一站式服务平台,全面满足企业从收款、付款、账户管理、资金流动各个环节的现金管理需求。

“理财e站通”能够有效协助集团企业建立良好的资金运作模式,已经成为企业加强资金管理的首选平台。

★在个人服务方面,工商银行也不断推陈出新,并于2003年11月推出全新的集银行、投资、理财于一体的“金融@家”个人网上银行。

使个人客户可以足不出户地通过网上银行办理从查询、转账、汇款、缴费到证券、外汇、基金等一系列业务,享受更贴身、更值得信赖的金融服务。

★在95588电话银行服务方面,电话银行是使用计算机电话集成技术,采用电话自动语音和人工座席等服务方式为客户提供金融服务的一种业务系统,它集个人理财和企业理财于一身,是现代通讯技术与银行金融理财服务的完美结合。

客户拨打工商银行开设的全国统一电话银行号码'95588',即可随时随地享受工商银行提供的各种金融服务。

★手机银行方面,为了给客户提供更加方便、快捷、多渠道、贴身的金融服务,中国工商银行与中国移动共同推出基于短信的新型手机银行。

快钱人民币分账网关商户收款接口规范

快钱人民币分账网关商户收款接口规范
10009付款方的联系内容不正确请输入合法的联系地址10010订单号不正确系统只支持以字母数字组合的订单号最大长度不能超过3010011订单金额不正确请输入以分为单位的金额10012订单提交时间不正确请输入以yyyymmddhhmmss格式的时间字符串10013商品名称不正确10014商品数量不正确10015商品id不正确10016商品的描述不正确10017扩展参数一不正确10018扩展参数二不正确10019指定的支付方式不正确10020指定的支付服务代码不正确10021指定的银行id不正确10022
4.1 版权说明.......................................................................................................................................14 4.2 快钱资源.......................................................................................................................................14
上海快钱信息服务有限公司 版权所有
第2页
1 文档说明
1.1 文档目标
本文档的目的是为快钱人民币分账网关商户收款接口定义规范,以帮助商户技术人员接入快 钱人民币分账网关,并快速掌握快钱人民币分账网关相关功能,便于尽快投入使用。
1.2 阅读对象
快钱商户及合作伙伴的网上应用开发人员、维护人员和管理人员。 他们应具备以下基本知识:
3.2 银行代码表...................................................................................................................................11 3.3 错误代码表...................................................................................................................................12

中国工商银行银企互联系统接口说明Version.3

中国工商银行银企互联系统接口说明Version.3

中国工商银行银企互联系统接口说明Version中国工商银行电子银行部中国工商银行北京软件研发部2005年07月目录提交包...............................................................网点信息下载...................................................... 提交包...............................................................个人联名卡签权指令................................................1帐户查询1.1单帐户余额查询提交包<?xml version="" encoding = "GB2312"?><ICBCYH><opReq><opName>NCQueryBalanceOp</opName><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num> ---必输项<Account_cur>币种</Account_cur><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>返回包<?xml version="" encoding = "GB2312"?><ICBCYH><opRep><opName>NCQueryBalanceOp</opName><opResult><Account_num>帐号</Account_num><Account_cur>币种</Account_cur> 例:RMB<retCode>错误返回码错误描述在errMsg 中</retCode><errMsg>错误描述</errMsg><Acc_balance>昨日余额</Acc_balance><Balance>余额</Balance><Usable_balance>可用余额</Usable_balance><Acct_property>帐户属性</Acct_property> 中文<PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult></opRep></ICBCYH>1.2多帐户余额查询提交包<?xml version="" encoding = "GB2312"?><ICBCYH><opReq><opName>NCQueryBalanceListOp</opName><ReqParam><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam><ReqParamSet><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num> ---必输项<Account_cur>币种</Account_cur><ReqReserved3>请求包备用字段3</ReqReserved3><ReqReserved4>请求包备用字段4</ReqReserved4></ReqParam></ReqParamSet></opReq></ICBCYH>返回包<?xml version="" encoding = "GB2312"?><ICBCYH><opRep><opName>NCQueryBalanceListOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode><errMsg>错误描述</errMsg><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult><opResultSet><opResult><Account_num>帐号</Account_num><Account_cur>币种</Account_cur><Acc_balance>昨日余额</Acc_balance><Balance>余额</Balance><Usable_balance>可用余额</Usable_balance><Acct_property>帐户属性</Acct_property> 中文<RepReserved3>返回包备用字段3</RepReserved3><RepReserved4>返回包备用字段4</RepReserved4> </opResult></opResultSet><ErrSet><Err><Account_num>账号</Account_num><errMessage>出错信息</errMessage></Err></ErrSet></opRep></ICBCYH>1.3当日明细查询提交包<?xml version="" encoding = "GB2312"?><ICBCYH><opReq><opName>NCCurDetailOp</opName><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num> ---必输项<Account_cur>币种</Account_cur><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>返回包<?xml version="" encoding = "GB2312"?><ICBCYH><opRep><opName>NCCurDetailOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode><errMsg>错误描述</errMsg><Account_num>本方帐号</Account_num><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult><opResultSet><opResult><Trans_date>交易日期</Trans_date>(例:yyyy-MM-dd-HH:mm:ss:6位毫秒)共26位<Check_num>凭证号</Check_num><Bank1_code>对方行行号</Bank1_code><Rec_Account_num>对方账号</Rec_Account_num><Amount>发生额</Amount><Yt>用途</Yt><Trans_type>业务种类</Trans_type> 中文<PostScript>附言</PostScript><Rec_Account_name>对方户名</Rec_Account_name><sign>借贷标志</sign> 中文<Trans_abstr>摘要</Trans_abstr><RepReserved3>返回包备用字段3</RepReserved3><RepReserved4>返回包备用字段4</RepReserved4> </opResult></opResultSet></opRep></ICBCYH>1.4历史明细查询提交包<?xml version="" encoding = "GB2312"?><ICBCYH><opReq><opName>NCHisDetailOp</opName><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num><Begin_date>起始日期</Begin_date> ---必输项(例:yyyyMMdd)<End_date>终止日期</End_date> ---必输项<Max_amount>最大金额</Max_amount> ---必输项(以分为单位,不带小数点)<Min_amount>最小金额</Min_amount> ---必输项<userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>返回包<?xml version="" encoding = "GB2312"?><ICBCYH><opRep><opName>NCHisDetailOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode><errMsg>错误描述</errMsg><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult><opResultSet><opResult><Area_code>地区代码</Area_code><Account_num>帐号</Account_num><Trans_date>交易日期</Trans_date> (例:yyyyMMdd)<Check_num>凭证号</Check_num><Trans_abstr>摘要</Trans_abstr><Debit_Amount>借方发生额</Debit_Amount><Crebit_Amount>贷方发生额</Crebit_Amount><Balance>余额</Balance><Rec_Account_num>对方账号</Rec_Account_num><Bank_name>开户行名称</Bank_name><Bank1_name>对方行行名</Bank1_name><Unit1_name>对方单位名称</Unit1_name><Trans_type>业务种类</Trans_type> 中文<Yt>用途</Yt><Trans_time>交易时间</Trans_time>(例:yyyy-MM-dd-HH:mm:ss:6位毫秒)共26位其值与当日明细中“交易日期”字段值一致<sign>借贷标志</sign> 中文<RepReserved3>返回包备用字段3</RepReserved3><RepReserved4>返回包备用字段4</RepReserved4></opResult></opResultSet></opRep></ICBCYH>1.5现金管理户当日明细查询提交包<?xml version="" encoding = "GB2312"?><ICBCYH><opReq><opName>NCCashManageAccCurDetailOp</opName><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num> ---必输项<Account_cur>币种</Account_cur><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>返回包<?xml version="" encoding = "GB2312"?><ICBCYH><opRep><opName>NCCashManageAccCurDetailOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode><errMsg>错误描述</errMsg><Account_num>本方帐号</Account_num><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult><opResultSet><opResult><Trans_time>交易时间</Trans_time> HH:mm:ss<Bank1_code>对方行行号</Bank1_code><Rec_Account_num>对方账号</Rec_Account_num><Amount>发生额</Amount><Yt>用途</Yt><Trans_type>业务种类</Trans_type> 中文<PostScript>附言</PostScript><Rec_Account_name>对方户名</Rec_Account_name><sign>借贷标志</sign> 中文<Trans_abstr>摘要</Trans_abstr><REF>业务编号</REF><OREF>相关业务编号</OREF><BUSCODE>业务代码</BUSCODE><ENSUMMRY>英文备注</ENSUMMRY><CVOUHTYPE>凭证种类</CVOUHTYPE><CVOUHNO>凭证号</CVOUHNO><ADDINFO>附加信息</ADDINFO><RepReserved3>返回包备用字段3</RepReserved3><RepReserved4>返回包备用字段4</RepReserved4> </opResult></opResultSet></opRep></ICBCYH>1.6现金管理户历史明细查询提交包<?xml version="" encoding = "GB2312"?><ICBCYH><opReq><opName>NCCashManageAccHisDetailOp</opName><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num><Begin_date>起始日期</Begin_date> ---必输项(例:yyyyMMdd)<End_date>终止日期</End_date> ---必输项<Max_amount>最大金额</Max_amount> ---必输项(以分为单位,不带小数点)<Min_amount>最小金额</Min_amount> ---必输项<userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>返回包<?xml version="" encoding = "GB2312"?><ICBCYH><opRep><opName>NCCashManageAccHisDetailOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode><errMsg>错误描述</errMsg><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult><opResultSet><opResult><TRXTYPE>交易类型</TRXTYPE> 中文<BUSIDATE>交易日期</BUSIDATE> yyyyMMdd<BUSITIME>交易时间</BUSITIME> HH:mm:ss<Account_num>交易帐号</Account_num><Bank_name>本方行名</Bank_name><Trans_type>业务种类</Trans_type> 中文<sign>借贷标志</sign> 中文<Debit_Amount>借方发生额</Debit_Amount><Crebit_Amount>贷方发生额</Crebit_Amount><Balance>余额</Balance><Yt>用途</Yt><CVOUHTYPE>凭证种类</CVOUHTYPE><CVOUHNO>凭证号</CVOUHNO><RECIPACT>对方帐号</RECIPACT><RECIPNAME>对方户名</RECIPNAME><RECIPBNA>对方行名</RECIPBNA><REF>业务编号</REF><OREF>相关业务编号</OREF><BUSCODE>业务代码</BUSCODE><ENSUMMRY>英文备注</ENSUMMRY><ADDINFO>附加信息</ADDINFO><RepReserved3>返回包备用字段3</RepReserved3><RepReserved4>返回包备用字段4</RepReserved4></opResult></opResultSet></opRep></ICBCYH>2转帐支付(逐笔)支付提交包<?xml version="" encoding = "GB2312"?><ICBCYH><opReq><opName>NCpaySubmitOp</opName><ReqParam><Pay_Dep_name>汇款单位</Pay_Dep_name><Pay_Dep_Acc>汇款帐号</Pay_Dep_Acc> (35位)---必输项<Area_code>地区代码</Area_code><Pay_Dep_branch>汇款单位开户行</Pay_Dep_branch><Rec_Dep_name>收款单位</Rec_Dep_name> (60位) ---必输项<Rec_Dep_Acc>收款帐号</Rec_Dep_Acc> (35位) ---必输项<Rec_Area_Code>收款人地区代码</Rec_Area_Code> 0:它行1:工行<Rec_Dep_branch>收款单位开户行</Rec_Dep_branch>(60位)--必输项<Trans_time>交易时间</Trans_time><Serial_no>指令序号</Serial_no><PayAmt>金额</PayAmt> (18位) ---必输项以分为单位<Account_cur>币种</Account_cur><Pay_Use>用途</Pay_Use> (20位)<Pay_type>汇款速度</Pay_type> 0:普通 1:加急<Author_log_id_1>授权人ID</Author_log_id_1><Author_log_id_2>二次授权人ID</Author_log_id_2> <Submit_Log_id>提交人ID</Submit_Log_id> ---必输项 <Area_name>付款人账户地区名(付款人所在地)</Area_name><Rec_Area_name>收款人账户地区名(收款人所在地)</Rec_Area_name>---必输项收方如果是工行,以《信息对照表》中的地区代码对照表为准<Branch_code>账户分理处号</Branch_code><Pay_Password>支付密码</Pay_Password><User_Rem>备注栏(用户备注) </User_Rem><Pay_NetCode>付款行网点号</Pay_NetCode><Pay_BranchNo>付款行行号</Pay_BranchNo><Pay_BranchId>付款行行标识</Pay_BranchId><Pay_DispsNo>付款行分签号</Pay_DispsNo><Rec_BranchNo>对方行号</Rec_BranchNo><Rec_BranchId>对方行标识</Rec_BranchId><Rec_DispsNo>对方分签号</Rec_DispsNo><PostScript>附言</PostScript><PostScriptFlag>附言标志</PostScriptFlag><Transfer_Type>转帐类型</Transfer_Type><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID(15位)</PackageID> ---必输项<SignTime>签名时间(yyyyMMddhhmmssSSS)</SignTime> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>支付返回包<?xml version="" encoding = "GB2312"?><ICBCYH><opRep><opName>NCpaySubmitOp</opName><opResult><retCode>返回码</retCode>0-成功1-可疑其他为失败,错误描述在errMsg 中<errMsg>错误描述</errMsg><TranFlag>成功描述</TranFlag><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult></opRep></ICBCYH>逐笔支付查询提交包<?xml version="" encoding = "GB2312"?><ICBCYH><opReq><opName>NCQueryPayOrderDetailOp</opName><ReqParam><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项(提交指令中的包ID)<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>逐笔支付查询返回包<?xml version="" encoding = "GB2312"?><ICBCYH><opRep><opName>NCQueryPayOrderDetailOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode>此值只表示该交易是否执行成功,并不代表此笔支付是否成功或失败(非空表示交易执行失败,失败原因见errMsg)。

银联网上支付银行卡及使用说明

银联网上支付银行卡及使用说明

网上购物就去淘宝商城 /,方便快捷更安全
版,进入“客户服务——电子支付”模块,在“开通电子支付”
的同时,自行设定电子支付的单笔和日累计限额,修改成功后选
择“证书”验证方式进行电子支付;
5.客服热线:北京银行 010-96169
(二十二)温州商业银行
金鹿卡
网银大众版
4.中国工商银行 客服热线:95588
(二)广东发展银行
理财通卡
一户通卡
(借记卡)
(借记卡)
信用卡
单笔限额
¥ 1,000.0
¥ 1,000.0
¥ 1,000.0
网上购物就去淘宝商城 /,方便快捷更安全
0
0
0
¥ 5,000.0
¥ 5,000.0
¥ 5,000.0
单日限额
0
0
0
1.受理卡种:理财通卡(借记卡)、一户通卡(借记卡)、
信用卡,全国开户(部分地区不支持);
2.凭存折密码(老理财通卡)或 ATM 密码(新理财通卡、一
户通卡或广发信用卡)进行网上交易;
3.老理财通卡为非银联卡;新理财通卡为银联卡;
4.客服热线:中国银联 95516*5
(三)广州市农村信用社合作联合社
密码进行网上交易;
3.中国民生银行 客服热线:95568
(十)中国农业银行
金穗卡 电子支付卡 网银专业版
单笔限额
¥200.00
无限额
单日限额
¥200.00
无限额
1.受理卡种:金穗卡(包括借记卡和信用卡),全国开户;
2.您可通过中国农业银行网站申请电子支付卡进行支付;
3.您可通过中国农业银行网上银行专业版进行支付,上海地
麒麟卡

手机银行(WAP)B2C在线支付接口说明V1.0.0.6

手机银行(WAP)B2C在线支付接口说明V1.0.0.6

B2C 支付接口v1.0.0.6中国工商银行软件开发中心 Copyright Reserved商户手册目录第1 章业务说明 (3)第2 章商户接口 (4)2.1支付接口 (4)2.1.1支付接口表单定义 (4)2.1.2tranData数据定义 (5)2.1.3tranData格式定义 (7)2.1.4表单样例 (8)2.2通知接口 (9)2.2.1通知接口表单定义 (9)2.2.2notifyData数据定义 (10)2.2.3notifyData格式定义 (11)2.2.4表单样例 (12)2.3商户判断支付结果及返回商户取货 (13)2.4其他说明 (13)第3 章安全API说明 (14)第4 章开发步骤 (14)4.1通用步骤 (14)4.2移动生活商户改造方法 (15)4.3附件 (16)B2C在线支付接口版本说明:1.0.0.0(基本支付)1.0.0.1(支持商户主动分期付款模式,商户不分期的情况下支持客户自助分期,商户客户都不分期的情况下,流程同1.0.0.0)1.0.0.3(1.0.0.1版本基础上,支持后台自动给商户发送支付结果通知消息,通知消息发送方式为只有支付成功的情况下发送通知,其余情况不通知)1.0.0.4(1.0.0.3版本基础上,支持他人代付功能)1.0.0.6(基于1.0.0.3版本,支持启动工行手机银行客户端(iPhone、Android)进行支付,支持工行移动生活商户进行支付,支持HTML网页版本(只支持iPhone、Android的webkit核心浏览器,需要商户侧自行判断客户的浏览器是否可用)进行支付。

注:1.0.0.6接口的HTML网页版本暂未开放!以下简述处理流程:1.客户在商户WAP网站、商户客户端(iPhone、Andrid)、工行移动生活商户浏览商品信息,签订订单;2.商户按照工行手机银行B2C支付1.0.0.6接口形成提交数据,并使用工行提供API和商户证书对订单数据签名,形成form表单返回客户浏览器,表单action地址指向工行接收商户订单信息的servlet;3.客户确认使用工行支付后,提交此表单到工行;4.工行手机银行系统接收此笔订单,对订单信息和商户信息进行检查;5.通过检查则根据商户上送的启动类型,启动工行手机银行客户端程序(iPhone、Android)的支付页面或HTML网页版本(只支持iPhone、Android的webkit核心浏览器)的支付页面;6.客户输入后提交;7.银行查询客户相关信息;8.返回客户在银行的预留信息;9.客户确认;10.返回交易确认页面;11.不同类型客户使用各自认证方式进行交易确认,支持静态支付密码、动态口令卡、工银电子密码器、音频U盾(U盾只支持iPhone客户端版本)。

中国工商银行银企互联系统接口说明V

中国工商银行银企互联系统接口说明V

中国工商银行银企互联系统接口说明Version 4.2中国工商银行电子银行部中国工商银行北京软件研发部2005年07月目录1 帐户查询 (1)1.1 单帐户余额查询 (1)提交包 (1)返回包 (1)1.2 多帐户余额查询 (2)提交包 (2)返回包 (3)1.3 当日明细查询 (4)提交包 (4)返回包 (5)1.4 历史明细查询 (6)提交包 (6)返回包 (7)1.5 现金管理户当日明细查询 (9)提交包 (9)返回包 (9)1.6 现金管理户历史明细查询 (11)提交包 (11)返回包 (12)2 转帐支付(逐笔) (13)支付提交包 (13)支付返回包 (15)逐笔支付查询提交包 (16)逐笔支付查询返回包 (16)3 企业财务室 (17)3.1 财务室批量指令 (17)提交包 (17)返回包 (19)3.2 财务室批量指令查询 (20)提交包 (20)返回包 (20)4 收费站 (22)4.1 批量扣个人指令 (22)提交包 (22)返回包 (23)4.2 批量扣个人指令查询 (24)提交包 (24)返回包 (24)4.3 缴费个人信息查询 (26)提交包 (26)返回包 (27)4.4 批量扣企业指令 (28)提交包 (28)返回包 (29)4.5 批量扣企业指令查询 (29)提交包 (30)返回包 (30)4.6 缴费企业信息查询(只查已签订协议的) (31)提交包 (32)返回包 (32)5 批量代理汇兑 (33)5.1 代理汇兑指令提交 (33)提交包 (33)返回包 (35)5.2 代理汇兑指令查询 (36)提交包 (36)返回包 (36)5.3 网点信息下载 (38)提交包 (38)返回包 (38)6 批量外汇汇款 (39)6.1 集团内外汇资金调拨指令提交 (39)提交包 (40)返回包 (41)6.2 集团内外汇资金调拨指令查询 (41)提交包 (41)返回包 (42)6.3 B股资金清算指令提交 (43)提交包 (43)返回包 (45)6.4 B股资金清算指令查询 (45)提交包 (45)返回包 (46)6.5 国内外汇汇款指令提交 (47)提交包 (47)返回包 (49)6.6 国内外汇汇款指令查询 (49)提交包 (49)返回包 (50)7 电子商务 (51)7.1 B2C订购指令查询 (51)提交包 (51)返回包 (52)7.2 B2C退货、返还、转付指令查询 (54)提交包 (54)返回包 (55)7.3 B2B订购指令查询 (57)提交包 (57)返回包 (58)7.4 B2B退货、返还指令查询 (59)提交包 (59)返回包 (60)7.5 C2C订购指令查询 (62)提交包 (62)返回包 (63)7.6 B2B/B2C退货、返还、转付指令提交 (64)提交包 (64)返回包 (65)7.7 个人联名卡签权指令 (67)提交包 (67)返回包 (67)8 工资单 (68)8.1 工资单文件上传 (68)提交包 (68)返回包 (70)8.2 工资单文件查询 (70)提交包 (71)返回包 (71)8.3 工资单文件删除 (72)提交包 (72)返回包 (73)9 附录错误代码 (74)9.1 明文返回的错误代码 (74)9.2 xml中retCode的错误代码 (74)1帐户查询1.1 单帐户余额查询提交包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opReq><opName>NCQueryBalanceOp</opName><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num> ---必输项<Account_cur>币种</Account_cur><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>返回包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opRep><opName>NCQueryBalanceOp</opName><opResult><Account_num>帐号</Account_num><Account_cur>币种</Account_cur> 例:RMB<retCode>错误返回码错误描述在errMsg 中</retCode><errMsg>错误描述</errMsg><Acc_balance>昨日余额</Acc_balance><Balance>余额</Balance><Usable_balance>可用余额</Usable_balance><Acct_property>帐户属性</Acct_property> 中文<PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult></opRep></ICBCYH>1.2 多帐户余额查询提交包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opReq><opName>NCQueryBalanceListOp</opName><ReqParam><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam><ReqParamSet><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num> ---必输项<Account_cur>币种</Account_cur><ReqReserved3>请求包备用字段3</ReqReserved3><ReqReserved4>请求包备用字段4</ReqReserved4></ReqParam></ReqParamSet></opReq></ICBCYH>返回包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opRep><opName>NCQueryBalanceListOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode><errMsg>错误描述</errMsg><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult><opResultSet><opResult><Account_num>帐号</Account_num><Account_cur>币种</Account_cur><Acc_balance>昨日余额</Acc_balance><Balance>余额</Balance><Usable_balance>可用余额</Usable_balance><Acct_property>帐户属性</Acct_property> 中文<RepReserved3>返回包备用字段3</RepReserved3><RepReserved4>返回包备用字段4</RepReserved4> </opResult></opResultSet><ErrSet><Err><Account_num>账号</Account_num><errMessage>出错信息</errMessage></Err></ErrSet></opRep></ICBCYH>1.3 当日明细查询提交包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opReq><opName>NCCurDetailOp</opName><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num> ---必输项<Account_cur>币种</Account_cur><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>返回包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opRep><opName>NCCurDetailOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode><errMsg>错误描述</errMsg><Account_num>本方帐号</Account_num><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult><opResultSet><opResult><Trans_date>交易日期</Trans_date>(例:yyyy-MM-dd-HH:mm:ss:6位毫秒)共26位<Check_num>凭证号</Check_num><Bank1_code>对方行行号</Bank1_code><Rec_Account_num>对方账号</Rec_Account_num><Amount>发生额</Amount><Yt>用途</Yt><Trans_type>业务种类</Trans_type> 中文<PostScript>附言</PostScript><Rec_Account_name>对方户名</Rec_Account_name><sign>借贷标志</sign> 中文<Trans_abstr>摘要</Trans_abstr><RepReserved3>返回包备用字段3</RepReserved3><RepReserved4>返回包备用字段4</RepReserved4></opResult></opResultSet></opRep></ICBCYH>1.4 历史明细查询提交包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opReq><opName>NCHisDetailOp</opName><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num><Begin_date>起始日期</Begin_date> ---必输项(例:yyyyMMdd)<End_date>终止日期</End_date> ---必输项<Max_amount>最大金额</Max_amount> ---必输项(以分为单位,不带小数点)<Min_amount>最小金额</Min_amount> ---必输项<userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>返回包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opRep><opName>NCHisDetailOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode><errMsg>错误描述</errMsg><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult><opResultSet><opResult><Area_code>地区代码</Area_code><Account_num>帐号</Account_num><Trans_date>交易日期</Trans_date> (例:yyyyMMdd)<Check_num>凭证号</Check_num><Trans_abstr>摘要</Trans_abstr><Debit_Amount>借方发生额</Debit_Amount><Crebit_Amount>贷方发生额</Crebit_Amount><Balance>余额</Balance><Rec_Account_num>对方账号</Rec_Account_num><Bank_name>开户行名称</Bank_name><Bank1_name>对方行行名</Bank1_name><Unit1_name>对方单位名称</Unit1_name><Trans_type>业务种类</Trans_type> 中文<Yt>用途</Yt><Trans_time>交易时间</Trans_time>(例:yyyy-MM-dd-HH:mm:ss:6位毫秒)共26位其值与当日明细中“交易日期”字段值一致<sign>借贷标志</sign> 中文<RepReserved3>返回包备用字段3</RepReserved3><RepReserved4>返回包备用字段4</RepReserved4></opResult></opResultSet></opRep></ICBCYH>1.5 现金管理户当日明细查询提交包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opReq><opName>NCCashManageAccCurDetailOp</opName><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num> ---必输项<Account_cur>币种</Account_cur><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>返回包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opRep><opName>NCCashManageAccCurDetailOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode><errMsg>错误描述</errMsg><Account_num>本方帐号</Account_num><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2> </opResult><opResultSet><opResult><Trans_time>交易时间</Trans_time> HH:mm:ss<Bank1_code>对方行行号</Bank1_code><Rec_Account_num>对方账号</Rec_Account_num><Amount>发生额</Amount><Yt>用途</Yt><Trans_type>业务种类</Trans_type> 中文<PostScript>附言</PostScript><Rec_Account_name>对方户名</Rec_Account_name><sign>借贷标志</sign> 中文<Trans_abstr>摘要</Trans_abstr><REF>业务编号</REF><OREF>相关业务编号</OREF><BUSCODE>业务代码</BUSCODE><ENSUMMRY>英文备注</ENSUMMRY><CVOUHTYPE>凭证种类</CVOUHTYPE><CVOUHNO>凭证号</CVOUHNO><ADDINFO>附加信息</ADDINFO><RepReserved3>返回包备用字段3</RepReserved3><RepReserved4>返回包备用字段4</RepReserved4> </opResult></opResultSet></opRep></ICBCYH>1.6 现金管理户历史明细查询提交包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opReq><opName>NCCashManageAccHisDetailOp</opName><ReqParam><Area_code>地区代码</Area_code><Account_num>帐号</Account_num><Begin_date>起始日期</Begin_date> ---必输项(例:yyyyMMdd)<End_date>终止日期</End_date> ---必输项<Max_amount>最大金额</Max_amount> ---必输项(以分为单位,不带小数点)<Min_amount>最小金额</Min_amount> ---必输项<userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>返回包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opRep><opName>NCCashManageAccHisDetailOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode> <errMsg>错误描述</errMsg><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2></opResult><opResultSet><opResult><TRXTYPE>交易类型</TRXTYPE> 中文<BUSIDATE>交易日期</BUSIDATE> yyyyMMdd<BUSITIME>交易时间</BUSITIME> HH:mm:ss<Account_num>交易帐号</Account_num><Bank_name>本方行名</Bank_name><Trans_type>业务种类</Trans_type> 中文<sign>借贷标志</sign> 中文<Debit_Amount>借方发生额</Debit_Amount><Crebit_Amount>贷方发生额</Crebit_Amount><Balance>余额</Balance><Yt>用途</Yt><CVOUHTYPE>凭证种类</CVOUHTYPE><CVOUHNO>凭证号</CVOUHNO><RECIPACT>对方帐号</RECIPACT><RECIPNAME>对方户名</RECIPNAME><RECIPBNA>对方行名</RECIPBNA><REF>业务编号</REF><OREF>相关业务编号</OREF><BUSCODE>业务代码</BUSCODE><ENSUMMRY>英文备注</ENSUMMRY><ADDINFO>附加信息</ADDINFO><RepReserved3>返回包备用字段3</RepReserved3><RepReserved4>返回包备用字段4</RepReserved4></opResult></opResultSet></opRep></ICBCYH>2转帐支付(逐笔)支付提交包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opReq><opName>NCpaySubmitOp</opName><ReqParam><Pay_Dep_name>汇款单位</Pay_Dep_name><Pay_Dep_Acc>汇款帐号</Pay_Dep_Acc> (35位)---必输项<Area_code>地区代码</Area_code><Pay_Dep_branch>汇款单位开户行</Pay_Dep_branch><Rec_Dep_name>收款单位</Rec_Dep_name> (60位) ---必输项<Rec_Dep_Acc>收款帐号</Rec_Dep_Acc> (35位) ---必输项<Rec_Area_Code>收款人地区代码</Rec_Area_Code> 0:它行 1:工行<Rec_Dep_branch>收款单位开户行</Rec_Dep_branch>(60位)--必输项<Trans_time>交易时间</Trans_time><Serial_no>指令序号</Serial_no><PayAmt>金额</PayAmt> (18位) ---必输项以分为单位<Account_cur>币种</Account_cur><Pay_Use>用途</Pay_Use> (20位)<Pay_type>汇款速度</Pay_type> 0:普通 1:加急<Author_log_id_1>授权人ID</Author_log_id_1><Author_log_id_2>二次授权人ID</Author_log_id_2> <Submit_Log_id>提交人ID</Submit_Log_id> ---必输项 <Area_name>付款人账户地区名(付款人所在地) </Area_name><Rec_Area_name>收款人账户地区名(收款人所在地) </Rec_Area_name> ---必输项收方如果是工行,以《信息对照表》中的地区代码对照表为准<Branch_code>账户分理处号</Branch_code><Pay_Password>支付密码</Pay_Password><User_Rem>备注栏(用户备注) </User_Rem><Pay_NetCode>付款行网点号</Pay_NetCode><Pay_BranchNo>付款行行号</Pay_BranchNo><Pay_BranchId>付款行行标识</Pay_BranchId><Pay_DispsNo>付款行分签号</Pay_DispsNo><Rec_BranchNo>对方行号</Rec_BranchNo><Rec_BranchId>对方行标识</Rec_BranchId><Rec_DispsNo>对方分签号</Rec_DispsNo><PostScript>附言</PostScript><PostScriptFlag>附言标志</PostScriptFlag><Transfer_Type>转帐类型</Transfer_Type><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID(15位)</PackageID> ---必输项<SignTime>签名时间(yyyyMMddhhmmssSSS)</SignTime> ---必输项<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>支付返回包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opRep><opName>NCpaySubmitOp</opName><opResult><retCode>返回码</retCode>0-成功1-可疑其他为失败,错误描述在errMsg 中<errMsg>错误描述</errMsg><TranFlag>成功描述</TranFlag><PackageID>包序列ID</PackageID><userID>企业代码</userID><RepReserved1>返回包备用字段1</RepReserved1><RepReserved2>返回包备用字段2</RepReserved2> </opResult></opRep></ICBCYH>逐笔支付查询提交包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opReq><opName>NCQueryPayOrderDetailOp</opName><ReqParam><userID>企业代码(和证书里的一致)</userID> ---必输项<PackageID>包序列ID</PackageID> ---必输项(提交指令中的包ID)<ReqReserved1>请求包备用字段1</ReqReserved1><ReqReserved2>请求包备用字段2</ReqReserved2></ReqParam></opReq></ICBCYH>逐笔支付查询返回包<?xml version="1.0" encoding = "GB2312"?><ICBCYH><opRep><opName>NCQueryPayOrderDetailOp</opName><opResult><retCode>错误返回码错误描述在errMsg 中</retCode>此值只表示该交易是否执行成功,并不代表此笔支付是否成功或失败(非空表示交易执行失败,失败原因见errMsg)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中国工商银行网上银行C2C在线支付接口说明一、C2C流程说明:1、客户在商户浏览商品信息,签订订单;2、商户按照工行C2C订单数据规形成提交数据,并使用工行提供API和商户证书对订单数据签名,形成form表单返回客户浏览器,表单action地址指向工行接收商户C2C订单信息的servlet;3、客户确认使用工行支付后,提交此表单到工行;4、工行网银系统接收此笔C2C订单,对订单信息和商户信息进行检查,通过检查则显示工行C2C支付页面;5、客户在此页面可以查询客户在银行的预留信息;也可以输入支付卡号、支付密码、验证码进行C2C支付;6、工行检查客户信息,通过检查后显示确认页面;客户确认提交后工行进行支付指令处理;7、工行进行支付指令处理后,如果商户需要工行实时通知,则工行将处理结果使用http 协议post方式将通知消息数据提交到商户(这个接收银行通知消息的商户端地址是随商户订单数据提交银行的merURL字段),商户返回取货地址或关闭这个银行与其建立的连接后,银行才显示交易结果页面给客户。

(注意1、发送通知和显示结果页面是串行的,所以商户端接收银行通知处理时间太长可能导致客户等待超时,造成银行不能将交易结果页面显示给客户。

2、此连接是银行服务器自动和商户进行的连接,商户返回也是直接返回给银行,商户端不能对银行的这个请求进行重定向。

)8、工行进行支付指令处理后,如果商户不需要工行实时通知,则工行直接显示交易结果给客户。

二、C2C接口数据说明:接口数据格式定义通过接口名称和接口版本号来标识,以便将来的扩展;以下数据格式为“1.0.0.1”版的“ICBC_PERBANK_C2C”接口定义。

C2C商户提交表单接口定义:编码)商户提交表单签名merSignMsg 格式:根据订单中各数据项,使用&符进行连接成签名明文,各字段顺序固定;每个数据项由变量名称加等号加变量值组成;如果变量值为空仍需保留字段位置;格式说明如下:接口名称&接口版本号&订单号&订单金额&商城收费金额&支付币种&商城代码&商城账号&卖家收款卡号&卖家收款名称&校验联名标志&通知类型&通知地址&结果发送类型&交易日期时间interfaceName=值&interfaceVersion=值&orderID=值&amount=值&merFeeAmt=值&curType=值&merID=值&merAcct=值&venderCardNum=值& venderName =值&verifyJoinFlag=值&notifyType=值&merURL=值&resultType=值&orderDate=值举例:i n t e r fa c e N a m e =I C B C _P E R B A N K _C 2 C &interfaceVersion=1.0.0.0&orderID=001&amount=99999999&merFeeAmt=10000&c u r T y p e =001&m e r I D =A B C 001&m e r A c c t =31&v e n d e r C a r d N u m =20&三&verifyJoinFlag=0&notifyType=AG&merURL=&resultType=&orderDate=334C2C 通知商户交易结果接口定义:通知消息银行签名数据bankSignMsg格式:根据消息中各数据项,使用&符进行连接成银行端签名明文,各字段顺序固定;每个数据项由变量名称加等号加变量值组成;如果变量值为空仍保留字段位置;格式说明:接口名称&接口版本号&订单号&指令序号&订单金额&商城收费金额&支付币种&商城代码&商城账号&卖家收款卡号&卖家收款名称&买家收款卡号&买家付款名称&校验联名标志&客户联名标志&联名会员号&结果发送类型&交易日期时间&返回通知日期时间&订单处理状态&错误描述&备注1&备注2interfaceName=值&interfaceVersion=值&orderID=值& TranSerialNo =值&a m o u n t=值&m e r F e e A m t=值&c u r T y p e=值&m e r I D=值&m e r A c c t=值&venderCardNum=值&venderName =值&customCardNum=值&customName=值&verifyJoinFlag=值&JoinFlag=值&UserNum=值&resultType=值&orderDate=值&n o t i f y D a t e=值&t r a n S t a t=值&c o m m e n t=值remark1=值& remark2=值提示:以上格式为银行端签名明文格式,对于银行签名字段bankSignMsg,得到密文后进行了BASE64编码,所有字段在发出前取值部分都经过urlEcode编码(包括bankSignMsg字段)。

商户可能收到的银行通知:指令成功:只能有一笔成功、且要验证银行签名、订单金额等信息是否与商户端记录一致。

指令失败:注意可能收到多笔失败。

客户支付失败时可以重提此笔订单到银行支付。

指令可疑:由于网银系统与后台业务处理系统间通讯异常,造成网银不能确认支付指令结果,则此笔指令为可疑指令;可疑指令将被自动批复,商户、客户可于第二日查询指令状态。

没有收到银行通知:由于银行、商户两端服务器或者互联网通讯等原因可能造成商户端接收不到银行通知。

当没有收到银行通知时,可登录工行商户服务手工查询指令状态或者商户调用查询接口自动处理。

商户返回取货地址:取货地址(也可称为商户收到银行成功支付后的商户端确认地址):如果有取货地址则及时返回取货地址,没有取货地址需及时关闭连接;因为银行端先进行订单支付清算,然后给商户发送通知,在商户返回取货地址或者关闭连接后,才显示交易结果给客户,整个过程是串行的;如果商户在收到银行通知后,不及时返回或关闭连接,将可能造成客户端等待超时,无法显示最终的交易结果页面。

如果商户端接收到银行通知消息,进行后续检查和处理时,商户自己程序出现异常,不应将错误信息返回给银行。

银行只接收取货地址的返回,商户程序异常时,应及时关闭和银行的连接。

如果商户返回其他非取货地址的信息,银行端将验证返回信息不是有效的URL 而记录错误日志,在给客户的交易结果页面不会有商户返回的容。

三、安全API说明:为了保证商户提交订单数据和银行通知信息数据的完整性,不可抵赖性,现提供一套用于信息签名、验签和BASE64编解码的函数。

商户开发时使用这套函数和工行颁发的商户证书进行商户订单信息签名;签名数据项和顺序均固定,具体格式可参见上一节的数据定义;同时使用这套API和银行公钥可以验证银行通知消息的有效性。

安全API的使用方法可参见【开发API接口】目录中不同开发语言的说明和demo程序;四、开发步骤商户程序需在银行模拟测试环境上进行联调后,再投产,以下说明联调开发步骤。

生成订单:1、商户和当地行联系,申请联调测试;由当地行在模拟测试环境录入商户信息,生成商户证书(pfx格式);并提供银行模拟测试环境的银行证书公钥文件(用于验证银行签名时使用);2、商户或者银行用证书拆分工具将pfx格式的商户证书拆分成扩展名为crt的公钥文件和扩展名为key的私钥文件;(这两个文件用于商户开发API调用来进行商户订单数据签名)3、商户进行开发,准备【C2C商户提交表单接口定义】一节中要求的订单数据;4、其中订单签名数据merSignMsg字段需要根据【商户提交表单签名merSignMsg格式】一节中规定数据项和顺序来拼接成明文串;然后使用提供的API函数和商户私钥进行签名,得到签名串,然后做BASE64编码;5、其中商城证书公钥merCert字段需要使用API函数做BASE64编码;6、准备好订单数据,即完成订单提交的开发;之后只要将订单提交银行接收入口“https://银行地址/servlet/ICBCINBSEBusinessServlet”,银行来处理C2C指令的资金支付;接收通知:如果商户需要银行实时发送交易结果,则需要在订单的通知类型notifyType设置成“HS”,并设置有效的接收银行通知的接收地址merURL字段,银行在支付处理完成后会向此地址post交易结果表单,表单数据项已在【C2C通知商户交易结果接口定义】中说明;商户接收到银行通知后,需使用开发API和银行公钥来验证银行签名,以确保通知消息的有效性,以下简要说明验证步骤:1、商户收到银行通知,即接收到【C2C通知商户交易结果接口定义】中说明的各字段;各字段使用URLencode,如果商户端web服务器没有自动将各字段进行URLdecode,则商户程序需手工进行URL解码;2、获得各字段取值后,根据【通知消息银行签名数据bankSignMsg格式】格式中说明的数据项和顺序,拼成银行端签名数据明文;3、使用商户开发API和银行公钥文件对表单中的银行签名bankSignMsg进行验签;4、验签成功后,为确保数据一致,建议商户比较一下通知消息中订单金额、卖家卡号等关键信息和自己记录的是否一致;5、商户根据交易结果tranStat来更新自己的指令状态和相关数据库信息;6、如果商户没有信息返回给银行则直接关闭此连接;如果商户需要提供客户取货地址或者希望客户到商户自己的确认页面,则需要返回取货地址或确认页面的URL给银行,银行将在显示给客户的交易结果页面显示此URL的供客户点击;五、样例:商户提交订单form<FORM name="order" METHOD=POSTACTION="https://银行地址/servlet/ICBCINBSEBusinessServlet">1、订单只能使用POST方式提交;使用https协议通讯;2、接收servlet名称固定为:/servlet/ICBCINBSEBusinessServlet3、银行地址:如果是生产则为“”,若为模拟测试环境则为“”<INPUT NAME="interfaceName" TYPE="text" value="ICBC_PERBANK_C2C" >接口名称固定为“ICBC_PERBANK_C2C”<INPUT NAME="interfaceVersion" TYPE="text" value="1.0.0.0">接口版本目前为“1.0.0.0”<INPUT NAME="orderID" TYPE="text" value="001">订单号商户端产生,一天不能重复。

相关文档
最新文档