Setting the file. One moment.
Subchapter 1.5
references/send-usdc.mdMarkdown4 KBView on GitHub
Use the npx awal@2.12.1 send command to transfer tokens from the wallet to any address on Base, Polygon, or Solana.
If the wallet is not authenticated, see references/auth.md.
npx awal@2.12.1 send <amount> <recipient> [--chain <chain>] [--asset <asset>] [--json]| Argument | Description |
|---|---|
amount | Amount to send: ‘$1.00’, ‘1.00’, or atomic units (1000000 = $1). Always single-quote amounts that use $ to prevent bash variable expansion. If the number looks like atomic units (no decimal or > 100), treat as atomic units. Assume that people won’t be sending more than 100 USDC the majority of the time |
recipient | Ethereum address (0x…), ENS name (vitalik.eth), or Solana address (Base58) |
| Option | Description |
|---|---|
--chain <name> | Blockchain network: base, polygon, solana (default: base) |
--asset <symbol> | Token to send: usdc, eth, pol, sol (default: usdc) |
--json | Output result as JSON |
Before constructing the command, validate all user-provided values to prevent shell injection:
^\$?[\d.]+$ (digits, optional decimal point, optional $ prefix). Reject if it contains spaces, semicolons, pipes, backticks, or other shell metacharacters.0x hex address (^0x[0-9a-fA-F]{40}$), an ENS name (^[a-zA-Z0-9.-]+\.eth$), or a Solana address (^[1-9A-HJ-NP-Za-km-z]{32,44}$). Reject any value containing spaces or shell metacharacters.base, polygon, solana. Reject any other value.usdc, eth, pol, sol. Reject any other value.Do not pass unvalidated user input into the command.
# Send $1.00 USDC to an address on Base (default)
npx awal@2.12.1 send 1 0x1234...abcd
# Send $0.50 USDC to an ENS name
npx awal@2.12.1 send 0.50 vitalik.eth
# Send with dollar sign prefix (note the single quotes)
npx awal@2.12.1 send '$5.00' 0x1234...abcd
# Send ETH on Base
npx awal@2.12.1 send 0.01 0x1234...abcd --asset eth
# Send USDC on Polygon
npx awal@2.12.1 send 1 0x1234...abcd --chain polygon
# Send USDC to a Solana address
npx awal@2.12.1 send 1 AxW7...5fGz --chain solana
# Get JSON output
npx awal@2.12.1 send 1 vitalik.eth --jsonENS names are automatically resolved to addresses via Ethereum mainnet. The command will:
npx awal@2.12.1 status to check; see references/auth.md)npx awal@2.12.1 balance to check; see references/fund.md to top up)Common errors:
references/auth.mdnpx awal@2.12.1 balance; see references/fund.md--chain solana when sending SOL