GnuCash uses a double entry accounting system. This means in every transaction there are always at least two accounts involved.
There are 5 types of accounts where everything should be placed:
- Things you own. Example: cash in your bank account.
- Things you owe. Example: your mortgage.
- Overall net worth.
- Increases the value of your accounts. Example: your paycheck.
- Decreases the value of your accounts. Example: the cost of the dinner last night.
What is the relationship between them? Firstly, equity is defined by assets and liability. That is, your net worth is calculated by subtracting your liabilities from your assets:
Assets - Liabilities = Equity
Furthermore, you can increase your equity through income, and decrease equity through expenses. When you receive a paycheck you become “richer” and when you pay for dinner you become “poorer”.
Assets - Liabilities = Equity + (Income - Expenses)
This equation must always be balanced, a condition that can only be satisfied if you enter values to multiple accounts. For example: if you receive money in the form of income you must see an equal increase in your assets. As another example, you could have an increase in assets if you have a parallel increase in liabilities.
Note that you can also work in a single entry mode by disabling Settings > Transactions > Activate Double Entry.
Extracted from GnuCash Tutorial and Concepts Guide: Accounting Concepts (GFDL see this).