退款
退款说明
可以通过该接口实现申请退款操作,每次最多处理 50 笔订单,提交参数必须以 json 格式提交,退款处理后以 json 格式返回,每次退款必须为同一个网关号下交易成功的订单。
退款地址:
退款提交
退款提交参数列表(json 格式)
| 参数名 | 类型 | 最大长度 | 是否必填 | 描述 |
|---|---|---|---|---|
| merNo | String | 5 | Yes | 【商户号】 |
| gatewayNo | String | 8 | Yes | 【网关接入号】 |
| refundOrders | String | 1000 | 【退款订单集合】 退款订单详情,可以最大退款 50 比 具体请参看: 退款提交订单详情参数表 | |
| signInfo | 【数字签名信息】 商户号 + 网关号 + 每笔流水订单号 + 密钥,然后进行 sha256 签名 例如: (merNo+gatewayNo+tradeNo+signkey); |
退款提交订单详情参数
| 参数名 | 类型 | 最大长度 | 是否必填 | 描述 |
|---|---|---|---|---|
| tradeNo | String | 50 | Yes | 【流水订单号】 |
| orderNo | String | 50 | Yes | 【商户订单号】 |
| refundNo | String | 50 | No | 【商户退款流水号】 |
| tradeAmount | String | 10 | Yes | 【交易金额】 该笔订单的交易金额,只能为数字,并且只限小数点后 2 位小数. |
| refundAmount | String | 10 | Yes | 【退款金额】 需退款的金额,只能为数字,并且只限小 数点后 2 位小数,小于或者等于交易金额 |
| currency | String | 3 | Yes | 【交易币种】 |
| refundReason | String | 1000 | Yes | 【退款原因】 |
退款提交参数事例:
json
{
"merNo": "10000",
"gatewayNo": "10000001",
"signInfo": "213123435sdf",
"refundOrders": [
{
"tradeNo": "N2014081408182309029996",
"orderNo": "01111111",
"currency": "CNY",
"tradeAmount": "10",
"refundAmount": "1",
"refundReason": "test"
},
{
"tradeNo": "N2014090310210578151401",
"orderNo": "02222222",
"currency": "CNY",
"tradeAmount": "10",
"refundAmount": "1",
"refundReason": "test"
}
// ........
]
}退款返回
退款返回参数列表(json 格式)
| Name | Type | Description |
|---|---|---|
| merNo | Long | 【商户号】 |
| gatewayNo | Long | 【网关接入号】 |
| refundOrders | List | 【退款信息】 具体请参看:退款返回订单详情表 |
| signInfo | String | 【数字签名信息】 |
| errorStatus | String | 【退款校验状态】 0:失败 1:成功(仅代表提交成功,不是最终退款结果) |
| errorInfo | String | 【退款校验原因】 |
退款返回订单详情表
| Name | Type | Description |
|---|---|---|
| tradeNo | String | 【流水订单号】 |
| orderNo | String | 【商户订单号接入号】 |
| tradeAmount | String | 【交易金额】 |
| refundAmount | String | 【退款金额】 |
| currency | String | 【交易币种】 |
| refundReason | String | 【退款原因】 |
| refundStatus | String | 【单笔订单退款状态】 0:失败 1:成功 |
| refundInfo | String | 【单笔订单退款失败原因】 |
退款返回参数事例:
json
{
"errorInfo": "退款申请成功",
"errorStatus": "1",
"gatewayNo": 10000001,
"merNo": 10000,
"signInfo": "213123435sdf",
"refundOrders": [
{
"currency": "CNY",
"orderNo": "01233123",
"refundAmount": 1.125,
"refundInfo": "退款金额格式错误",
"refundStatus": "0",
"refundReason": "test",
"tradeAmount": 10,
"tradeNo": "N2014081408182309029996"
},
{
"currency": "CNY",
"orderNo": "01233213",
"refundAmount": 1,
"refundInfo": "只有成功的订单才能退款",
"refundStatus": "0",
"refundReason": "test",
"tradeAmount": 10,
"tradeNo": "N2014090310210578151401"
}
// .....
]
}