Invoice dashboard template: rebuild the selected day

An October 15 receipt appears beside an October 14 invoice snapshot. If it reduces the balance a day early, the review no longer describes October 14.

Apply one selected date to both the invoice and receipt records.

This invoice dashboard template rebuilds $310 open on October 14 and $110 on October 15 from the same fictional USD ledger. The date control refreshes balances, open counts, aging buckets, and included receipts together. A later receipt stays visible as outside the selected date until it belongs in the calculation.

Rebuild the day, not the history
Rebuild the day, not the history
Open the full example ↗

Keep the original records visible

All three invoices were issued October 1, 2026. I01 is $100 due October 13; I02 is $200 due October 14; I03 is $50 due October 20. Receipt R01 contributes $40 to I01 on October 12. R02 contributes $200 to I02 on October 15. No receipt is supplied for I03.

On October 14, include R01 but leave R02 after as-of. The remaining balances are 100 − 40 = 60, 200 − 0 = 200, and 50 − 0 = 50. Their sum is $310 across three open invoices. The gross check gives the same result: $350 minus $40 equals $310. These are sample record calculations, not a bank reconciliation.

Group the balance after calculating it

The declared date-only rule keeps due-today and future-due invoices Current. Positive calendar-day differences go into 1–30, 31–60, 61–90, or more than 90 days overdue. On October 14, I01 is one day overdue with $60 open. I02 and I03 are Current with a combined $250.

Xero's US aging-report guide describes open balances, due-date buckets, and partial payments. Use those categories with this explicit sample rule. The dashboard does not infer collection priority, credit risk, or a legal consequence from a bucket label. Date-only calculations use calendar dates consistently rather than local-midnight timestamps.

Move to the next date

Select October 15 and rebuild. R02 now enters the receipt scope, reducing I02 to zero. It leaves the open count while its history remains in the ledger. I01 is two days overdue at $60, and I03 remains Current at $50. The open total is 60 + 50 = $110 across two invoices.

Use the Current filter to see I03 only and its $50 balance. The selected-date whole total stays distinct from the filtered subtotal. Return to October 14 and I02 becomes open again because the view reconstructs that earlier date. No original receipt is removed, rewritten, or treated as a new payment.

Keep gaps outside confident classifications

The missing-due-date example removes I03's due date. Its otherwise accepted $50 balance remains in the total but moves to Unclassified, not Current. On October 14 the buckets then read Current $200, 1–30 days $60, and Unclassified $50, still totaling $310.

The duplicate-R01 example counts the identical receipt once. Conflicting receipt IDs, unusable dates, unmatched invoices, currencies, or amounts require a separate unresolved record and review of the affected balance. Show an accepted subset as an accepted subset, rather than labeling incomplete source data a verified full ledger. Keep actual adjustments dated and documented under the owner's rules. The local example adds no fees, tax, currency conversion, reminders, or payment action; preserve the authoritative invoice and receipt records in your normal ledger.

Keep source exceptions out of a complete-looking total

Try the R01 amount-conflict control on October 15. Source S1 says $40, while the modeled second source says $60. I01’s balance becomes unresolved; its known $100 gross amount stays visible as the basis being held. The $50 headline includes only I03’s confirmed positive balance. A conflicting date, invoice association, or currency also holds the affected calculation rather than choosing the last row.

Turn the conflict off and model the extra $100 receipt for I01. Its balance becomes −$40. The review shows that negative balance separately from the $50 positive open total, without recording a refund or write-off. Use the source references to resolve the record before treating either exception as an ordinary open invoice.

Copy this prompt to adapt the example

Design a receivables desk with a report-date control, positive-balance aging, identifiable invoice rows, and distinct unresolved and credit sections. Return one self-contained HTML file with embedded styling and working interactions. Use readable type, strong contrast, clearly labeled keyboard controls, and a layout that flows on a narrow phone. Identify the supplied data as a fictional example.

Create a date-based USD invoice inspection view with synthetic 2026 records: I01 issued October 1, due October 13, gross 100, receipt R01 40 October 12; I02 issued October 1, due October 14, gross 200, receipt R02 200 October 15; I03 issued October 1, due October 20, gross 50, no receipt. Default date October 14: balances 60/200/50, total 310, open count 3, Current 250 and 1–30 overdue 60. October 15: balances 60/0/50, total 110, open count 2, Current 50 and overdue 60.

Provide a date input, Rebuild snapshot button, and All/Current/Overdue/Unclassified filter buttons. Show both whole snapshot totals and filtered counts/subtotals. Recalculate from unique dated associated receipts on or before the selected date. Use calendar-day aging; due today Current. Include receipt inclusion/exclusion text. Add toggle scenarios for identical R01 duplicate counted once and I03 missing due date classified Unclassified. Validate actual calendar dates; blank is unresolved. Input changes clear stale output until rebuilt. Keep source rows visible and scenarios labeled fictional. No bank truth, collection, payment, export, or saving claims.

Include fixed R01 conflict controls for amount ($40/$60), date (October 12/16), invoice association (I01/I02), and currency (USD/EUR). Preserve both references, hold affected invoice calculations, and display unresolved counts and known gross basis with balance unknown. A modeled R03 I01 October 14 USD100 creates a separate −$40 credit at October 15; positive open remains $50. Never silently discard negative balances or choose the last conflicting identity.

The October 14 and October 15 snapshots make a useful handoff example because one dated receipt explains the difference. Render the sanitized HTML in NOS when a colleague needs to compare those dates with the source rows. Then try the conflict case together: being able to point to the held invoice and both receipt references is more useful than defending a total whose basis is uncertain.

Keep reading