Connect to Xverse Wallet
Request to connect your app to your user's Xverse wallet
Your application can request to connect to the userβs Xverse wallet with the wallet_connect
method.
The user will be prompted to connect their desired wallet account to your app, and share the account's Bitcoin and Stacks addresses.
You can optionally specify:
which wallet addresses you require from the wallet account: Bitcoin ordinals address, Bitcoin payment address or Stacks address, using the optional
addresses
request parameter.a custom connection message to show the user. You can use it to present your app and state the purpose of the connection request.
request parameters | Description |
---|---|
an array of strings used to specify which address(es) to request from the user's Xverse wallet account:
Example: | |
a custom message to show to the user during the connection request |
Connection request in your user's Xverse wallet
If the user is not connected to your app yet, their Xverse wallet will display a Connection Request prompt with:
your app url & your app logo (if it is specified in your app manifest)
π Note that if your app is referenced on Xverse Explore, Sats Connect will automatically display your app name & logo as they appear on Explore.
the wallet addresses that your app required
the message which you specified. Note that this message will be cut beyond 80 characters.
the permissions that your app is requesting from their wallet
The user can select which of their Xverse account they wish to connect to your app.
β If the user has already granted permissions, no connection request popup will appear, ensuring a smooth user experience.
β
Successful Connection Request
The connect
method returns a Promise that resolves once the user approves the connection request or if they are already connected to your app.
Once resolved, the method returns connectResult
: an array of the userβs wallet address objects, defined as:
You can use these addresses to make further requests such as signing a message, signing a transaction, etc.
Currently, you can retrieve two types of Bitcoin addresses, the user's Bitcoin payment address and the Ordinals address which is a taproot address.
An example response:
Where:
address field | Description |
---|---|
| string - the userβs connected wallet address |
| A hex string representing the bytes of the public key of the account. You can use this to construct partially signed Bitcoin transactions (PSBT). |
| string - The purpose of the address:
|
| string - the addressβs format:
|
| string - the network where the address is being used:
|
| string - the type of wallet used for the account
|
After approving the connection request, the user can track the active connection with your app directly from their Xverse wallet, and revoke the connection from the wallet.
β Unsuccessful Connection Request
Last updated