Practical money records

A worked cash-flow ledger: from opening balances to the monthly report

This fully worked example shows exactly how one month of ordinary money events affects two accounts and the income-and-expense report. Every amount is fictional and in Australian dollars. Follow the running balances, then copy the sample CSV to practise your own reconciliation offline.

01Start with two real balances

On the first day, checking contains AUD 1,200 and savings contains AUD 800. Record these as opening balances on their respective accounts. Combined starting cash is AUD 2,000. No salary has been received yet, so period income is zero. Treating those opening amounts as income would overstate what was earned during the month by AUD 2,000.

02Record income and move money without inventing income

A salary payment of AUD 1,800 arrives in checking. Checking rises to AUD 3,000, savings stays at AUD 800 and the period's income is AUD 1,800. Next, move AUD 400 from checking to savings. Checking becomes AUD 2,600 and savings AUD 1,200. The combined AUD 3,800 has not changed: a transfer has two account effects but no income or expense effect.

03Keep a promise to pay separate from money already spent

Groceries of AUD 75 leave checking, taking it to AUD 2,525. A rent bill for AUD 650 is now due. Adding the bill to a payment plan gives a useful commitment, but it does not change checking or the expense report. Only when the bank confirms the rent has left the account should the paid occurrence create one AUD 650 expense. Checking then falls to AUD 1,875. If a manual rent expense already exists, reconcile it rather than posting the same outflow again.

04Handle a refund and a small fee honestly

The shop returns AUD 15 of the grocery purchase. Checking becomes AUD 1,890. Associate that credit with the earlier grocery expense so net groceries are AUD 60, rather than presenting the refund as fresh salary or other ordinary income. A bank fee of AUD 3 then leaves checking, producing a final checking balance of AUD 1,887. If a fee accompanies a transfer, keep the transfer and fee separate so the fee alone appears as spending.

05Trace every balance change

Read the table from top to bottom. A plus sign means money entered that account; a minus sign means money left it. The planned rent row deliberately leaves both balances unchanged. Values are a teaching example, not a claim about a live user's account or an exchange rate.

Fictional AUD ledger with running account balances
EventChecking changeSavings changeChecking balanceSavings balance
Opening balances——1,200800
Salary received+1,800—3,000800
Transfer to savings−400+4002,6001,200
Groceries paid−75—2,5251,200
Rent planned, unpaid002,5251,200
Rent paid−650—1,8751,200
Grocery refund+15—1,8901,200
Bank fee−3—1,8871,200

06Reconcile the account total and the report independently

The final account total is AUD 1,887 in checking plus AUD 1,200 in savings, or AUD 3,087. The report should show AUD 1,800 of salary income and AUD 713 of net expenses: AUD 75 groceries minus AUD 15 refund, plus AUD 650 rent and AUD 3 fee. Net cash movement is therefore AUD 1,087. Add it to AUD 2,000 of opening cash and you get the same AUD 3,087. The AUD 400 transfer appears in account histories but not in income or expense. The unpaid rent plan was a forecast, not a second cost.

07Use the example as a repeatable check

First compare each ending account balance with an external statement or counted cash. If a balance differs, look for a missing movement, wrong account, duplicate entry or wrong date. Next check whether each movement has the right type: income, expense, transfer, refund or correction. Finally compare the report with the arithmetic above. The downloadable CSV contains only these fictional amounts. Save any copy containing your own records privately on your device and remove personal data before sharing it with support.

Download the fictional CSV example A local file with sample amounts only; no account sign-in or data upload is needed.