Extensions

EIP2612 Gas Sponsoring

Buyers can approve Permit2 spending without holding ETH for gas—the facilitator submits the EIP-2612 permit when settling.

Why use it

  • Smoother onboarding for tokens that support EIP-2612 permits (for example USDC).
  • Works with exact EVM payments that use the Permit2 transfer path.

How it works

  • Your server advertises eip2612GasSponsoring on the 402 payment-required response.
  • The client signs an off-chain permit when allowance is insufficient; a facilitator that supports the extension submits it during settlement.

Highlighting Request

  1. Request

    Wallet, agent, or app that selects an offer and signs payment.

    GET
    GET

    Sells access and publishes payment requirements.

    GET

    Verifies signatures and submits chain transactions on behalf of merchants.

  2. 402

    Your server advertises eip2612GasSponsoring on the 402 payment-required response.

    Wallet, agent, or app that selects an offer and signs payment.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    { "x402Version": 2 }

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Sells access and publishes payment requirements.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Verifies signatures and submits chain transactions on behalf of merchants.

  3. Pay and retry

    Wallet, agent, or app that selects an offer and signs payment.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Sells access and publishes payment requirements.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Verifies signatures and submits chain transactions on behalf of merchants.

  4. Verify

    Wallet, agent, or app that selects an offer and signs payment.

    Sells access and publishes payment requirements.

    verify
    verify

    Verifies signatures and submits chain transactions on behalf of merchants.

    verify
  5. Settle

    Wallet, agent, or app that selects an offer and signs payment.

    Sells access and publishes payment requirements.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

    Verifies signatures and submits chain transactions on behalf of merchants.

    Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.
  6. Response

    Wallet, agent, or app that selects an offer and signs payment.

    200
    200

    Sells access and publishes payment requirements.

    200

    Verifies signatures and submits chain transactions on behalf of merchants.

Learn more

For engineers

Extension key eip2612GasSponsoring.

Server advertises in PaymentRequired extensions; client places permit data in payment payload extensions; facilitator calls settleWithPermit-style settlement per spec.

  • Targets scheme_exact EVM with Permit2 asset transfer method.
  • Client includes permit in extensions.eip2612GasSponsoring.info on the payment payload.
  • Facilitator atomically submits permit and executes transfer in one transaction.