商戶可以通過查詢訂單接口主動(dòng)查詢訂單狀態(tài),完成下一步的業(yè)務(wù)邏輯。
查詢訂單可通過微信支付訂單號(hào) (opens new window)和商戶訂單號(hào) (opens new window)兩種方式查詢。
需要調(diào)用查詢接口的情況:
- 當(dāng)商戶后臺(tái)、網(wǎng)絡(luò)、服務(wù)器等出現(xiàn)異常,商戶系統(tǒng)最終未接收到支付通知。
- 調(diào)用支付接口后,返回系統(tǒng)錯(cuò)誤或未知交易狀態(tài)情況。
- 調(diào)用付款碼支付API,返回USERPAYING的狀態(tài)。
- 調(diào)用關(guān)單或撤銷接口API之前,需確認(rèn)支付狀態(tài)。
# 接口說明
支持商戶:
【普通商戶】
請(qǐng)求方式:
【GET】/v3/pay/transactions/out-trade-no/{out_trade_no}
請(qǐng)求域名:
【主域名】
https://api.mch.weixin.qq.com
使用該域名將訪問就近的接入點(diǎn)【備域名】
https://api2.mch.weixin.qq.com
使用該域名將訪問異地的接入點(diǎn) ,指引點(diǎn)擊查看
# 請(qǐng)求參數(shù)
- Authorization 必填 string請(qǐng)參考 簽名認(rèn)證 生成認(rèn)證信息
- Accept 必填 string請(qǐng)?jiān)O(shè)置為
application/json
Header HTTP頭參數(shù)
- out_trade_no 必填 string(32)【商戶訂單號(hào)】 商戶系統(tǒng)內(nèi)部訂單號(hào),只能是數(shù)字、大小寫字母_-*且在同一個(gè)商戶號(hào)下唯一。
Path 路徑參數(shù)
- mchid 必填 string(32)【直連商戶號(hào)】 直連商戶的商戶號(hào),由微信支付生成并下發(fā)。
Query 查詢參數(shù)
請(qǐng)求示例
GET
# 應(yīng)答參數(shù)
- appid 選填 string(32)【公眾號(hào)ID】 公眾號(hào)ID
- mchid 必填 string(32)【直連商戶號(hào)】 直連商戶號(hào)
- out_trade_no 必填 string(32)【商戶訂單號(hào)】 商戶系統(tǒng)內(nèi)部訂單號(hào),只能是數(shù)字、大小寫字母_-*且在同一個(gè)商戶號(hào)下唯一,詳見【商戶訂單號(hào)】。
- transaction_id 選填 string(32)【微信支付訂單號(hào)】 微信支付系統(tǒng)生成的訂單號(hào)。
- trade_type 選填 string(16)【交易類型】 交易類型,枚舉值:
* JSAPI:公眾號(hào)支付
* NATIVE:掃碼支付
* APP:APP支付
* MICROPAY:付款碼支付
* MWEB:H5支付
* FACEPAY:刷臉支付 - trade_state 必填 string(32)【交易狀態(tài)】 交易狀態(tài),枚舉值:
* SUCCESS:支付成功
* REFUND:轉(zhuǎn)入退款
* NOTPAY:未支付
* CLOSED:已關(guān)閉
* REVOKED:已撤銷(僅付款碼支付會(huì)返回)
* USERPAYING:用戶支付中(僅付款碼支付會(huì)返回)
* PAYERROR:支付失敗(僅付款碼支付會(huì)返回) - trade_state_desc 必填 string(256)【交易狀態(tài)描述】 交易狀態(tài)描述
- bank_type 選填 string(32)【銀行類型】 銀行類型,采用字符串類型的銀行標(biāo)識(shí)。 銀行標(biāo)識(shí)請(qǐng)參考《銀行類型對(duì)照表》
- attach 選填 string(128)【附加數(shù)據(jù)】 附加數(shù)據(jù)
- success_time 選填 string(64)【支付完成時(shí)間】 支付完成時(shí)間
- payer 選填 CommRespPayerInfo【支付者】 支付者
- 屬性
- amount 選填 CommRespAmountInfo【訂單金額】 訂單金額
- 屬性
- scene_info 選填 CommRespSceneInfo【場(chǎng)景信息】 場(chǎng)景信息
- 屬性
- promotion_detail 選填 array[PromotionDetail]【優(yōu)惠功能】 優(yōu)惠功能
- 屬性
200OK
應(yīng)答示例
200 OK
# 錯(cuò)誤碼
# 公共錯(cuò)誤碼
狀態(tài)碼 | 錯(cuò)誤碼 | 描述 | 解決方案 |
---|---|---|---|
400 | PARAM_ERROR | 參數(shù)錯(cuò)誤 | 請(qǐng)根據(jù)錯(cuò)誤提示正確傳入?yún)?shù) |
400 | INVALID_REQUEST | HTTP 請(qǐng)求不符合微信支付 APIv3 接口規(guī)則 | 請(qǐng)參閱 接口規(guī)則 |
401 | SIGN_ERROR | 驗(yàn)證不通過 | 請(qǐng)參閱 簽名常見問題 |
500 | SYSTEM_ERROR | 系統(tǒng)異常,請(qǐng)稍后重試 | 請(qǐng)稍后重試 |
# 業(yè)務(wù)錯(cuò)誤碼
狀態(tài)碼 | 錯(cuò)誤碼 | 描述 | 解決方案 |
---|---|---|---|
400 | APPID_MCHID_NOT_MATCH | AppID和mch_id不匹配 | 請(qǐng)確認(rèn)AppID和mch_id是否匹配 |
400 | INVALID_REQUEST | 無(wú)效請(qǐng)求 | 請(qǐng)根據(jù)接口返回的詳細(xì)信息檢查 |
400 | MCH_NOT_EXISTS | 商戶號(hào)不存在 | 請(qǐng)檢查商戶號(hào)是否正確 |
400 | ORDER_CLOSED | 訂單已關(guān)閉 | 當(dāng)前訂單已關(guān)閉,請(qǐng)重新下單 |
401 | SIGN_ERROR | 簽名錯(cuò)誤 | 請(qǐng)檢查簽名參數(shù)和方法是否都符合簽名算法要求 |
403 | ACCOUNT_ERROR | 賬號(hào)異常 | 用戶賬號(hào)異常,無(wú)需更多操作 |
403 | NO_AUTH | 商戶無(wú)權(quán)限 | 請(qǐng)商戶前往申請(qǐng)此接口相關(guān)權(quán)限 |
403 | NOT_ENOUGH | 余額不足 | 用戶賬號(hào)余額不足,請(qǐng)用戶充值或更換支付卡后再支付 |
403 | OUT_TRADE_NO_USED | 商戶訂單號(hào)重復(fù) | 請(qǐng)核實(shí)商戶訂單號(hào)是否重復(fù)提交 |
403 | RULE_LIMIT | 業(yè)務(wù)規(guī)則限制 | 因業(yè)務(wù)規(guī)則限制請(qǐng)求頻率,請(qǐng)查看接口返回的詳細(xì)信息 |
403 | TRADE_ERROR | 交易錯(cuò)誤 | 因業(yè)務(wù)原因交易失敗,請(qǐng)查看接口返回的詳細(xì)信息 |
404 | ORDER_NOT_EXIST | 訂單不存在 | 請(qǐng)檢查訂單是否發(fā)起過交易 |
404 | ORDER_NOT_EXIST | 訂單不存在 | 請(qǐng)檢查訂單是否發(fā)起過交易 |
429 | FREQUENCY_LIMITED | 頻率超限 | 請(qǐng)降低請(qǐng)求接口頻率 |
500 | BANK_ERROR | 銀行系統(tǒng)異常 | 銀行系統(tǒng)異常,請(qǐng)用相同參數(shù)重新調(diào)用 |
500 | INVALID_TRANSACTIONID | 訂單號(hào)非法 | 請(qǐng)檢查微信支付訂單號(hào)是否正確 |
500 | OPENID_MISMATCH | OpenID和AppID不匹配 | 請(qǐng)確認(rèn)OpenID和AppID是否匹配 |
500 | SYSTE_MERROR | 系統(tǒng)錯(cuò)誤 | 系統(tǒng)異常,請(qǐng)用相同參數(shù)重新調(diào)用 |