请求分账回退

更新时间:2024.11.05

如果订单已经分账,在退款时,可以先调此接口,将已分账的资金从商户类型的分账接收方的账户回退给分账方,再发起退款。

注意

  1. 分账回退以原分账单为依据,支持多次回退,申请回退总金额不能超过原分账单分给该接收方的金额。

  2. 此接口采用同步处理模式,即在接收到商户请求后,会实时返回处理结果。

  3. 退款和分账回退没有耦合,分账回退可以先于退款请求,也可以后于退款请求。

  4. 对同一笔分账单最多能发起20次分账回退请求。

  5. 不支持针对“分账到零钱”的分账单发起分账回退。

  6. 分账回退的时限是180天。

接口说明

支持商户:【普通服务商】

请求方式:【POST】/v3/brand/profitsharing/returnorders

请求域名:【主域名】https://api.mch.weixin.qq.com 使用该域名将访问就近的接入点

     【备域名】https://api2.mch.weixin.qq.com 使用该域名将访问异地的接入点 ,指引点击查看

请求参数

Header HTTP头参数

Authorization  必填 string

请参考签名认证生成认证信息


Accept  必填 string

请设置为application/json


Content-Type  必填 string

请设置为application/json


body 包体参数

sub_mchid  必填 string(32)

【子商户号】分账回退的接收商户,对应原分账出资的分账方商户,填写微信支付分配的商户号


order_id  选填 string(64)

【微信分账单号】微信分账单号,微信系统返回的唯一标识。微信分账单号和商户分账单号二选一填写


out_order_no  选填 string(64)

【商户分账单号】商户系统内部的分账单号,在商户系统内部唯一(单次分账、多次分账、完结分账应使用不同的商户分账单号),同一分账单号多次请求等同一次。微信分账单号和商户分账单号二选一填写 取值范围:[0-9a-zA-Z_*@-]


out_return_no  必填 string(64)

【商户回退单号】此回退单号是商户在自己后台生成的一个新的回退单号,在商户后台唯一


return_mchid  必填 string(32)

【回退商户号】分账回退的出资商户,只能对原分账请求中成功分给商户接收方进行回退


amount  必填 integer

【回退金额】需要从分账接收方回退的金额,单位为分,只能为整数,不能超过原始分账单分出给该接收方的金额


description  必填 string(80)

【回退描述】分账回退的原因描述

请求示例

POST

1curl -X POST \
2  https://api.mch.weixin.qq.com/v3/brand/profitsharing/returnorders \
3  -H "Authorization: WECHATPAY2-SHA256-RSA2048 mchid=\"1900000001\",..." \
4  -H "Accept: application/json" \
5  -H "Content-Type: application/json" \
6  -d '{
7    "sub_mchid" : "1900000109",
8    "order_id" : "3008450740201411110007820472",
9    "out_order_no" : "P20150806125346",
10    "out_return_no" : "R20190516001",
11    "return_mchid" : "R20190516001",
12    "amount" : 10,
13    "description" : "分账回退"
14  }'
15

应答参数

200 OK

sub_mchid  必填 string

【子商户号】分账回退的接收商户,对应原分账出资的分账方商户,填写微信支付分配的商户号。


order_id  必填 string

【微信分账单号】参考请求参数


out_order_no  必填 string

【商户分账单号】参考请求参数


out_return_no  必填 string

【商户回退单号】此回退单号是商户在自己后台生成的一个新的回退单号,在商户后台唯一 只能是数字、大小写字母_-*@ ,同一回退单号多次请求等同一次。


return_mchid  必填 string

【回退商户号】回退商户号只能填写原分账请求中接收分账的商户号。


amount  必填 integer

【回退金额】需要从分账接收方回退的金额,单位为分,只能为整数,不能超过原始分账单分出给该接收方的金额


return_no  必填 string

【微信回退单号】微信分账回退单号,微信系统返回的唯一标识


result  必填 string

【回退结果】如果请求返回为处理中,则商户可以通过调用回退结果查询接口获取请求的最终处理结果。如果返回为处理中,请勿变更商户回退单号,使用相同的参数再次发起分账回退,否则会出现资金风险。在处理中状态的回退单如果5天没有成功,会因为超时被设置为已失败
枚举值:

  • PROCESSING:处理中

  • SUCCESS:已成功

  • FAIL:已失败


fail_reason  选填 string

【失败原因】回退失败的原因,此字段仅回退结果为FAIL时存在,枚举值:

  • ACCOUNT_ABNORMAL:原分账接收方账户异常

  • TIME_OUT_CLOSED:超时关单

  • PAYER_ACCOUNT_ABNORMAL: 原分账分出方账户异常


finish_time  必填 string

【完成时间】分账回退完成时间,遵循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年05月20日13点29分35秒。

应答示例

200 OK

1{
2  "sub_mchid" : "1900000109",
3  "order_id" : "3008450740201411110007820472",
4  "out_order_no" : "P20150806125346",
5  "out_return_no" : "R20190516001",
6  "return_mchid" : "86693852",
7  "amount" : 10,
8  "return_no" : "3008450740201411110007820472",
9  "result" : "SUCCESS",
10  "fail_reason" : "TIME_OUT_CLOSED",
11  "finish_time" : "2015-05-20T13:29:35.120+08:00"
12}
13

 

错误码

公共错误码

状态码

错误码

描述

解决方案

400

PARAM_ERROR

参数错误

请根据错误提示正确传入参数

400

INVALID_REQUEST

HTTP 请求不符合微信支付 APIv3 接口规则

请参阅 接口规则

401

SIGN_ERROR

验证不通过

请参阅 签名常见问题

500

SYSTEM_ERROR

系统异常,请稍后重试

请稍后重试

业务错误码

状态码

错误码

描述

解决方案

400

INVALID_REQUEST

回退方不存在

请根据返回的错误信息确认违反的业务规则

400

PARAM_ERROR

订单号格式不正确

请使用正确的参数重新调用

403

NO_AUTH

回退方未开通分账回退功能

请先让回退方开通分账回退功能

429

FREQUENCY_LIMITED

商户发起分账回退的频率过高

请降低频率后重试

500

SYSTEM_ERROR

系统错误

系统异常,请使用相同参数稍后重新调用

 

 

反馈
咨询
目录
置顶