I'm not a fan of debits / credits for folks not going into accounting properly.
Porter has a book - the alternatives to debits and credits, using financial information.
Basically accounting is an equation you keep in balance.
Assets = Liabilities + Equity
You can understand how any transaction "posts" by keeping this equation in balance (or solving it).
You borrowed $100K? Your liabilities are + 100K, and cash (an asset) is also + 100K. Books in balance.
(Change in) Equity = Income - Expense
Extends this formula to your profit and loss statement if needed. Errors accumulate in the balance sheet as well.
Note that balance sheet is more important. With two balance sheets at different times I can see my net income for that period (no categorization of income / expense needed).
I find what you have said harder to follow than just knowing debits are positive and credits are negative.
The A=L+OE formula is a poor model for understanding accounting when the accounts dont fall neatly into those 5 high level categories. And unfortunately you almost immediately encounter accounts of that nature (accumulated depreciation and loans are great examples).
That's a drastic oversimplification. Typically, both debits and credits are entered into an accounting program as positive numbers, and it is the nature of the account being debited or credited that determines whether the number is added to or subtracted from the account balance.
Or, as the old joke goes, an accountant for years would always start the work day by opening a locked desk drawer, removing a piece of paper, and studying it for a moment before returning it to the drawer. After his sudden and unexpected death one day, one of his staff had to satisfy their curiosity and opened the drawer to see what was written on the paper. It said, "debits to the window, credits to the door".
To get it, you need to know that by tradition, debits are entered on the left-hand side of the entry form, and credits on the right hand side.
> That's a drastic oversimplification. Typically, both debits and credits are entered into an accounting program as positive numbers, and it is the nature of the account being debited or credited that determines whether the number is added to or subtracted from the account balance.
This is both technically correct and incorrect. You're right about the nature of debits and credits, but practically every accounting software I've ever used (I'm a CPA) represents credits as negative numbers. The software just assumes that the user knows that it's actually a credit, not a negative number.
"A credit is an accounting entry that either increases a liability or equity account, or decreases an asset or expense account. It is positioned to the right in an accounting entry."[1]
So if you always represent your credits as negative numbers, then you have to (counter-intuitively) subtract it from Liab/Eq/Inc accounts that you are increasing, or add it to Asset/Exp accounts that you are decreasing.
I wrote my own double entry accounting program back in the 1980s using a DOS relational database program and used it successfully for the next twenty years (before I switched to using Quickbooks) for both personal and business purposes. Both programs (mine and QB) represent credits as positive numbers.
This highlights the stumbling block that programmers have when trying to understand debits and credits. You should not at all be trying to classify your accounts as Liab/Eq/Inc, its simply an account with a debit or credit balance.
Its why i dislike the accounting equation. Its leads people to really overvalue how important account types are.
On the database level you dont care at all about it. The accounts are simply another text column and the bare minimum has no further information.
Only when trying to present the accounts in a P&L or something do you try to ascertain what the type is. Even then the only essential information is whether the account is debit or credit positive, and maybe whether it is a P&L or balance sheet account.
Its at this point here that you could optionally classify the account as Liab/Eq/Inc to give you some nice headers for the financial reports but to be honest you could just throw that back on the user and let them classify their own headers. Accountants are normally better at knowing what their financials should look like and forcing them to comply with your account types is probably a limiting and frustrating anti feature.
All accounts "fall neatly" into the broad categories, though. There are sub-categories for accounts with contrary normal balances for a given type of a given account category but they still summarize into their parent category.
A contra-equity account (like "Owner draws") has a normal debit balance. That's contrary to the normal credit balance of an equity account. It still summarizes to equity and results in the owner's draws being debited from the owner's equity debit balance.
When I hear programmers talking about debits / credits like they're positive or negative I get a feeling that they're trying to re-invent a really simple "wheel" that they don't want to understand. It reminds me of wild gyrations programmers go thru w/ ORM's to avoid just learning some SQL.
They dont fall neatly at all. Yes all the accounts you have described can be categorised fairly easily but they are all pretty trivial examples.
Harder accounts are things like tracking inventory. Yes you have the easy "Inventory" account on the balance sheet, but what about the "Opening Balance", "Purchases" and "Closing Balance" accounts that live on the profit and loss. They are all debit positive accounts but two of those always carry a credit balance and should be presented as a negative on the P&L.
If you want to be pedantic then probably those 3 accounts combined make up an expense account. But accountants split them out to make the financials easier to process. And the account split into 3 sub accounts for better presentation doesnt fit into the broad categories, but its still normal practice.
What happens if I debit a loan account? Debits are not positive, a debit to a loan account is a negative that reduces it. If I issue a refund that might be a debit to an income account (that is a negative to the account total).
There are both debit and credit loans depending on who is loaning who. The two parties are the person recording the transaction and an external third party.\\
A debit to a loan account only reduces it if it is a credit loan. A debit to a debit loan account actually increases it (Think a bank giving further money to their customers).
If you are debiting a loan account it means the external third party is giving cash to the person recording the transaction.
If you issue a refund then you are giving cash to the external third party so its a negative (credit). Then the positive side of the journal is against your income account (reducing your income).
Debits and Credits are not positive and negative, but they are a concept that was invented before negative numbers existed and are perfectly represented by positive and negative numbers.
Porter has a book - the alternatives to debits and credits, using financial information.
Basically accounting is an equation you keep in balance.
Assets = Liabilities + Equity
You can understand how any transaction "posts" by keeping this equation in balance (or solving it).
You borrowed $100K? Your liabilities are + 100K, and cash (an asset) is also + 100K. Books in balance.
(Change in) Equity = Income - Expense
Extends this formula to your profit and loss statement if needed. Errors accumulate in the balance sheet as well.
Note that balance sheet is more important. With two balance sheets at different times I can see my net income for that period (no categorization of income / expense needed).