1. 程式人生 > >微信支付介面常見問題

微信支付介面常見問題

一、回撥頁面

正常流程使用者支付完成後會返回至發起支付的頁面,如需返回至指定頁面,則可以在MWEB_URL後拼接上redirect_url引數,來指定回撥頁面。

如,您希望使用者支付完成後跳轉至https://www.wechatpay.com.cn,則可以做如下處理:

假設您通過統一下單介面獲到的MWEB_URL= https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx20161110163838f231619da20804912345&package=1037687096

則拼接後的地址為MWEB_URL= https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx20161110163838f231619da20804912345&package=1037687096&redirect_url=https%3A%2F%2Fwww.wechatpay.com.cn

注意:

  1.需對redirect_url進行urlencode處理

  2.由於設定redirect_url後,回跳指定頁面的操作可能發生在:1,微信支付中間頁調起微信收銀臺後超過5秒 2,使用者點選“取消支付“或支付完成後點“完成”按鈕。因此無法保證頁面回跳時,支付流程已結束,所以商戶設定的redirect_url地址不能自動執行查單操作,應讓使用者去點選按鈕觸發查單操作。回跳頁面展示效果可參考下圖

二、其它常見錯誤

序號 問題 錯誤描述 解決方法
1 268498465 網路環境未能通過安全驗證,請稍後再試 1. 商戶側統一下單傳的終端IP(spbill_create_ip)與使用者實際調起支付時微信側檢測到的終端IP不一致導致的,這個問題一般是商戶在統一下單時沒有傳遞正確的終端IP到spbill_create_ip導致,詳細可參見
客戶端ip獲取指引

 

2. 統一下單與調起支付時的網路有變動,如統一下單時是WIFI網路,下單成功後切換成4G網路再調起支付,這樣可能會引發我們的正常攔截,請保持網路環境一致的情況下重新發起支付流程

2 268443815 商家引數格式有誤,請聯絡商家解決

1. 當前調起H5支付的referer為空導致,一般是因為直接訪問頁面調起H5支付,請按正常流程進行頁面跳轉後發起支付,或自行抓包確認referer值是否為空

 

2. 如果是APP裡調起H5支付,需要在webview中手動設定referer,如(
Map extraHeaders = new HashMap();
extraHeaders.put("Referer", "商戶申請H5時提交的授權域名");//例如 http://www.baidu.com ))

3 268443816 商家存在未配置的引數,請聯絡商家解決 1,當前調起H5支付的域名(微信側從referer中獲取)與申請H5支付時提交的授權域名不一致,如需新增或修改授權域名,請登陸商戶號對應的商戶平臺--"產品中心"--"開發配置"自行配置 

2,如果設定了回跳地址redirect_url,請確認設定的回跳地址的域名與申請H5支付時提交的授權域名是否一致
4 268498468 支付請求已失效,請重新發起支付 統一下單返回的MWEB_URL生成後,有效期為5分鐘,如超時請重新生成MWEB_URL後再發起支付
6 請在微信外開啟訂單,進行支付 H5支付不能直接在微信客戶端內調起,請在外部瀏覽器調起
7 IOS:簽名驗證失敗
安卓:系統繁忙,請稍後再試
1,請確認同一個MWEB_URL只被一個微訊號調起,如果不同微訊號調起請重新下單生成新的MWEB_URL 

2,如MWEB_URL有新增redirect_url,請確認引數拼接格式是否有誤,是否有對redirect_url的值做urlencode,可對比以下例子格式:

https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx20161110163838f231619da20804912345&package=1037687096&redirect_url=https%3A%2F%2Fwww.wechatpay.com.cn