Register Your Assets on Flow
To make your fungible token or non-fungible token visible in Flow ecosystem projects like Flow Wallet and IncrementFi, you need to register it on the Flow Token List. This process will generate JSON files based on the Uniswap TokenList Standard and ensures that wallets, explorers, and onchain apps can recognize and display your token correctly.
There are two ways to register your token: manually via a web interface or programmatically during token deployment.
Manual Registration (~1 min)
The following works for both fungible and non-fungible tokens on Flow Cadence or Flow EVM.
- Go to Token List Registration.
- Enter your contract address in the "Quick Register" field and press Enter.
- Both Fungible and Non-Fungible tokens are supported.
- Both EVM and Cadence contracts are supported.
- Click "Register" and sign the transaction.
- If your token is already registered to VM Bridge, you're done.
- Otherwise, the first transaction registers the token to VM Bridge (costs 1 $FLOW).
- After that, click "Register" again and sign the second transaction to finalize the process.
ERC-20 tokens registered with this method will use the default logo of Flow Official Assets.
If you want to register your ERC-20 token on Flow EVM with your customized logo, you should follow the Register ERC-20 Token on Flow EVM guide.
Programmatic Registration
For seamless automation, you can integrate token registration into your token deployment workflow.
You can use the following Cadence transaction to register your Fungible or Non-Fungible token on Flow Cadence or Flow EVM.
Register Fungible Token or Non-Fungible Token automatically on Flow Cadence
Use a standalone Cadence transaction to register your Fungible Token or Non-Fungible Token on Flow Cadence.
- Use this Cadence transaction: register-standard-asset.cdc.
- This transaction should be executed right after deploying your Fungible Token or Non-Fungible Token contract.
Or you can also pick up some code from the register-standard-asset.cdc file to make your own Cadence transaction with the same logic for more seamless integration. Here is an example:
_15import "TokenList"_15import "NFTList"_15_15transaction(_15 address: Address,_15 contractName: String,_15) {_15 execute {_15 if TokenList.isValidToRegister(address, contractName) {_15 TokenList.ensureFungibleTokenRegistered(address, contractName)_15 } else if NFTList.isValidToRegister(address, contractName) {_15 NFTList.ensureNFTCollectionRegistered(address, contractName)_15 }_15 }_15}
Register ERC-20 or ERC-721 Tokens automatically on Flow EVM
- Use this Cadence transaction: register-evm-asset.cdc
- This transaction should be executed right after deploying your ERC-20 or ERC-721 contract.
Similar to manual registration:
- If the token is not bridged to VM Bridge, you will need to send the transaction twice.
- The first transaction deploys a VM Bridged Cadence contract for the ERC-20.
- The second transaction registers it on the Token List.
Next Steps
- Verify your token listing in Flow Wallet.
For any issues, refer to the Token List GitHub Repository or reach out to the Flow developer community.