I have been having dreams for the past month about BTC and an old computer I had bought Bitcoin on a long, long time ago. I just found said computer in my grandmother's basement. Booted it up and lo and behold, found a wallet.dat file.

I abandoned Bitcoin a while ago as when I tried spending the Bitcoin, I couldn't for whatever reason.

Well folks, here is the reason:

Status: 0/unconfirmed, not in memory pool Date: 4/9/2557 BE 03:53 To: (removed) Debit: -200.00000000 BTC Net amount: -200.00000000 BTC Transaction ID: (removed) Transaction total size: 192 bytes Output index: 0

I have two transactions like this. I need to know how to retrieve these coins.

  • 3
    This isn't a site to look for people to hire. You can ask about how to solve it yourself, but you'll need to give more information. Jan 22, 2018 at 4:57
  • I'm not hiring anyone, it is a good gesture for someone's time and help. I have a potential $3M windfall here so trying to get assistance. Do you blame me? What info do i need to add?
    – merger
    Jan 22, 2018 at 5:02
  • Nothing to do with blame, it's just that Stack Exchange doesn't think that posts offering money are a good idea. See meta.stackexchange.com/questions/25615/…. I have edited this out for you. Jan 22, 2018 at 5:12
  • 2
    You've posted something about a transaction but it's unclear what it's about. Is this an incoming transaction that you want to get confirmed, or an outgoing transaction that you want to cancel? It would really help a lot if you were willing to post the transaction ID. Jan 22, 2018 at 5:13
  • 2
    Just extract every address from your wallet and see if any have a non-zero balance. Then, for those, extract the private keys. Look for the pywallet.py program that will extract addresses and keys from a wallet.dat file. Jan 22, 2018 at 6:05

4 Answers 4


Before you do anything, you probably want to make a couple backups of the wallet.dat. Check that the backups are in order before continuing.

zapwallettxes only works on the start up of Bitcoin Core. First shut down your bitcoin-qt, then open a terminal.

bitcoin-qt -zapwallettxes=2

If this doesn't start bitcoin-qt, you might need to go to the applications folder. You switch to the installation directory:

cd Applications/Bitcoin-Qt.app/Contents/MacOS/

And then run the application from that folder:

./Bitcoin-Qt -zapwallettxes=2

This should start Bitcoin-Qt, but delete unconfirmed transactions from your wallet. After it loaded completely, check whether the transaction is still listed. The transaction should no longer be listed and your balance should show the full amount. After this you should be able to normally start Bitcoin Core.

If the transaction is still shown, and you're running a very new version of Bitcoin Core, it might have been in your Bitcoin Core's own memory pool i.e. the set of unconfirmed transactions as well.

In that case, you'll need to delete the persisted memory pool.

By default the data directory on Mac is:

~/Library/Application Support/Bitcoin/

In that folder, you should find a mempool.dat. After you shut down and before you restart with zapwallettxes=2, delete the mempool.dat (and no other files).

Bitcoin Core will probably prohibit you from creating new transactions until it is synchronized with the network.

  • Murch, thank you for this info brother. To confirm, do this upon the full 150GB being downloaded correct?
    – merger
    Jan 22, 2018 at 7:19
  • @merger: I think it should work before you are synchronized. I'll keep my fingers crossed for you. If you actually end up with a load of money, I would suggest that you read this post on reddit: reddit.com/r/Bitcoin/comments/7dlqtk/200_btc_telling_my_wife/…
    – Murch
    Jan 22, 2018 at 7:29
  • why wouldn't he go just take the addresses from this pending tx (bitcoin-cli getreceivedbyaddress $ADDRESS and bitcoin-cli dumpprivkey $ADDRESS ), use this priv key in e.g. Electrum, and create new tx? Wouldn't this be much easier? Jan 22, 2018 at 10:22
  • @pebwindkraft: Feel free to post another answer... Jan 22, 2018 at 15:07

I first thought, it is bitcoin wallet (I'm still unclear), then one could take the addresses from this pending tx

bitcoin-cli getreceivedbyaddress $ADDRESS
bitcoin-cli dumpprivkey $ADDRESS

and use this priv key in e.g. Electrum, and create new tx. After re-reading all the comments, it turns out that it might be a multibit HD wallet.

As multibit is now discontinued, there was a video on their web page, how to convert into Electrum.

Multibit HD: https://youtu.be/E-KcY6KUVnY

Also on their website: If you are having problems logging into Multibit, we created a utility to export the keys from your Multibit wallet file. Instructions for how install and use it are at https://github.com/Multibit-Legacy/read-multibit-wallet-file

IMHO, best approach is

1.) try the method from the video
2.) do not oversee the comment from David Schwarz :-)
3.) try to export the priv keys from MultiBit HD Wallet 
    - see this thread as well: [How to extract Multibit HD Keys][1]
4.) read the instructions for how install and use their tool ...

Hope this helps to get to the keys or funds. Champaign?


download the full blockchain and import your wallet.dat file.

Congrats btw. Hope you get it.

  • I am going to download the full blockchain and cross my fingers. Are you familar with the -zapwallettxes?
    – merger
    Jan 22, 2018 at 6:15

Check this out opening an old wallet.dat

Otherwise - AFAIK all wallet data should be bitcoin forward version compatible. This would mean that if you use the latest bitcoin executable it should be able to find the transactions in your wallet. If not you might have to use the version of bitcoin client that you used when you made the purchase. This would involve downloading the source code and building it for your platform. Then copy the wallet.dat onto your data directory location check the GUI or some RPC calls to see balance.

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