撤销订单
更新时间:2025.01.07支付交易返回失败或支付系统超时,调用该接口撤销交易。如果此订单用户支付失败,微信支付系统会将此订单关闭;如果用户支付成功,微信支付系统会将此订单资金退还给用户。
|
1. 接口说明
适用对象: 直连模式 机构模式
请求URL:https://apihk.mch.weixin.qq.com/v3/global/micropay/transactions/id/{transaction_id}/reverse
或
https://apihk.mch.weixin.qq.com/v3/global/micropay/transactions/out-trade-no/{out_trade_no}/reverse
请求方式:POST
频率限制:150qps
Path 指该参数为路径参数
Query 指该参数为URL参数
Body 指该参数需在请求JSON传参
2. 请求参数
参数名 | 变量 | 类型[长度限制] | 必填 | 描述 |
---|---|---|---|---|
商户号 | mchid | string(32) | 是 | Body 微信支付分配的商户号 |
机构商户号 | sp_mchid | string(32) | 是 | Body 微信支付分配给机构的商户号 |
子商户号 | sub_mchid | string(32) | 是 | Body 微信支付分配子商户的商户号 |
微信订单号 | transaction_id | string(32) | 二选一 | Path 原支付交易对应的微信订单号 |
商户订单号 | out_trade_no | string(32) | Path 原支付交易对应的订单号 |
请求示例
机构模式
直连模式
3. 返回参数
正常返回
无数据(HTTP状态码为204)
异常返回
参数名 | 变量 | 类型[长度限制] | 必填 | 描述 | |||
---|---|---|---|---|---|---|---|
返回状态码 | code | string[1, 32] | 是 | 错误码,枚举值见错误码列表 示例值:INVALID_REQUEST | |||
返回信息 | message | string[1, 256] | 是 | 返回信息,如非空,为错误原因 示例值:参数格式校验错误 | |||
详细的错误描述 | detail | object | 否 | 当code为PARAM_ERROR时返回,详细说明见下 | |||
|
正常示例
异常示例
4. 错误码
错误码 | 描述 | 解决方案 |
---|---|---|
SYSTEM_ERROR | 接口返回错误 | 请立即调用被扫订单结果查询API,查询当前订单状态,并根据订单的状态决定下一步的操作。 |
BIZERR_NEED_RETRY | 无效transaction_id | 参数错误,请重新检查 |
PARAM_ERROR | 参数错误 | 请根据接口返回的详细信息检查您的程序 |
REVERSE_EXPIRE | 订单无法撤销 | 请检查需要撤销的订单是否超过可撤销有效期 |
INVALID_REQUEST | 无效请求 | 请检查商户权限是否异常、重复请求支付、证书错误、频率限制等 |
TRADE_ERROR | 订单错误 | 请检查用户账号是否异常、被风控、是否符合规则限制等 |