Solvador
Payment Schemes

upto

Variable-amount payments — the payer signs a maximum, you settle only what was used. EVM only.

upto is for prices you can’t know until the work is done: per-token LLM billing, per-second streaming, per-byte transfer. The payer signs a Permit2 authorization for a maximum amount; when your server settles, it specifies the amount actually consumed, up to that maximum.

How it works

  1. Your server advertises upto requirements with the ceiling amount.
  2. The payer signs a Permit2 authorization for that maximum.
  3. Your server verifies the payload, does the metered work, and calls /settle with the actual amount consumed.
  4. Solvador transfers the actual amount — never more than the signed maximum.

The settle response reports what was actually charged in its amount field:

{
  "success": true,
  "transaction": "0x6fe1…c40b",
  "network": "eip155:8453",
  "payer": "0xPayerAddress",
  "amount": "4200"
}

Here the payer authorized up to some maximum, but only 4200 atomic units ($0.0042 in USDC) were settled.

Gasless approvals

Permit2-based flows need a one-time on-chain approval from the payer to the canonical Permit2 contract. For permit()-capable tokens like USDC, Solvador sponsors that approval so payer onboarding is fully gasless — advertised as the eip2612GasSponsoring extension in GET /supported.

Availability

upto is registered on all 11 EVM networks. It is not available on Solana, NEAR, or the XRP Ledger — use exact there.