Accessing Wallets
Learn about primaryWallet, useUserWallets, onEmbeddedWalletCreated, and Wallet Interface
Introduction
It’s not neccessary for a wallet to be associated with a user when they sign up, but the likelyhood is that if a user is interacting with Web3, one will be connected at some point, whether embedded or external (branded).
Primary Wallet
Normally, if one or more wallets are connected, a primaryWallet
object will be available on the Dynanmic Context which you can access with the useDynamicContext
hook. This is a quick and easy way to access the main wallet associated with that user.
useUserWallets
Going beyond the primary wallet, you might want to get every wallet associated with the given user. The best option for this is to use the useUserWallets
hook.
onEmbeddedWalletCreated
If you’re using embedded wallets, you can listen for the onEmbeddedWalletCreated
event to know when a wallet has been created for a user. This is useful for when you want to know when a user has a wallet created for them, but you don’t want to have to poll the API to check.
So what does a wallet actually look like? Here’s the object:
Wallet Interface
Field | Description | |
---|---|---|
address: string | Public key/address of the connected wallet | |
chain: string | Current BlockChain name | |
connected: boolean | Whether this wallet is connected or not i.e. if locked in the browser extension | |
connector: WalletConnector | See WalletConnector guide | |
network?: string | number | The network id of the chain the wallet is connected to |
authenticated: boolean | If there is a current user, this will be true if and only if the user has signed this wallet to link it to their account | |
additionalAddresses?: string[] | Additional addresses associated to the wallet like ordinals and payment addresses for bitcoin wallets |
Here’s an example of a wallet object:
What next?
What next?
Click here to learn how to interact with wallets.
Was this page helpful?