Financial statement reports
The Balance Sheet, Income Statement, and Trial Balance built from posted journals by account class.
Three reports read the posted general ledger. The Balance Sheet shows cumulative assets, liabilities, and equity at each selected period end. The Income Statement shows revenue and expense activity by period. The Trial Balance shows beginning and ending balances plus net debit or credit movement for one date range. All three use the same balance engine.
The reports are under Accounting and require accounting view permission. They are available after the company sets up accounting. Before that, every posting writes a Provisional journal, and the reports count only Posted and Reversed journals.
The three statements
The Balance Sheet and Income Statement divide the selected range into monthly, quarterly, or yearly columns. The Balance Sheet reads each column's cumulative ending balance; the Income Statement reads activity within each column. The Trial Balance keeps the selected range as one period and derives its beginning balance, net debit or credit movement, and ending balance.
Each account's incomeBalance value selects Balance Sheet or Income Statement. Asset, Liability, and Equity accounts belong to the Balance Sheet; Revenue and Expense accounts belong to the Income Statement.
Balances always exclude Draft journals. Only posted (and reversed) entries move a report, so an unposted entry sitting in the Journal Entries list has no effect on any statement until it posts. This is why the account ledger, the reports, and the period-close snapshots all agree.
How a balance is built
Every report starts from a single balance function that reads the posted ledger and returns three numbers per account:
Group (heading) accounts don't hold postings; their totals roll up from their children. Because a debit and a credit are stored with opposite signs, the roll-up is sign-aware by account class. Asset and Revenue accounts add to their parent; Liability, Equity, and Expense subtract.
That rule makes the accounting identities fall out cleanly. A Balance Sheet root nets Assets minus Liabilities minus Equity to roughly zero. The Income Statement root is Revenue minus Expense, which is net income.
Net Income is computed, never posted
Undistributed profit lives in the Revenue and Expense accounts until a period close moves it. A Balance Sheet would otherwise be out of balance because that profit belongs in equity.
Carbon closes the gap by summing every Income Statement leaf account and showing it as a single "Net Income" line inside the Equity group. It is a calculated row, not an account you can post to. Don't create a "Net Income" account in the chart of accounts.
Period and date selection
All three reports use a start and end date and default to the trailing six months:
- The Balance Sheet and Income Statement can group the range into monthly, quarterly, or yearly columns. A Balance Sheet value remains an as-of figure because each column is cumulative through that column's end date.
- The Trial Balance keeps the range as one period and shows its beginning balance, net debit or credit activity, and ending balance. Fiscal presets follow the company's fiscal start month from fiscal year settings.
These pickers slice by posting date, not by the accounting period a journal landed in, so a report window can span open and closed periods freely. Closing a period doesn't change what a report shows; it just snapshots balances so the reads stay fast.
Alongside the date picker, a company selector lets you view a single company or roll several together (multi-company consolidation, with currency translation when a "Show translated" toggle is on), and an account search filters the tree by name or number.
What the reports do not slice
The core statements do not support dimension filtering.
Core statements are not sliced by reporting dimension
Journal lines can carry (location, department, cost center, and custom axes), but the Balance Sheet, Income Statement, and Trial Balance do not offer a dimension filter. They aggregate every posting on an account regardless of its dimension tags. To analyze the ledger by dimension, use the dimensions tooling, not these three statements.
The account ledger drawer (the drill-down you get by clicking an account on any of these reports) lists that account's individual posted lines for the same window, so a report figure always traces back to the transactions that make it up.
General Ledger
The General Ledger report lists every posted journal line in a date range, one row per line: posting date, journal entry, account, description, source and the debit or credit. Open it from Accounting → Reports → General Ledger. It reads the same Posted and Reversed journals as the statements, so its lines for an account and range add up to that account's Trial Balance movement.
- It shows one company at a time, in that company's base currency. The company selector has no "All Companies" option here.
- The period picker sets the range and defaults to the trailing six months, as the Trial Balance does.
- Filter the table by account, source or document type, search by journal entry number or description, and sort by any column. Lines sort by posting date, then journal entry, by default.
- Download exports every line in the range with the current filters, not only the page on screen.
Related
The journal, accounts, and the accounting-enabled switch these reports read from.
The tag axes the core statements do not slice by, and where to analyze them instead.
Fiscal periods, the balance snapshots that keep reports fast, and fiscal-year settings.