getProviders & getProviderById
Detecting the providers with getProviders
If the user has multiple browser extension wallets installed, Sats Connect will detect the extensions that inject their provider information under window.btc_providers
, following the WBIP004 standard.
Sats Connect will construct a "multiprovider" array at window.btc_providers
, containing the injected provider from each wallet. Xverse Wallet can be identified in this array by the following properties:
Your application can detect the user's installed wallet providers with the getProviders
method.
No request parameters are required:
The getProviders
method returns an array of btcProvider
objects with the following WBIP004 properties:
id
a string representing the path to the wallet provider in the global/window object
Xverse provider example:"BitcoinProvider" || "xverseProviders.BitcoinProvider"
name
a string representing the name of the wallet provider to show in the connect wallet UI
Xverse provider example: "Xverse Wallet"
icon
a string representing the wallet provider's icon as to show in the connect wallet UI, as data URI (SVG image encoded in base64 format)
Xverse provider example:data:image/svg+xml;base64,PHN2Z..ZnPgo=
webUrl
chromeWebStoreUrl
goodlePlayStoreUrl
iOSAppStoreUrl
methods
An array of strings representing the list of methods supported by the wallet provider
Xverse provider example:
["getAddress", "getInfo", "signMessage", "signPsbt", "sendTransfer", "signMultipleTransactions", "createInscription", "createRepeatInscriptions", "stx_signMessage","stx_transferStx", "stx_signTransaction", "stx_callContract"]
Selecting a provider with getProviderById
You can use the getProviderById
method to select any specific provider from the list of providers injected under window.btc_providers
No request parameters are required:
The getProviderById
method returns the provider object that the wallets injects in the window
object.