请求地址
生产环境
https://payment.ebank.cmbchina.com/NetPayment/BaseHttp.dll?DoRefund
测试环境
http://121.15.180.66:801/NetPayment_dl/BaseHttp.dll?DoRefund
请求报文
报文的参数名:jsonRequestData,参数值JSON格式见下表
参数名称 |
JSON键值 |
类型(长度) |
必填 |
描述 |
示例 |
接口版本号 |
version |
String(3) |
M |
固定为”1.0” |
1.0 |
参数编码 |
charset |
String(8) |
M |
固定为“UTF-8” |
UTF-8 |
报文签名 |
sign |
String |
M |
对reqData内的数据进行签名 |
|
签名算法 |
signType |
String |
M |
固定为“SHA-256” |
SHA-256 |
请求数据 |
reqData |
请求时间 |
dateTime |
String(14) |
M |
商户发起该请求的当前时间,精确到秒
格式:yyyyMMddHHmmss含义:
|
20160623120100 |
分行号 |
branchNo |
String(4) |
M |
商户分行号,4位数字 |
0755 |
商户号 |
merchantNo |
String(6) |
M |
商户号,6位数字 |
000054 |
订单日期 |
date |
String(8) |
M |
商户订单日期,格式:yyyyMMdd |
20160624 |
订单号 |
orderNo |
String(32) |
M |
商户订单号,支付时的订单号 |
9999000001 |
退款流水号 |
refundSerialNo |
String(20) |
O |
商户生成,同一笔订单内,同一退款流水号只能退款一次。
可用于防重复退款。
|
|
退款金额 |
amount |
String(14) |
M |
格式:xxxx.xx 固定两位小数,最大11位整数 |
0.01 |
退款描述 |
desc |
String(100) |
O |
|
|
操作员号 |
operatorNo |
String |
O |
商户结账系统的操作员号,选填,若填了则会对操作员号和密码进行校验,若不填则不校验。 |
9999 |
操作员密码加密算法 |
encrypType |
String |
O |
RC4:使用RC4算法对操作员密码进行加密,加密密钥为支付密钥。
DES:使用DES算法对操作员密码进行加密,加密密钥为商户支付密钥的前8位,不足8位则右补0。
空:默认不加密;
|
|
操作员密码 |
pwd |
String |
O |
操作员登录密码。使用encrypType算法加密后的密码
注意:加密后的密文必须转换为16进制字符串表示
|
BF6DC5D23519 |
请求示例
1.json报文组织:
{
"version":"1.0",
"charset":"UTF-8",
"sign":"见签名处理章节",
"signType":"SHA-256",
"reqData":{
"dateTime":"20160806150213",
"branchNo":"0755",
"merchantNo":"000054",
"date":"20160629",
"orderNo":"9999000042",
"amount":"0.01",
"desc":"",
"refundSerialNo":"201606250000001",
"operatorNo":"9999",
"encrypType":"RC4",
"pwd":"BF6DC5D23519"
}
}
2.表单组织:
<form action="请求地址" method="post" >
<input type="hidden" name="jsonRequestData" value='以上json字符串' />
<input type="hidden" name="charset" value='utf-8' />
</form>
3.待签名字符串示例(未包含支付密钥):
amount=0.01&branchNo=0755&date=20160629&dateTime=20160806150213&desc=&encrypType=RC4&merchantNo=000054&operatorNo=9999&orderNo=9999000042&pwd=BF6DC5D23519&refundSerialNo=201606250000001
响应示例
1.正常json报文组织:
{
"version":"1.0",
"charset":"UTF-8",
"rspData":{
"rspCode":"SUC0000",
"rspMsg":"",
"dateTime":"20160806150217",
"bankSerialNo":"16280672300000000010",
"currency":"10",
"amount":"0.01",
"refundRefNo":"608061000002",
"bankDate":"20160806",
"bankTime":"150052",
"refundSerialNo":"123456789",
"settleAmount":"0.01",
"discountAmount":"0.01"
}
}