# Using the Standard Bridge
Certain interactions, like transferring ETH and ERC20 tokens between the two networks, are common enough that we've built the "Standard Bridge" to make moving these assets betwen L1 and L2 as easy as possible.
The Standard Bridge is composed of two main contracts the
L1StandardBridge (opens new window) (for Layer 1) and the
L2StandardBridge (opens new window) (for Layer 2).
Here we'll go over the basics of using this bridge to move ERC20 assets between Layer 1 and Layer 2.
# Deposits and withdrawals
Some contract wallets currently may not behave correctly on L2.
If you use a contract wallet, you should deposit your funds into an EOA (externally owned account) on L2.
For the moment, contracts are only allowed to use the explicit
# Depositing ETH
ETH deposits into L2 can be triggered via either
You can alternatively also simply send ETH directly to the bridge contract.
OE has a built-in ERC20 compatible Wrapped Ether (WETH) token which is issued once your deposit is finalized on L2.
Any ETH you deposited on L1 will remain locked into the deposit contract until you withdraw it.
# Depositing ERC20 Tokens
ERC20 deposits into L2 can triggered via
Note that the token amount deposited will need to have been approved for the standard bridge to transfer.
# Withdrawing Assets
Initiating withdrawals are the same for ETH and ERC20s as ETH is ERC20-compatible on L2.
withdrawTo methods on the
L2StandardBridge to initiate a withdrawal.
If you'd like to see these contracts in action, you should check out the L1 ⇔ L2 deposit-and-withdraw example (opens new window).
Note: When withdrawing ETH, use the L2 token address
# Adding an ERC20 token to the Standard Bridge
See detailed tutorial on bridging your standard ERC20 token to Optimism (opens new window) using the Standard Bridge.
Anyone can add a new ERC20 token to the Standard Bridge.
You must have a token contract on both L1 and L2.
Your L2 token contract must also implement the
IL2StandardERC20 (opens new window) interface.
Optimism provides a standard implementation of that interface as the
L2StandardERC20 (opens new window) contract.
L2StandardERC20 implementation does not satisfy your requirements, you can deploy an alternative implementation as long as it's compliant with the
You can freely deploy your proposed implementation to the Optimistic Kovan testnet.
Once you're ready with a tested kovan deployment, you can request a review via this (opens new window) form and we'll consider whitelisting your deployer address on the Optimistic Ethereum mainnet.
This condition only remains as long as the Optimistic Ethereum mainnet has a whitelist.
# The Optimism token list
The Standard bridge allows a one-to-many mapping between L1 and L2 tokens, meaning that there can be many OE implementations of an L1 token. However there is always a one-to-one mapping between L1 and L2 tokens in the Optimism token list (opens new window). The token list is used as the source of truth for the Optimism Gateway (opens new window) which is the main portal for moving assets between Layer 1 and Layer 2.