完结支付分订单API
更新时间:2023.10.18完结微信支付分订单。用户使用服务完成后,商户可通过此接口完结订单。
注意:
• 完结接口调用成功后,微信支付将自动发起免密代扣。 若扣款失败,微信支付将自动再次发起免密代扣(按照一定频次),直到扣成功为止。
• API参数涉及时间参数时需注意,可能由于商户时钟系统和微信支付分时钟系统,取当前时间存在一定误差。可能导致在API调用出现失败情况。因此商户在传入时间参数时需预留一定误差时间
# 接口说明
支持商户:
【普通商户】
请求方式:
【POST】/v3/payscore/serviceorder/{out_order_no}/complete
请求域名:
【主域名】
https://api.mch.weixin.qq.com
使用该域名将访问就近的接入点【备域名】
https://api2.mch.weixin.qq.com
使用该域名将访问异地的接入点 ,指引点击查看
# 请求参数
- Authorization 必填请参考 签名认证 生成认证信息
- Accept 必填请设置为
application/json
- Content-Type 必填请设置为
application/json
Header HTTP头参数
- out_order_no 必填【商户服务订单号】 商户系统内部服务订单号(不是交易单号),要求32个字符内,只能是数字、大小写字母_-|* 且在同一个商户号下唯一。详见[商户订单号](
Path 路径参数
- appid 必填【公众账号ID】 数据
- service_id 必填【服务订单号】 服务订单的主键,唯一定义此资源的标识
- post_payments 必填【后付费项目】 付费项目列表,最少包含一条,最多包含100条付费项目 创建订单接口传入的【后付费】将失效,以本接口传入的【后付费】为准 未使用服务,取消订单时,不可填写该字段
- 属性
- post_discounts 选填【商户优惠】 商户优惠列表,最多包含5条商户优惠 创建订单接口传入的【商户优惠】将失效,以本接口传入的【商户优惠】为准 未使用服务,取消订单时,不可填写该字段
- 属性
- total_amount 必填【总金额】 1.金额:数字,必须≥0(单位:分)
2.总金额 =(完结付费项目1…+完结付费项目n)-(完结商户优惠项目1…+完结商户优惠项目n)
3.总金额上限
1)【评估不通过:交押金】模式:总金额≤创单时填写的“订单风险金额”
2)【评估不通过:拒绝】模式:总金额≤“服务风险金额” - time_range 选填【实际服务时间段】
- 属性
- location 选填【实际服务位置】
- 属性
- profit_sharing 选填【微信支付服务分账标记】 完结订单分账接口标记 false-不分账,true-分账,默认:false
- goods_tag 选填【订单优惠标记】 订单优惠标记,代金券或立减金优惠的参数,说明详见代金券或立减金优惠
Body 包体参数
请求示例
POST
# 应答参数
- appid 必填【公众账号ID】 调用接口提交的公众账号ID
- mchid 必填【商户号】 调用接口提交的商户号
- out_order_no 必填【商户服务订单号】 调用接口提交的商户服务订单号
- service_id 必填【服务ID】 调用该接口提交的服务ID
- service_introduction 必填【服务信息】 服务信息,用于介绍本订单所提供的服务
- state 必填【服务订单状态】 表示当前单据状态. CREATED:商户已创建服务订单; GOING: 服务订单进行中 FINISHED: 服务订单完成; REVOKED: 商户取消服务订单; EXPIRED:服务订单已失效,"商户已创建服务订单"状态超过1小时未变动,则订单失效
- state_description 选填【订单状态说明】 对服务订单"进行中"状态的附加说明:MCH_COMPLETE 商户完结;
- total_amount 必填【商户收款总金额】 大于等于0的数字,单位为:分 需满足:总金额=后付费项目金额之和-后付费商户优惠项目金额之和, <=订单风险金额。 取消订单时,该字段必须填0。
- post_payments 选填【后付费项目】
- 属性
- post_discounts 选填【后付费商户优惠】
- 属性
- risk_fund 必填【服务风险金】
- 属性
- time_range 选填【服务时间段】 服务使用的开始时间和结束时间
- 属性
- location 选填【服务位置】 服务使用的开始位置和结束位置
- 属性
- order_id 选填【微信支付服务订单号】 微信支付服务订单号 每个微信支付服务订单号与商户号下对应的商户服务订单号一一对应
- need_collection 选填【是否需要收款】 true:需要收款;false:不需要收款
200OK
应答示例
200 OK
# 错误码
# 公共错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | PARAM_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
400 | INVALID_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 接口规则 |
401 | SIGN_ERROR | 验证不通过 | 请参阅 签名常见问题 |
500 | SYSTEM_ERROR | 系统异常,请稍后重试 | 请稍后重试 |
# 业务错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | INVALID_ORDER_STATE | 单据状态错误 | 确认操作是否符合流程 |
400 | INVALID_REQUEST | 请求参数符合参数格式,但不符合业务规则 | 请确认相同单号是否使用了不同的参数 |
400 | ORDER_CANCELED | 单据已取消 | 当前状态无需操作 |
400 | ORDER_DONE | 订单已完成 | 当前状态无需操作 |
403 | NO_AUTH | 商户信息不合法 | 登录商户平台核对,传入正确信息 |
404 | ORDER_NOT_ EXIST | 订单不存在 | 确认入参,传入正确单据 |
429 | FREQUENCY_LIMITED | 频率超限 | 请求量不要超过接口调用频率限制 |
500 | SYSTEM_ERROR | 系统错误 | 5开头的状态码都为系统问题,请使用相同参数稍后重新调用 |
文档是否有帮助