Understanding Derivation Paths and Xverse Wallet Compatibility

What are Derivation Paths?

Derivation paths are sequences used to generate a hierarchy of keys from a single seed phrase in hierarchical deterministic (HD) wallets. This allows for the creation of multiple addresses and private keys from one root seed, providing both convenience and security.

Why Derivation Paths Matter

Different wallets use different derivation paths to generate addresses. If two wallets use different derivation paths, the addresses and private keys they generate from the same seed phrase will be different. This means that importing a seed phrase into a wallet that uses a different derivation path may not give access to the expected addresses or funds.

Common Derivation Paths

BIP-44 specifies a schema for hierarchical deterministic wallets, and other BIPs extend this schema for different address types as follows:

m / purpose' / coin_type' / account' / change / address_index

Some standard derivation paths for Bitcoin wallets:

  • Legacy (P2PKH): m/44'/0'/0'/0 (address starting with 1)
  • Segwit (P2WPKH): m/49'/0'/0'/0 (address starting with 3)
  • Native Segwit (Bech32): m/84'/0'/0'/0 (address starting with bc1q)
  • Taproot (Bech32m): m/86'/0'/0'/0 (address starting with bc1p)

Before importing a wallet, check the derivation path used by your current wallet, ensure it matches one of Xverse’s supported paths.

Derivation Paths in Xverse Wallet

Xverse supports Native Segwit, Nested Segwit and Taproot derivation paths with address_indexchanging for every Xverse account. Native Segwit and Nested Segwit address and used for managing your Bitcoin for payment purposes, you can select either to be your preferred Bitcoin address from Settings. Taproot address (or Ordinals address) is used for storing other assets on the Bitcoin Network (ordinal inscriptions, rare sats, runes and BRC-20…).

Here are how the paths look like with the addresses in Xverse accounts:

First account:

  • Nested Segwit address: m/49'/0'/0'/0/0
  • Native Segwit address: m/84'/0'/0'/0/0
  • Ordinals address: m/86'/0'/0'/0/0

Second account:

  • Nested Segwit address: m/49'/0'/0'/0/1
  • Native Segwit address: m/84'/0'/0'/0/1
  • Ordinals address: m/86'/0'/0'/0/1 

Importing Other Wallets into Xverse

Understanding derivation paths is crucial for managing and importing wallets. When importing wallets into Xverse, compatibility depends on the specific derivation paths used. Grasping this concept ensures smooth transfers and secure wallet management across different platforms.

Note

  • Nested Segwit and Native Segwit wallets with the same derivation paths to Xverse can be imported to Xverse wallet seamlessly.
  • Taproot wallets with similar derivation paths can also be imported to Xverse. However, in order for the funds to be reflected in total balance & spendable, users need to use the Recover Assets tool to send them to the Payment address. You can refer to: How to Recover BTC from Your Ordinals Address (Taproot) in Xverse?
  • Wallets with different derivation paths are considered incompatible and cannot be imported to Xverse. It is best to transfer the assets over to the newly created Xverse wallet.