createPayout需要签名验签
调用本接口向万里汇外部账户进行转账(比如转账到银行卡或支付宝账户)。
报文结构
万里汇接口报文结构包括:请求头,请求体。
请求头
字段名 | 是否必传 | 范例 | 说明 |
Client-Id | 是 |
| 关于这些参数的解释说明,详见:请求头 |
Signature | 是 |
| |
Content-Type | 是 |
| |
Request-Time | 是 |
| |
Connected-CustomerId | 否(有条件) |
| 当集成商操作商户账户时需要传递 |
入参
transferRequestId String REQUIRED
由集成商定义的唯一转账识别ID。
更多信息:
- 此为幂等字段。
- 最大长度:64 字符
transferFromDetail TransferFromDetail REQUIRED
支付方提供的转账详细信息。
transferToDetail TransferToDetail REQUIRED
收款方接受的转账详细信息。
businessSceneCode String CONDITIONAL
转账业务类型码。当 transferToDetail.transferToAmount.currency = CNY
时,此字段为必传。
可取值如下:
THIRD_PARTY_PAYOUT
:转账到第三方卡。第三方卡包括企业卡和个人卡。SAME_NAME_PAYOUT
:提现到同名卡。
出参
result Result REQUIRED
代表API调用结果。
transferRequestId String REQUIRED
由集成商定义的唯一转账识别ID。
该字段只有当 result.resultStatus =
S
时才会按需返回。
更多信息:
- 此为幂等字段。
- 最大长度:64 字符
transferId String REQUIRED
由万里汇定义的转账识别ID。
该字段只有当 result.resultStatus =
S
时才会按需返回。
更多信息:
- 最大长度:64 字符
transferFromDetail TransferFromDetail REQUIRED
支付方需要支付的转账金额。
该字段只有当 result.resultStatus =
S
时才会按需返回。
transferToDetail TransferToDetail REQUIRED
转账细节,包括收款方可收到的金额等。
该字段只有当 result.resultStatus =
S
时才会按需返回。
请求
响应
响应处理
集成商调用接口后,万里汇返回集成商API调用结果。
result.resultStatus 字段取值范围为:
result.resultCode:系统结果码
结果码 | 值 | 结果码信息 | 行动建议 |
---|---|---|---|
SUCCESS | S | Success | |
PROCESSING | S | The transfer is in process. | 转账请求已创建,处理中。 |
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. | 服务器错误,若稍后重试问题依旧,联系万里汇技术支持以解决问题。 |
REQUEST_TRAFFIC_EXCEED_LIMIT | U | The request traffic exceeds the limit. | 重试,若问题依旧,联系万里汇技术支持。 |
INVALID_API | F | The called API is invalid or not active. | 确认是否调用正确的API。 |
INVALID_CLIENT | F | The client is invalid. | Client ID不存在或无效。 |
INVALID_SIGNATURE | F | The signature is invalid. | 确认请求正确加签。 |
METHOD_NOT_SUPPORTED | F | The server does not implement the requested HTTP method. | 确认HTTP请求方法为 |
result.resultCode:业务结果码
结果码 | 值 | 结果码信息 | 行动建议 |
---|---|---|---|
UN_SUPPORT_BUSINESS | F | Unsupported business. | 包含无效参数(如货币代码错误),使用正确的参数重试。 |
USER_NO_PERMISSION | F | User does not have permission. | 使用其他用户信息重试。 |
CARD_INFO_NOT_MATCH | F | The card information does not match. | 换卡重试 |
CURRENCY_NOT_SUPPORT | F | The currency is not supported. | 确认币种信息正确后重试。 |
USER_NOT_EXIST | F | The user does not exist. | 使用正确的用户信息重试。 |
USER_ACCOUNT_ABNORMAL | F | The user account status is abnormal. | 使用其他用户信息重试。如问题依旧,联系万里汇技术支持。 |
REPEAT_REQ_INCONSISTENT | F | Repeated requests are inconsistent. | 确认请求中所有参数一致重试。 |
USER_STATUS_ABNORMAL | F | The status of the user is abnormal. Retry with another card. | 使用其他用户信息重试。 |
BALANCE_NOT_ENOUGH | F | Balance is not enough. | 确认余额充足后重试。 |
AMOUNT_EXCEED_LIMIT | F | The amount exceeds the limit. | 确认金额正确后重试。 |
CONTRACT_NOT_EXIST | F | Contract does not exist. | 确认集成商已签约、且输入的签约信息正确后重试。 |
CONTRACT_CHECK_FAIL | F | The contract check has failed. | 检查合约状态后重试。 |
QUOTE_EXPIRED | F | The quote is expired. | 调用createQuote 接口创建一个新的报价。使用新的报价重试。 |
AVAILABLE_QUOTA_NOT_ENOUGH | F | Payout quota is not enough. | 调用inquiryAvailableQuota接口查询目前可用的结汇额度,确保额度充足后重试。 |