Recommended: JavaScript SDK for React Native
While this SDK is still supported, we recommend using newer JavaScript SDK, which is optimized for React Native, but also comes with a host of other benefits.
Enable External Wallet Login
1
Enable Chains
Enable the chains you want to support in the Chains section of the dashboard. We support Ethereum, all EVM-compatible networks, Solana, and more.
2
Enable Wallet Login
In the Log in & User Profile section of the dashboard, toggle on Wallet Log in under “External Wallets”.
3
Set Up Deep Links
External wallet connections on mobile rely on deep links to redirect users between your app and their wallet app.
Multi-Wallet
In the dashboard under External Wallets, you can toggle on Multi-Wallet. When enabled, users can connect more than one wallet to their account and switch between them without signing out. Learn more on the Multi-Wallet page.How WalletConnect Works on Mobile
When a user connects an external wallet in React Native, the SDK uses WalletConnect under the hood. The flow is:- Your app presents a list of available wallets
- The user taps a wallet (e.g. MetaMask)
- The SDK generates a WalletConnect URI and deep links to the wallet app
- The user approves the connection in their wallet app
- The wallet app redirects back to your app with the connection established
connectWallet — you don’t need to manage WalletConnect sessions directly.
Using Our UI
Once enabled, external wallet login is available by default in the Dynamic UI. Simply show the auth flow and users will see available wallets:React Native
Using Your UI
Fetch Available Wallets
Access the list of available wallets through thewalletOptions property. Each option includes metadata about the wallet, including whether it uses WalletConnect.
React Native
Connect to a Wallet
UseconnectWallet with the wallet’s key to initiate the connection. On mobile, this automatically handles the WalletConnect deep link flow — opening the wallet app for approval and returning the connected wallet when done.
React Native
Filter WalletConnect Wallets
You can filter wallets to show only WalletConnect-compatible options, or separate them into categories:React Native
walletsFilter in your client configuration:
React Native
Access Connected Wallets
Once a wallet is connected, access it throughuserWallets and primary:
React Native
Wallet Operations
After connecting, you can perform operations on any connected wallet:React Native
Listen for Wallet Events
React to wallet state changes using event listeners:React Native
Connected vs Authenticated
By default, external wallets use “connect-and-sign” mode, where users both connect their wallet and sign a message to prove ownership. You can also use “connect-only” mode where users just connect without signing. Read about the implications of each mode in Connected vs Authenticated to decide what’s right for your use case.Further Reading
Multi-Wallet
Allow users to connect multiple wallets to their account.
Link/Unlink Wallets
Link additional wallets after authentication.
Wallet Events
Listen to wallet state changes and events.
External Wallets Overview
Deep dive into external wallet configuration.