How to bridge EURA and ANGLE to different networks with the Angle App

Angle App leverages the protocol's cross-chain bridge setup built on LayerZero to enable bridging its stablecoins and ANGLE between many EVM-compatible networks.

To bridge stablecoins or ANGLE from a network to another, you simply need to head to the app's bridge page select the token you want to bridge, enter the amount, and select the destination network.

There are two other aspects you need to be careful about:

  1. Bridge limits, displayed below the Bridge button

  2. Having enough funds on the origin chain to pay for transaction fees on the origin and destination chains.

Not having enough funds on the origin chain to pay for gas is the most frequently encountered issue, and most likely the one you are facing as well. Try to buy more gas token and try the transaction again.

Bridge limits

Angle's bridge system implements total and hourly limits for the amounts that can be bridged to a chain. These limits are particular to each asset (Angle stablecoin or ANGLE token) and to each chain.

The total limits limit how many tokens can be held by the bridge contract on each chain. The hourly limits limit how much can be bridged to and from each chain.

If the limits are reached when processing a bridge transaction, you won't receive stablecoins or ANGLE in your wallet on the destination chain.

Instead, you will receive lz tokens in your wallet that can be used to redeem the stablecoin or ANGLE later, when the limits reset.

Information on the current limits are displayed in the callout below the inputs.

How to get back stablecoins from lz tokens

On each network where stablecoins can be bridged, there is a lz-stablecoin contract. Typically on every chain where EURA can be bridged there is a lz-agEUR contract (due to the previous name of the stablecoin).

You can find their addresses on the smart contracts addresses page.

Here, we specifically look at EURA bridging use case, but all of this applies to other stablecoins as well. Also, the example here is for Optimism, but it works the same on any chain where Angle Bridging system is live.

If you hit a bridge limit, you should have received lz-agEUR tokens in your wallet. In this case, you can go to the token contract (example on Optimism).

Then follow these steps:

  1. Click on Write as Proxy

  2. Connect your wallet to Etherscan by clicking on the Connect to Web3 button.

  3. Scroll down to the function withdraw()

  4. Enter the amount of lz-agEUR you want to exchange for EURA, and your wallet address. The amount input needs to be in the correct decimals format: you need to multiply the amount by 10^18. For example, to exchange 123 lz-agEUR, you need to input 123000000000000000000.

  5. And send the transaction

Example of a withdraw transaction

If the limits are still empty, you will just get the same amount of lz-agEUR back. You can check the current limits on the app bridge page.

Funds required to pay for bridge transaction fees

When bridging from a network to another, you need enough gas token on the origin chain to pay for bridge transactions both on the origin and destination chains.

For example, if you bridge from Polygon to Ethereum mainnet, where transaction fees are higher, you will need more MATIC than usual on Polygon to pay for the transactions.

If you do not have enough funds, the transaction might revert or you could get an internal JSON RPC error displayed on the Angle app.

For example, with a gas price of 100 you will need ~0.03 gas token (ETH, MATIC, ...) on the origin chain to pay for the transaction.⁣

I'm not sure if my bridge transaction was confirmed

If you don't know whether you should have received funds in your wallet after a bridge transaction, you should check on LayerZeroScan with the hash of the bridge transaction from the origin network.

If the transaction on the destination chain is confirmed but you don't have the tokens in your wallet, you can read the paragraph about how to get back stablecoins from lz tokens.

Last updated