I'm in needs of help moving funds from an legacy address, single sig: I exported my Coldcard's xpub to Bluewallet. Bluewallet derived an address from that xpub onto which I received funds. Unfortunately, Bluewallet gave me a legacy address and I didn't notice. I should've given it the zpub, I know better now.

Now I like to move that BTC. I exported the xpub to Sparrow to craft the psbt but Coldcard refuses to sign saying "Failure. My XFP not involved".
Sparrow wallet is watch-only, m/0'/0'/0' (I tried as well m/44'/0'/0'/0', m/84'/0'/0'/0'), fingerprinted.

Alright, I created a second psbt with the original culprit Bluewallet but Coldcard doesn't like to sign this psbt either as "m/44' led to wrong pubkey for input#0" and this is where I need help.

What does Coldcard need from me now to sign the psbt?

This watch-only Bluewallet always has been on derivation path m/44'/0'/0'/0' ever since, I didn't interfere with the xpub import to begin with, with these settings it got the idea to give me a legacy address. How come even Bluewallets psbt isn't pleasing the Coldcard? Thank you for your help.

  • I am going through the same problem... How did you solve it (if you did :-)).
    – Jikoun
    Commented Apr 3 at 20:06
  • Hey, I solved it by loading the seed into Electrum, nothing else worked. If you have the same exact problem, then do this: when recovering in electrum, choose legacy and set the derivation path to m, no numbers, just m Commented Apr 5 at 15:58

2 Answers 2


It sounds like you imported only the xpub without the information that identifies where the xpub came from. This information, known as origin information, contains the fingerprint of the master key that derived your xpub, and the derivation path required to derive the xpub.

Coldcard refuses to sign saying "Failure. My XFP not involved".

This indicates that the PSBT is missing the origin information needed for the Coldcard to determine whether a key was derived from the device's master key. Since the Coldcard cannot store all keys that can be derived, it relies on the origin information being present and accurate. It checks to see whether the given master key fingerprints (which it calls XFP) match its own fingerprint, and if they do, it will try to derive the key with the derivation path contained in the PSBT.

The best possible solution is to import the xpub with the origin information. However I am not familiar with BlueWallet so I cannot provide instructions for how to do that.

You can also try using a different wallet software that does import with the origin information or provides facilities to setup an existing hardware wallet. I believe Sparrow and Electrum are able to do that.

Lastly, as you stated in a comment, you can import the seed itself. However as this puts the seed in use on a hot device, I would not recommend it as you then lose the benefits of using a hardware wallet.


just recover your wallet with a Trezor wallet then you can sign it with no issues, coldcard functions weird sometimes

  • Your answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.
    – Community Bot
    Commented Dec 27, 2023 at 21:27

Not the answer you're looking for? Browse other questions tagged or ask your own question.