ネットワーク識別子には CAIP-2 を使用
x402 v2 のaccepts[].network は CAIP-2 識別子であり、base、skale のような略称ではありません。クライアントがネットワークを照合する際は、CAIP-2 文字列で比較する必要があります:
サポートマトリクス
upto は現在 Base でのみ提供されています。実際に利用可能な項目は API が返す accepts に準拠します。Facilitator も確認できます:
/supported の返却値:
- Base、SKALE、Solana の
exactは固定金額支払いパスです。 uptoの後払い計量パスを提供しているのは Base のみであり、Permit2 approve に依存します。uptoエントリー内のextra.facilitatorAddressは、クライアントが署名時に witness に書き込むアドレスであり、サーバー側の返却値と一致している必要があります。
Base
Base は公式 USDC コントラクトを使用します:exact スキームでは、クライアントは EIP-712 TransferWithAuthorization に署名します。署名内容には以下が含まれます:
from:支払いウォレットアドレスto:Ace Data Cloud の受取アドレスvalue:今回の支払い金額validAfter/validBefore:署名の有効時間ウィンドウnonce:32バイトのランダム nonce
transferWithAuthorization を呼び出して送金を完了します。
Base は最も推奨される本番統合ネットワークであり、特に upto 後払い計量に適しています。これは Permit2、USDC、およびウォレットエコシステムがいずれもより成熟しているためです。
Base exact 検証結果の例:
- API の paid retry はモデルコンテンツ
ADC_BASE_E2E_OKを返します。 - オンチェーン取引はすでに BaseScan で確認でき、ブロック番号は
46726299です。 95215atomic USDC は0.095215USDC に相当し、今回の API 呼び出しの実際の決済金額です。
exact のプログラム実行結果:
- プラットフォーム注文の最終状態は
Finishedです。 - 注文の
pay_idには同じ Base トランザクションハッシュが書き込まれます。 1200000atomic USDC は1.2USDC に相当し、旧ポリシー下におけるこの 10 Credits 注文の過去の実払い金額です。新規注文では X402 支払い方法割引は追加で適用されなくなり、具体的な署名金額は今回の 402 レスポンスに準拠します。
SKALE
SKALE は bridged USDC を使用し、署名方式は Base と同様に EIP-3009 です。低 gas コストの EVM 支払いシナリオに適しており、実際の呼び出しは引き続き API が返すaccepts に準拠します。
SKALE の典型的な 402 accepts には以下が含まれます:
exact のみを提供しています。後払い計量が必要な場合は、Base upto を使用してください。
SKALE exact 検証結果の例:
- API の有料リトライはモデル内容
ADC_SKALE_E2E_OKを返す。 - 取引は SKALE explorer で確認可能であり、ブロック番号は
1969317。 - 今回の
exact支払いの決済金額は0.095215USDC。
Solana
Solana は SPL USDCTransferChecked を使用する。クライアントは送金トランザクションを構築し、署名して送信した後、トランザクション署名またはシリアライズされたトランザクションを PAYMENT-SIGNATURE envelope に入れる。
Solana の特徴:
- Solana wallet adapter または base58 secret key を使用する;
- 資産は Solana USDC mint;
- 現在は
exactのみ対応; - Facilitator は transfer instruction の mint、destination、authority、および amount を検証する。
exact 検証結果の例:
- 有料リトライはすでに HTTP 200 を返しており、モデル出力は
ADC_SOLANA_E2E_OK。 - 公開 RPC でオンチェーン signature を照会する際、レート制限に遭遇する可能性がある。
- 公開 RPC の照会はレート制限される可能性があるため、ここでは Solana explorer を記載しない。厳密な照合が必要な場合は、自前の Solana RPC またはプラットフォーム側の settlement 記録を使用してトランザクション署名を確認してください。
選び方
どのチェーンを選ぶ場合でも、クライアントに価格をハードコードしないでください。価格はサーバーが返す
accepts[].maxAmountRequired によって決まる。
