最新更新时间:2020.04.23 版本说明
微信支付分订单创建之后,由于某些原因导致订单不能正常支付时,可使用此接口取消订单。
订单为以下状态时可以取消订单:CREATED(已创单)、DOING(进行中)(包括商户完结支付分订单后,且支付分订单收款状态为待支付USER_PAYING)
• DOING状态包含了订单用户确认、已完结-待支付(USER_PAYING)的状态,因此这种状态下订单也是可以被取消的,请确认当前操作是否正确,防止误操作将完结后需要支付分收款的单据取消。
特别注意:1.待支付(USER_PAYING)状态下,当用户正在尝试通过收银台主动支付订单金额时,取消支付分订单API无法调用成功,可等待3min后重试
2.重录时需保证参数完全一致,包括取消原因试
适用对象:直连商户
请求URL:https://api.mch.weixin.qq.com/v3/payscore/serviceorder/{out_order_no}/cancel
请求方式:POST
前置条件:服务订单状态为已创单或进行中
path 指该参数为路径参数
query 指该参数需在请求URL传参
body 指该参数需在请求JSON传参
参数名 | 变量 | 类型[长度限制] | 必填 | 描述 |
---|---|---|---|---|
商户服务订单号 | out_order_no | string[1,32] | 是 | path商户系统内部服务订单号(不是交易单号),与创建订单时一致。 示例值:2304203423948239423 |
应用ID | appid | string[1,32] | 是 | body 微信公众平台分配的与传入的商户号建立了支付绑定关系的appid,可在公众平台查看绑定关系。 此参数需在本系统先进行配置,并与创建订单时的appid保持一致。 示例值:wxd678efh567hg6787 |
服务ID | service_id | string[1,32] | 是 | body 该服务ID有本接口对应产品的权限。 示例值:500001 |
取消原因 | reason | string[1,30] | 是 | body 最多30个字符,每个汉字/数字/英语都按1个字符计算超过长度报错处理。 注:重录时需保证参数完全一致,包括取消原因 示例值:用户投诉 |
{
"appid": "wxd678efh567hg6787",
"service_id": "500001",
"reason": "用户投诉"
}
参数名 | 变量 | 类型[长度限制] | 必填 | 描述 |
---|---|---|---|---|
应用ID | appid | string[1,32] | 是 | 微信公众平台分配的与传入的商户号建立了支付绑定关系的appid,可在公众平台查看绑定关系。 此参数需在本系统先进行配置,并与创建订单时的appid保持一致。 示例值:wxd678efh567hg6787 |
商户号 | mchid | string[1,32] | 是 | 调用接口提交的商户号。 示例值:1230000109 |
商户订单号 | out_order_no | string[1,32] | 是 | 调用接口提交的商户服务订单号。 示例值:1230000109 |
服务ID | service_id | string[1,32] | 是 | 调用该接口提交的服务ID。 示例值:500001 |
微信支付服务订单号 | order_id | string[1,128] | 是 | 微信支付服务订单号,每个微信支付服务订单号与商户号下对应的商户服务订单号一一对应。 示例值:15646546545165651651 |
{
"appid": "wxd678efh567hg6787",
"mchid": "1230000109",
"out_order_no": "1230000109",
"service_id": "500001",
"order_id": "15646546545165651651"
}
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
500 | SYSTEM_ERROR | 系统错误 | 5开头的状态码都为系统问题,请使用相同参数稍后重新调用 |
400 | PARAM_ERROR | 参数错误 | 根据错误提示,传入正确参数 |
403 | NO_AUTH | 商户信息不合法 | 登录商户平台核对,传入正确信息 |
429 | FREQUENCY_LIMITED | 频率超限 | 请求量不要超过接口调用频率限制 |
400 | INVALID_REQUEST | 请求参数符合参数格式,但不符合业务规则 | 请确认相同单号是否使用了不同的参数 |
404 | ORDER_NOT_EXIST | 订单不存在 | 确认入参,传入正确单据 |
400 | INVALID_ORDER_STATE | 单据状态错误 | 确认操作是否符合流程 |
400 | ORDER_CANCELED | 单据已取消 | 当前状态无需操作 |
400 | ORDER_DONE | 订单已完成 | 当前状态无需操作 |