Skip to main content

Enabling users to bridge your ERC-20 token with Squid

Users can now directly bridge tokens from both Ethereum and non-Ethereum chains to Immutable zkEVM using Squid.

Similarly, game studios can add their custom ERC-20 token to the Squid interface to take advantage of benefits like instant transactions and direct bridging.
in-game currency guidein-game currency guide
💡WHO IS THIS FOR?
Developers who want to integrate their custom ERC-20 token into Squid.

The process of moving tokens between blockchain networks is called bridging. Immutable provides several methods for users to bridge their tokens and allows developers to add their custom ERC-20 tokens to these bridging tools.

💡Standard Ethereum bridge
The standard Ethereum Bridge allows users to bridge from Ethereum to Immutable zkEVM and vice versa. While it requires less setup, it can be quite slow and takes up to 20 minutes in some cases. There is also no option to bridge directly to and from non-Ethereum chains.

What is Squid?

Recently, we released a bridging option integrated with Squid, enabling users to bridge their tokens almost instantly and directly to and from non-Ethereum chains (avoiding L1 gas fees).

Users can take advantage of Squid to bridge and swap tokens in and out of Immutable zkEVM from any one of the 60+ chains supported by Axelar. They can do this through Immutable’s Squid integration on Toolkit or by navigating directly to the Squid website.

This guide will walk developers through the process of adding their custom ERC-20 token token to Squid.

Why bridge via Squid?

Bridging ERC-20 tokens with Squid has several advantages:

  • Your users' bridging transactions can be settled in seconds by leveraging the "Boost" feature (assuming they have liquidity pools set up).
  • Users that don’t currently have your ERC-20 token in their wallet can acquire it as part of a bridging transaction (e.g. a user can go from $USDC on Arbitrum to $GAME-TOKEN on Immutable zkEVM in a single transaction).
  • Users can receive destination gas as part of the transaction.
  • Users can directly bridge your ERC-20 token from a non-Ethereum chain to Immutable zkEVM, avoiding L1 gas fees.

Limitations

As with any product, there are also a few limitations to consider when using Squid:

  • Enabling instant transactions requires setting up and maintaining DEX liquidity pools on one or more chains.
  • Users may experience slippage and price impact.
  • The process may also result in failed transactions wherein a user ends up with an intermediary asset axlUSDC instead of their desired asset on the destination chain.

Prerequisites

Before adding your ERC-20 token to Squid, make sure it meets the following requirements:

💡Mainnet only
Because Squid is currently only integrated with Immutable zkEVM Mainnet, this guide only applies to tokens deployed on Mainnet (i.e. there is no Testnet integration with Squid).

How to add your ERC-20 token to Squid

Developers who want to enable bridging of their ERC-20 token via Squid will need to follow these steps.

Step 0: Deploy your ERC-20 token to Immutable zkEVM

You must first deploy and map your ERC-20 token to Immutable zkEVM from its source chain. The instructions for this depend on where your token originates from so please follow the relevant guide from the options below:

Step 1: Set up liquidity pools

💡Liquidity pools required
If you do not set up liquidity pools, your users will lose access to important features. For example, they may not be able to bridge funds instantly (transactions could take up to 20 minutes) and they will not be able to swap tokens.

Squid relies on DEX liquidity pools to orchestrate cross-chain bridging and swapping flows.

For tokens bridged through the canonical bridge, or for tokens that are native to Immutable zkEVM, a $GAME-TOKEN <> $USDC pool needs to be set up on Immutable zkEVM, to enable users to bridge your ERC-20 token into the chain. Additionally, a similar pool will need to be available on other chains where users will be bridging the $GAME-TOKEN from or to.

The table below briefly summarizes where DEX liquidity pools will need to be available for your ERC-20 token ($GAME-TOKEN) to enable different exchange flows.

Source ChainDestination Chain
$GAME-TOKEN → $GAME-TOKENYesYes
$Other → $GAME-TOKENNoYes
$GAME-TOKEN → $OtherYesNo

On Immutable zkEVM, this pool will need to be set up through Quickswap by following their provided instructions.

For all other chains, please refer to Coingecko's list of popular DEX liquidity pools to select one for your given source chain.

💡Minimum value
A minimum of $20K USD pool with $10K USD worth of assets on each side of the pool is recommended. This however largely depends on the expected volume through bridging for the asset.

Token issuers will be responsible for managing and maintaining the DEX pool for their ERC-20 token.

Step 2: Add your ERC-20 token to Immutable's token allowlist

For the asset to be discoverable through the Squid UI, it first needs to be included in the allowlist of tokens for Immutable zkEVM.

To allowlist an ERC-20 token, you must contact our support team on Discord. This includes providing requested details about your ERC-20 token and specifying that you want your ERC-20 token included on Squid's bridge tool.

Once included in the allowlist, the token might take a few days to sync on Squid’s UI.


Related content