- Sometimes it is not possible to IBC transfer assets using d'apps. In these cases you can manually IBC transfer between blockchains using the Keplr wallet browser extension. Before you attempt this, please take note of the following:
🚨 Tokens can only be sent by IBC either to or from their home network. That means if you want to send $ATOM from Osmosis to Evmos, it must first be transferred from Osmosis back to its home blockchain, Cosmos, before being transferred on to Evmos. If you IBC-transfer $ATOM directly from Osmosis to Evmos, it will be an unusable token when it arrives on Evmos.
🚨 Never IBC transfer assets to a CEX or anywhere else that requires a memo! IBC transfers do not retain the memo across chains.
- Begin by turning on Developer Mode in Keplr's advanced settings. This will enable a manual IBC Transfer button.
- In this example, we will be transferring $EVMOS from Osmosis back to its native blockchain, Evmos. Have your Evmos wallet address handy.
Press the Transfer button at the bottom of Keplr to begin the IBC transfer.
- Search for EVMOS on Osmosis. It shows 'IBC' next to it to indicate it is not currently on its native chain. Hover over this to see which channel it needs to be returned on. In this case it is channel-204. Click on the Evmos to open the next screen.
- Add the appropriate IBC transfer channel. For our EVMOS, we saw in the previous step it showed the channel as 'Evmos/channel-204'. It needs to be written as channel-204, not just 204, to be accepted.
You can also hover over the IBC indicator here to find the channel if you forgot to on the previous screen.
- If you are sending a token from its native blockchain to another chain, you will need to find the channel another way. You can use mintscan.io to assist with this. Consider checking with projects' Telegram or Discord communities if you are not sure.
In the screen below, you can see the channels between Osmosis and Evmos are channel-204 and channel-0. 204 is the channel we are using to transfer from Osmosis to Evmos. Channel-0 is the channel for sending from Evmos to Osmosis.
- Some blockchains have multiple relayer channels to one chain, as can be seen with Stargaze below. Here you would choose the channel that has the most activity - in Stargaze's case channel-75 (from Osmosis to Stargaze) or channel-0 (from Stargaze to Osmosis). There are some exceptions, such as when transferring a CW20 token rather than a blockchain's native coin.
Again, if you are unsure, and have no other option but to use a manual IBC transfer, check with an admin in an official community channel. It is also a good idea to do a test transfer before sending the full amount.
- After saving the channel, follow through to the next pages to add your destination address and quantity of tokens to send.
- Review the details on the confirmation page and approve the transaction. The tokens will travel cross-chain and should be in your destination wallet within a few minutes. Your balance will be updated in Keplr once it arrives. In other d'apps, you may need to refresh the page to see your new balance.
- 🧪 Tip! It is wise to first check if relay channels are clear, especially if you are transferring to/from an uncommon blockchain. Info.osmosis.zone/ibc shows the backlog of transactions to/from Osmosis, indicating which channels are congested/blocked and should not be used at that time. When there is a significant number of pending transactions, there is an underlying issue which will need to be addressed by that protocol's team.
- For IBC transfers that do not involve Osmosis, you can use mintscan.io to check pending transactions.