I generated a wallet using https://moneroaddress.org/, and want to get that wallet to work using monero-wallet-cli (or anything else that I can actually spend monero on). What's the best way to do that?

Currently the client says that I have no balance (after having run restore-deterministic-wallet, and so I assume it can't find the wallet.


If you've imported it by running the monero-wallet-cli --restore-deterministic-wallet, it should be ok. To check, just type in the address command while your wallet is running and compare the address vs. the one you used. If they match (and there's no reason they wouldn't) you will be able to see your balance after refreshing the wallet and spend your Monero.

However, note that for the correct balance to show, your wallet needs to search the entire* blockchain for Monero belonging to you. The command to do it (if not done automatically) is refresh. This is because Monero is private and you can't just look up the balance of an address like people are used to doing with Bitcoin, because your address never actually appears on the blockchain.

*To make syncing the wallet faster, and if running version 0.10 of the sofware, you can start the CLI wallet with --restore-deterministic-wallet --restore-height <h> arguments, where <h> is the block height from which it will start the refresh.

You can follow these steps:

  1. Start the Monero daemon and keep it running. This is your node which needs to be synced with the network before you can make any transactions. You could connect to a remote one to avoid this if you need to, but then refreshing will be slower and it is less private.
  2. Find out the block height from when you created your wallet. You can do this by filtering the blocks by date on a block explorer, and writing down the block height of a day before you created the wallet or received your first Monero to it.
  3. Start the CLI wallet with --restore-deterministic-wallet --restore-height <h> arguments, where <h> is the block height from which it will start the refresh. Note that if you specify a block height which is after you first received Monero, you will not see those because the wallet will not be aware of them.
  4. If your daemon is running, the wallet should start to refresh automatically (to make it refresh manually, just type in the refresh command), and shortly after, you will see your transaction appear and the wallet will show the correct balance. From there, you can use the transfer command to send your Monero.

It will almost definitely be able to find the wallet, however is your daemon updated on the blockchain to the point of which the balance changes?

If not, open your daemon and allow it to re-sync with the current blockchain.

After this, open your monero-wallet-cli and allow it to sync with the daemon... your balance should then be correct.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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