This is my mental model and how I built the backend of a budgeting web app. Two types of accounts: - assets (you want your balance to be more than 0) - liabilities (you want your balance to be 0) Two types of entries: - debits (increase balances of assets, decrease balances of liabilities) - credits (increase balances of liabilities, decreases balances of liabilities) Rules: - A transaction represents a transfer of v…
I think in this problem hides two mistakes:
- Zero liabilities is not a reasonable goal for most people.
- There's an equity account type also. (Also income and expense accounts.)