同步服务订单信息
更新时间:2023.10.18由于收款商户进行的某些“线下操作”会导致微信支付侧的订单状态与实际情况不符。例如,用户通过线下付款的方式已经完成支付,而微信支付侧并未支付成功,此时可能导致用户重复支付。因此商户需要通过订单同步接口将订单状态同步给微信支付,修改订单在微信支付系统中的状态。
注意:
• 待支付(USER_PAYING)状态下,当用户正在尝试通过收银台主动支付订单金额时,同步服务订单信息API无法调用成功,可等待3min后重试
• API参数涉及时间参数时需注意,可能由于商户时钟系统和微信支付分时钟系统,取当前时间存在一定误差。可能导致在API调用出现失败情况。因此商户在传入时间参数时需预留一定误差时间
# 接口说明
支持商户:
【普通商户】
请求方式:
【POST】/v3/payscore/serviceorder/{out_order_no}/sync
请求域名:
【主域名】
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】 微信公众平台分配的与传入的商户号建立了支付绑定关系的appid,可在公众平台查看绑定关系 需要在本系统先进行配置. 需要与创建订单时保持一致.
- service_id 必填【服务ID】 该服务ID有本接口对应产品的权限 需要与创建订单时保持一致
- type 必填【场景类型】 场景类型- "Order_Paid":字符串表示“订单收款成功”
场景类型- "Order_Paying": 字符串表示“订单收款同步”
Body 包体参数
请求示例
POST
# 应答参数
- out_order_no 必填【商户服务订单号】 调用接口传入的商户订单号
- service_id 必填【服务ID】 调用接口传入的服务ID
- appid 必填【服务商公众号ID】 调用接口传入的服务商公众号ID
- mchid 必填【服务商商户号】 调用接口传入的服务商商户号
- service_introduction 必填【服务信息】 调用接口传入的服务信息
- state 必填【服务订单状态】 当前单据状态.
* CREATED: 服务订单已创建
* DOING: 服务订单进行中
* DONE: 服务订单已完成
* REVOKED: 商户取消服务订单
* EXPIRED: 服务订单已失效,"CREATED"状态超过1小时未变动,则订单失效 - state_description 选填【订单状态说明】 对服务订单"DOING"状态的附加说明.
* USER_CONFIRM: 用户确认
* MCH_COMPLETE:商户完结 - post_payments 选填【后付费项目】 调用接口传入的后付费项目
- 属性
- post_discounts 选填【商户优惠】 调用接口传入的商户优惠
- 属性
- risk_fund 选填【服务风险金】 调用接口传入的服务风险金
- 属性
- total_amount 选填【总金额】 调用接口传入的总金额
- need_collection 选填【是否需要收款】 调用接口传入的是否需要收款,true:微信支付分代收款 false:无需微信支付分代收款
- collection 选填【收款信息】 收款成功后,展示具体的收款信息
- 属性
- time_range 选填【服务时间】 调用接口传入的服务时间
- 属性
- location 选填【服务位置】 调用接口传入的服务位置
- 属性
- attach 选填【附加数据】 调用接口传入的附加数据
- notify_url 选填【商户回调地址】 调用接口传入的商户回调地址
- openid 必填【服务商公众号下的用户标识】 调用接口传入的服务商公众号下的用户标识
- order_id 必填【微信支付服务订单号】 微信支付服务订单号,每个微信支付服务订单号与商户号下对应的商户服务订单号一一对应
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开头的状态码都为系统问题,请使用相同参数稍后重新调用 |
文档是否有帮助