取消支付分订单

更新时间:2025.02.25

当支付分订单状态在已创建(state:CREATE)、用户已确认订单(collection.state: USER_CONFIRM)和待支付状态(collection.state: USER_PAYING)情况下,商户可以取消服务订单,调用接口后会同步返回取消结果,可参考支付分订单状态流转图做业务逻辑处理。

注意:

1.若因网络原因未获取到接口返回内容,商户可使用相同参数重试,该接口支持原参重入。

2.待支付状态的订单,若用户正在通过支付分订单页拉起收银台主动支付或者支付分正在进行自动扣款时,调用取消支付分订单API可能会出现"单据正在扣款中,请稍后再试"的报错,可等待3min后重试。

接口说明

支持商户:【普通服务商】

请求方式:【POST】/v3/payscore/partner/serviceorder/{out_order_no}/cancel

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


path 路径参数

out_order_no  必填 string(32)

【商户服务订单号】 商户系统内部服务订单号,要求32个字符内,只能是数字、大小写字母_-|* 且在同一个商户号下唯一。需要开发者特别注意,该参数不可用于申请退款接口中的 out_trade_no 参数。


body 包体参数

service_id  选填 string(32)

【服务ID】 商户支付分服务的唯一标识,由32位数字组成。支付分产品权限审核通过后,微信支付运营会向商户提供该ID。


sub_mchid  必填 string(32)

【子商户号】 服务商下的子商户商户号,普通服务商使用特约商户进件生成,平台收付通服务商使用二级商家进件生成。


reason  必填 string(50)

【撤销原因】 支付分取消订单原因,长度不能超过50个字符,用户微信收到的取消订单消息通知会展示该字段。

请求示例

POST

1curl -X POST \
2  https://api.mch.weixin.qq.com/v3/payscore/partner/serviceorder/1234323JKHDFE1243252/cancel \
3  -H "Authorization: WECHATPAY2-SHA256-RSA2048 mchid=\"1900000001\",..." \
4  -H "Accept: application/json" \
5  -H "Content-Type: application/json" \
6  -d '{
7    "service_id" : "2002000000000558128851361561536",
8    "sub_mchid" : "1900000109",
9    "reason" : "用户投诉"
10  }'
11

应答参数

无应答包体

应答示例

204 No Content

1'无应答包体'
2

 

错误码

公共错误码

状态码

错误码

描述

解决方案

400

PARAM_ERROR

参数错误

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

400

INVALID_REQUEST

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

请参阅 接口规则

401

SIGN_ERROR

验证不通过

请参阅 签名常见问题

500

SYSTEM_ERROR

系统异常,请稍后重试

请稍后重试

 

 

更多技术问题
技术咨询
反馈
咨询
目录
置顶