Ask a buyer to sign a USDC authorization that your merchant backend can capture later on Base.
Ask the buyer to approve an exact USDC payment offchain, then decide when to settle it. EIP-3009 signs the payer, recipient, amount, validity window, and one-time nonce without sending a transaction.
The demo above is mock only. If you want to see onchain demos on Vibenet, head to Base chain demos.
An EIP-3009 signature is deferred payment authorization, not a reserved balance. The payer can move funds before capture, and token policy can still block settlement. Only a successful capture transaction guarantees payment.
Store the returned payload and signature against the order on your backend. Generate a cryptographically random 32-byte nonce for every attempt, and never reuse it for another order.
Field
Purpose
value
Exact amount that can settle
validAfter
Earliest valid capture time
validBefore
Capture deadline
nonce
One-time identifier consumed by capture or cancellation
The wallet returns a typed-data signature, while authorizationState(payer, nonce) remains false until the authorization is captured or canceled onchain.