
x402 は、 HTTP プロトコルに基づいて構築された、インターネットネイティブなトランザクションのためのオープンで中立的な支払い標準です。長らく使用されていなかったHTTP 402「支払いが必要」ステータスコードを再利用して、HTTP リクエスト/レスポンスサイクル内で直接ピアツーピア支払いを可能にします。支払いは、 USDCなどのサポートされている暗号通貨や、支払いカードなどのサポートされている法定通貨の仲介業者を通じて行うことができます。[ 1 ]
HTTP 402ステータスコードは、ワールドワイドウェブの黎明期から存在しており、元々はサーバーがリクエストごとにクライアントに料金を請求するための仕組みとして考案されました。しかし、インフラストラクチャ上の制約により、このステータスコードは何十年もの間ほとんど使用されませんでした。支払いは遅く、費用がかさみ、アカウント、セッション、そしてチャージバックのリスクが高い仲介業者を必要としたためです。
x402は、Coinbaseが開発したもので、ステーブルコイン、高速ブロックチェーン決済、プログラマブル認証といった最新の暗号技術を用いて、このオリジナルのコンセプトを再構築することを目的としています。このプロトコルは、 EIP-3009(許可型認証)を活用することで、外部決済ゲートウェイを介さずに直接決済検証を可能にします。
x402は、標準HTTPフローに最小限の拡張を導入し、リソースへのアクセスを許可する前に支払い検証を可能にします。このプロトコルは、完全なHTTP互換性を維持しながら、支払いネゴシエーションをリクエスト・レスポンスサイクルの不可欠な部分として導入します。[ 2 ]
クライアントはリソースサーバーに標準的なHTTPリクエストを送信します。リソースが有料の場合、サーバーはHTTP 402ステータスコードと、以下の内容を指定するJSONペイロードで応答します。
クライアントは、暗号通貨ウォレットを介して、 EIP-3009標準 ( transferWithAuthorization)を使用して署名付き支払い承認を生成します。クライアントは、署名付き支払いペイロードを HTTP ヘッダー (通常は または)に添付して、HTTP リクエストを再送信します。ファシリテーター サービス (またはサーバー自体) が暗号署名を検証し、支払いパラメータが最初の見積もりと一致することを確認します。[ 3 ]X-PAYMENTPAYMENT-SIGNATURE
ファシリテーターがオフチェーンで支払い承認を検証すると、署名済みのトランザクションが決済のためにブロックチェーンに送信されます。オンチェーンでの確認後、サーバーは要求されたリソースをHTTP 200ステータスコードと検証用のトランザクションハッシュX-PAYMENT-RESPONSEを含むヘッダーとともに返します。
x402プロトコルは、従来の決済システムが非効率的な環境において、即時かつプログラムによるトランザクションを可能にします。Amazon Web Servicesなどのエンタープライズプラットフォームは、金融機関が自律型AIエージェントをx402決済インフラストラクチャと統合し、エージェントがアカウント設定や仲介者の関与なしに、即時かつオンチェーン決済でプレミアムAPIやデータサービスにアクセスできるようにする方法を実証しています。[ 4 ]主なアプリケーションは以下のとおりです。
x402ミドルウェアを使用したシンプルなNode.jsの例:
app.use ( paymentMiddleware ( { " GET /weather" : { accepts : [...], // サポートしたいネットワーク/スキームの数を指定description : "天気データ" , // エンドポイントの機能}, }, ) );支払い情報のないリクエストが届いた場合、サーバーはHTTP 402エラーを返します。402エラーを受信すると、クライアントのウォレットは支払い承認に署名し、リクエストを再送信します。
x402 は以下に準拠します: