This is a smart contract guide for those who want to bridge between Ethereum<>Celo<>Fuse using the explorer
Currently, there's no UI for bridging to/from Celo. This guide will teach how you can bridge using blockchain explorers and Metamask:
In celoscan and etherscan, make sure you press
connect to web3button
Connect to Web3 Button
The current maximum amount you can bridge is 300M G$s. If you plan to bridge amounts in that order, you must first verify that your request is within limits. See the Verifying bridge limits section.
- 1.Approve the bridge to spend G$ tokens
- 1.Go to the G$ Contract page on the chain you are bridging from
- 2.Open the
approvemethod box and enter in the
spenderbox the bridge address
0xa3247276dbcc76dd7705273f766eb3e8a5ecf4a5(same on all chains) and in the
value/amountenter the number of G$ units you want to bridge. Notice: In Fuse/Ethereum the units are in 2 decimals meaning that if you want to bridge 1.15 tokens this is equal to 115 units. On Celo the units are in 18 decimals, so 1.15 is 1150000000000000000 units. Press the `write` button and approve the transaction in your wallet.
- 2.Find out the estimated bridge fee by going to https://goodserver.gooddollar.org/bridge/estimatefees Record the amount for the service and path you are bridging, for example if you are bridging from Ethereum to Celo using Axelar then use the value under
AXL_ETH_TO_CELOif using LayerZero then use the value under
LZ_ETH_TO_CELOAt the moment Axelar service is usually cheaper. Bridging from/to Fuse is only supported by LayerZero.
- 3.Issue bridge request
- 1.Go to the Bridge Contract page on the chain you are bridging from
- 2.Open/Scroll to the bridgeTo method box and enter in
targetthe wallet address of the recipient, in
targetChainIdenter the chain id you are bridging to (1-Ethereum 122-Fuse 42220-Celo), in
amountenter the same value as used in step #1 (the approve step), in
bridgeenter 0 for Axelar and 1 for LayzerZero. Lastly in
value/payableAmountenter the estimated bridge fee from step #2. Make sure you have at least that amount of native tokens in your wallet press the `write` button
When bridging from Ethereum, it can take 15 minutes for the transfer to be executed.
The bridge enforces some transfer limits for security. To make sure your request will go smoothly it is recommended to first check on the target chain that your request is within limits.
- 1.Go to the Bridge Contract page on the chain you are bridging to
- 2.Open/Scroll to the
canBridgemethod and enter in
fromthe wallet address where you are bridging from and in
amountenter the amount of units in 18 decimals that you want to bridge then press the
- In case the transaction has been executed by Axelar or Layzezero but still failed to transfer the G$s then contact us via our support form here: