Skip to main content
Wechat Jsapi Process
微信 JSAPI 支付僅適用於 微信內建瀏覽器(WeChat WebView) 環境。
JSAPI 支付無法從 Chrome、Safari 或其他外部瀏覽器發起。
請確保使用者於微信 App 內開啟支付頁面。

整體流程說明

JSAPI 支付完整流程:
  1. 於微信內取得 oauth_code
  2. 使用 oauth_code 換取 openid
  3. 呼叫 /trade/v1/payment
  4. 取得 pay_params
  5. 呼叫微信 JSAPI 支付模組
  6. 透過 Webhook 或查詢 API 確認最終結果

整合模式

模式一:商戶擁有實名認證公眾號

條件:
  • 商戶自行註冊並完成微信公眾號實名認證
  • 公眾號已與 QFPay 帳戶綁定
  • 商戶可自行取得使用者 openid
官方文件:

模式二:使用 QFPay 提供之公眾號

適用於未擁有實名公眾號的商戶:
  • OAuth 由 QFPay 代為處理
  • 商戶透過 QFPay API 取得 openid
加拿大地區商戶若遇到 PayType 不一致,請依您帳戶實際開通的 PayType 為準,並參閱對應支付方式頁面。

Step 1:取得 oauth_code

Endpoint and Method

Get OAuth Code

Request Parameters

Example Request

Example URL
此請求必須在 微信內建瀏覽器 中開啟,否則無法取得 oauth_code
成功後會跳轉至 redirect_uri,並附帶 query 參數 code
Redirect Result

Step 2:取得 openid

Endpoint and Method

Get OpenID

Request Headers

Request Parameters

Example Request

Example Request (Query + Headers)

Example Response

OpenID Response

Response Parameters

每次發起支付前,都必須重新取得新的 oauth_codeopenid,請勿重用。

Step 3:發起支付

Endpoint and Method

Create Payment
PayType: 800207

Request Headers

Request Parameters

Example Request

Payment Request

Example Response

Payment Response

Response Parameters


Step 4:呼叫微信 JSAPI 支付模組

前端需使用 pay_params 呼叫微信支付:
WeixinJSBridge Example
前端 callback 並不等於最終支付結果。
最終狀態請以 Webhook 或交易查詢 API 為準。

直接跳轉模式(QFPay Redirect)

如您採用 QFPay 代為跳轉方式,可使用:
Direct Entry

整合注意事項與最佳實務

建議您保存以下欄位以便對帳與補單:
  • syssn(QFPay Transaction ID)
  • out_trade_no(Merchant Order Number)
請務必實作 Webhook(非同步通知)或交易查詢 API,以確認最終支付結果。
respcd=0000 僅代表「成功建立交易」。

小結

  • 僅適用於微信內建瀏覽器
  • 需先完成 OAuth 並取得 openid
  • 交易建立成功後需呼叫微信 JSAPI
  • 最終交易結果以 Webhook / 查詢 API 為準