Across is now live on Lens Chain!
Bridge Now
Across Documentation
V3 Developer Docs
V3 Developer Docs
  • 👋Introduction
    • Welcome to Across
    • What is Across?
    • Technical FAQ
    • Migration Guides
      • Migration from V2 to V3
      • Migration to CCTP
        • Migration Guide for Relayers
        • Migration Guide for API Users
      • Migration Guide for Non-EVM and Prefills
        • Breaking Changes for Indexers
        • Breaking Changes for API Users
        • Breaking Changes for Relayers
        • Testnet Environment for Migration
      • Solana Migration Guide
      • BNB Smart Chain Migration Guide
  • 🔗Use Cases
    • Instant Bridging in your Application
      • Bridge Integration Guide
      • Multichain Bridge UI Guide
      • Single Chain Bridge UI Guide
    • Embedded Crosschain Actions
      • Crosschain Actions Integration Guide
        • Using the Generic Multicaller Handler Contract
        • Using a Custom Handler Contract
      • Crosschain Actions UI Guide
    • Settle Crosschain Intents
    • ERC-7683 in Production
  • 🧠Concepts
    • What are Crosschain Intents?
    • Intents Architecture in Across
    • Intent Lifecycle in Across
    • Canonical Asset Maximalism
  • 🛠️Reference
    • API Reference
    • App SDK Reference
    • Contracts
      • Aleph Zero
      • Arbitrum
      • Base
      • Blast
      • Ethereum
      • Linea
      • Ink
      • Lens
      • Lisk
      • Mode
      • Optimism
      • Polygon
      • Redstone
      • Scroll
      • Soneium
      • Unichain
      • World Chain
      • zkSync
      • Zora
    • Selected Contract Functions
    • Supported Chains
    • Fees in the System
    • Actors in the System
    • Security Model and Verification
      • Disputing Root Bundles
      • Validating Root Bundles
    • Tracking Events
  • 🔁Relayers
    • Running a Relayer
    • Relayer Nomination
  • 📚Resources
    • Release Notes
    • Developer Support
    • Bug Bounty
    • Audits
Powered by GitBook
LogoLogo

Products

  • Across Bridge
  • Across+
  • Across Settlement

Socials

  • Discord
  • Twitter
  • Medium
  • Forum

Resources

  • Blog
  • Across Brand Assets
  • Github

Routes

  • Bridge to Unichain
  • Bridge to Arbitrum
  • Bridge to Optimism
  • Bridge to Linea
  • Bridge to Polygon
  • Bridge to Base
  • Bridge to World Chain
  • Bridge to zkSync
On this page
  • Introduction
  • Summary of Product Changes
  • For Developers and Integrators
  • For Relayers and Indexers
  • Support
  1. Introduction
  2. Migration Guides

BNB Smart Chain Migration Guide

PreviousSolana Migration GuideNextInstant Bridging in your Application

Last updated 22 days ago

Across is expanding support to BNB Smart Chain, enabling seamless bridging between Ethereum Mainnet, other supported chains, and BNB Smart Chain.

The migration is scheduled to go live in early May 2025. All integrators and relayers are encouraged to complete the necessary updates before the migration happens to prevent disruptions.


Introduction

The changes detailed in this guide are limited to updates within the API to support bridging to and from BNB Smart Chain. This guide is aimed at Developers, Integrators, and Relayers using the Across API. Here are some details:

  • Developers and Integrators: Updates to API responses, including a new field and optional query parameter behavior.

  • Relayers and Indexers: No event changes; only /suggested-fees API updates need attention.

Supported Assets Overview

With BNB Smart Chain support, Across will enable bridging for:

  • USDC, USDT, ETH → Ethereum Mainnet ↔ Supported L2s ↔ BNB Smart Chain

  • BNB → Ethereum Mainnet ↔ BNB Smart Chain

  • CAKE → Ethereum Mainnet ↔ BNB Smart Chain

Expanding support to BNB Smart Chain enhances Across's crosschain interoperability, enabling efficient, cheap and quick bridging across a broader set of EVM-compatible networks.


Summary of Product Changes

The SpokePool contract deployed on BNB Smart Chain supports bridging between Ethereum Mainnet, supported L2s, and BNB Smart Chain. Integrators must continue using the DepositV3 function for BNB routes.

Across Protocol will use 56 as the chain ID for BNB Smart Chain Mainnet.

BNB Smart Chain testnet is not currently supported. Developers and integrators should test their integrations directly on BNB Smart Chain mainnet, using small token amounts.


For Developers and Integrators

The /suggested-fees API has two critical updates for BNB Smart Chain support:

  • outputAmount field: Each response now includes the outputAmount to be received after bridging.

// deprecated approach
const outputAmount = inputAmount * (1 * 10^18 - feesResponse.totalRelayerFee.pct)
const tx = spokePool.deposit(...args, outputAmount)

// correct approach
const outputAmount = feesResponse.outputAmount
const tx = spokePool.deposit(...args, outputAmount)
  • Decimal enforcement: An optional allowUnmatchedDecimals query parameter has been added.

    • If not set to true, the API will return a 4XX error when the inputToken and outputToken have different decimals.

    • This ensures integrators explicitly handle cases where the same token (e.g., USDC) has different decimal places across chains (e.g., 6 vs 18).

We strongly encourage developers to test these changes in production environments using small token amounts to verify behavior before going live.

There are no changes to the structure of other fields in the /suggested-fees API response.


For Relayers and Indexers

No changes are required to the fill process for supporting BNB Smart Chain compared to existing EVM chains.

Relayers must ensure their configurations are updated to recognize chain ID 56 for BNB Smart Chain when handling deposits and repayments.


Support

BNB Smart Chain will also be available in the Across .

We will notify you as soon as the BNB routes are live for testing. Please join our to be notified at the earliest.

Want to learn more or need personalized help? Check out and reach out to us!

👋
App-SDK
telegram community
developer support
assets
assets
asset
/suggested-fees