[ioTube Tutorial] Cross-Transfer Tokens between Ethereum and IoTeX

ioTube is a cross-chain bridge that connects IoTeX to other blockchain networks, enabling new assets and liquidity from other blockchains to flow into IoTeX, and position IoTeX to deliver unique IoT assets to other blockchains in the future.

ioTube currently bridges IoTeX with Ethereum, Binance Smart Chain and Polygon. In this tutorial we will show how to transfer ERC20 tokens from Polygon to IoTeX.

See all ioTube tutorials:

Convert your ERC20 assets and bring new liquidity to the IoTeX Network now at https://tube.iotex.io

  1. IOTX Token Swap (ERC20 IOTX ↔ Native IOTX)
  2. Convert ERC20 tokens from Ethereum to IoTeX
  3. Convert XRC20 tokens from IoTeX to Ethereum

IOTX Token Swap (ERC20 IOTX ↔ Native IOTX)

When the IoTeX project launched in 2018, an ERC20 version of IOTX (usually called “IOTX-E”) was released on Ethereum and listed by major exchanges for trading. In April 2019, the native IOTX token was created alongside the Mainnet Alpha launch, as well as an "IOTX-E to IOTX Native" swap tool on member.iotex.io:

With the latest release, the original swap tool has now been integrated into ioTube: starting December 2020, ioTube will be used to swap IOTX-E (ERC20) tokens to Native IOTX on the IoTeX blockchain, and vice versa.

In fact, although the majority of exchanges support native IOTX trading, some exchanges still use the IOTX-E Ethereum token only, so you may want to swap between IOTX-E and native IOTX: in this case, you can use ioTube to move your IOTX-E to the IoTeX Blockchain and vice-versa at any time:

See this article to learn more about swapping IOTX-E to Native IOTX: Swap IOTX-E to WIOTX to native IOTX using ioTube V3 + mimo

Send ERC20 tokens from Ethereum to IoTeX

The purpose of this operation is to lock a certain amount of an ERC20 token on Ethereum, and create an equivalent amount of IoTeX version (XRC20) of the same token on the IoTeX blockchain.

1. Make sure you have Metamask Plugin installed in your browser

2. Open and connect to ioTube dApp

  • Open https://tube.iotex.io

  • Click the “Ethereum” Tab to select Ethereum Blockchain as the source network

  • Click the “Connect Wallet” link to allow IoTube to connect to your Metamask wallet

  • Confirm the connection in Metamask

3. Select the ERC20 token you want to send to IoTeX

From the dropdown, select which ERC20 token you want to move convert from Ethereum to IoTeX. If your favorite token is not listed, feel free to submit your request to the team.

4. Send the transfer

  • Select the amount of ERC20 tokens you want to move

  • Input the destination address (! Do not set an Exchange address as a destination)

  • If requested, click “APPROVE” and confirm the Approve transaction in Metamask

  • Finally, click “CONVERT” and confirm the transfer in Metamask:

After the transaction is confirmed in Ethereum, your ERC20 tokens will be “locked” in an Ethereum smart contract, while the same amount of the equivalent XRC20 token will be “minted” on the IoTeX blockchain. This means the circulating supply of the ERC20 token you converted will stay the same, taking into account versions from both Ethereum and IoTeX blockchains!

Congratulations! You just moved some liquidity from Ethereum to IoTeX!

5. Check the destination account on IoTeX

If you transferred the tokens to the default destination address, you will be able to access it in the IoTeX Blockchain by unlocking it utilizing the same private key as the sender address on Ethereum. You can use ioPay to unlock the destination address and check the new token balance:

OR you can just check the balance on the IoTeX Block Explorer at https://iotexscan.io:

3. Send XRC20 tokens from IoTeX to Ethereum

You can also perform the opposite operation, sending converted XRC20 tokens from the IoTeX blockchain back to Ethereum:

  • If you are on Desktop, make sure you have ioPay Desktop open and unlocked

  • If you are on Mobile, then open the Discover tab inside the ioPay Mobile Wallet and select the ioTube dApp icon:

  • Make sure to select IoTeX as the source network in ioTube (i.e., IoTeX tab will appear on the left side, as shown below)

  • Follow the same steps as described above when sending from Ethereum to IoTeX at sections 2.1 and 2.2

  • Finally check the balance of the destination address on the Ethereum network either in Metamask, or by checking the Ethereum block explorer.


Please reach out to us on Telegram with any questions: https://t.me/IoTeXGroup


Great, keep improving and expanding the IoTeX Network to the benefits of the stakeholders :+1: