申请批量结算

更新时间:2024.12.03

申请个人收款批量结算

接口说明

支持商户:【平台商户】

请求方式:【POST】/v3/platsolution/ecommerce/settle/prepay-settle-orders

请求域名:【主域名】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 包体参数

appid  必填 string(32)

【发起方AppID】 发起方AppID,需要跟后续拉起确认页的AppID保持一致


out_settle_batch_no  必填 string(32)

【商户结算批次单号】 商户系统内部生成的结算批次单号,商户号下保证唯一,只能由数字、大小写字母_-|@组成。一笔商户结算批次单号可操作多笔交易订单结算,同一笔商户结算批次单号多次请求,需保证请求内容完全一致。


individual_auth_id  必填 string(64)

【商品单个人收款方受理授权ID】 标识一个微信用户在该平台用于个人收款的微信支付账户,平台邀请微信用户完成个人收款授权后获得此id,详见 查询个人收款方授权结果


notify_url  必填 string(255)

【通知地址】 商户接收个人收款结算结果的回调地址,通知URL必须为外网可访问的URL,不能携带参数。仅支持域名且必须为HTTPS


description  必填 string(255)

【收款方描述】 收款方描述,用于展示在用户确认收款的页面上


trade_scenario  必填 string

【交易场景】 交易场景,必须与结算信息列表中的每一笔订单支付时的结算收款类型一致
可选取值:

  • RECOMMERCE: 二手交易


settle_info_list  必填 array[SettleInfo]

【结算信息列表】 结算信息列表,上限数量20。

属性

请求示例

POST

1curl -X POST \
2  https://api.mch.weixin.qq.com/v3/platsolution/ecommerce/settle/prepay-settle-orders \
3  -H "Authorization: WECHATPAY2-SHA256-RSA2048 mchid=\"1900000001\",..." \
4  -H "Accept: application/json" \
5  -H "Content-Type: application/json" \
6  -d '{
7    "appid" : "WXA12368855126622",
8    "out_settle_batch_no" : "1236698745558870",
9    "individual_auth_id" : "256322110225",
10    "notify_url" : "https://www.weixin.qq.com/wxpay/pay.php",
11    "description" : "共计2笔订单,订单金额xxx元,平台服务费xxx元,合计收款xxx元",
12    "trade_scenario" : "RECOMMERCE",
13    "settle_info_list" : [
14      {
15        "out_settle_no" : "12369666555136622",
16        "transaction_id" : "4207752501201407033233368018",
17        "settle_detail_info_list" : [
18          {
19            "out_settle_detail_no" : "123688556699666554",
20            "settle_type" : "RECEIVE",
21            "receiver_type" : "MERCHANT",
22            "receiver_account" : "1234567890",
23            "amount" : {
24              "amount" : 11000,
25              "currency" : "CNY"
26            }
27          }
28        ]
29      }
30    ]
31  }'
32

应答参数

success 成功回调的参数

200 OK

out_settle_batch_no  必填 string(32)

【商户结算批次单号】 商户结算批次单号


settle_batch_no  必填 string(64)

【微信支付结算批次单号】 微信支付系统内部生成的结算批次单号,全局唯一对应一笔商户结算批次单号。


individual_auth_id  必填 string(64)

【商品单个人收款方受理授权ID】 标识一个微信用户在该平台用于个人收款的微信支付账户,平台邀请微信用户完成个人收款授权后获得此id,详见 查询个人收款方授权结果


description  必填 string(255)

【收款方描述】 收款方描述


state  必填 string

【批次状态】 批次状态
可选取值:

  • ACCEPTED: 结算已受理

  • RECEIVED: 用户入账成功

  • SUCCESS: 结算完成


trade_scenario  必填 string

【交易场景】 交易场景
可选取值:

  • RECOMMERCE: 二手交易


create_time  必填 string(32)

【批次创建时间】 遵循rfc3339标准格式,格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2015-05-20T13:29:35+08:00表示,北京时间2015年5月20日13点29分35秒。


finish_time  选填 string(32)

【批次完成时间】 仅在批次状态为【结算成功】的时候有值。
遵循rfc3339标准格式,格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2015-05-20T13:29:35+08:00表示,北京时间2015年5月20日13点29分35秒。

成功回调的参数示例

200 OK

1{
2  "out_settle_batch_no" : "123699878455555",
3  "settle_batch_no" : "123688554855555666",
4  "individual_auth_id" : "1900000109",
5  "description" : "共计2笔订单,订单金额xxx元,平台服务费xxx元,合计收款xxx元",
6  "state" : "ACCEPTED",
7  "trade_scenario" : "RECOMMERCE",
8  "create_time" : "2024-06-08T10:34:56+08:00",
9  "finish_time" : "2024-06-08T10:34:56+08:00"
10}

fail 失败回调的参数

code 必填 string(32)

错误码详见错误码部分


message 必填 string(1024)

【失败原因】 不建议展示给用户,仅用于商户的开发人员定位失败原因。

失败回调的参数示例

1{
2  code: "PARAM_ERROR",
3  message: "AppID 格式有误"
4}

错误码

公共错误码

状态码

错误码

描述

解决方案

400

PARAM_ERROR

参数错误

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

400

INVALID_REQUEST

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

请参阅 基本规则

401

SIGN_ERROR

验证不通过

请参阅 签名常见问题

500

SYSTEM_ERROR

系统异常,请稍后重试

请稍后重试

业务错误码

状态码

错误码

描述

解决方案

429

FREQUENCY_LIMITED

频率限制

结算请求频率过高,请降低频率后重试。若要确认结算受理结果可以延迟一段时间后查询。

400

ALREADY_EXISTS

订单已存在

存在已受理过结算单,请勿重复发起结算。

403

USER_ERROR

用户异常

用户原因导致的请求处理失败(如风控)

403

NO_AUTH

商户无权限

请商户前往申请此接口相关权限

400

INVALID_REQUEST

无效请求

请根据接口返回的详细信息检查

403

NOT_ENOUGH

订单异常

存在状态异常订单无法发起结算,请稍后再试