I currently manage my personal finances based on a single-entry bookkeeping. It turns out that it doesn't fit my needs in the long run. After learning about double-entry bookkeeping and researching how ledger-cli and gnucash implements this system, I would like to develop my own simplified version.

The system should

  • work for personal and small business bookkeeping. I think this is possible because double-entry bookkeeping scales.
  • have a minimum set of requirements. I like how ledger-cli does not require any specific account hierarchy. In other words, the system should be very flexible.

In general double-entry bookkeeping is already a very simple concept. You have 4 account types: Asset, Liability, Income, Expense.

But why do we need an Liability account type? As far as I know, a Liability account may be a credit card, where we take money from to buy stuff. It's actually very similar to an Asset account.

Would it possible to use one account type for Asset and Liability accounts?

If no, why? If yes, why does nobody do this?

  • 2
    I would say get a basic book on financial accounting. It will help a lot. Expense is a liability in accounting terms. There are different type of expenses in accounting. Income is an asset and surprisingly can be a liability too. All in double entry accounting. So get a book.
    – DumbCoder
    Apr 30, 2015 at 14:46
  • Did you try, bkper, an easy way to do bookkeeping? It is based on double entry bookkeeping with two accounts, and it covers exactly the matters you mention.
    – Jacobvdb
    Apr 19, 2017 at 13:39
  • 1
    @Jacobvdb I've actually developed an app for iOS and macOS by myself financesapp.net
    – brutella
    Apr 20, 2017 at 14:23

4 Answers 4


I'm a mathematician, not an accountant. But my feeling has been that the distinction between Asset and Liability is mainly a sign convention, and comes from a wish to avoid negative numbers.

Suppose you take out a loan for $1000 and deposit the proceeds in your bank account. Under normal accounting conventions, your bank account is an Asset and the loan is a Liability. After the loan, Bank has a balance of 1000 and Loan has a balance of 1000. You can compute your net worth by adding all Assets and subtracting all Liabilities (so in this case your net worth remains 0).

If you treat Loan as an Asset account, then after taking out the loan, you should give it a balance of -1000. Under this convention, you have lots of negative numbers to deal with everywhere, which I suspect early accountants would have found inconvenient. The Asset/Liability convention means you only need to deal with negative numbers in unusual situations (overdrawn bank account, overpaid loan, etc).

Likewise, in theory you could treat Expense accounts as negative Income.

But I'm not sure why you feel the need to reinvent the wheel by "simplifying" double-entry accounting like this. The standard conventions are not that complicated, and their major advantage is that they're standard: other people will be able to understand your books if they ever need to. (Say you want to hire somebody to do your taxes at some point: if your books are kept in your own idiosyncratic system, their job will be at best error-prone and at worst impossible.)

It's a bit like a proposal to simplify English spelling: shur, a sistum waar yu rit lik this mit bee simplur in sum abstrakt sens, but if nobudee els can reed it eezulee, it izunt ackshyualee veree yusful.

  • 1
    I find it very straight forward how ledger-cli solves this. Everything is an account. Transactions take money from one account and put it into another one. Like in the real world - you take money out of your pocket and put it into a expense account which stands for the thing you purchased. And liability accounts have negative balances - similar how credit card accounts work. In the end it works like traditional double-entry bookkeeping but without avoid negative values.
    – brutella
    Apr 30, 2015 at 15:03
  • 1
    Your comment regarding the inconvenience of negative numbers, and the resulting asset and liability account types, I found very insightful.
    – Matt
    Nov 3, 2018 at 2:21
  • 1
    For what it's worth, I found I could read your last sentence easily. Mar 24, 2019 at 22:03
  • This doesn't make much sense to me. Double-entry bookkeeping already has two columns, Debit and Credit, for every account. You never need negative numbers even if you didn't have a Liability account because you can just record it in the opposite column under Asset.
    – IssaRice
    Mar 15 at 21:22
  • @IssaRice: That's true for amounts associated with a particular transaction. My point here is about the overall balance of the account, which is a single number not associated with a particular column, and how the standard convention results in this number usually being positive. Mar 16 at 23:17

Ditto Nate Eldredge in many ways, but let me add some other thoughts.

BTW there are not four types of account, but five. You're forgetting equity, also called capital.

