| Yeah, I think a more intuitive way is to replace credit and debit with State and Change as the pair of things in double-entry. It means that you don't have to swap meanings based on context and can use negative numbers intuitively. State Accounts track your net worth Assets: what you own
Liabilities: what you owe
Change Accounts track why your net worth changes Income: what you've earned
Expense: what you've spent
The accounting equation that follows is ∆ State = ∆ Change: Assets - Liabilities = Income - Expense
Selling lemonade is +$5 Asset balanced by +$5 Income.
If you substitute into the equation, it's: $5 Asset = $5 IncomeTaking out a loan is +$10 Asset balanced by +$10 Loan.
In the equation: $10 Asset - $10 Liability = $0. In general, say you have a +Asset action, to balance the equation you can do it 4 ways: +Asset -Asset aka swapped for equal value
+Asset +Liability aka took out a loan
+Asset +Income aka sold something
+Asset -Expense aka got a refund
I've left out Equity as a separate account type since you can just treat it mathematically as a Liability account.This is the system we've implemented in our ledger API (https://fragment.dev) |
Don't you mean -Asset here?