Fund your AI wallet from any chain
Before an agent can pay for anything, its wallet needs USDC here, and you hold something else somewhere else: ETH on Ethereum, SOL, BTC, a stablecoin on Arbitrum. Ask for a quote from where you are to USDC here, send from your own wallet, and the network credits your AI wallet with what arrived minus the quoted fee. Nobody holds what you deposit: it lands on an address that only knows how to forward, and the forwarding is public.
What you need
- The CLI, with
AIOUM_PRIVATE_KEYset: the AI wallet is derived from that key, and on a route the same key signs the sending transaction on the source chain. - The asset you want to deposit, in that wallet, on its own chain, plus a little of that chain's gas.
- The deposit service running (
aioum statusshows it asdeposits, with its mode). On the local development networkscripts/devstack.sh reviewstarts it in its direct mode: routes from other chains deliver to Base, so there the service offers the deposit address and the sweep, the path that is real on every network.
Steps
-
See your deposit address. It is fixed for your AI wallet on this network, whether or not anything has ever been sent to it.
npx aioum deposit addressIt prints the AI wallet, the deposit address, the chain, the fee in basis points, whether the forwarder behind the address is deployed yet (it is deployed by the first sweep; funds that arrive before that are safe and wait) and the service's mode:
routewhere the route provider delivers, ordirect: USDC sent to the deposit address is swept to the AI wallet, with the noteRoutes from other chains deliver to Base; on this network send USDC to your deposit address and it is swept to your AI wallet. -
On a served network, list where a deposit can come from.
npx aioum deposit chainsOne row per chain with its id, key, name and type (EVM, Solana, Bitcoin): every chain the route provider delivers from. On a
directnetwork, the local development network among them, this command,tokensandquotefail with501and the note from step 1. -
List the assets on the chain you hold.
npx aioum deposit tokens 1 --q ethRows of symbol, name, address and decimals, with a price when the provider has one. The native asset is the zero address;
nativeand a symbol that is unique on the chain are accepted in the next commands. -
Ask for a quote. The amount is in the asset's own units.
npx aioum deposit quote 1 native 0.25It prints what you send, what arrives as USDC (and the least that can arrive), the fee in basis points and in USDC, what you are credited, the route and how long it takes, the provider's fees and the gas. A quote is good for about a minute.
-
Send it.
npx aioum deposit send 1 native 0.25The command takes a fresh quote, approves the route for a token (never for the native asset), sends the route transaction on the source chain with your key, waits for it, records the deposit and prints what was sent, the transaction hash, the ledger id and its status.
-
Watch it arrive.
npx aioum deposit status <id>The status moves
pending→arrived→credited(orfailed, with the route's reason). On arrival the service sweeps: the fee to the treasury, the rest to your AI wallet, in one transaction whose hash the record shows assweepTx. -
USDC sent straight to the deposit address, the path that works on every network. A plain transfer or an exchange withdrawal to the address from step 1 is swept by the service's loop within a minute; on the local development network it is the only path. To forward it now:
npx aioum deposit sweepIt prints
credited 99.0 USDC to the AI wallet (fee 1.0 USDC)for 100 USDC sent, with the deposit id, the AI wallet, the deposit address and the sweep transaction; ornothing to sweep: nothing has arrived at the deposit address. -
See everything you have deposited.
npx aioum deposit listA table of id, source (
route,directfor USDC you sent straight to the deposit address,cardfor a card payment), status, what you sent, what was expected, what was credited and the fee. -
Check the balance. The credit is USDC in your AI wallet, the smart account printed as
AI walletin step 1; every credited row indeposit listadded to it, and your agents spend from it within the caps you set.npx aioum walletshows the wallet behind your key and the runner's, which are separate from it. -
No crypto to send? Pay by card.
npx aioum deposit partners npx aioum deposit card --partner transakThe first prints the partners the deposit service holds keys for (Coinbase Onramp, Transak, MoonPay, Stripe) and whether this network can take a card payment at all: partners deliver USDC on Base only, so on the local development network it says
Card payments deliver to Base; on the local network this button is disabled. The second prints the partner's link, single-use and good for about five minutes, and the deposit that tracks it;--partneris needed only when more than one partner is configured. Open the link and pay the partner by card: the USDC lands on your deposit address and is swept to your AI wallet minus the fee, andaioum deposit status <id>follows it, sourcecard.
What you have now
USDC in your AI wallet without ever having held USDC: you sent what you had, from where you had it, and the network did the rest for the fee it quoted. Every deposit is in a ledger you can read; every sweep is a transaction on this chain. Your agents spend from this balance within the caps you give them.
Next: Stake from the command line — back an operator with ZAI and collect USDC, one command per step.