> ## 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

> GatePay 集成 x402 开放支付协议，使客户端能够通过标准 HTTP 流程自动完成链上支付。

## 概述

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

## 为什么选择 x402？

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

## 核心角色

<div className="two-column-table">
  | 角色   | 说明                               |
  | ---- | -------------------------------- |
  | 客户端  | 客户端或开发者，请求付费资源并完成链上签名支付          |
  | 服务端  | 商户服务端，声明支付要求并在验证通过后提供资源          |
  | 协调服务 | GatePay 提供的支付验证与结算服务，负责链上交易提交与确认 |
</div>

## 客户端与商户集成

### 商户端接入

商户可结合 Gate 官方 GitHub 组织中的 SDK 与客户端仓库完成接入，在业务服务中完成签名请求与路由侧的支付声明，由 GatePay 协调服务负责支付验证与链上结算。当前公开可见的多语言资源包括 Go、Java、Python、Node.js / TypeScript 与 PHP，最新列表请以官方组织页为准。

<div className="gatepay-github-card">
  <Card icon="https://mintcdn.com/gateglobalcorp/-BUf7BZGLTCh5iYe/icon/github.svg?fit=max&auto=format&n=-BUf7BZGLTCh5iYe&q=85&s=846d0112b821219571bdcbee940d2d07" title="Gate GitHub 组织" href="https://github.com/gate" width="64" height="64" data-path="icon/github.svg" />
</div>

### 客户端接入

支持 MCP 的客户端可通过以下命令安装并接入 x402 MCP 组件。具体安装方式请以对应客户端的 MCP 配置规范为准。

```bash theme={null}
npx -y @gatepay/x402-mcp
```

<div className="gatepay-github-card">
  <Card icon="https://mintcdn.com/gateglobalcorp/-BUf7BZGLTCh5iYe/icon/github.svg?fit=max&auto=format&n=-BUf7BZGLTCh5iYe&q=85&s=846d0112b821219571bdcbee940d2d07" title="源码更多说明" href="https://github.com/gate/gatepay-local-mcp" width="64" height="64" data-path="icon/github.svg" />
</div>

## 支付流程

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

## 最小接入链路

如果你是第一次接入 x402，建议先从单个受保护资源开始验证以下链路：

```text theme={null}
声明一个需要付费的 HTTP 路由 -> 返回 402 支付要求 -> 客户端签名并重试 -> GatePay 验证支付 -> 商户返回资源
```

先跑通单一路由的声明、验证和成功返回，再扩展到多资源、多价格策略和更复杂的 AI Agent 场景，会更容易控制联调复杂度。

## GatePay 协调服务

GatePay 作为 x402 协调服务提供以下能力：

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

<div className="gatepay-facilitator-notice-card">
  <Card title="GatePay 协调服务不托管资金，仅执行验证和链上交易提交。资金始终在客户端钱包与商户收款地址之间直接流转。" />
</div>

## 支持的网络与币种

GatePay x402 协调服务当前支持以下网络，更多代币与网络支持持续扩展中。

<div className="two-column-table">
  | 网络           | 支付币种 |
  | ------------ | ---- |
  | Ethereum     | USDC |
  | Base         | USDC |
  | Arbitrum One | USDC |
  | Polygon      | USDC |
</div>

## 常见问题

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

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

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

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

### 如何防止重复支付？

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

### 如何将现有 API 接入 x402？

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

## 相关文档

* [支付](/essentials/version/100/cn/inflow/payment/payment)
* [认证](/essentials/version/100/cn/common/authentication)
* [通知](/essentials/version/100/cn/common/notification)
* [API Reference](/api-reference/version/100/cn/introduction)
