Chain Abstraction

Chain Abstraction allows users to spend stablecoins across different networks seamlessly. This solution provides wallet developers with a toolkit to integrate cross-chain functionality using WalletKit.

💡 Support for Chain Abstraction is currently in early access phase.

How it works

When an application sends a wallet_sendTransaction request for an ERC-20 transfer (such as USDC), the wallet checks for available tokens across all supported networks. If the user has sufficient funds on any supported network, they can complete the transaction instantly, regardless of which network holds their tokens.

For example, consider a scenario where an app requests a transfer of 225 USDC on the Base Network. Even if the user doesn't have USDC on Base, their wallet can automatically source the funds from other networks, making the experience seamless for both the user and the application.

💡 Make sure you have enough gas fees in other networks from which bridging will happen. For example, in given scenario, you need to have enough gas fees on OP Mainnet and Arbitrum.

The diagram below shows how the wallet, WalletKit and RPC work together when a transfer needs funds from another network.

Sequence diagram of the chain abstraction flow between the user, app, wallet, WalletKit and RPC

Get Started

FAQ

What are the available networks for Chain Abstraction?

Chain Abstraction is available on the following networks:

  • Base
  • Arbitrum
  • OP Mainnet
  • Solana

What are the supported tokens and networks?

Chain Abstraction supports the following tokens across different networks:

NetworkAssets
OptimismUSDC, USDT, ETH
ArbitrumUSDC, USDT, ETH
BaseUSDC, USDS, ETH
SolanaUSDC

What are the limitations?

We currently support 1:1 transfers i.e. sourcing funds from one address to another. Make sure that you're transferring minimum 0.6$ worth of tokens and have enough gas to pay bridging fees.

On this page