Docs Menu

Docs

How To Run Income Expense Balance Report

Use the Income vs Expense branch in Finance Reports to review a transaction-level running balance across income and expense records, then export the current ledger as CSV.

Search docs

Search by workflow, module name, or operational keyword.

Documentation search is ready.

Last updated: April 4, 2026

This guide explains how to use Income vs Expense inside Finance Reports to review the combined transaction ledger across income and expense records with a running balance.

Best for

Finance leads, auditors, and decision-makers who need one running ledger instead of separate grouped income and expense totals.

Requires

Access to Reports, permission to view finance reports, and posted income and expense data inside the finance workspaces.

Result

You can compare money in and money out on one report, follow the running balance row by row, and export the current ledger as CSV.

Before you start

  • Treat this report as a running ledger, not a simple monthly summary.
  • Confirm the report window first, because the ledger is built from all matching income and expense rows inside the selected dates.
  • Use Income Group or Expense Group instead if you need grouped subtotals by head first.
  • Expect the table to show a valid empty state when the selected period has no matching transactions.

Important: the current implementation merges rows from the finance income and expenses tables, sorts them by date, and calculates a running balance on the report itself. This is why the table behaves like a ledger rather than a monthly comparison card.

Reports -> Finance Reports -> Income vs Expense

Step 1: Open Finance Reports and switch to Income vs Expense

Open Finance Reports from the Reports menu, then select Income vs Expense.

This branch stays inside the same shared finance console as:

  • Daily Collection
  • Income Group
  • Expense Group
  • Payroll Summary

You still use the same shared:

  • Export CSV
  • Refresh
  • From Date
  • To Date

Step 2: Load the report for the target date window

Set the date range and click Apply.

The backend then:

  • loads matching income rows
  • loads matching expense rows
  • combines both result sets
  • sorts them by date
  • calculates the running balance from top to bottom

This means the branch answers a different question from the grouped tabs. It is better for balance tracing than for category ranking.

Step 3: Read the balance cards before reading the ledger

The top summary cards show:

  • Total Income
  • Total Expense
  • Net Total

Use these three values first to understand the overall direction of the selected period before reading the detailed rows.

Finance Reports on the Income vs Expense tab with date filters, summary cards for total income, total expense, and net total, plus the running-balance table in the local report state.
The Income vs Expense branch shows one running ledger with balance cards above it. The local environment can still show a valid empty state when no income or expense rows match the selected period.

Step 4: Read the running ledger row by row

The current table includes:

  • Date
  • Name
  • Income Expense Head
  • Description
  • Income (Money In)
  • Expense (Money Out)
  • Overall Balance

Use the rows to answer questions such as:

  • Which transaction changed the balance most?
  • Did a specific expense push the balance negative?
  • Which head or note explains a sudden change in the running total?

Because the balance is cumulative, later rows depend on the earlier ones in the same result set.

Step 5: Export the ledger only after the filters are final

Use Export CSV after confirming the selected date range.

The export includes the current ledger columns and ends with a grand-total row for:

  • income total
  • expense total
  • net total

If you change the date range and export again, you are exporting a different ledger.

Verify the result

Use this checklist after loading the balance report:

  • confirm the branch is Income vs Expense
  • confirm the date range matches the intended reporting window
  • confirm the summary cards align with the visible rows
  • confirm the running balance changes logically from one row to the next
  • confirm the CSV export is taken only after the ledger state is final

Expected result: you can review one combined finance ledger, understand total money in versus money out, and follow the running balance across the selected period before exporting the result.

Troubleshooting

IssueLikely causeWhat to do
The ledger is emptyNo income or expense rows match the selected date rangeBroaden the date range or confirm source transactions exist
The balance direction looks wrongOne side of the finance data is missing or the date range is incompleteCheck the source income and expense entries for the same period
You expected grouped totals by headThis branch is a running ledger, not a grouped reportUse Income Group or Expense Group for grouped subtotals
The export does not match the screenThe date range changed before exportRecheck the active range, then export again
The table is harder to interpret than expectedToo many mixed transactions are in one windowNarrow the date range to one week, one month, or one audit slice

Related docs