商戶系統(tǒng)先調(diào)用該接口在微信支付服務(wù)后臺生成預(yù)支付交易單,返回正確的預(yù)支付交易會話標識后再按Native、JSAPI、APP等不同場景生成交易串調(diào)起支付。
# 接口說明
支持商戶:
【普通商戶】
請求方式:
【POST】/v3/pay/transactions/h5
請求域名:
【主域名】
https://api.mch.weixin.qq.com
使用該域名將訪問就近的接入點【備域名】
https://api2.mch.weixin.qq.com
使用該域名將訪問異地的接入點 ,指引點擊查看
# 請求參數(shù)
- Authorization 必填 string請參考 簽名認證 生成認證信息
- Accept 必填 string請設(shè)置為
application/json
- Content-Type 必填 string請設(shè)置為
application/json
Header HTTP頭參數(shù)
- appid 必填 string(32)【應(yīng)用ID】 由微信生成的應(yīng)用ID,全局唯一。請求基礎(chǔ)下單接口時請注意AppID的應(yīng)用屬性,例如公眾號場景下,需使用應(yīng)用屬性為公眾號的AppID
- mchid 必填 string(32)【直連商戶號】 直連商戶的商戶號,由微信支付生成并下發(fā)。
- description 必填 string(127)【商品描述】 商品描述
- out_trade_no 必填 string(32)【商戶訂單號】 商戶系統(tǒng)內(nèi)部訂單號,只能是數(shù)字、大小寫字母_-*且在同一個商戶號下唯一
- time_expire 選填 string(64)【交易結(jié)束時間】 訂單失效時間,遵循rfc3339
標準格式,格式為yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出現(xiàn)在字符串中,表示time元素的開頭,HH:mm:ss表示時分秒,TIMEZONE表示時區(qū)(+08:00表示東八區(qū)時間,領(lǐng)先UTC8小時,即北京時間)。例如:2015-05-20T13:29:35+08:00表示,北京時間2015年5月20日13點29分35秒。 - attach 選填 string(128)【附加數(shù)據(jù)】 附加數(shù)據(jù)
- notify_url 必填 string(255)【通知地址】 異步接收微信支付結(jié)果通知的回調(diào)地址,通知URL必須為外網(wǎng)可訪問的URL,不能攜帶參數(shù)。 公網(wǎng)域名必須為HTTPS,如果是走專線接入,使用專線NAT IP或者私有回調(diào)域名可使用HTTP
- goods_tag 選填 string(32)【訂單優(yōu)惠標記】 訂單優(yōu)惠標記
- support_fapiao 選填 boolean【電子發(fā)票入口開放標識】 傳入true時,支付成功消息和支付詳情頁將出現(xiàn)開票入口。需要在微信支付商戶平臺或微信公眾平臺開通電子發(fā)票功能,傳此字段才可生效。
- amount 必填 CommReqAmountInfo【訂單金額】 訂單金額
- 屬性
- detail 選填 OrderDetail【優(yōu)惠功能】 優(yōu)惠功能
- 屬性
- scene_info 必填 H5ReqSceneInfo【場景信息】 場景信息
- 屬性
- settle_info 選填 SettleInfo【結(jié)算信息】
- 屬性
Body 包體參數(shù)
請求示例
POST
# 應(yīng)答參數(shù)
- h5_url 必填 string(256)【支付跳轉(zhuǎn)鏈接】 h5_url為拉起微信支付收銀臺的中間頁面,可通過訪問該URL來拉起微信客戶端,完成支付,h5_url的有效期為5分鐘。
200OK
應(yīng)答示例
200 OK
# 錯誤碼
# 公共錯誤碼
狀態(tài)碼 | 錯誤碼 | 描述 | 解決方案 |
---|---|---|---|
400 | PARAM_ERROR | 參數(shù)錯誤 | 請根據(jù)錯誤提示正確傳入?yún)?shù) |
400 | INVALID_REQUEST | HTTP 請求不符合微信支付 APIv3 接口規(guī)則 | 請參閱 接口規(guī)則 |
401 | SIGN_ERROR | 驗證不通過 | 請參閱 簽名常見問題 |
500 | SYSTEM_ERROR | 系統(tǒng)異常,請稍后重試 | 請稍后重試 |
# 業(yè)務(wù)錯誤碼
狀態(tài)碼 | 錯誤碼 | 描述 | 解決方案 |
---|---|---|---|
400 | APPID_MCHID_NOT_MATCH | AppID和mch_id不匹配 | 請確認AppID和mch_id是否匹配 |
400 | INVALID_REQUEST | 無效請求 | 請根據(jù)接口返回的詳細信息檢查 |
400 | MCH_NOT_EXISTS | 商戶號不存在 | 請檢查商戶號是否正確 |
400 | ORDER_CLOSED | 訂單已關(guān)閉 | 當前訂單已關(guān)閉,請重新下單 |
401 | SIGN_ERROR | 簽名錯誤 | 請檢查簽名參數(shù)和方法是否都符合簽名算法要求 |
403 | ACCOUNT_ERROR | 賬號異常 | 用戶賬號異常,無需更多操作 |
403 | NO_AUTH | 商戶無權(quán)限 | 請商戶前往申請此接口相關(guān)權(quán)限 |
403 | OUT_TRADE_NO_USED | 商戶訂單號重復(fù) | 請核實商戶訂單號是否重復(fù)提交 |
403 | RULE_LIMIT | 業(yè)務(wù)規(guī)則限制 | 因業(yè)務(wù)規(guī)則限制請求頻率,請查看接口返回的詳細信息 |
403 | TRADE_ERROR | 交易錯誤 | 因業(yè)務(wù)原因交易失敗,請查看接口返回的詳細信息 |
404 | ORDER_NOT_EXIST | 訂單不存在 | 請檢查訂單是否發(fā)起過交易 |
429 | FREQUENCY_LIMITED | 頻率超限 | 請降低請求接口頻率 |
500 | BANK_ERROR | 銀行系統(tǒng)異常 | 銀行系統(tǒng)異常,請用相同參數(shù)重新調(diào)用 |
500 | INVALID_TRANSACTIONID | 訂單號非法 | 請檢查微信支付訂單號是否正確 |
500 | OPENID_MISMATCH | OpenID和AppID不匹配 | 請確認OpenID和AppID是否匹配 |
500 | SYSTEM_ERROR | 系統(tǒng)錯誤 | 系統(tǒng)異常,請用相同參數(shù)重新調(diào)用 |