Sats Connect - Wallet API for Bitcoin & Stacks
  • Introduction
  • Wallet Providers
    • getInfo
    • getProviders & getProviderById
  • Connecting to the wallet
    • Connect to Xverse Wallet
    • Disconnect from Xverse Wallet
    • Connect to other wallets
      • Manage a user's default wallet
    • [Legacy ⚠️] getAccounts
  • Wallet Methods
    • request methods
    • wallet_getAccount
    • wallet_getNetwork
    • wallet_changeNetwork
    • Xverse Custom Methods
  • Xverse Wallet Permissions
  • Xverse Wallet events
  • BITCOIN METHODS
    • 🟠getAddresses
    • 🟠signMessage
    • 🟠signPsbt
    • 🟠sendTransfer
    • 🟠signMultipleTransactions
    • 🟠getBalance
    • 🎨createInscription
    • 🎨createRepeatInscriptions
    • 🎨ord_getInscriptions
    • 🎨ord_sendInscriptions
    • πŸ”²runes_getBalance
    • πŸ”²runes_transfer
    • πŸ”²Mint Runes
      • runes_estimateMint
      • runes_mint
    • πŸ”²Etch Runes
      • runes_estimateEtch
      • runes_etch
    • πŸ”²runes_getOrder
    • πŸ”²Speed up a Rune Mint or Etch order
      • πŸ”²runes_estimateRbfOrder
      • πŸ”²runes_rbfOrder
  • STACKS METHODS
    • πŸ”΄stx_getAccounts
    • πŸ”΄stx_signMessage
    • πŸ”΄stx_signStructuredMessage
    • πŸ”΄stx_transferStx
    • πŸ”΄stx_signTransaction
    • πŸ”΄stx_callContract
    • πŸ”΄stx_deployContract
  • GUIDES
    • Verify Bitcoin message signatures
    • Creating Bitcoin PSBTs
    • πŸ“±Mobile Integration
    • Next.js support
  • RESOURCES
    • App Template
    • Demo App
    • Changelog
    • Github Issues
    • Developer forum
    • BIP322
Powered by GitBook
On this page
  1. Connecting to the wallet
  2. Connect to other wallets

Manage a user's default wallet

PreviousConnect to other walletsNext[Legacy ⚠️] getAccounts

Last updated 1 year ago

For a fine grained control over a user's default wallet, Sats Connect provides utilities to manage the default wallet.

Note that default wallet selection is handled automatically when using methods

  • Users are automatically prompted to choose which wallet they'd like to use if they haven't done so yet.

  • The wallet they choose is set as the default wallet for future operations.

  • the getDefaultProvider() method lets you fetch the user's default connected wallet

  • the setDefaultProvider() method lets you set the user’s default connected wallet

The following snippet shows how to manage a user’s default wallet:

import { getDefaultProvider, setDefaultProvider } from "@sats-connect/core";
import { loadSelector, selectWalletProvider, type Config } from "@sats-connect/ui"

async function example() {
  const defaultWallet = await getDefaultProvider();
  
  if (defaultWallet) {
    return businessLogicWith(defaultWallet);
  }
  
  loadSelector();
  const config: Config = { /* ... */ };
  const selectedWallet = await selectWalletProvider(config);
  await setDefaultWallet(selectedWallet);
}

Wallet.request