Token reference
Supported stablecoins, contract addresses, App Kit aliases, and decimals.
Today on Arc Testnet
Hosted checkout and the SDK accept these as payInToken and as merchant payout tokens:
| Symbol | Address | Decimals | App Kit alias |
|---|---|---|---|
| USDC | 0x3600000000000000000000000000000000000000 | 6 (ERC-20) / 18 (native) | USDC |
| EURC | 0x89B50855Aa3bE2F677cD6303Cec089B5F319D72a | 6 | EURC |
USDC is also the gas token on Arc. The native balance uses 18 decimals; the ERC-20 interface (what dapps see) uses 6. Always read decimals() rather than assuming.
App Kit Swap support
Circle's App Kit Swap is what does the FX between pay-in and payout tokens. On Arc Testnet it supports only USDC ⇄ EURC today. On Arc Mainnet (when Arc launches it) the alias set expands:
| Alias | Decimals | Notes |
|---|---|---|
USDC | 6 | Native gas + canonical USD stable |
EURC | 6 | Circle's euro stable |
USDT | 6 | Highest demand pre-mainnet |
USDe | 18 | Ethena synthetic dollar (yield-bearing) |
DAI | 18 | First 18-decimal stable in our app's regression matrix |
PYUSD | 6 | PayPal stable, low political risk |
NATIVE | varies | Native chain token |
You can also pass a contract address directly for any token App Kit has liquidity for — the alias list is just the convenience set.
Tokens we won't list
- TRYC, BRLC, MXNC — not on Arc, not in App Kit's alias list.
- USYC — institutional-only, allowlist + $100k floor. Separate institutional track.
Adding a new stable
- Owner calls
setTokenSupport(token, true)on the gateway. - Relayer's
tokenSymbol(addr)map gets the new entry. - App config + SDK enum get updated.
- Smoke against the App Kit pair both directions.
No contract redeploy. Per-stable rollout per Plan 3.