What you need to know: Add the EVM extension from the Chains table on Adding extensions. You need at least one EVM extension to support Ethereum-compatible chains. There are only two kinds of wallet: embedded and external. Each extension below lets you support one or both for EVM.
window.ethereum, or Dynamic embedded wallets). Enable the EVM chain in the Dynamic dashboard as well.
Installation
Default EVM extension
If you wish to support the standard EVM wallets and Dynamic embedded wallets, you can add the default EVM extension to your client using theaddEvmExtension method.
Standalone EVM extensions
If you want to be more granular, you can add the standalone EVM extensions individually to your client.EIP-6963 extension
Window-injected extension
When users open your app inside a wallet’s built-in browser (e.g. MetaMask Mobile, Trust Wallet, Coinbase Wallet), the wallet injects its provider intowindow.ethereum rather than announcing via EIP-6963. Use this
extension as a fallback to support those environments:
addEIP6963Extension, EIP-6963 providers take priority automatically — so if a
wallet supports both, the EIP-6963 version is used.
WAAS EVM extension
Base Account extension
Adds support for Base Account — Coinbase’s popup / QR flow that surfaces both Coinbase Smart Wallet (passkey-backed ERC-4337 contract wallet atkeys.coinbase.com) and Coinbase Wallet (EOA). It complements, rather than replaces, the EIP-6963 and window-injected paths, which continue to handle the Coinbase Wallet browser extension.
preference.options to control which Base Account flavor(s) appear in the popup:
| Value | Behavior |
|---|---|
'all' (default) | Show both Smart Wallet and EOA options. Use this when in doubt. |
'smartWalletOnly' | Only Coinbase Smart Wallet — a passkey-backed ERC-4337 contract wallet onboarded via Face ID / fingerprint / Yubikey, with no seed phrase. Best for first-time onchain users. |
'eoaOnly' | Only Coinbase Wallet (EOA) — the standard private-key Coinbase Wallet. Best when the user already has Coinbase Wallet installed. |