Network Identifiers Use CAIP-2
Theaccepts[].network of x402 v2 is a CAIP-2 identifier, not an abbreviation such as base or skale. Clients must compare by the CAIP-2 string when matching networks:
Support Matrix
upto is currently provided only on Base. The actual available options are subject to the accepts returned by the API. You can also check the Facilitator:
/supported:
exacton Base, SKALE, and Solana is a fixed-amount payment path.- Only Base provides the
uptopost-metered path, which depends on Permit2 approve. - The
extra.facilitatorAddressin theuptoentry is the address that must be written into the witness when the client signs, and it must be consistent with the value returned by the server.
Base
Base uses the official USDC contract:exact scheme, the client signs EIP-712 TransferWithAuthorization. The signature content includes:
from: payer wallet addressto: Ace Data Cloud receiving addressvalue: payment amount for this transactionvalidAfter/validBefore: signature validity time windownonce: 32-byte random nonce
transferWithAuthorization on-chain to complete the transfer.
Base is the most recommended network for production integration, especially suitable for upto post-metering, because the Permit2, USDC, and wallet ecosystems are all more mature.
Example Base exact verification result:
- The API paid retry returns the model content
ADC_BASE_E2E_OK. - The on-chain transaction can be queried on BaseScan, and the block number is
46726299. 95215atomic USDC corresponds to0.095215USDC, which is the actual settlement amount for this API call.
exact:
- The final platform order status is
Finished. - The order
pay_idis written with the same Base transaction hash. 1200000atomic USDC corresponds to1.2USDC, which is the historical actual payment amount for this 10 Credits order under the old policy; new orders no longer receive an additional X402 payment method discount, and the specific signature amount is subject to the 402 response of this transaction.
SKALE
SKALE uses bridged USDC. Its signing method is similar to Base and also uses EIP-3009. It is suitable for EVM payment scenarios with low gas costs; actual calls are still subject to theaccepts returned by the API.
A typical SKALE 402 accepts includes:
exact. If you need post-metering, please use Base upto.
Example SKALE exact verification result:
- API paid retry returned model content
ADC_SKALE_E2E_OK. - The transaction can already be found in the SKALE explorer, and the block number is
1969317. - The settlement amount for this
exactpayment is0.095215USDC.
Solana
Solana uses SPL USDCTransferChecked. The client constructs a transfer transaction, signs and submits it, and then puts the transaction signature or serialized transaction into the PAYMENT-SIGNATURE envelope.
Characteristics of Solana:
- Uses Solana wallet adapter or base58 secret key;
- The asset is Solana USDC mint;
- Currently only supports
exact; - The Facilitator validates the transfer instruction’s mint, destination, authority, and amount.
exact validation result:
- The paid retry has already returned HTTP 200, and the model output
ADC_SOLANA_E2E_OK. - Rate limiting may be encountered when querying the on-chain signature through public RPC.
- Because public RPC queries may be rate-limited, the Solana explorer is not included here. When strict reconciliation is required, please use your own Solana RPC or platform-side settlement records to confirm the transaction signature.
How to Choose
No matter which chain you choose, do not hardcode prices on the client. The price is determined by the
accepts[].maxAmountRequired returned by the server.
