Migration Guide: Bridged to Native USDC on zkSync

USDC Multi-Chain

This guide explains the differences between bridged USDC and native USDC, and shares the best practices for migrating from bridged USDC to native USDC.

 

What is bridged USDC?

Bridged USDC is created when USDC is locked in a smart contract on one blockchain (i.e. the origin blockchain) and a “synthetic” or “bridged” form of USDC is minted on another blockchain (i.e. the destination blockchain) by a third-party bridge application. Bridged forms of USDC are not issued by Circle.

In the case of zkSync Mainnet, there exists a bridged form of USDC known as USDC.e, which is USDC that has been bridged from Ethereum. Developers and users are encouraged to migrate to “native” USDC, which is the official form of USDC on zkSync Mainnet issued by Circle, backed 100% by highly liquid cash and cash-equivalent assets and always redeemable 1:1 for US dollars.

 

Best practices

If you intend to support both bridged USDC and native USDC, the following best practices are recommended for your UI/UX.

 

Bridged USDC

  • Ensure bridged USDC is clearly named as "Bridged USDC" and the token symbol shows as "USDC.e" (i.e. USDC bridged from Ethereum)
  • Ensure reference to the bridged USDC token contract points to the correct token address: 0x3355df6D4c9C3035724Fd0e3914dE96A5a83aaf4

Native USDC

Additional updates

  • Make native USDC the default option for deposits, withdrawals, swapping, and bridging mechanisms
  • Update Top Tokens page, or similar pages on your app
  • Update Analytics page, or similar pages on your app
  • Highlight native USDC as Commonly Used Tokens (or similar UX modules) instead of bridged USDC

Frequently asked questions

 

What’s the difference between bridged USDC and native USDC?  

 

Native USDC

Bridged USDC

Issued by Circle, a regulated fintech Created by a third party
Backed 100% by highly liquid cash and cash-equivalent assets and always redeemable 1:1 for US dollars Backed by USDC on another blockchain locked in a smart contract
Official form of USDC on a given blockchain Many disparate forms can result in a fragmented user experience

 

What are the benefits of using native USDC over bridged USDC?

Benefits of native USDC include:

  • Fully reserved and always redeemable 1:1 for US dollars
  • Supported by Circle Mint and its APIs
  • Enables institutional on/off-ramps

 

How can my users swap from bridged USDC to native USDC on zkSync Mainnet?

Developers can swap from bridged USDC to native USDC through the following methods:

  • Create a swapping mechanism or liquidity pool within their app on zkSync Mainnet to help their users migrate from bridged USDC to native USDC
  • Tell their users to conduct these swaps on a DeFi protocol on zkSync Mainnet. Warning: If USDC is not clearly distinguished between native and bridged, please ensure the contract addresses match the intended swap.

  • Talk to Matter Labs about possible incentive programs and opportunities to connect with market makers to facilitate a liquidity migration

 

How can I access native USDC on zkSync Mainnet?

Developers can access native USDC through the following methods:

  • Use a DeFi protocol on zkSync Mainnet to swap for native USDC. Warning: If USDC is not clearly distinguished between native and bridged, please ensure the contract addresses match the intended swap.

  • Use a centralized exchanged like Ripio to on-ramp to native USDC on zkSync Mainnet
  • Apply for a Circle Mint account and on-ramp to native USDC
  • Use a CCTP-enabled bridge app to transfer native USDC from another blockchain to zkSync Mainnet

 

Where can I find USDC brand guidelines?

Brand guidelines may be found here.

Back to top