I'm messing around with the bitcoind daemon and I now stumbled upon accounts. As far as I now understand, my bitcoin installation has one wallet, which contains one or more addresses. In general, you will want to use an address to receive money on only once. So for every new incoming transaction I create a new address (getnewaddress). As I list my available addresses I see that each address also has an account, which is in my installation always defined as "" (empty). In the bitcoind API calls list I see a command called setaccount.

I now wonder though, what would I need an account for? Is that something similar to tagging emails (effectively grouping them together), or does an account entail something else?

What would be common use-cases in which I would want to use accounts?


Have you read the explanation on the Bitcoin wiki directly linked from the API calls list you already linked to?

I suppose the idea could be explained as the division of your wallet into sub-wallets called accounts. You can achieve the benefits of that by explicitly keeping separate wallets (if your bitcoin client allows that). Account issues are well explained in the wiki article I linked to. You probably do not want to use accounts as suggested there, though, for creating individual customer accounts to receive payments; see the section on account weaknesses of the same wiki article.

A hypothetical use case I could imagine would be wanting to separate your bitcoin expenses. Imagine you use your wallet for purchases relating to two different hobbies, two different donation-receiving public addresses, and miscellaneous expenses. By creating five accounts, one for each of these, you can more easily keep track of what you spend (or receive) for each purpose, without the need to create individual wallets.

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.