USDC on Arc
USDC behaves differently on Arc than on any other chain - in a good way. Understanding the model takes one minute.
One balance, two views
Arc's native token is USDC. The same underlying balance is exposed through two interfaces:
| Interface | Decimals | Used for |
|---|---|---|
| Native | 18 | Gas fees, native sends, msg.value |
ERC-20 at 0x3600…0000 | 6 | App transfers, approvals, allowances |
Send $10 through either interface and both views update - they are the same funds.
What Aruvi uses
Aruvi uses the ERC-20 interface exclusively for payments. This is Circle's recommended pattern for applications: it matches USDC's standard 6-decimal accounting on every other chain, and keeps allowance-based flows (like the gateway's transferFrom) working exactly as they do everywhere else.
Gas is deducted from the same balance natively - you'll see your USDC drop by the payment amount plus roughly a cent.
Supported tokens in Aruvi
| Token | Address (Arc Testnet) | Decimals |
|---|---|---|
| USDC | 0x3600000000000000000000000000000000000000 | 6 |
| EURC | 0x89B50855Aa3bE2F677cD6303Cec089B5F319D72a | 6 |
USDC is the default. EURC is allowlisted and can be used via the gateway's sendToken / createRequestToken functions.
Getting USDC onto Arc
- Faucet (testnet): faucet.circle.com mints straight to your Arc address
- CCTP bridge: burn USDC on Ethereum/Base/others, mint natively on Arc - see Deposit USDC
Earlier versions of Aruvi (on Ethereum) had to wrap USDC into a special token before use. On Arc that entire step is gone: the USDC in your wallet is already everything you need.