The wallet for everyday money

Send USDC to a name.

No addresses to read out. No gas token to buy first. No bridge to claim from. Your money spends wherever it already is.

TestFlight — in reviewThe build is in TestFlight review. We're working to get it into your hands as soon as Apple lets it through — check back shortly.See how it works
Mercury home screen
What happens when you pay

USDC deposited once ──► one Circle Gateway balance ──► burn intent signed on the device ──► attested by Circle in ~1.2s ──► minted on the destination chain by the relayer ──► recipient holds spendable USDC, having paid no gas

2.5s
Measured end to end, Arc → Unichain
16
Circle domains, one balance
$0.00
Circle fee on that transfer
None
Keys our servers have ever seen
The problem

Four ways to fail before a dollar arrives

Paying someone in crypto today means knowing which chain they are on, holding funds on that exact chain, bridging and claiming if you do not — and hoping they hold a gas token, or they cannot move what you sent.

The wrong chain

The same address exists everywhere. Send to the right address on the wrong network and the money is simply gone from view.

The bridge queue

Wait for finality, come back, claim. A payment becomes an errand you finish later.

The second asset

You were paid in USDC but cannot move it, because moving it costs a token you do not hold.

One balance

Money that already knows where it can go

Most wallets show you one number and leave you to find out the hard way that it is stuck on the wrong chain.

Mercury splits it honestly: Gateway — spendable anywhere against Wallet — on its own network. One of those can be sent to any supported chain in seconds. The other cannot, and says so.

  • Deposit once, on whichever chain you already hold funds
  • Spend anywhere — the finality was paid for at deposit time
  • No bridge, no claim, no wrapped asset, no per-transfer wait
The unified Gateway balance across ten networksDeposit screen stating amount, chain and time to spendable
Sending

$2.00, across chains, in 2.5 seconds

Type a name, pick a network, hold to send. The recipient receives spendable USDC with no bridge to claim from and no gas token to buy first — the hub's relayer submits the mint on the destination chain.

Measured, not claimed: attested in 1206ms, minted in 1293ms, Arc Testnet to Unichain Sepolia, for a $0.00 Circle fee.

Delivery is checked before the burn is signed, and the signed claim is written to disk before the relay is attempted — so a failed relay is recoverable, not lost.

Paying a name, with the resolved address shownSend receipt with fee, timings and transaction hashActivity recorded by name rather than hex
Identity

Pay a name, not an address

A real ENS name under mercurywallet.eth, resolved through ENSIP-10 wildcard resolution against a registry we deployed. No server sits behind it — any wallet or explorer that speaks ENS can find you by it.

Claiming is sponsored: the hub pays the Ethereum gas, so a brand-new wallet holding nothing can still get a name. No account, no email, no sign-in.

  • One name holds your EVM, Solana and Bitcoin addresses
  • A preferred chain hint tells a sender where to land the money
  • Records live on chain — it resolves even if every machine we run disappears
A claimed ENS name, activeThe name as a scannable QR codeOne name with a per-chain address underneath
In and out

In, out, and never stranded

Depositing turns USDC on one chain into a balance that spends on any of them. The screen says what will happen before it happens — the amount, the chain, and how long until it is spendable.

Getting out is deliberately two doors. Instant uses Circle's attestation and our relayer. On-chain takes about a week and needs no API and no relayer. If our hub disappeared tomorrow, the money still comes out.

Deposited USDC lives in Circle's Gateway contract, not ours. It stays yours.

Withdraw screen offering instant or on-chain exitRequest a payment link or take a deposit
Everything else

Swap anything, open anything

Swaps are cross-chain atomic swaps — Bitcoin and EVM on either side, quoted live, settled without a custodian holding the middle. The browser speaks WalletConnect, so Mercury works with apps it has never heard of.

Cross-chain swap from USDC on Arc into BTCdApp browser with the wallet already attachedChoosing which assets appearNetworks on or off, with your own RPC

Private on request

A per-payment toggle routes through a fresh ERC-5564 stealth address. It hides who received — the sender and amount stay public, and the app says so.

Swaps across chains

Atomic swaps with Bitcoin or EVM on either side, priced live, with nobody custodying the middle.

A dApp browser

WalletConnect built in, so the wallet works with apps it has never heard of — no extension, no pasted address.

Under the hood

Arc deletes the second asset

On Arc the gas token is USDC. You hold exactly one thing, and a payment you receive is immediately spendable. It is also the only chain where stealth payments close end to end — a note there pays its own way out, so the sweep that would tie every note back to one identity is never needed.

Keys never leave the phone

Every signature happens in a Rust core on the device, behind iOS keychain classes that delete the recovery phrase if the passcode is removed.

The hub holds gas, not money

It relays Gateway mints and sponsors ENS names against a spend ledger with a gas-price ceiling. It has never seen a user key or held user funds.

Kill the server, keep the wallet

With the hub down the wallet still holds keys, shows balances and sends transactions. Only the instant cross-chain path needs it.

Where it works

One balance, every network

Arc
Ethereum
Base
Arbitrum
Optimism
Polygon
AVAvalanche
UNUnichain
WOWorld Chain
SESei
SOSolana
Bitcoin
Get it

Try it on your phone

Mercury is coming to TestFlight for iPhone. Import a recovery phrase you already have, or create one — and claim a name before you hold a cent.

TestFlight — in reviewThe build is in TestFlight review. We're working to get it into your hands as soon as Apple lets it through — check back shortly.