# Fund with a card

Grantor's registry bills in **USDC on Base** — a public contract, not a payment
processor. Nothing about that requires you to already live in crypto: a debit
card and about fifteen minutes gets a fresh wallet funded and a tenant live.
This page is the unguided part, guided.

What you need at the end of it:

- **A wallet you control** — MetaMask, Rabby, Coinbase Wallet, any EVM wallet.
  The connected address becomes the tenant owner, so use one you intend to keep.
- **Your tier's fee in USDC, on Base** (chain id 8453) — $0 Free, $15 Pro,
  $45 Scale per period. Rates are published in the registry contract and shown
  on [the register page](/register.html) before you pay anything.
- **A few dollars of ETH on Base** for gas. Registration is a handful of
  transactions, and Base gas is cents — $3–5 of ETH is far more than enough.

One thing to be clear about up front: when KYC happens, it happens **with the
exchange or onramp — never with Grantor**. There is no account here to attach
it to; the registry only ever sees a wallet address.

## Path A — an exchange you already use (most reliable)

1. Buy USDC with your card or bank transfer on the exchange — Coinbase, Kraken
   and Binance all support USDC on Base natively.
2. Buy a small amount of ETH ($3–5) the same way.
3. Withdraw both to your wallet's address — and here is the one step people get
   wrong: **choose "Base" as the withdrawal network**, not Ethereum. The
   address looks the same on both networks; the funds do not go to the same
   place. If the exchange doesn't offer Base as a network for an asset, use a
   different exchange rather than improvising with bridges.
4. Wait a minute or two, and confirm the USDC and ETH show in your wallet with
   the network set to Base.

## Path B — buy inside the wallet

Most wallets have a built-in **Buy** button that routes a card payment through
an onramp provider (Coinbase Onramp, MoonPay, Transak and similar) straight to
your address. Select **USDC** as the asset and **Base** as the network, then
repeat for a few dollars of ETH. Fees run a little higher than Path A;
time-to-funded is usually shorter, and there is no withdrawal step to get
wrong.

## Then register

Go to [the register page](/register.html): connect the wallet, pick a tier,
and the page builds the contract calls — create, approve, top up, draw — for
your wallet to sign. No form, no email, no server of ours in the path.
Agents and CLI-first humans can use the [`grantor-onboard`
kit](../ONBOARD.md) instead; it automates the same steps.

## If the USDC landed on the wrong network

Bought or withdrew on Ethereum mainnet by mistake? The funds are safe — same
address, different network — but Ethereum gas to bridge them will likely cost
more than a small top-up is worth. For amounts around a tier fee, the cheap
fix is to buy again, on Base this time, and spend the mainnet USDC elsewhere.
For larger amounts, the official [Base bridge](https://bridge.base.org) moves
USDC from Ethereum to Base.

## Getting money back out

Undrawn balance stays yours: `withdrawBalance` returns it to an address you
choose — see [the refund policy](/refund.html), which is a description of that
function, not a promise from a support desk. The same exchange that sold you
USDC converts it back to fiat.

## The privacy trade, stated plainly

The registry is public: the wallet that creates and funds a tenant is visible
on-chain, and a wallet funded straight from an exchange is linked to your
exchange identity. That is normal and fine for most tenants — administration
is an identified context. The *users and agents* authenticating against your
tenant get the pseudonymous treatment ([wallet login](wallet-login.md),
[user gating](user-gating.md), [agent tokens](agent-tokens.md)); the tenant
owner paying the bill usually doesn't need it.
