最新更新时间:2022.04.15 版本说明
订单已经分账,在退款时,可以先调此接口,将已分账的资金从分账接收方的账户回退给分账方,再发起退款。
• 分账回退以原分账单为依据,支持多次回退,申请回退总金额不能超过原分账单分给该接收方的金额。
• 此接口采用同步处理模式,即在接收到商户请求后,会实时返回处理结果。
• 商户类型的接收方,自动开通了分账回退,可以直接调接口回退。
• 分账订单的退款与分账回退并无强耦合。是否需要分账回退,可由平台决定。在二级商户余额充足的情况下,可以不发起回退,直接发起退款。
• 对同一个分账接收方最多能发起20次分账回退请求。
• 不支持针对“分账到零钱”的分账单发起分账回退。
• 分账回退的时限是180天。
适用对象:电商平台
请求URL:https://api.mch.weixin.qq.com/v3/ecommerce/profitsharing/returnorders
请求方式:POST
path指该参数为路径参数
query指该参数需在请求URL传参
body指该参数需在请求JSON传参
参数名 | 变量 | 类型[长度限制] | 必填 | 描述 |
---|---|---|---|---|
二级商户号 | sub_mchid | string[1,32] | 是 | body 分账出资的电商平台二级商户,填写微信支付分配的商户号。 示例值:1900000109 |
微信分账单号 | order_id | string[1,64] | 二选一 | body 微信分账单号,微信支付系统返回的唯一标识。微信分账单号和商户分账单号二选一填写。 示例值:3008450740201411110007820472 |
商户分账单号 | out_order_no | string[1,64] | body 原发起分账请求时使用的商户系统内部的分账单号。微信分账单号与商户分账单号二选一填写。
示例值:P20150806125346 |
|
商户回退单号 | out_return_no | string[1,64] | 是 | body 此回退单号是商户在自己后台生成的一个新的回退单号,在商户后台唯一。 示例值:R20190516001 |
回退商户号 | return_mchid | string[1,32] | 是 | body 回退商户号只能填写原分账请求中接收分账的商户号。 示例值:86693852 |
回退金额 | amount | int | 是 | body 需要从分账接收方回退的金额,单位为分,只能为整数,不能超过原始分账单分出给该接收方的金额。 示例值:10 |
回退描述 | description | string[1,80] | 是 | body 分账回退的原因描述 示例值:分账回退 |
{
"sub_mchid": "1900000109",
"order_id": "3008450740201411110007820472",
"out_return_no": "R20190516001",
"return_mchid": "86693852",
"amount": 10,
"description": "分账回退"
}
参数名 | 变量 | 类型[长度限制] | 必填 | 描述 |
---|---|---|---|---|
二级商户号 | sub_mchid | string[1,32] | 是 | 分账出资的电商平台二级商户,填写微信支付分配的商户号。 示例值:1900000109 |
微信分账单号 | order_id | string[1,64] | 是 | 原发起分账请求时,微信返回的微信分账单号,与商户分账单号一一对应。 微信分账单号与商户分账单号二选一填写。 示例值: 3008450740201411110007820472 |
商户分账单号 | out_order_no | string[1,64] | 是 | 商户系统内部的分账单号,在商户系统内部唯一(单次分账、多次分账、完结分账应使用不同的商户分账单号),同一分账单号多次请求等同一次。 示例值:P20150806125346 |
商户回退单号 | out_return_no | string[1,64] | 是 | 此回退单号是商户在自己后台生成的一个新的回退单号,在商户后台唯一 只能是数字、大小写字母_-*@ ,同一回退单号多次请求等同一次。 示例值:R20190516001 |
回退商户号 | return_mchid | string[1,32] | 是 | 回退商户号只能填写原分账请求中接收分账的商户号。 示例值:86693852 |
回退金额 | amount | int | 是 | 需要从分账接收方回退的金额,单位为分,只能为整数,不能超过原始分账单分出给该接收方的金额。 示例值:10 |
微信回退单号 | return_no | string[1,64] | 是 | 微信分账回退单号,微信支付系统返回的唯一标识。 示例值: 3008450740201411110007820472 |
回退结果 | result | string[1,32] | 是 | 如果请求返回为处理中,则商户可以通过调用回退结果查询接口获取请求的最终处理结果,枚举值: PROCESSING:处理中 SUCCESS:已成功 FAILED:已失败 注意:如果返回为处理中,请勿变更商户回退单号,使用相同的参数再次发起分账回退,否则会出现资金风险 在处理中状态的回退单如果5天没有成功,会因为超时被设置为已失败 示例值:SUCCESS |
失败原因 | fail_reason | string[1,32] | 否 | 回退失败的原因,此字段仅回退结果为FAIL时存在,枚举值: ACCOUNT_ABNORMAL:原分账接收方账户异常 TIME_OUT_CLOSED::超时关单 PAYER_ACCOUNT_ABNORMAL:原分账分出方账户异常 示例值:TIME_OUT_CLOSED |
完成时间 | finish_time | string[1,64] | 是 | 分账回退完成时间,遵循rfc3339标准格式 格式为yyyy-MM-DDTHH:mm:ss.sss+TIMEZONE,yyyy-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss.sss表示时分秒毫秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2015-05-20T13:29:35.120+08:00表示,北京时间2015年5月20日 13点29分35秒。 示例值:2015-05-20T13:29:35.120+08:00 |
{
"sub_mchid": "1900000109",
"order_id": "3008450740201411110007820472",
"out_order_no": "P20150806125346",
"out_return_no": "R20190516001",
"return_mchid": "86693852",
"amount": 10,
"return_no": "3008450740201411110007820472",
"result": "SUCCESS",
"fail_reason": "TIME_OUT_CLOSED",
"finish_time": "2015-05-20T13:29:35.120+08:00"
}
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
500 | SYSTEM_ERROR | 系统错误 | 系统异常,请使用相同参数稍后重新调用 |
403 | NOT_ENOUGH | 剩余可回退的金额不足 | 调整回退金额 |
400 | PARAM_ERROR | 订单号格式不正确 | 请使用正确的参数重新调用 |
400 | INVALID_REQUEST | 回退方不存在 | 请根据返回的错误信息确认违反的业务规则 |
429 | FREQUENCY_LIMITED | 商户发起分账回退的频率过高 | 请降低频率后重试 |
403 | NO_AUTH | 回退方未开通分账回退功能 | 请先让回退方开通分账回退功能 |