refund
POST: /amsin/api/v1/business/refund
集成商可调用此接口发起退款请求
接口结构
万里汇接口报文结构包括:请求头,请求体。关于头信息,详见:
注:集成商发送响应前需要正确加签,详见:发送响应:加签
请求参数
字段名  | 数据类型  | 是否为必填字段  | 描述  | 
refundRequestId  | 字符串  | 是  | 由集成商指定的唯一退款ID更多信息: 更多信息: 
  | 
payToId  | 字符串  | 是  | 针对每笔PayToDetail,由万里汇生成的支付单号,可以唯一标识每笔支付。 更多信息: 
  | 
refundToDetails  | Array<RefundToDetail 对象>  | 是  | 退款入款方资金分配  | 
refundDetails  | Array<RefundDetail 对象>  | 是  | 退款出款方资金分配 更多信息: 
  | 
refundReason  | 字符串  | 是  | 退款原因 更多信息: 
  | 
refundRequestTime  | DateTime 对象  | 是  | 商户退款申请时间 更多信息: 
  | 
refundOrder  | RefundOrder 对象  | 否  | 退款单  | 
响应参数
字段名  | 数据类型  | 是否为必填字段  | 描述  | 
result  | Result 对象  | 是  | 本次调用结果, 反映本次调用的业务状态、错误信息等  | 
responseId  | 字符串  | 是  | 由万里汇定义的退款请求响应ID 更多信息: 
  | 
payToId  | 字符串  | 否  | 针对每笔PayToDetail,由万里汇生成的支付单号,可以唯一标识每笔支付。 更多信息: 
  | 
refundId  | 字符串  | 否  | 万里汇受理退款的唯一单号ID 更多信息: 
  | 
refundToDetails  | Array<RefundToDetail 对象>  | 是  | 退款入款方资金分配  | 
refundTime  | DateTime 对象  | 否  | 万里汇成功受理退款请求的时间 更多信息: 
  | 
响应处理
集成商调用接口后,万里汇做出响应。响应字段result.resultStatus可能取值为:
Result status  | 状态描述  | 
S  | API请求成功  | 
F  | API请求失败 失败原因请检查  | 
U  | API检查结果未知,请重试API请求。 
  | 
结果码
result.resultCode
resultCode  | resultStatus  | resultMessage  | 处理建议  | 
SUCCESS  | S  | Success  | |
PARAM_ILLEGAL  | F  | Illegal parameters exist. For example, a non-numeric input, or an invalid date.  | 参考API文档页面以确认请求头和传参是否正确  | 
PROCESS_FAIL  | F  | A general business failure occurred. Do not retry.  | 需要人工介入。联系万里汇技术支持以解决此问题  | 
UNKNOWN_EXCEPTION  | U  | API failed due to unknown reason.  | 服务器忙。若稍后重试问题依旧,联系万里汇技术支持以解决问题  | 
UNKNOWN_CLIENT  | F  | Unknown client.  | 检查Client ID是否配置正确  | 
API_IS_INVALID  | F  | API is invalid (or not active)  | 检查调用API是否正确  | 
INVALID_CLIENT  | F  | The client is invalid.  | Client ID配置错误或不存在  | 
INVALID_API  | F  | The called API is invalid or not active.  | 检查调用API是否正确  | 
CLIENT_FORBIDDEN_ACCESS_API  | F  | Client is not authorized to use this API.  | 检查Client ID是否配置正确  | 
ACCESS_DENIED  | F  | Access denied.  | 联系万里汇技术支持以解决此问题  | 
KEY_NOT_FOUND  | F  | Key is not found.  | 服务器上无匹配Client ID的密钥,或RSA 密钥未配置  | 
INVALID_CLIENT_STATUS  | F  | Invalid client status.  | 检查Client ID是否配置正确  | 
INVALID_SIGNATURE  | F  | The signature is invalid.  | 检查签名是否正确  | 
METHOD_NOT_SUPPORTED  | F  | The server does not implement the requested HTTP method.  | 检查API HTTP请求方法是否是POST  | 
CURRENCY_NOT_SUPPORT  | F  | The currency is not supported.  | 确认币种是否正确,重试  | 
CONTRACT_NOT_EXIST  | F  | contract does not exist  | 确认集成商和万里汇是否签约  | 
REFUND_AMOUNT_EXCEED  | F  | REFUND_AMOUNT_EXCEED  | 换单重试  | 
范例
{
  "payToId":"*****",  
  "refundRequestTime":"2019-11-27T18:14:41-08:00",
  "refundToDetails":[
    {
      "refundMethod":{
        "paymentMethodType":"WALLET_WF"
      },
      "refundToAmount":{
        "currency":"TWD",
        "value":100
      },
      "refundAmount":{
        "currency":"TWD",
        "value":100
      }
    }
  ],
  "refundRequestId":"*****"
}响应
{
  "result":{
    "resultCode":"SUCCESS",
    "resultMessage":"success.",
    "resultStatus":"S"
  },
  "payToId":"*****",
  "refundId":"*****",
  "refundRequestId":"*****",
  "refundTime":"2019-11-28T10:14:41+08:00",
  "refundToDetails":[
    {
      "refundAmount":{
        "currency":"TWD",
        "value":"100"
      },
      "refundMethod":{
        "paymentMethodType":"WALLET_WF"
      },
      "refundToAmount":{
        "currency":"TWD",
        "value":"100"
      }
    }
  ]
}