"I lost my OpenBazaar installation due to computer failure and need to restore my store from my seed."
"I'd like to retrieve the funds in my wallet and don't have access to OpenBazaar."
By design, your mnemonic seed is used to generate all of the keys used on OpenBazaar. This means that you are able to recover certain aspects of your OpenBazaar store if you have these words available.
The information below can be used to help recover key parts of your OpenBazaar store. These steps are for advanced users. Ensure you have a reliable backup of your store before attempting to migrate your data.
Restoring access to your Wallet
As of version 2.0, your mnemonic seed uses BIP39 words which can be imported into any BIP44 compatible wallet. When importing your mnemonic seed words into these wallets, the option to use BIP39 may not be a default and might require clicking a checkbox.
Depending on which currency you're restoring, you will need to modify the "derivation path" that the wallet uses. Ensure you use the correct derivation path for your currency as described below:
Note: LTC uses the index `1` which conflicts with the data in SLIP-044, but is correct. Some clients (like Electrum-LTC) may also ask what type of keys are being generated, you should choose "Legacy".
If you've followed these steps, your funds and transaction history should be accessible inside the wallet. If your expected funds are missing along with any transactions showing funds being added or removed, you may need to double-check your steps.
Restoring access to your Network Identity (Peer ID)
Your store's listing, private messages and orders are all associated with your Peer ID, a unique identity to refer to your node on the network. When you create a new node, a new identity is created on your behalf. You can override which identity is created by using the restore feature of the daemon.
In order to use restore, you must:
- find the location of your OpenBazaar daemon (binary_path)
- find the location where you want to restore your identity's data folder (restore_path)
- have your mnemonic seed handy for the next step (mnemonic)
- run restore like this:
binary_path restore -d restore_path -m "mnemonic" [-t]
A full example of this call (on testnet, using tor, with an encrypted datastore) might look like:
/Applications/OpenBazaar2.app/Contents/Resources/openbazaar-go/openbazaard restore -d /Users/Person/openbazaar-restore -m "word1 word2 word3 word4 word5 word6 word7 word8 word9 word10 word11 word12" --testnet --tor -p EnCryPtEd_DB_pa$$w0rd
This will start a process that regenerates your existing Peer ID, and will then attempt to capture as much of the existing state which may exist on the network. This process will run indefinitely as the whole network can never be known to any one node due to its distributed nature. As a best effort, the node will continue crawling the network looking for data which belongs to the identity it just restored. Allow the restore to run for as long as is feasible for the user.
You can expect the restore to (possibly) recreate:
- Peer ID (guaranteed)
- Profile (best effort)
- Listings (best effort)
- Followers/Following (best effort)
If you have a prior backup of the same user, it is possible that parts of this backup can be dropped "on top of" this restored folder. This restore method is entirely unsupported and should be a last ditch effort. Ensure the node is not running when copying the files over. The following folders within the backup data could be copied over into the restored data folder:
- a file ending in .onion_key
(this is your tor key)
./datastore/*(this contains the IPFS and OB datastores)
./datastore_spec(this contains the IPFS datastore specification)
./root/*(this contains your store's public state, including your profile, listings, followers, etc)
./repover(this contains the OB schema version and controls which migrations are executed on your OB data)
./version(this contains the IPFS schema version and controls which migrations are executed on your IPFS data
./config(this contains OB startup config settings)
If you can start your node, you should see the entire store (including past orders, messages, etc) intact.