NoHoldPay
Receiving payments

Gasless USDC

Let customers pay USDC without holding the chain's gas token. They sign a message. The platform relay broadcasts the transfer.

Why enable this

Requiring customers to hold the chain's gas token is the most common reason crypto checkout sessions are abandoned. Gasless removes that friction. The customer signs a message in their wallet (no gas required), and the payment ends up in your treasury.

The customer's signed message names an address derived from your wallet as the destination - your per-payment forwarder, or your treasury directly where direct settlement is enabled. The relay can only pay the network fee. It cannot redirect funds. The token contract enforces this on-chain when it verifies the signature.

EVM gasless (EIP-3009 transferWithAuthorization)

ChainEligible tokens
EthereumCircle USDC, Paxos PYUSD
Ethereum Sepolia (testnet)Circle USDC
BaseCircle USDC, Circle EURC
PolygonCircle USDC

EIP-3009 must be implemented by the token contract for gasless to work. The table above is the full list the platform allowlists today. USDT, bridged variants, BNB Chain stablecoins (Binance-Peg USDC is bridged, not native Circle), and other tokens fall back to the normal send flow where the customer pays gas.

Stacks on the per-payment forwarder. The gasless transfer lands at the forwarder address, and the next sweep tick (about 5 minutes later) moves it to your treasury. Where your operator has enabled direct settlement on the chain, the transfer settles straight into your treasury in the same transaction, with no forwarder sweep. See Payment modes.

Enable per wallet via the Gasless payments toggle on the wallet card.

Solana sponsored (fee-payer signing)

Same outcome, different mechanism. The customer signs slot 1 of a v0 versioned transaction. The platform relay signs slot 0 as the fee payer.

The SPL stablecoins offered on the chain (USDC, USDT) are eligible. Native SOL is not eligible and uses the standard payment flow, since a customer sending SOL already holds SOL.

Sponsored settles straight to your treasury. The transfer goes to your registered treasury in one transaction, with no forwarder sweep, so it depends on your operator enabling direct settlement for the chain. Where that is off, the checkout declines the gasless option with SOLANA_GASLESS_NOT_ELIGIBLE_FOR_PDA_FORWARDER and the customer pays through the standard flow. Connected-wallet pay, where the customer signs and funds the transfer themselves, is the other leg that can settle directly.

A mandatory Sponsored Fee banner appears on every Solana sponsored checkout. No Solana wallet renders fee-payer attribution natively, so the disclosure makes it clear who is paying the network fee.

TRON GasFree

Not yet available. TIP-712 PermitTransfer via JustLend's GasFree controller is wired in the schema but blocked on JustLend service-provider onboarding. TRON customers pay TRX gas normally today.

Setup

Add a wallet on a supported chain from Wallets in the sidebar.

Expand the wallet card and toggle Gasless payments on. The toggle reads Enabled once active.

Pick the Network fee handling mode for the wallet. The gasless relay broadcast cost is always covered by the platform and billed to your Prepaid Credit at cost, in every mode. It is never added to the customer's signed amount. The mode instead controls whether forwarder sweep gas is passed to the customer as a disclosed markup in the quoted amount, and only for this wallet's coins that are not gasless-eligible:

  • Smart - decide per payment (default). Small sweep fees are absorbed by you. Larger fees pass through to the customer as a disclosed markup above your configured threshold.
  • Always cover fees yourself. Sweep gas is always absorbed and debited from your Prepaid Credit.
  • Always charge the customer. Sweep gas is always added to the quoted amount as a disclosed markup.

For gasless-eligible coins the markup is skipped in every mode: the customer signs exactly the quoted amount, and sweep gas is absorbed and billed to your Prepaid Credit at cost.

Changes save automatically as you make them (the Network fee handling selector shows a brief Saved indicator). Once the toggle reads Enabled, the gasless button appears on the checkout for eligible coins.

What the customer sees

On EVM gasless checkouts, the customer sees a card headed "Pay gaslessly with USDC" (or the equivalent coin) with a button reading "Sign to pay 10.50 USDC (no gas)". Clicking it opens their wallet for a single typed-data signature. No native balance is needed.

On Solana sponsored checkouts, the button reads "Pay 10.50 USDC (no SOL needed)" and works with Phantom, Solflare, Backpack, Coinbase Wallet, or OKX Wallet. Trezor is rejected with an inline message because its firmware errors on the transaction shape.

The EVM checkout detects injected wallets via EIP-6963, so any browser-extension or in-app-browser wallet works (MetaMask, Rabby, Coinbase Wallet, and others).

Cost

  • L2s (Base, Polygon). Relay gas is typically under $0.01.
  • Ethereum mainnet. Relay gas varies. A few cents to a few dollars during congestion.
  • Solana. Priority fees, typically fractions of a cent.

Whatever is debited from your Prepaid Credit is recorded as a gas passthrough ledger entry at cost, with no platform markup. During gas spikes the gasless option stays visible. If the platform relay is temporarily unable to broadcast, the checkout tells the customer to pay normally instead.

Edge cases

SituationWhat happens
Customer's token balance is too lowThe wallet still produces the signature. Before broadcasting, the relay checks the token balance and marks the payment failed if it is too low. No funds move. The customer tops up and starts a new payment.
Customer closes the wallet without signingCheckout returns to the payment screen. No charge.
Customer signs then closes the tabThe relay still broadcasts and the payment confirms
Authorization lapses (EVM)The authorization is valid for the payment window (about 20 minutes by default). When it lapses the payment itself expires, so a new payment is needed.
Blockhash expires (Solana: about 60 seconds)The customer re-signs on the checkout
Customer pays from an exchangeNo gasless button. Exchanges cannot sign typed-data messages.
Customer is on the wrong networkWallet prompts them to switch before signing

Trust model

The customer's signed message names the recipient: an address derived from your wallet - your per-payment forwarder, or your treasury directly where direct settlement is enabled. The relay only adds its gas wallet as the fee payer. It cannot change the destination. The token contract (EIP-3009 on EVM) or the customer's signed transaction shape (Solana) enforces this on-chain when the signature is verified.

See Trust Model for the broader custody picture.

On this page