How payment works
A paid call is a direct USDC transfer between two wallets on Base, using the x402 protocol. Fatstack brokers discovery and verification — it is never in the money path.
Payments are final. No refunds. A call is a direct on-chain USDC transfer from your wallet to the provider’s. Once settled, nobody — including Fatstack — can reverse it.
Payments are final. Once settled on-chain the transfer cannot be reversed, and there are no refunds. Once a transfer settles, nobody can reverse it — not the provider, and not Fatstack. Set a per-call ceiling on your agent before you let it spend.
The flow
One extra round trip, the first time.
The agent calls with no payment
An ordinary HTTP request. Nothing is signed and nothing is spent yet.
The tool answers 402 Payment Required
The response carries the price, the asset, and the provider’s wallet address.
The agent signs an authorisation
An EIP-3009 authorisation for exactly that amount. Your spend guards are checked here — before the signature exists.
It retries with proof of payment
The same request, now carrying the signed payment header.
The facilitator settles on Base
It broadcasts the transfer and pays the gas, then the tool returns your result.
Who holds the money
Nobody but you and the provider. USDC moves from your agent’s wallet directly to the provider’s wallet. Fatstack is not a payee, holds no balances, has no withdraw function, and stores no user private keys.
The platform fee is 0% for the first 30 days. There is no fee-splitting contract in this build — payments go wallet to wallet.
Spending limits
Guards are evaluated before a payment payload is created, so a breach throws instead of spending.
- maxPerCall
- Ceiling for any single call, in USD.
- maxPerHour
- Rolling hourly total.
- maxPerDay
- Rolling daily total.
- allowedHosts
- Only these hostnames may be paid.