CCIP v2.0.0 IBurnMintERC20 API Reference
Summary
IBurnMintERC20 defines the minimal ERC20-compatible interface required by CCIP burn/mint token pools.
It extends IERC20 and adds minting and burning capabilities used during cross-chain token transfers.
Contract
chains/evm/contracts/interfaces/IBurnMintERC20.sol
Import
import {IBurnMintERC20} from "chainlink-ccip/chains/evm/contracts/interfaces/IBurnMintERC20.sol";
Interface surface
interface IBurnMintERC20 is IERC20 {
mint
function mint(address account, uint256 amount) external;
Mints amount tokens to account.
burn
function burn(uint256 amount) external;
Burns amount tokens from msg.sender.
burn (address, amount)
function burn(address account, uint256 amount) external;
Burns amount tokens from account.
burnFrom
function burnFrom(address account, uint256 amount) external;
Burns amount tokens from account, typically requiring allowance or role authorization.
}
Integration notes / expectations
- Tokens implementing this interface must also implement
IERC20. - Pool contracts must be granted mint and/or burn permissions by the token implementation.
- Concrete pool variants determine which burn method is used.
- Incorrect role or allowance configuration will cause pool operations to revert.