微信支付订单号查询订单
更新时间:2024.01.19商户可以通过查询订单接口主动查询订单状态,完成下一步的业务逻辑。
查询订单可通过微信支付订单号 (opens new window)和商户订单号 (opens new window)两种方式查询。
需要调用查询接口的情况:
- 当商户后台、网络、服务器等出现异常,商户系统最终未接收到支付通知。
- 调用支付接口后,返回系统错误或未知交易状态情况。
- 调用付款码支付API,返回USERPAYING的状态。
- 调用关单或撤销接口API之前,需确认支付状态。
# 接口说明
支持商户:
【普通服务商】【平台商户】
请求方式:
【GET】/v3/pay/partner/transactions/id/{transaction_id}
请求域名:
【主域名】
https://api.mch.weixin.qq.com
使用该域名将访问就近的接入点【备域名】
https://api2.mch.weixin.qq.com
使用该域名将访问异地的接入点 ,指引点击查看
# 请求参数
- Authorization 必填请参考 签名认证 生成认证信息
- Accept 必填请设置为
application/json
Header HTTP头参数
- transaction_id 必填【微信支付订单号】 微信支付订单号
Path 路径参数
- sp_mchid 必填【服务商户号】 服务商户号
- sub_mchid 必填【子商户号】 子商户号
Query 查询参数
请求示例
GET
# 应答参数
- sp_appid 选填【服务商公众号ID】 服务商申请的公众号或移动应用AppID
- sp_mchid 必填【服务商户号】 服务商户号
- sub_appid 选填【子商户公众号ID】 子商户公众号ID
- sub_mchid 必填【子商户号】 子商户号
- out_trade_no 必填【商户订单号】 商户系统内部订单号,只能是数字、大小写字母_-*且在同一个商户号下唯一。
特殊规则:最小字符长度为6 - transaction_id 选填【微信支付订单号】 微信支付订单号
- trade_type 选填【交易类型】 交易类型,枚举值:
* JSAPI:公众号支付
* NATIVE:扫码支付
* APP:APP支付
* MICROPAY:付款码支付
* MWEB:H5支付
* FACEPAY:刷脸支付 - trade_state 必填【交易状态】 交易状态,枚举值:
* SUCCESS:支付成功
* REFUND:转入退款
* NOTPAY:未支付
* CLOSED:已关闭
* REVOKED:已撤销(仅付款码支付会返回)
* USERPAYING:用户支付中(仅付款码支付会返回)
* PAYERROR:支付失败(仅付款码支付会返回) - trade_state_desc 必填【交易状态描述】 交易状态描述
- bank_type 选填【银行类型】 银行类型,采用字符串类型的银行标识。 银行标识请参考《银行类型对照表》
- attach 选填【附加数据】 附加数据
- success_time 选填【支付完成时间】 支付完成时间,遵循rfc3339
标准格式,格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2015-05-20T13:29:35+08:00表示,北京时间2015年5月20日13点29分35秒。 - payer 选填【支付者】 支付者
- 属性
- amount 选填【订单金额】 订单金额信息,当支付成功时返回该字段。
- 属性
- scene_info 选填【场景信息】 场景信息
- 属性
- promotion_detail 选填【优惠功能】 优惠功能
- 属性
200OK
应答示例
200 OK
# 错误码
# 公共错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | PARAM_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
400 | INVALID_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 接口规则 |
401 | SIGN_ERROR | 验证不通过 | 请参阅 签名常见问题 |
500 | SYSTEM_ERROR | 系统异常,请稍后重试 | 请稍后重试 |
# 业务错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | APPID_MCHID_NOT_MATCH | AppID和mch_id不匹配 | 请确认AppID和mch_id是否匹配 |
400 | INVALID_REQUEST | 无效请求 | 请根据接口返回的详细信息检查 |
400 | MCH_NOT_EXISTS | 商户号不存在 | 请检查商户号是否正确 |
400 | ORDER_CLOSED | 订单已关闭 | 当前订单已关闭,请重新下单 |
401 | SIGN_ERROR | 签名错误 | 请检查签名参数和方法是否都符合签名算法要求 |
403 | ACCOUNT_ERROR | 账号异常 | 用户账号异常,无需更多操作 |
403 | NO_AUTH | 商户无权限 | 请商户前往申请此接口相关权限 |
403 | NOT_ENOUGH | 余额不足 | 用户账号余额不足,请用户充值或更换支付卡后再支付 |
403 | OUT_TRADE_NO_USED | 商户订单号重复 | 请核实商户订单号是否重复提交 |
403 | RULE_LIMIT | 业务规则限制 | 因业务规则限制请求频率,请查看接口返回的详细信息 |
403 | TRADE_ERROR | 交易错误 | 因业务原因交易失败,请查看接口返回的详细信息 |
404 | ORDER_NOT_EXIST | 订单不存在 | 请检查订单是否发起过交易 |
429 | FREQUENCY_LIMITED | 频率超限 | 请降低请求接口频率 |
500 | BANK_ERROR | 银行系统异常 | 银行系统异常,请用相同参数重新调用 |
500 | INVALID_TRANSACTIONID | 订单号非法 | 请检查微信支付订单号是否正确 |
500 | OPENID_MISMATCH | OpenID和AppID不匹配 | 请确认OpenID和AppID是否匹配 |
500 | SYSTEM_ERROR | 系统错误 | 系统异常,请用相同参数重新调用 |
文档是否有帮助