Would it be possible to design an accounting system that does not have 5 types of accounts, maybe is simpler in other ways, and is internally consistent and logical? I'm sure it is. But what's the advantage?

As Nate points out, the existing system has been in use for hundreds of years. Lots of people know how it works and understand it.

I'd add: People have long since worked out how to deal with all the common situations and 99% of the odd cases you're likely to hit. If you invent your own system, you're starting from scratch. You'd have to come up with conventions to handle all sorts of situations. How do I record buying a consumable with cash? How do I record buying a capital asset with credit? How do I record paying off debts? How do I record depreciation? Etc etc. If you worked at it long and hard enough and you're a reasonably bright guy, maybe you could come up with solutions to all the problems. But why?

If you were approaching this saying, "I see these flaws in the way accounting is done today. I have an idea for a new, better way to do accounting", I'd say good luck, you have a lot of work ahead of you working out all the details to make a fully functioning system, and then persuading others to use it, but if you really do have a better idea, maybe you can revolutionize the world of accounting.

But, "The present system is too much trouble and I don't want to bother to learn it" ... I think that's a mistake. The work involved in inventing your own system is going to end up being way more than what it would take to learn the existing system.

As to, Aren't liabilities a lot like assets? Well, in a sense I suppose. A credit card is like a checking account in that you can use it to pay for things. But they're very different, too. From an accounting point of view, with a checking account you buy something and then the money is gone, so there's one transaction: reduce cash and increase office supplies or whatever. But with a credit card there has to be a second transaction, when you pay off the charge: So, step 1, increase debt and increase office supplies; step 2, decrease debt and decrease cash. Credit cards charge interest, well you don't pay interest to use your own cash. Etc.

One of the beauties of double-entry book-keeping is that every transaction involves a debit and a credit of equal amounts (or a set of debits and credits where the total of the debits equals the total of the credits). If you combine assets and liabilities into, whatever you call it, "balance accounts" say, then some transactions would involve a matching debit and credit while others would involve a positive debit and a matching negative debit and no credit. I'm sure you could make such a system work, but one of the neat built-in protections against error is lost.

There's a very logical distinction between things that you have or that others owe you, and things that you owe to others. It makes a lot of sense to want to list them separately and manage them separately. I think you'd pretty quickly find yourself saying, "well, we have two types of balance accounts, those that represent things we have and which normally have positive balances, which we list on chart A, and those that represent things we owe and which normally have negative balances, which we list on chart B". And before you know it you've just reinvented assets and liabilities.


It's possible, but wrong. Each component of the accounting equation serve its fundamental purpose. In accounting, there are no plus/minus signs in the account entries (although permitted) because the accounting equation and debits/credits define the mathematical structure.

Accounting is not math - it is build on top of the math with specific definitions and structure. Changing any premisses will deconstruct it, so it is no longer accounting - it is something else.

Assets are what you own. Liabilities are what you owe. There is simply no reason to mix them up in a bucket, since they would simply net to zero (ignoring equities, expenses, income). It is like saying you have nothing, but you do have a house just purchased for $100k (asset) AND a mortgage of $100k (liability). So here it comes the philosophical question: do you have a house and a mortgage, or do you have nothing? You do have a title of ownership for the house, and the bank has a title of ownership of the loan. So combining the two accounts, what would you call it? "The net result of things I owe and own"?

The reason why this is wrong is because it is not accounting. You are basically challenging the principles and notation of a science. It is the same as saying that you would like to use the plus sign + for fractions in math. It is wrong.

Why does nobody do this? Because it would make things more complicated. Merging assets and liabilities would require some other method to decoupling them. Minus and plus signs won't work because it would cancel them out, so you would need a third notation (say asterisk *) to indicate what is an asset and what is a liability.


Asset = Equity + (Income - Expense) + Liability

Everything could be cancelled out in double entry accounting.

By your logic, if the owner contributes capital as asset, Equity is "very similar" to Asset.

You will end up cancelling everything, i.e. 0 = 0.

You do not understate liability by cancelling them with asset.

Say you have $10000 debtors and $10000 creditors. You do not say Net Debtors = $0 on the balance sheet.

You are challenging the fundamental concepts of accounting.

Certain accounts are contra accounts. For example, Accumulated Depreciation is Contra-Asset. Retained Loss and Unrealized Revaluation Loss is Contra-Equity.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .