Appearance
Configuring external wallets
Privy supports displaying many different external wallets in the login modal. Some supported external wallets may come with additional functionality that can be configured on the config.externalWallets
property of the PrivyProvider
.
INFO
As of today, Coinbase Wallet is the only configurable external wallet with their Smart Wallet feature.
Coinbase Smart Wallet
Privy supports connecting through both the Coinbase Smart Wallet and legacy Coinbase Wallet extension and mobile app. By default, Privy disables the Smart Wallet for backwards compatibility but you can easily enable it per the instructions below.
TIP
Smart Wallet supports a limited number of chains. If using all
or smartWalletOnly
connection options, be sure that your PrivyProvider default chain and supported chains list is a subset of Coinbase's supported list.
In order to enable or optionally enable the Smart Wallet, you can set the config.externalWallets.coinbaseWallet.connectionOptions
property of the PrivyProvider
:
tsx
<PrivyProvider
appId="your-privy-app-id"
config={{
externalWallets: {
coinbaseWallet: {
// Valid connection options include 'all' (default), 'eoaOnly', or 'smartWalletOnly'
connectionOptions: 'smartWalletOnly',
},
},
...insertTheRestOfYourPrivyProviderConfig,
}}
>
{children}
</PrivyProvider>
The following are valid connectionOptions
property values:
eoaOnly
: The Privy SDK will only surface the Coinbase Wallet extension or Coinbase Wallet mobile app QR code. Users who do not have it installed will be prompted to install it.smartWalletOnly
: The Privy SDK will surface the Coinbase Smart Wallet for all users.all
: (default) The Privy SDK will detect whether the user has the Coinbase wallet extension installed. It will pop up the Coinbase wallet extension if they do and the Smart Wallet otherwise.