
Token Transfer
Transfer tokens to one or more destination addresses across EVM chains and Solana.
CategoryPayments
ChainsETHBASE_ETHARBITRUM_ETHOPT_ETHBSC_BNBAVAXCMATICSOLSOLDEV_SOLSETHTBASE_SETH
C
Cobo· Author
992 views·21 uses
Overview
Transfer tokens to one or more destination addresses across EVM chains and Solana.
This recipe uses the pact transfer policy type, which applies to any token transfer regardless of chain.
Facts
CLI command — works for any token supported by `caw meta tokens`:
•
caw tx transfer --chain-id <chain_id> --to <address> --amount <amount> --token <token_id>•Covers all chains and tokens returned by
caw meta tokens (EVM chains, Solana, etc.)EVM token transfers:
•Standard ERC-20
transfer(address to, uint256 amount) — no separate approval needed when sending directly from your wallet•Common token addresses:
- USDC on Base: 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
- USDC on Ethereum: 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
- USDC on Arbitrum: 0xaf88d065e77c8cC2239327C5EDb3A432268e5831
- USDT on Ethereum: 0xdAC17F958D2ee523a2206206994597C13D831ec7
SOL native transfers:
•Internally constructs a
SystemProgram.Transfer instruction (System Program: 11111111111111111111111111111111)•SOL decimals: 9 (1 SOL = 1,000,000,000 lamports)
•Rent-exempt minimum: ~0.00203928 SOL (~2,039,280 lamports) per account
•Transaction fee: ~0.000005 SOL per signature
•Devnet faucet: https://faucet.solana.com or
solana airdrop 2 <pubkey> --url devnetTypical Flows
Transfer via CLI — 1 transaction per recipient:
1.
caw tx transfer --chain-id <chain_id> --to <address> --amount <amount> --token <token_id>Batch transfers (multiple recipients):
•Each recipient = one transaction; set
tx_count completion condition equal to total number of transfersPolicy Controls
•
chain_in: restrict to specific chains (e.g. SOL, BASE_ETH, SETH)•
destination_address_in: whitelist specific recipient addresses for precise control•
deny_if.amount_usd_gt: per-transaction value cap in USD•
deny_if.usage_limits.rolling_24h.amount_usd_gt: rolling 24-hour outflow cap in USD•Keep ≥ 0.00203928 SOL reserve on Solana for rent exemption and transaction fees
•Not applicable for: SPL token transfers on Solana (USDC/USDT on Solana) — those invoke the SPL Token Program and require
contract_call policy typeReferences
•caw CLI:
caw tx transfer --help•Supported tokens:
caw meta tokens•Solana System Program: https://docs.solana.com/developing/runtime-facilities/programs#system-program
•ERC-20 standard: https://eips.ethereum.org/EIPS/eip-20