Why a price below one cent breaks ordinary gas
A standard onchain payment is a transaction, and every transaction pays gas to the network. That is fine for a salary or a purchase of fifty dollars. It is a disaster when the thing being sold costs a fraction of a cent. Circle's own docs say plainly that standard onchain payments require gas for every transaction, which makes sub-cent payments uneconomical [2].
Cards fail in a different way. They carry high fixed fees, need an account, and settle slowly [2]. Neither rail suits an AI agent that wants to call a data API ten thousand times in a minute without a human in the loop. Both rails were built for people making occasional, larger payments, not for software that buys in tiny slices all day long.
So the real question is not how to make gas cheaper. It is how to stop paying gas once per payment. If a thousand small payments shared one onchain transaction, the gas would split a thousand ways and shrink to almost nothing. Circle Gateway enables gas-free USDC nanopayments by batching thousands of payments into a single onchain transaction [1].
Circle frames the payoff in the same terms. Because settlement is batched, fees stay below the size of the payment itself, which is what makes pricing at a fraction of a cent workable for sellers [1]. The use cases it names are the ones agents care about: pay per API call, per second of compute, or per dataset access.
What x402 does and what it leaves to someone else
x402 is an open standard built on the HTTP status code for payment required. It defines how a server says payment is needed and how a client proves it paid [2]. Importantly, x402 is not a payment system itself. It is a negotiation protocol that does not care how a payment is built, checked or settled [2].
The conversation uses three headers. The server sends PAYMENT-REQUIRED with the price, network and destination. The client replies with PAYMENT-SIGNATURE carrying a signed payload. The server returns PAYMENT-RESPONSE with confirmation once it verifies the payment [2]. All of that happens inside one request and response cycle, so an agent never has to leave the HTTP call to pay.
That separation is useful. Because x402 leaves settlement open, different facilitators can plug in different methods. The reference repository lists several schemes, including a batch-settlement scheme where sellers redeem many small charges onchain in batches, not one HTTP request at a time [4]. For the basics first, start with our explainer on the x402 protocol, then return for the batching half.
The repository also states a design goal that matters for agents: the client and the resource server should not need to think about gas or RPC details, because a facilitator can absorb them [4]. Batching is one way to deliver on that promise when the price per call is tiny.
Sign now, settle later: how Gateway batches payments
Circle operates two x402 facilitators: Facilitator Service settles USDC onchain on every payment through a Circle relayer [2]. The other, Gateway Nanopayments, batches signed authorizations into aggregated settlement to make sub-cent payments work [2]. Both plug into the same x402 flow, so a client does not need to learn a new protocol.
The steps are short. A buyer deposits USDC into a Gateway Wallet contract once, in a single onchain transaction. When a seller answers with the payment required status, the buyer signs an EIP-3009 authorization offchain at zero gas and retries the request with it attached. The seller checks the signature and serves the resource at once [1]. For more on that signature type, see our note on EIP-3009 transfers.
Gateway then collects the authorizations and settles net positions in bulk onchain, paying gas once per batch instead of once per payment [2]. Circle describes gas-free USDC nanopayments down to $0.000001, powered by Circle Gateway batched settlement [1]. One caveat for builders: Gateway Nanopayments need EOA signatures and do not support ERC-1271 [1].
Notice what the buyer's signature does and does not do. It authorizes a payment from the Gateway balance, but it is an offchain message, so it costs no gas to produce. The onchain cost shows up only when Gateway posts the batch, and that single cost is shared across every payment inside it.

Pending, settled and the seller's Gateway balance
Because the seller serves the resource once the signature checks out, the work is done before any money moves onchain [1]. That gap is where the words pending and settled come from. A payment is pending after the buyer has signed and the seller has delivered, and settled once Gateway has put it in a batch and posted that batch onchain.
Settlement is what credits the seller. Circle's flow says Gateway settles in batches, crediting the seller's Gateway balance [1]. So a seller does not see a fresh onchain transfer per call. Earnings collect inside the Gateway balance, and sellers can withdraw from there to any supported blockchain [1].
For an agent builder, the lesson is to treat pending as normal, not as failure. A pending payment is a signed promise the system has accepted and is about to settle. Build your dashboards and retry logic around that. If you chase a payment that is merely waiting for its batch, you will double charge or flag healthy traffic as broken.
Keep two numbers in your books: what has been served and signed, and what has been credited to your balance. The difference between them is simply the batch that has not landed yet, and it should shrink on its own without any action from you. That habit keeps the books easy to reconcile.
Withdrawals and what Circle's fee page says
Money in a balance is useful, but at some point a seller wants it in a wallet. Withdrawing moves USDC out of the Gateway balance to a supported chain. Circle's fee page separates two cases: crosschain transfers carry a percentage transfer fee, while same-chain transfers, where source and destination are the same blockchain, do not incur that transfer fee [3].
Gas still matters at that point, but only once and per withdrawal, not once per call. Each burn intent includes a gas fee, and the gas fee varies by source blockchain: Arc is listed at $0.0035 and Ethereum at $1.00 [3]. Circle also suggests keeping most of a Gateway balance on low-cost chains to cut overall costs [3].
The sensible reading for a seller is simple. Many cheap calls pile up, and you pay the withdrawal costs a handful of times, not millions of times. Always check Circle's fee page before you plan a withdrawal schedule, because fee components can change. For background on how costs compare across rails, see our guide to USDC transfer fees.
One more detail from the fee page helps with planning. Circle notes that you should add a buffer to any maximum fee you set, to allow for gas fluctuations [3]. A seller who withdraws rarely and in larger amounts spreads that fixed cost thinly, which is the same batching logic applied one level up.
How SpendTheBits turns this on for a paid link
SpendTheBits is a fully non-custodial wallet, and its Nanopayments tool applies the Gateway flow to a paid link priced at a cent or less. You switch it on per link. AI agents can then pay fractions of a cent per call with no gas per payment, which is what USDC nanopayments look like for a seller. New to selling this way? Our guide to monetizing an API with x402 covers the seller side end to end.
Earnings collect in your own Circle Gateway balance. Only your phone signs a withdrawal to your USDC wallet on Arc, and SpendTheBits never holds the balance. Since Gateway settles in batches, a payment shows as pending for a short while first, which matches the flow described above. You can also read the longer walkthrough in how to get paid by AI agents.
On cost, a small SpendTheBits fee is collected at withdrawal, and Circle charges its own small withdrawal fee on top. The in-app Fees screen is the source of truth. If you want to see how agents are set up around this, the agents page is the place to start.
The design keeps custody where it belongs. The seller's money sits in the seller's own Gateway balance, the seller's phone is the only signer for a withdrawal, and the only things SpendTheBits adds are the switch per link and a small fee at the moment you withdraw.

In the app · 3 steps
Turn on nanopayments for a paid link in SpendTheBits
Nanopayments lives under Arc tools and works on the paid links you already sell to agents.
Start from a paid link
Create a paid link for agents first, under Get paid by agents.

Switch it on
Open Arc tools, then Nanopayments, and switch on any link priced at a cent or less.

Watch the balance and withdraw
Earnings collect in your own Circle Gateway balance. Tap Withdraw to my wallet and confirm on your phone.

Hold your own keys, keep the yield, skip the middleman.
SpendTheBits is a fully non-custodial wallet for 13 chains, free on iOS and Android.

