未完成订单还款异步通知
1. 接口介绍
功能简述:
客户欠款由招行系统自动补扣还款成功,或客户通过商户补缴入口主动还款成功后,招行系统后台会主动推送通知到商户指定地址,商户可异步更新客户未完成订单的状态。其中,回调地址由对接分行在商户管理系统申请配置。
约束条件:
无
正常流程:
1、 补扣/补缴还款成功
2、 往回调地址发送通知
3、 商户响应HTTP 200
异常流程:
1、 商户提供的回调地址网络不通
2、 商户没响应HTTP 200
2. 请求地址
商户提供的回调通知地址。
3. 请求报文
适用于银行主动回调商户,报文通过招行证书私钥进行签名,商户需通过招行公钥验证通知来源于招行。由银行作为发起方发起请求,商户接收请求后返回响应信息。
报文的参数名:jsonRequestData,参数值JSON格式见下表
参数名 | 类型(长度) | 必填 | 描述 | 示例 |
---|---|---|---|---|
version | String(3) | M | 接口版本号,固定为1.0 | 1.0 |
charset | String(8) | M | 参数编码,固定为UTF-8 | UTF-8 |
sign | String | M | 报文签名,使用招行私钥对noticeData内的数据进行签名;商户需使用招行公钥验签。 | |
signType | String | M | 签名算法,固定为RSA | RSA |
noticeData | 应答数据 | |||
dateTime | String(14) | M | 请求时间,银行处理该交易的时间。格式:yyyyMMddHHmmss | 20160623101430 |
rspCode | String(7) | M | 处理结果返回码SUC0000 :交易成功其他:请求处理失败 | SUC0000 |
rspMsg | String | M | 结果描述信息 | 订单还款成功 |
noticeType | String | M | 通知类型,本接口固定为BKDB | BKDB |
noticeSerialNo | String(40) | M | 通知序号 | 201606238888888 |
noticeUrl | String | M | 回调地址 | http://test.52sz.co/zsPay/zsResult.php |
httpMethod | String | M | 回调方法,固定为POST | POST |
branchNo | String(4) | M | 商户分行号,4位数字 | 0755 |
merchantNo | String(6) | M | 商户号,6位数字 | 002346 |
date | String(8) | M | 商户订单日期 格式:yyyyMMdd | 20190505 |
orderNo | String(32) | M | 商户订单号 | 2016062310143088 |
amount | String(20) | M | 交易金额,以元为单位,如10.01表示10元零1分 | 10.01 |
discountAmount | String(20) | M | 优惠金额,以元为单位,如0.02表示 零元2分 | 0.02 |
discountFlag | String(1) | M | 优惠标识 Y:有优惠 N:无优惠 | 2016062310143088 |
bankSerialNo | String(30) | M | 银行处理该请求的流水号 | 2016062310143099 |
settleDate | String(8) | M | 银行账务日期(YYYYMMDD),用于商户与银行对账 | 20161212 |
card_type | String(2) | C | 交易卡类型 02 本行借记卡; 03 本行信用卡; 08 他行借记卡; 09 他行信用卡。 | 02 |
merchantPara | String(50) | C | 商户附加参数,原样返回商户扣款请求中的附加参数字段trnAbs信息。 | 科兴停车费 |
相应示例:
正常json报文组织:
{ "version":"1.0", "charset":"UTF-8", "sign":"…", "signType":"RSA", "noticeData":{ "dateTime":"20160622182921", "branchNo":"0755", "merchantNo":"002346", "rspCode":"SUC0000", "rspMsg":"订单还款成功", "noticeType":"BKDB", "noticeSerialNo":"201606238888888", "noticeUrl":"http://test.52sz.co/zsPay/zsResult.php", "httpMethod":"POST", "date":"20160623", " orderNo ":"2016062310143088", "amount":"10.01", " discountAmount ":"0.02", " discountFlag ":"Y", "bankSerialNo":"2016062310143099", "settleDate":"20161212", "card_type":"02", " merchantPara ":"科兴停车费" } }
表单组织:
<form action="请求地址" method="post" > <input type="hidden" name="jsonRequestData" value="以上json字符串" /> </form>
待验证签名字符串为:
agrNo=1234567891234568789&amount=10.01&bankSerialNo=2016062310143099&card_type=02&date=20160623&dateTime=20160622182921&discountAmount=0.02&discountFlag=Y&fee_amt=0.07&httpMethod=POST&merchantPara=科兴停车费 &orderNo=2016062310143088?iceSerialNo=201606238888888?iceType=BKDB?iceUrl=http://test.52sz.co/zsPay/zsResult.php&payer=C&rspCode=SUC0000&rspMsg=补扣成功&settleDate=20161212
4. 响应报文
返回 HTTP Status Code 200,表示成功接收。否则表示未成功,未成功则银行会进行重发,重发直至响应成功或重发次数达到上限9次后停止重发。
5. 错误码
无
6. FAQ
无