Introduction to CCIP Test Tokens
When developing cross-chain applications using Chainlink's Cross-Chain Interoperability Protocol (CCIP), thorough testing on testnets is crucial before deploying to mainnet. CCIP provides two specialized ERC20 test tokens designed specifically for cross-chain transfer testing:
Key Features of CCIP Test Tokens
- Permissionless minting capability
- Available across all supported testnets
- Two distinct token models for different testing scenarios
- Simple faucet-like minting mechanism
CCIP Test Token Types
| Token Name | Decimals | Transfer Mechanism | Availability | Key Characteristics |
|---|---|---|---|---|
| CCIP-BnM | 18 | Burn & Mint | All testnets | Native representation on all chains |
| CCIP-LnM | 18 | Lock & Mint | Ethereum Sepolia only | Wrapped representation (clCCIP-LnM) on other chains |
How to Mint CCIP Test Tokens
Using the Drip Function
Both tokens can be minted using the standardized drip function in their respective smart contracts:
function drip(address to) external {
_mint(to, 1e18);
}Parameters:
to: Your wallet address (EOA)- Returns: 1 token (1 ร 10ยนโธ units)
Minting Methods Comparison
Method 1: Direct Contract Interaction
- Connect your wallet to the testnet
- Call the
dripfunction on the token contract - Confirm the transaction in your wallet
Method 2: Block Explorer Method
- Locate the token address in the CCIP Directory
- Open the contract in a block explorer like Etherscan
- Connect your wallet via Web3
- Execute the
dripfunction
๐ Complete guide to CCIP token transfers
Step-by-Step Minting via Block Explorer
For CCIP-BnM on Ethereum Sepolia:
- Navigate to Ethereum Sepolia section in CCIP Directory
- Click the CCIP-BnM token address link
In Etherscan:
- Go to "Contract" tab
- Select "Write Contract"
- Connect your MetaMask wallet
- Call the
dripfunction with your wallet address - Confirm the transaction
- Verify the token receipt in your wallet
Adding Tokens to MetaMask
After minting:
- Open MetaMask
- Select "Import Token"
- Enter the token contract address
- The token details should auto-populate
- Click "Add Custom Token"
Token Transfer Mechanics
CCIP-BnM (Burn & Mint Model)
- Native token on all chains
- Transfers involve burning on source chain and minting on destination
CCIP-LnM (Lock & Mint Model)
- Native only on Ethereum Sepolia
- Transfers from Sepolia lock tokens and mint wrapped versions
- Transfers between other chains use wrapped token burning/minting
๐ Advanced CCIP integration strategies
Frequently Asked Questions
Q: How many test tokens can I mint at once?
A: Each drip call mints exactly 1 token (1e18 units). You can make multiple calls as needed.
Q: Are these test tokens transferable between all chains?
A: Yes, both tokens support cross-chain transfers via CCIP, though their mechanisms differ.
Q: Do I need testnet ETH to pay for minting?
A: Yes, you'll need a small amount of testnet ETH for gas fees when calling the drip function.
Q: Where can I find the token addresses for other testnets?
A: All supported testnet addresses are listed in the CCIP Directory.
Q: Can I use these tokens for mainnet testing?
A: No, these are specifically designed for testnet environments only.
Best Practices for Testing
- Always verify token balances before transfers
- Check pool liquidity for wrapped tokens
- Test various transfer amounts and scenarios
- Monitor gas costs during different network conditions
- Validate successful delivery on destination chains
Conclusion
CCIP's test tokens provide developers with powerful tools for simulating cross-chain token transfers in a risk-free environment. By understanding both token models and following the minting procedures outlined above, you can thoroughly test your CCIP integrations before mainnet deployment. Remember that comprehensive testing on multiple chains with varying amounts will give you the most realistic simulation of production conditions.