Exporting the extended public key (xpub, ypub, zpub) from Ledger, Trezor, Blockchain.com, Enjin, Trust, Jaxx, and other wallets.
When importing your wallet to Koinly you may notice that only some transactions are imported (or none at all) - this is common for wallets like BTC, LTC, etc., since they use multiple public keys for the same account.
Which integrations require an xpub?
Any blockchain that generates a new address every time you want to receive a transaction using the UTXO protocol and you will need to find the xpub key for it in order to import all transactions automatically.
Examples of blockchains using the UTXO model:
Bitcoin, Bitcoin Cash
Litecoin
Dogecoin
Dash
DigiByte
Cardano
Note that your xpub key is different for every single blockchain so you will need to export it separately for all coins that you are transacting with.
Some wallets will show you your xpub easily while others don't show it at all. You can always use your recovery phrase to figure out the xpub key for any wallet. More on this at the end of this tutorial.
Which integrations don't require an xpub?
Ethereum (ETH)
EVM-based chains
Polygon, Binance Smart Chain, Avalanche C-Chain, Fantom, Cronos, Arbitrum, Optimism, Ethereum Classic, etc.Other chains include:
Solana, Cosmos-SDK chains (Cosmos, Osmosis, Stargaze, Juno), XRP, Algorand, BNB Chain, Icon (ICX), Lisk, Nano, NEM, NEO, Ontology, Tezos, Tron, VeChain, Waves, and more
For these blockchains find your public address (your "receive crypto" address) from any of your transactions and enter it on Koinly.
Getting the xpub from your hardware/software wallet
Here are some examples of how you can find your xpub key depending on the wallet you're using.
Trezor:
Your xpub/zpub is easily accessible via the Trezor Suite. For more information, refer to:
Ledger
Ledger Live displays your "generic xpub" only, no matter if you used Legacy, Segwit, or Native Segwit addresses (starting with 1***
, 3***
and bc1q***
, respectively).
Find your "generic xpub" as per the instructions in the article below:
βhttps://support.ledger.com/hc/en-us/articles/360011069619-Extended-public-keyAnd then convert it to ypub (if you were using
3***
addresses) or zpub (if you were usingbc1q***
, addresses) using an online tool such as this:
βhttps://jlopp.github.io/xpub-converter
π‘ Note: It's not currently possible to generate an xpub for Taproot addresses right now (bc1p***
). If you are using Bitcoin with the newest upgrade, you need to use the CSV export or input all the single-use addresses to Koinly (you can add them all to the same wallet in Koinly).
Blockchain.com Wallet
You can view your xpub by:
Go to "Wallets and Addresses"
Clicking "Manage" next to the wallet you need
Choose Segwit/Legacy
Click "Manage"
Click "Show xPub"
Enjin
Tap on the BTC on the main screen to see your BTC XPUB/YPUB/ZPUB.
See full instructions on enjin.io help center:
Keepkey
Connect your KeepKey with the Electrum wallet. Then from the top menu choose Wallet > Information.
Coinomi
Click on Settings > Export keys. If you dont see this option try Account details
Trust Wallet
Update 2022:
βIt looks like Trust Wallet has stopped providing xpub keys. If you cannot follow the steps below to export your xpub key anymore then you can follow the guide at the bottom of this page.
First, you need to get the Account Public Keys.
This information can be found by going to the Wallets list under Settings.
Tap on the icon at the right of the wallet. Then tap on Export Account Public Keys.
For full instructions, see:
What if my wallet doesn't provide an xpub at all?
Some wallets don't show give you the option to export an extended public key at all. These include:
Jaxx
BRD (Bread wallet)
For these wallets, you can use the recovery phrase method described below.
Generating your xpub key from your recovery phrase
Generating the xpub yourself using your private seed phrase is the only way to obtain an extended public key for wallets that do not support it.
π΄ Warning: This method involves your recovery phrase so you should ensure that you are using a safe browser and taking every safety precaution.
Find your recovery phrase, this is usually the 12-word password you received when setting up your wallet.
Visit https://iancoleman.io/bip39/
βFor added security, you can right-click anywhere on the page and click "Save page as" then save it to your desktop and disconnect from the internet.
βAfter that close your browser and open the file you just downloaded. This is an offline version of the webpage
βYou can also run this page on a computer without an internet connection (i.e. on TailsOS)Enter your seed phrase in the BIP39 Mnemonic field
Select the Coin that you want to generate the xpub for.
Now select the BIP 44 tab under the Derivation path if your wallet is BIP44 compliant (most wallets are) or BIP32 tab if it is not (ex. BRD wallet).
Some Coinbase Wallets use BIP84.For BRD wallet: Enter m/0' in the BIP32 Derivation Path field
For BIP44 and BIP84 wallets: Copy the Account Extended Public Key. This is your xpub.
For BIP32 wallets: Copy the BIP32 Extended Public Key. This is your xpub.
Repeat the process for all other coins in your wallet (just need to change the Coin field, the others are the same)
Once you have your xpub, just create a synced wallet on Koinly and enter your key into it.
Can't see any data when entering the xpub?
If you still can't see any data after importing an xpub to Koinly:
You may have imported an xpub while you need a ypub or a zpub - see our instructions for Ledger above.
Your wallet uses a custom derivation path we don't support and you need to use CSV files instead.
Check walletsrecovery.org for an overview of derivation paths used by different wallets