Statement of Account

Email to client Print Statement
This statement is a print view, not a generated file. Print Statement opens the browser's own dialogue and the client saves to PDF from there. The tax invoice is the document that is properly generated, with jsPDF; the server-side statement endpoint is not built, so the honest description of this screen is a page that knows how to print.

Statement of Account

Ravensworth Civil Pty Ltd
Attn: Dale Whitmore · ABN 61 774 903 218
Harbourline Studio
ABN 54 118 402 663
BSB 062 918 · ACC 4471 0263
Statement period
01 Jan 2026 – 30 Apr 2026
Generated 30 Apr 2026
Total Invoiced (Inc GST)
$46,607.00
Total Paid (Inc GST)
$29,942.00
Balance Due (Inc GST)
$16,665.00
Invoice # Due Date Amount (Inc GST) Status Payment Date Running Balance
#BB-2026-0179 12 Jan 2026 $5,940.00 26 Jan 2026 $0.00
#BB-2026-0181 29 Jan 2026 $3,245.00 11 Feb 2026 $0.00
#BB-2026-0184 02 Mar 2026 $12,969.00 02 Mar 2026 $0.00
#BB-2026-0188 04 Mar 2026 $7,788.00 19 Mar 2026 $0.00
#BB-2026-0193 22 Mar 2026 $4,620.00 Overdue $4,620.00
#BB-2026-0197 09 Apr 2026 $9,130.00 Overdue $13,750.00
#BB-2026-0201 24 Apr 2026 $2,915.00 Overdue $16,665.00

Ageing, as at 30 Apr 2026

Bands are measured from each invoice's due date to today, which is the same read-time comparison that decides whether a row shows as overdue. Every unpaid invoice here is past its due date, so all three are overdue by that test.
Current
$12,045.00
0197 at 21 days, 0201 at 6 days past due
30 to 59 days
$4,620.00
0193 at 39 days past due
60 to 89 days
$0.00
Nothing in this band
90 days and over
$0.00
Nothing in this band
Balance Due (Inc GST): $16,665.00
What a statement is allowed to assert

A statement answers one question: what does this client owe today. Every figure above is derived from the invoices themselves rather than stored as a summary, so the statement cannot disagree with the ledger it is drawn from. Overdue is not a stored flag; the Ageing block and the status column are the same isOverdue() comparison, run when the page renders.

That is also why this screen and the invoice ledger can show the same invoice differently without either being wrong. BB-2026-0193 and BB-2026-0197 are stored as Outstanding, which is what the ledger renders. Here they read Overdue, because the statement is generated on 30 April and by that date both due dates have passed. Nothing was written to either record in between. The stored value is what the operator decided; the derived value is what the calendar says.

Being straight about the rest: the stored statuses are set by a person rather than inferred from the payments table, so recording a part payment does not move an invoice into a partial state on its own. The ageing bands are measured from the due date rather than the invoice date, which is why BB-2026-0193 sits a band further out than the two raised after it.

This screen reconciles, both directions
Down the table  →  paid 5,940.00 + 3,245.00 + 12,969.00 + 7,788.00 = 29,942.00;  unpaid 4,620.00 + 9,130.00 + 2,915.00 = 16,665.00
Invoiced  =  29,942.00 + 16,665.00  =  46,607.00,  matching the running balance in the final row
Across the bands  →  12,045.00 (9,130.00 + 2,915.00) + 4,620.00 + 0.00 + 0.00  =  16,665.00,  the same balance due

Brontiq Books is a real, shipped product. This screen is drawn from it, and every client, contact, email, ABN, bank detail, invoice number, date and figure on it is invented. BB-2026-0184 carries the same $12,969.00 as the issued tax invoice, BB-2026-0197 the same $9,130.00 as the invoice editor, and these three totals are the ones the ledger screen shows.