电商合单委托代扣支付
更新时间:2024.11.18商户可以通过该接口发起免密的合单支付。
|
接口说明
支持商户:【平台商户】
请求方式:【POST】/v3/ecommerce/combine-papay/transactions
请求域名:【主域名】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 包体参数
combine_appid 必填 string(32)
【合单商户appid】 合单发起方的appid。
combine_mchid 必填 string(32)
【合单商户号】 合单发起方商户号。
combine_out_trade_no 必填 string(32)
【合单商户订单号】 合单支付总订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一 。
contract_id 必填 string(32)
【委托代扣协议ID】 签约成功后,微信返回的委托代扣协议ID。
sub_orders 必填 array[SubOrderInfo]
【子单信息】 最多支持子单条数:50
| 属性 | |||||||||
mchid 必填 string(32) 【子单商户号】 子单发起方商户号,必须与发起方Appid有绑定关系。 attach 选填 string(128) 【附加数据】 附加数据,在查询API中原样返回,可作为自定义参数使用。 amount 必填 object 【订单金额】 订单金额信息
out_trade_no 必填 string(32) 【子单商户订单号】 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。 sub_mchid 必填 string(32) 【二级商户号】 二级商户商户号,由微信支付生成并下发。 sub_appid 选填 string(32) 【二级商户appid】 二级商户的appid。 description 必填 string(128) 【商品描述】 商品简单描述。需传入应用市场上的APP名字-实际商品名称,例如:天天爱消除-游戏充值。 settle_info 选填 object 【结算信息】 结算信息
sub_risk_info 选填 string(255) 【子单风控信息】 商户在发起支付请求时传入风控信息字段,用于实时识别高风险交易,提升支付安全性及交易成功率。详见风控信息字段规范 |
risk_info 选填 string(255)
【风控信息】 商户在发起支付请求时传入风控信息字段,用于实时识别高风险交易,提升支付安全性及交易成功率。详见风控信息字段规范
请求示例
POST
应答参数
200 OK
combine_appid 必填 string(32)
【合单商户APPID】 合单发起方的appid。
combine_mchid 必填 string(32)
【合单商户号】 合单发起方商户号。
combine_out_trade_no 必填 string(32)
【合单商户订单号】 合单支付总订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。
sub_orders 必填 array[object]
【子单信息】 最多支持子单条数:50
| 属性 | |||||
mchid 必填 string(32) 【子单商户号】 子单发起方商户号,必须与发起方Appid有绑定关系。 trade_type 必填 string(16) 【交易类型】 枚举值: PAP:委托代扣 trade_state 必填 string(32) 【交易状态】 枚举值: SUCCESS:支付成功 REFUND:转入退款 NOTPAY:未支付 CLOSED:已关闭 USERPAYING:用户支付中 PAYERROR:支付失败(其他原因,如银行返回失败) bank_type 选填 string(16) 【付款银行】 银行类型,采用字符串类型的银行标识。 attach 选填 string(128) 【附加数据】 附加数据,在查询API中原样返回,可作为自定义参数使用。 success_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年05月20日13点29分35秒 transaction_id 必填 string(32) 【子单微信订单号】 微信支付订单号。 out_trade_no 必填 string(32) 【子单商户订单号】 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。 sub_mchid 必填 string(32) 【二级商户号】 二级商户商户号,由微信支付生成并下发。 sub_appid 选填 string(32) 【二级商户appid】 二级商户的appid。 amount 选填 object 【订单金额】
|
combine_payer_info 选填 object
【支付者】
| 属性 | |
openid 必填 string(128) 【用户标识】 使用合单appid获取的对应用户openid。是用户在商户appid下的唯一标识。 |
应答示例
200 OK
错误码
公共错误码
状态码 | 错误码 | 描述 | 解决方案 |
|---|---|---|---|
400 | PARAM_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
400 | INVALID_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 接口规则 |
401 | SIGN_ERROR | 验证不通过 | 请参阅 签名常见问题 |
500 | SYSTEM_ERROR | 系统异常,请稍后重试 | 请稍后重试 |
业务错误码
状态码 | 错误码 | 描述 | 解决方案 |
|---|---|---|---|
429 | FREQUENCY_LIMITED | 频率超限 | 请降低请求接口频率 |
403 | CONTRACT_NOT_EXIST | 签约协议不存在 | 请检查签约协议号是否正确,是否已解约 |
403 | RULE_LIMIT | 业务规则限制 | 因业务规则限制请求频率,请查看接口返回的详细信息 |
400 | APPID_MCHID_NOT_MATCH | appid和mch_id不匹配 | 请确认appid和mch_id是否匹配 |
400 | ORDER_CLOSED | 订单已关闭 | 当前订单已关闭,请重新下单 |
400 | ORDER_PAID | 订单已支付 | 请确认该订单号是否重复支付,如果是新订单,请使用新订单号提交 |
403 | NO_AUTH | 商户无权限 | 请商户前往申请此接口相关权限 |
403 | ACCOUNT_ERROR | 账号异常 | 用户账号异常,无需更多操作 |

