Drop an open-invoice export. This ages every bill from the date it was due — not the date it was issued — and summarises by vendor across the usual buckets, so the number you act on is the one that is genuinely late rather than the one that merely looks old.
This is the one thing an aging report gets wrong most often, and it is worth being explicit about. A bill issued on the 1st with Net 30 terms is not thirty days late on the 31st; it is due that day. Aging from the invoice date instead of the due date makes an entire ledger look a month worse than it is, which is how a payables report stops being believed.
So the due date is worked out in this order, and the tool tells you which one it used:
Net 30, Net 15, NET45, Due on receipt, and
the common variants.Current, 1–30, 31–60, 61–90 and over 90, counted in days past due. "Current" means not yet due, including bills due today. Each vendor is a row, sorted by how much of their balance is past due rather than by total owed — a vendor you owe $50,000 to with nothing overdue is not the problem a vendor you owe $4,000 to entirely in the 90+ column is.
It reads and reports; nothing is written and there is nothing to save. It assumes every row in the file is still open — if your export includes paid bills, they will be aged along with the rest, so export the unpaid ones. Credits and negative amounts are carried through as negatives rather than dropped, because a vendor whose balance nets to nearly nothing is worth seeing as such.