Deposit USDC from Any Chain
Move USDC from Ethereum, Base, Arbitrum, and 20+ other chains natively into Arc - no wrapped tokens, no third-party bridges.
How it works
Aruvi's Deposit page uses Circle's App Kit, which drives CCTP (Cross-Chain Transfer Protocol): your USDC is burned on the source chain and minted natively on Arc. What arrives is real USDC - immediately usable for payments and gas.
Steps
- Open Deposit in the app
- Pick the source chain (Ethereum Sepolia, Base Sepolia, Arbitrum Sepolia, OP Sepolia, Avalanche Fuji, Polygon Amoy on testnet)
- Enter the amount
- Approve and confirm the prompts in your wallet
Bridging typically takes a few minutes end-to-end (the source chain is the slow part - Arc's mint is instant once the message arrives).
Requirements
- USDC on the source chain
- A little source-chain gas (e.g. Sepolia ETH) for the burn transaction - the only time you'll ever need a non-USDC token
- Your wallet switched to the source chain when prompted
Testing? Skip the bridge
Circle's faucet mints USDC directly on Arc Testnet - much faster for development.
For developers
The integration is a single call with Circle's App Kit:
import { AppKit } from '@circle-fin/app-kit';
import { createViemAdapterFromProvider } from '@circle-fin/adapter-viem-v2';
const adapter = await createViemAdapterFromProvider({ provider: walletProvider });
const kit = new AppKit();
await kit.bridge({
from: { adapter, chain: 'Ethereum_Sepolia' },
to: { adapter, chain: 'Arc_Testnet' },
amount: '25.00',
});