x402 batch-settlement · on-chain & self-custodial
x402's stream is centralised.
sip402 decentralises it.
x402 ships a batch-settlement scheme for streaming, session-based payments — but its only binding, cloudflare:402, is centralised: credit-backed, off-chain, network-as-merchant. sip402 is the first on-chain, self-custodial binding — gasless USDC streams the chain itself caps and revokes. No custodian ever holds the funds.
The problem
The stream existed. The decentralised version didn't.
x402 already describes streaming, session-based payments — pay as a resource is delivered, settle in batches. But the only binding anyone shipped, cloudflare:402, is centralised: a credit balance held by the network, settled off-chain. The trust-minimised, on-chain version was in the spec but never built. sip402 builds it.
vs the existing x402 implementation
Built on x402. Past where x402 stops.
x402 ships exact and upto; the official @metamask/x402 does per-request delegated payments through a hosted facilitator. None of them open a standing session whose cap the chain enforces.
It is x402: same handshake, same envelope.
402 handshake
Server replies 402, the client returns a PaymentPayload, the seller verifies and settles.
Same envelope
PaymentRequirements and PaymentPayload, the scheme and network fields, the facilitator roles.
Scheme registry
Registers as batch-settlement on Base — eip155:8453 and eip155:84532.
Where they diverge
How sip402 expands batch-settlement
batch-settlement is described in the x402 spec as a capital-backed, delegated-authorization model, but its only shipped binding, cloudflare:402, is credit-backed fiat, settled off-chain, with the network as merchant-of-record.
sip402 is the first capital-backed, on-chain, self-custodial binding of the same scheme: the commitment is an ERC-7710 redelegation, the cap is an on-chain caveat, settlement is a real redeemDelegations batch, and A2A redelegation lets one session fan out to many agents.
How it works
Grant. Spend. Enforce.
Grant
One MetaMask ERC-7715 Advanced Permission. A periodic USDC allowance, capped per period.
Spend
The agent sips USDC per request. Each commitment is a redelegation to the seller; vouchers batch into one tx.
Enforce
The ERC20PeriodTransferEnforcer reverts the over-cap draw. disableDelegation revokes mid-stream.
Proven on-chain
Every claim is a real transaction.
Credibility comes from here is the tx, not from adjectives. Each row links to Basescan.
Base Sepolia
Base mainnet
The counts differ on purpose: Sepolia is free, so every requirement is proven there; mainnet runs spend real USDC, so the two production rails (gasless 1Shot redemption, paid Venice inference) are each proven once on Base mainnet.
Built on
MetaMask Smart Accounts Kit
ERC-7715 advanced permissions · ERC-7710 redelegation
1Shot Permissionless Relayer
EIP-7702 · gas paid in USDC · webhooks
Venice AI
x402-metered inference behind an OpenAI-compatible gateway