# CloudPay.profitSharingFinish()
支持端:云函数 2.0.2
完结分账
# 说明
应用场景 1、不需要进行分账的订单,可直接调用本接口将订单的金额全部解冻给特约商户 2、调用多次分账接口后,需要解冻剩余资金时,调用本接口将剩余的分账金额全部解冻给特约商户 3、已调用请求单次分账后,剩余待分账金额为零,不需要再调用此接口。 接口说明*
此接口与微信支付原分账接口(文档)的不同点在于:
- 私有安全链路,免证书管理,免签名计算
- 商户号填入 sub_mch_id 字段,小程序/公众号 appid 填入 sub_appid 字段
- 免填写以下字段:mch_id、appid、sign、sign_type
- 接口入参和返回值都为 JSON 而不是 XML
接口限频:
1、单个分账接收方商户(分账完结) 60QPS,如果超过频率限制,会报错FREQUENCY_LIMITED,请降低频率请求。同时,建议拆分多个分账接收方商户号进行分账收款,避免集中分账到单个商户。
# 参数说明
字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
子商户号 | sub_mch_id | 是 | string(32) | 1900000109 | 微信支付分配的子商户号 |
随机字符串 | nonce_str | 是 | string(32) | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | 随机字符串,不长于32位。推荐随机数生成算法 |
微信订单号 | transaction_id | 是 | string(32) | 4208450740201411110007820472 | 微信支付订单号 |
商户分账单号 | out_order_no | 是 | string(64) | P20150806125346 | 商户系统内部的分账单号,在商户系统内部唯一(单次分账、多次分账、完结分账应使用不同的商户分账单号),同一分账单号多次请求等同一次。只能是数字、大小写字母_-|*@ |
分账完结描述 | description | 是 | string(80) | 分账已完成 | 分账完结的原因描述 |
# 返回值说明
字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
返回状态码 | return_code | 是 | String(16) | SUCCESS | SUCCESS/FAIL |
返回信息 | return_msg | 否 | String(128) | 签名失败 | 返回信息,如非空,为错误原因。如 签名失败、参数格式校验错误 |
以下字段在return_code为SUCCESS的时候有返回
名称 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
业务结果 | result_code | 是 | string(32) | SUCCESS | SUCCESS:账完结请求接收成功,结果通过分账查询接口查询 FAIL :提交业务失败 |
错误代码 | err_code | 否 | string(32) | SYSTEMERROR | 列表详见错误码列表 |
错误代码描述 | err_code_des | 否 | String(128) | 系统超时 | 结果信息描述 |
商户号 | mch_id | 是 | string(32) | 1900000100 | 调用接口时提供的商户号 |
子商户号 | sub_mch_id | 是 | string(32) | 1900000109 | 微信支付分配特约商户的商户号 |
公众账号ID | appid | 是 | string(32) | wx8888888888888888 | 调用接口提供的公众账号ID |
子商户公众账号ID | sub_appid | 否 | string(32) | wx8888888888888888 | 微信分配的子商户公众账号ID |
分账接收方 | receiver | 是 | String(128) | {"type":"MERCHANT_ID","account":"190001001"} | 分账接收方对象(不包含分账接收方全称),json格式 |
随机字符串 | nonce_str | 是 | string(32) | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | 微信返回的随机字符串 |
签名 | sign | 是 | string(64) | ABC6DD4AA85C0EECA82C35595A69EFGH | 微信返回的签名,详见签名算法 |
以下字段在return_code 和result_code都为SUCCESS的时候有返回
字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
微信订单号 | transaction_id | 是 | string(32) | 4208450740201411110007820472 | 微信支付订单号 |
商户分账单号 | out_order_no | 是 | string(64) | P20150806125346 | 商户系统内部的分账单号,在商户系统内部唯一(单次分账、多次分账、完结分账应使用不同的商户分账单号),同一分账单号多次请求等同一次。只能是数字、大小写字母_-|*@ |
微信分账单号 | order_id | 是 | string(64) | 3008450740201411110007820472 | 微信分账单号,微信系统返回的唯一标识 |
# 错误码
名称 | 描述 | 原因 | 解决方案 | 示例值 | 描述 |
---|---|---|---|---|---|
SYSTEMERROR | 接口返回错误 | 系统超时 | 请不要更换商户分账单号,请使用相同参数再次调用API。否则可能造成资金损失 | 4208450740201411110007820472 | 微信支付订单号 |
INVALID_TRANSACTIONID | 无效的微信支付订单号 | 请求参数未按指引进行填写 | 请求参数错误,检查原交易号是否存在或发起支付交易接口返回失败 | P20150806125346 | 商户系统内部的分账单号,在商户系统内部唯一(单次分账、多次分账、完结分账应使用不同的商户分账单号),同一分账单号多次请求等同一次。只能是数字、大小写字母_-|*@ |
PARAM_ERROR | 参数错误 | 请求参数未按指引进行填写 | 请求参数错误,请重新检查再调用分账完结接口 | 3008450740201411110007820472 | 微信分账单号,微信系统返回的唯一标识 |
INVALID_REQUEST | 请求不合法 | 参数中APPID或 MCHID不存在等 | 请检查请求参数 | ||
FREQUENCY_LIMITED | 频率限制 | 请求过多被频率限制 | 该笔请求未受理,请降低频率后原单重试,请勿更换商户分账单号 | ||
ORDER_NOT_READY | 订单处理中 | 订单处理中,暂时无法处理分账完结请求 | 订单处理中,暂时无法处理分账完结请求,请稍后再试 | ||
OPENID_MISMATCH | openid错误 | openid与appid不匹配 | 请检查openid是否正确 | ||
NOT_SHARE_ORDER | 非分账订单 | 不是分账订单 无法分账 | 下单时请用分账的合适参数 | ||
AMOUNT_OVERDUE | 可分余额不足 | 订单剩余可分账金额为零 | 请检查请求参数 |