跳转到主要内容

Documentation Index

Fetch the complete documentation index at: https://docs.gate.com/llms.txt

Use this file to discover all available pages before exploring further.

概述

x402 是基于 HTTP 402 Payment Required 状态码的开放支付标准。当客户端请求需要付费的资源时,服务端返回 402 响应并携带支付要求,客户端自动签名并完成链上支付,整个流程对用户透明。

为什么选择 x402?

  • 原生微支付 — 支持按次计费的 API 调用
  • 程序化支付 — 客户端无需传统账户注册即可自动完成支付
  • 低摩擦 — 无需传统信用卡或法币支付通道,基于链上签名即时结算
  • HTTP 原生 — 标准 HTTP Header 通信,兼容任何 HTTP 服务

核心角色

角色说明
客户端客户端或开发者,请求付费资源并完成链上签名支付
服务端商户服务端,声明支付要求并在验证通过后提供资源
协调服务GatePay 提供的支付验证与结算服务,负责链上交易提交与确认

客户端与商户集成

商户端接入

商户可结合 Gate 官方 GitHub 组织中的 SDK 与客户端仓库完成接入,在业务服务中完成签名请求与路由侧的支付声明,由 GatePay 协调服务负责支付验证与链上结算。当前公开可见的多语言资源包括 Go、Java、Python、Node.js / TypeScript 与 PHP,最新列表请以官方组织页为准。
https://mintcdn.com/gateglobalcorp/-BUf7BZGLTCh5iYe/icon/github.svg?fit=max&auto=format&n=-BUf7BZGLTCh5iYe&q=85&s=846d0112b821219571bdcbee940d2d07

Gate GitHub 组织

客户端接入

支持 MCP 的客户端可通过以下命令安装并接入 x402 MCP 组件。具体安装方式请以对应客户端的 MCP 配置规范为准。
npx -y @gatepay/x402-mcp
https://mintcdn.com/gateglobalcorp/-BUf7BZGLTCh5iYe/icon/github.svg?fit=max&auto=format&n=-BUf7BZGLTCh5iYe&q=85&s=846d0112b821219571bdcbee940d2d07

源码更多说明

支付流程

  1. 客户端向商户 API 发起 HTTP 请求
  2. 商户返回 402 Payment Required ,Header 中包含支付要求(金额、网络、收款地址)
  3. 客户端根据支付要求选择链和币种,使用钱包私钥签名生成 Payment Payload
  4. 客户端携带PAYMENT-SIGNATUREHeader 重新请求
  5. 商户将 Payment Payload 发送至 GatePay 协调服务的支付验证端点完成验证
  6. 验证通过后,商户提供资源;GatePay 协调服务调用链上结算端点完成链上结算
  7. 商户返回200 OKPAYMENT-RESPONSE Header,客户端获得资源

最小接入链路

如果你是第一次接入 x402,建议先从单个受保护资源开始验证以下链路:
声明一个需要付费的 HTTP 路由 -> 返回 402 支付要求 -> 客户端签名并重试 -> GatePay 验证支付 -> 商户返回资源
先跑通单一路由的声明、验证和成功返回,再扩展到多资源、多价格策略和更复杂的 AI Agent 场景,会更容易控制联调复杂度。

GatePay 协调服务

GatePay 作为 x402 协调服务提供以下能力:
  1. 支付验证 — 验证客户端提交的签名是否满足支付要求
  2. 链上结算 — 将验证通过的支付提交至区块链并监控确认
  3. Gas 代付 — 协调服务为客户端代付 Gas 费用,客户端无需持有原生代币

GatePay 协调服务不托管资金,仅执行验证和链上交易提交。资金始终在客户端钱包与商户收款地址之间直接流转。

支持的网络与币种

GatePay x402 协调服务当前支持以下网络,更多代币与网络支持持续扩展中。
网络支付币种
EthereumUSDC
BaseUSDC
Arbitrum OneUSDC
PolygonUSDC

常见问题

x402 与传统支付网关有什么区别?

x402 是链上原生支付协议,无需注册账户、无会话管理、无信用卡。客户端通过钱包签名直接完成支付,适合微支付和程序化支付场景。

客户端需要持有 ETH/SOL 等原生代币吗?

不需要。GatePay 协调服务为客户端代付 Gas 费用。客户端仅需在钱包中持有支付代币(如 USDC)。

如何防止重复支付?

GatePay 协调服务内置去重机制。对于 EVM 网络使用 nonce 防重;对于 Solana 使用内存级 SettlementCache,在 120 秒窗口内自动检测并拒绝重复提交。

如何将现有 API 接入 x402?

仅需在业务服务中结合官方 SDK 或直接按协议接入,并在路由侧声明 x402 支付要求即可。无需改动核心业务流程。详见上方「商户端接入」与 Gate GitHub 组织中的对应仓库说明。

相关文档