x402 ↗ は、HTTP 402(Payment Required)を中心にした決済標準です。サービスは決済手順付きの 402 応答を返し、クライアントはアカウント、セッション、API キーなしでプログラムから支払います。
- クライアントがリソースを要求します。
GET /resourceです。 - サーバーは
402 Payment Requiredを返し、PAYMENT-REQUIREDヘッダーに Base64 エンコードした決済詳細を入れます。価格、受け付けるトークン、ネットワーク、マーチャントアドレスです。 - クライアントは署名済みの決済ペイロードを組み立て、
PAYMENT-SIGNATUREヘッダー付きでリクエストを再試行します。 - サーバーは決済ペイロードを検証し、直接または ファシリテーター 経由でオンチェーン決済を確定します。
- サーバーはリソースを返し、
PAYMENT-RESPONSEヘッダーに決済確定の確認を入れます。
クライアントは、有料リソースを要求する主体です。人が操作するアプリ、AI エージェント、プログラムからのサービスです。必要なのは暗号ウォレットだけです。アカウント、資格情報、セッショントークンは管理しません。
サーバーは 402 応答で決済要件を定義し、受け取った決済ペイロードを検証し、トランザクションを確定し、リソースを返します。x402 SDK とファシリテーターが、この処理の多くを自動で行います。
ファシリテーターは任意ですが、推奨される第三者サービスです。ブロックチェーン操作を抽象化します。ノードへ直接つなぐ代わりに、サーバーは次の 2 操作を委譲します。
POST /verify— サーバーがリクエストを履行する前に、クライアントの決済ペイロードが有効かを確認します。POST /settle— 検証済みの決済トランザクションをブロックチェーンへ送ります。
ファシリテーターは資金を保持しません。サーバーの代わりに、クライアントが事前署名したトランザクションを検証し、ブロードキャストします。https://x402.org/facilitator は Coinbase が運用する公開ファシリテーターで、Cloudflare の例はすべてこれを使います。複数のファシリテーター ↗ が、さまざまなネットワークで利用できます。
x402 は決済 スキーム で、特定ネットワーク上での決済の組み立て方と確定方法を定義します。
| スキーム | ネットワーク | 説明 |
|---|---|---|
exact ↗ |
EVM, Solana, Aptos, Stellar, Hedera, Sui | 固定のトークン量をマーチャントアドレスへ送金します。EVM では通常 ERC-20 ↗ の USDC です。 |
upto ↗ |
EVM | 上限額を認可します。実際の課金額は、決済時にリソース消費に応じて決まります。 |
対応ネットワークは Base、Ethereum、Polygon、Optimism、Arbitrum、Avalanche、Solana、Aptos、Stellar、Sui です。テストには base-sepolia を使い、Circle Faucet ↗ の無料テスト USDC を使います。
HTTP コンテンツ
MCP ツール
Agents SDK
コーディングツール
| パッケージ | インストール | 用途 |
|---|---|---|
x402-hono |
npm install x402-hono |
Worker サーバー向けの Hono ミドルウェア |
@x402/fetch |
npm install @x402/fetch |
決済を自動処理する Fetch ラッパー |
@x402/evm |
npm install @x402/evm |
EVM 決済スキームのサポート |
agents/x402 |
agents に含まれます |
x402 決済対応の MCP クライアント |
- x402.org ↗ — プロトコル仕様
- x402 GitHub ↗ — オープンソース SDK
- x402 の例 ↗ — 動作する完全なコード
- Pay Per Crawl — Cloudflare ネイティブの収益化