> ## Documentation Index
> Fetch the complete documentation index at: https://sdk.qfapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Web 支付（線上網頁付款）

> 本文件說明如何透過 API 整合微信、支付寶、PayMe、銀聯等 Web 支付流程（顯示 QR Code 或跳轉支付頁）。

## 簡介

Web 支付允許用戶在商戶網站中使用第三方電子錢包完成付款。

依支付方式不同，用戶可能：

* 掃描 QR Code 完成付款（桌面網站常見）
* 或跳轉至對應錢包頁面完成支付

支付完成後，可透過 `return_url` 將用戶導回商戶頁面。

目前支援之錢包支付將以港幣（HKD）向用戶扣款，QFPay 亦以港幣結算給商戶。

***

## API 端點與方法

```http 建立 Web 支付交易 theme={null}
POST /trade/v1/payment
```

***

## 支援支付類型（香港環境）

| PayType | 支付方式 |
| - | - |
| `800201` | 微信 Web 掃碼支付 |
| `801514` | 支付寶 Web 支付 |
| `800714` | 銀聯雲閃付 PC-Web |
| `805814` | PayMe Web 支付 |

***

## 請求參數

| 參數名稱 | 參數編碼 | 必填 | 類型 | 說明 |
| - | - | - | - | - |
| 訂單金額 | `txamt` | 是 | Int(11) | 最小幣值單位（100 = 1 元）。**建議大於 200** 以降低風控拒付機率。 |
| 交易幣別 | `txcurrcd` | 是 | String(3) | 三位貨幣代碼。 |
| 支付方式 | `pay_type` | 是 | String(6) | 對應支付方式之 PayType。 |
| 商戶訂單號 | `out_trade_no` | 是 | String(128) | Merchant Order Number，單一商戶下必須唯一。 |
| 交易時間 | `txdtm` | 是 | String(20) | 格式：`YYYY-MM-DD hh:mm:ss` |
| 二維碼過期時間 | `expired_time` | 否 | String(3) | 單位分鐘，預設 30，範圍 5–120（僅限掃碼模式）。 |
| 商品名稱 | `goods_name` | 否 | String(64) | 最多 20 字元，僅限英數與 UTF-8 中文，不可含特殊符號。 |
| 子商戶號 | `mchid` | 否 | String(16) | 由 QFPay 分配，用於識別子商戶。 |
| 設備識別碼 | `udid` | 否 | String(40) | 顯示於後台交易管理頁。 |
| 返回網址 | `return_url` | 否 | String(512) | 支付完成後導向頁面。 |

***

## 回應參數

| 參數名稱 | 參數編碼 | 類型 | 說明 |
| - | - | - | - |
| 支付方式 | `pay_type` | String(6) | 對應支付方式。 |
| 系統交易時間 | `sysdtm` | String(20) | 用作清算依據的系統時間。 |
| 商戶交易時間 | `txdtm` | String(20) | 商戶原始提交時間。 |
| 交易金額 | `txamt` | Int(11) | 訂單金額。 |
| 商戶訂單號 | `out_trade_no` | String(128) | Merchant Order Number。 |
| QFPay 訂單號 | `syssn` | String(40) | QFPay Transaction ID。 |
| 回應碼 | `respcd` | String(4) | `0000` = 成功建立交易；`1143/1145` = 狀態未確定；其他為失敗。 |
| 回應說明 | `resperr` | String(128) | 錯誤或處理說明。 |
| 附加訊息 | `respmsg` | String(128) | 補充回傳資訊。 |
| 支付網址 | `pay_url` | String(512) | 用於生成 QR Code 或跳轉至支付頁面。 |

***

## 交易流程說明

1. 商戶呼叫 `/trade/v1/payment`
2. 系統回傳 `pay_url`
3. 商戶：
   * 產生 QR Code 顯示給用戶掃描\
     或
   * 導向該 URL 進行支付
4. 用戶完成付款
5. 系統透過 Webhook 傳送最終交易結果

***

## 重要注意事項

<Warning>
  `respcd = 0000` 僅代表交易建立成功。\
  最終支付結果必須透過 Webhook 或交易查詢 API 確認。
</Warning>

<Note>
  當回應碼為 `1143` 或 `1145` 時，代表交易狀態未確定。\
  商戶需主動查詢交易結果。
</Note>

***

## 小結

* 適用於網站掃碼或 Web 跳轉支付場景
* 回傳 `pay_url` 供產生 QR Code 或跳轉
* 建議實作 Webhook 與交易查詢 API
* 建議測試 QR Code 過期與回跳流程


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.