INDEPENDENT DEMONSTRATION / SYNTHETIC DATA
Outstanding payments.
A clearer view.
Explore how due dates and partial payments affect outstanding balances and ageing buckets. Every record is fictional. This illustration is separate from my L&T internship and contains no employer data, code or production results.
Currencies are reported separately, without exchange-rate conversion. “Overdue” means an unpaid balance with a due date before the reporting date. The filters affect the table and chart; summary balances cover the selected currency.
How balances are ageing
Outstanding balance by ageing bucket.
Inspect the records
| Invoice | Due date | Amount | Paid | Outstanding | Days overdue | Bucket |
|---|
Reproduce the example
- Calculate each balance as the invoice amount minus payments received, with a floor of zero.
- Compare the due date with the reporting date and classify unpaid invoices into Not due, 1–30, 31–60, 61–90 and 90+ day buckets.
- Aggregate by currency and ageing bucket. Keep settled invoices separate.
The SQL download is a self-contained SQLite query using the same fictional records and the default reporting date, 1 October 2026. Adjust its settings date to reproduce another reporting date.