什麼是 x402?
x402 是一種把支付嵌入 HTTP 請求流程的協議,適合 API、數字內容和 AI Agent 可呼叫資源的按次付費訪問。
基礎概念
x402 是一種基於 HTTP 402 Payment Required 狀態碼的支付協議。服務端可以把某個 API、檔案、資料來源或 Agent 工具宣告為付費資源;客戶端第一次請求時,如果沒有攜帶有效付款憑證,服務端會返回 402 響應,並在響應中說明價格、網路、資產、收款地址和資源範圍。
客戶端或 AI Agent 收到 402 後,可以按要求籤署一筆標準化的鏈上支付授權,然後用同一個請求重試。服務端驗證授權、確認金額和資源匹配,並完成結算後再返回真實內容。這樣,支付邏輯可以直接嵌入 HTTP 請求流程,不需要額外跳轉到收銀臺頁面。
在 PolyPay 中,AI Agent 收款需要有效訂閱,Pay-as-you-go 也可使用。套餐過期或未啟用訂閱後,已儲存的資源配置和支付記錄會保留為只讀,但 verify/settle 執行時會被凍結,恢復有效訂閱後自動恢復。
為什麼適合 Agent 支付?
- 機器可讀:價格、資產、網路和資源範圍都在 402 響應裡明確給出,Agent 可以自動理解並決定是否支付。
- 按次付費:適合資料 API、模型推理、報告生成、檔案下載、MCP 工具呼叫等小額、高頻資源。
- 無需帳戶預充值:Agent 可以在請求資源時即時授權付款,商戶按資源規則完成結算。
- 和 HTTP 語義一致:未付款返回 402,付款成功返回原始業務響應,便於接入現有 API 閘道器和服務端路由。
一次 x402 請求如何完成?
- Agent 請求受保護資源,例如 GET /api/premium-data。
- 服務端 SDK 發現請求沒有有效付款憑證,返回 HTTP 402,並透過 PAYMENT-REQUIRED 響應頭提供付款要求。
- Agent 根據要求籤署 USDC 授權,並透過 PAYMENT-SIGNATURE 請求頭重試原請求。
- PolyPay 驗證簽名、資源、金額、有效期和 nonce,防止錯付或重複結算。
- 驗證透過後,PolyPay 提交鏈上結算,服務端返回原本的 API 資料,並透過 PAYMENT-RESPONSE 返回結算憑證。
核心概念
| 概念 | 說明 |
|---|---|
resource | 被保護的公開 URL。付款授權會繫結到這個資源,避免拿一個資源的付款去訪問另一個資源。 |
method | 受保護資源的 HTTP 方法,例如 GET 或 POST。 |
amount | 用資產最小單位表示的支付金額。USDC 有 6 位小數,所以 $0.01 對應 10000。 |
payTo | 商戶收款錢包地址,結算會進入該地址。 |
nonce | 一次性隨機值,用於防止同一筆授權被重複結算。 |
和 PolyPay 的關係
PolyPay 提供 x402 facilitator、商戶資源配置、SDK 中介軟體和支付記錄管理。商戶不需要自己實現簽名校驗、nonce 鎖定和鏈上結算,只需要配置資源規則並在服務端路由中接入 SDK。