Skip to main content
Official Scroll zkEVM bridge via L1ScrollMessenger and L1GatewayRouter. Deposits ETH and ERC-20 tokens with ZK proof-based finality.

Notes

  • L1 to L2 via GatewayRouter (for token deposits) or L1ScrollMessenger (for arbitrary messages)
  • zkEVM architecture — withdrawals finalize with ZK proofs (faster than optimistic rollups, typically hours not days)
  • GatewayRouter auto-routes tokens to the correct gateway (standard ERC-20, WETH, custom gateways)
  • msg.value must include gas fees for L2 execution (even for ERC-20 deposits)
  • L1 to L2 deposits finalize after ZK proof generation (~1-4 hours)
  • L2 to L1 withdrawals also require ZK proof finalization (~1-4 hours)
  • Canonical bridge, secured by Scroll’s ZK proving system

Its names in a program

On Ethereum, ScrollBridge is a namespace: its contracts need no import.

Deployments

ABI

ScrollL1GatewayRouterABI

import ScrollL1GatewayRouterABI from "./protocols/scroll-bridge/ScrollL1GatewayRouterABI.json"; Speaks for: l1GatewayRouter.
  • depositETH(uint256 _amount, uint256 _gasLimit) payable
  • depositERC20(address _token, uint256 _amount, uint256 _gasLimit) payable

ScrollL1MessengerABI

import ScrollL1MessengerABI from "./protocols/scroll-bridge/ScrollL1MessengerABI.json"; Speaks for: l1ScrollMessenger.
  • sendMessage(address to, uint256 value, bytes message, uint256 gasLimit) payable

Next steps