撤销速住订单
接口说明
接口url | https://api.mch.weixin.qq.com/wxv/cancelbill |
---|---|
请求方式 |
POST |
传输格式 |
XML |
注意事项
- 当返回错误码为“SYSTEMERROR”时,请不要更换商户订单号,一定要使用原商户订单号重试,否则可能造成重复支付等资金风险。
- XML具有可扩展性,因此返回参数可能会有新增,而且顺序可能不完全遵循此文档规范,如果在解析回包的时候发生错误,请商户务必不要换单重试,请商户联系客服确认付款情况。如果有新回包字段,会更新到此API文档中。
- 因为错误代码字段err_code的值后续可能会增加,所以商户如果遇到回包返回新的错误码,请商户务必不要换单重试,请商户联系客服确认付款情况。如果有新的错误码,会更新到此API文档中。
- 错误代码描述字段err_code_des只供人工定位问题时做参考,系统实现时请不要依赖这个字段来做自动化处理。
是否需要证书
是,详见证书说明
前置条件
用户确认使用业务后。
请求参数
字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
接口版本号 | version | 是 | String(32) | 1.0 | 接口版本号,默认值1.0 |
公众账号ID | appid | 是 | String(32) | wxd678efh567hg6787 | 微信公众平台分配的与传入的商户号建立了支付绑定关系的appid,可在公众平台查看绑定关系 需要在本系统先进行配置. 需要与创建订单时保持一致. |
商户号 | mch_id | 是 | String(32) | 1230000109 | 微信支付分配的商户号 需要在本系统先进行配置. 需要与创建订单时保持一致. |
随机字符串 | nonce_str | 是 | String(32) | ibuaiVcKdpRxkhJA | 随机字符串,长度要求在32位以内。推荐随机数生成算法 |
签名 | sign | 是 | String(128) | 029B52F67573D7E3BE74904BF9AEA | 通过签名算法计算得出的签名值,详见签名生成算法 |
签名类型 | sign_type | 是 | String(32) | HMAC-SHA256 | 签名类型,仅支持HMAC-SHA256 |
商户服务订单号 | out_order_no | 是 | String(32) | 1234323JKHDFE1243252 | 商户系统内部订单号(不是交易单号),要求32个字符内,只能是数字、大小写字母_-|* 且在同一个商户号下唯一。详见商户订单号 需要和创建租借订单的商户服务订单号一致 |
撤销原因 | reason | 是 | String(50) | 用户投诉 | 支持50个字符,按照字符计算 超过长度报错处理 |
服务ID | service_id | 是 | String(32) | 该服务ID有本接口对应产品的权限 需要与创建订单时保持一致. |
返回参数
字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
返回状态码 | return_code | 是 | String(16) | SUCCESS | SUCCESS/FAIL 此字段是通信标识,非业务标识,是否成功需要查看result_code来判断 |
返回结果 | return_msg | 否 | String(128) | 签名失败 | 返回信息,如非空,为错误原因,如签名失败,参数格式校验错误 |
以下字段在return_code为SUCCESS的时候有返回
字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
签名 | sign | 是 | String(128) | 029B52F67573D7E3BE74904BF9A | 通过签名算法计算得出的签名值,详见签名生成算法 |
随机字符串 | nonce_str | 是 | String(32) | ibuaiVcKdpRxkhJA | 随机字符串,长度要求在32位以内。推荐随机数生成算法 |
业务结果 | result_code | 是 | String(16) | SUCCESS | SUCCESS/FAIL 撤销成功返回SUCCESS,否则返回FAIL. FAIL情况需要根据err_code进行不同处理. |
错误代码 | err_code | 否 | String(32) | SYSTEMERROR | 错误码,详见错误码说明 |
错误描述 | err_code_des | 否 | String(128) | 系统错误 | 错误信息描述 |
公众账号ID | appid | 是 | String(32) | wxd678efh567hg6787 | 调用接口提交的公众账号ID |
商户号 | mch_id | 是 | String(32) | 1230000109 | 调用接口提交的商户号 |
商户服务订单号 | out_order_no | 是 | String(32) | 1234323JKHDFE1243252 | 调用接口提交的商户服务订单号 |
服务ID | service_id | 是 | String(32) | 调用该接口提交的服务ID |
以下字段当return_code、result_code都为SUCCESS时有返回
字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
微信支付服务订单号 | order_id | 是 | String(128) | 微信支付服务订单号 每个微信支付服务订单号与商户号下对应的商户服务订单号一一对应 |
错误码
名称 | 描述 | 原因 | 解决方案 |
---|---|---|---|
SYSTEMERROR | 系统错误 | 系统超时 | 系统异常,请使用相同参数稍后重新调用 |
PARAM_ERROR | 参数错误 | 请求参数不合法 | 请使用正确的参数重新调用 |
INVALID_REQUEST | 无效的请求 | 商户没有接口权限 重入情况下参数不一致 | 请申请接口权限 请确认相同单号是否使用了不同的参数 |
ORDERNOTEXIST | 单据不存在 | 查询单据不存在 | 确认入参,传入正确单据 |
INVALID_ORDER_STATE | 单据状态错误 | 只有已受理单据允许撤销 | 确认入参,传入正确单据 |
RATE_LIMITED | 频率限制 | 超过接口调用频率限制 | 请求量不要超过XX/XX |