Skip to main content

Web3Auth v10 external wallet adapters migration guide

This guide focuses specifically on migrating external wallet adapter configurations from Web3Auth v7 to v10. This is a supplementary guide to the main v7 to v10 migration guide.

Overview​

In v7, external wallets required manual adapter configuration. V10 simplifies this by using MIPD (Multiple Injected provider Discovery) to automatically detect and provide access to external wallets without manual setup.

Migration steps​

External wallet adapter migration​

// Individual wallet adapters in v7
import { MetamaskAdapter } from '@web3auth/metamask-adapter'
import { PhantomAdapter } from '@web3auth/phantom-adapter'
import {
WalletConnectV2Adapter,
getWalletConnectV2Settings,
} from '@web3auth/wallet-connect-v2-adapter'
import { WalletConnectModal } from '@walletconnect/modal'

// Manual adapter configuration
const metamaskAdapter = new MetamaskAdapter()
web3auth.configureAdapter(metamaskAdapter)

const phantomAdapter = new PhantomAdapter()
web3auth.configureAdapter(phantomAdapter)

const defaultWcSettings = await getWalletConnectV2Settings('eip155', ['1'], 'PROJECT_ID')
const walletConnectV2Adapter = new WalletConnectV2Adapter({
adapterSettings: { qrcodeModal: WalletConnectModal, ...defaultWcSettings.adapterSettings },
loginSettings: { ...defaultWcSettings.loginSettings },
})
web3auth.configureAdapter(walletConnectV2Adapter)

await web3auth.initModal()

// All external wallets are automatically detected via MIPD
// No manual adapter configuration needed
await web3auth.init()

Key changes​

  • Package Removal: Remove all external wallet adapter packages
  • MIPD Integration: External wallets are automatically detected using MIPD (Multiple Injected provider Discovery)
  • No Configuration: No need to manually configure or register external adapters
  • WalletConnect Support: WalletConnect-compatible wallets are automatically available

Package removal​

Remove these deprecated packages from your project:

# Remove all external wallet adapter packages
npm uninstall @web3auth/metamask-adapter @web3auth/phantom-adapter @web3auth/solflare-adapter @web3auth/wallet-connect-v2-adapter @walletconnect/modal

How it works in v10​

V10 uses MIPD (Multiple Injected provider Discovery) to automatically detect injected wallets in the browser. When users attempt to connect, they'll see:

  1. Detected Wallets: All installed browser extension wallets.
  2. WalletConnect: For mobile and other wallet connections.
  3. Social Logins: Built-in Web3Auth authentication methods.

No configuration needed - everything works out of the box!

Next steps​

Return to the main v7 to v10 migration guide to continue with other migration aspects.