Exception aging: what a hold costs before an agent picks it up
Exception aging is the time an invoice exception spends unresolved, counted from the day the invoice failed a validation check and went on hold. Age matters because the cost of a hold is nonlinear. A hold that is two days old has usually cost nothing at all, while the same hold at day forty has crossed a series of thresholds – a lapsed early-payment discount, a missed due date, a supplier dispute – and each threshold switched on a cost the earlier days never carried.
This wiki covers source-to-pay for companies where AI agents carry the operational load – matching documents, chasing missing facts, clearing holds – and people keep the decisions that need judgment. Dashboards report exception aging as an average, one KPI among a dozen. This page redefines it as a timeline of specific dates on which specific costs switch on, because that timeline is what an agent working the queue has to beat.
The cleanest way to see the thresholds is to follow one held invoice across all of them. Take a packaging supplier that bills $18,400 for 46,000 meters of stretch film at $0.40 per meter, on terms of 2/10 net 30. The goods receipt in SAP records 44,150 meters, so the three-way match – the automated comparison of invoice, purchase order, and goods receipt – fails on quantity, and the invoice goes on hold over a $740 variance. A short shipment, a miscounted pallet, a receipt posted against the wrong PO line: the reasons invoice exceptions happen form a long list, and on day 0 nobody knows which one applies here.
Exception aging is free for roughly two days
For the first two days, the hold costs nothing. Payment is weeks from due under the terms, so no money has moved or lapsed, and a short hold for verification is exactly what the control exists to provide. These are the investigation days, and they are also the cheapest days the case will ever have. The delivery is recent enough that the receiving clerk remembers the pallet count. The driver's delivery note sits in this week's stack. The supplier's dispatcher can pull the shipment record in one phone call. Worked now, the case resolves at the speed of a conversation, and the only real question is whether anyone picks it up in time.
Day 10 closes the discount window
The terms on the invoice, 2/10 net 30, mean the buyer keeps 2% of the invoice value for paying within 10 days and otherwise owes the full amount by day 30. On this invoice the discount is $368. A blocked invoice cannot be paid, so at day 11 the $368 lapses no matter who turns out to be right about the missing 1,850 meters. The ratio deserves a pause: the hold has now cost $368 on the way to resolving a $740 question, and that money is gone even if the supplier issues a full credit tomorrow morning. The cost of invoice exceptions comes in several categories, and discount leakage is the one with its price and its deadline printed on the invoice in advance.
Day 30 turns the hold into a late payment
When the due date passes, the hold changes character. The supply agreement carries a late-payment interest clause of 1.5% per month, which on $18,400 accrues $276 for every month the invoice stays open. The supplier's accounts receivable team starts calling and emailing, and each inquiry consumes AP time that produces nothing toward resolution. The invoice also enters month-end close: the blocked document sits in the subledger at the full $18,400 while nobody yet knows whether a credit memo will bring the true liability down to $17,660, and every aged hold like it makes the payables balance a little noisier. One noisy line is trivia. A queue of them is a close that takes longer and a controller who trusts the subledger less.
Past day 40, the case is colder and the supplier is louder
Around day 40 the supplier statement – the monthly list of open invoices a supplier sends for reconciliation – shows $18,400 outstanding where AP shows a blocked document, and someone has to work the difference line by line. The supplier's credit team flags the account, and if the flag hardens into a credit hold, the next film order ships prepaid or waits. The buyer who cut the PO gets pulled into calls to keep the relationship calm, which is the point where escalation stops being optional. The investigation itself has also gotten more expensive. The receiving clerk has rotated to another shift, the delivery note is filed in a records box, and the dispatcher who could have answered in one call on day 2 now has to reconstruct a six-week-old shipment. Evidence pages out of systems slowly and out of people quickly, so a question that once needed one warehouse conversation now needs an email chain among three people who were never involved.
Day 60 is write-off and audit territory
Eventually, clearing the variance costs more than the variance. Someone approves paying the full $18,400 and writing off the $740, or requests a credit the supplier can no longer verify from its own records. Add the tally for this one invoice: $368 in lapsed discount, $276 and counting in late interest, hours of reconciliation and buyer time, and possibly the $740 itself, all spent on a case that was free at day 2. Auditors sample aged blocked invoices precisely because they concentrate control questions, so a two-month-old quantity dispute can end its life as a finding rather than a payment.
A queue's median age hides where exception aging concentrates
A dashboard can truthfully report a median age of eight days while a tenth of the queue sits past day 45, and every threshold above is per-invoice: each aged hold crosses its own discount window, its own due date, its own supplier's patience. The tail of the distribution therefore carries most of the cost, and the tail is structural. With more holds than hours, analysts triage by dollar value, so the seven-figure pricing dispute gets worked while the $18,400 film invoice loses the triage every single day it waits. Small invoices age by design, and the aging report shows the shape: a fat cluster of young, large cases and a long tail of small ones drifting toward write-off.
Capacity compresses the aging curve to its physical limits
Every threshold in this article is crossed by waiting, and the length of the wait is set by capacity. That is the variable agents change. An agent picks up the hold the day it fires, checks the receipt history in SAP, works out where the missing fact lives, and requests the shipment record while the delivery is still fresh, in arrival order, within hours, for every case in the queue at once. Worked that way, the aging curve compresses to the physical constraints: if 1,850 meters genuinely never arrived, the credit memo waits on the supplier, and if policy requires a manager's sign-off on any write-off above $500, the case waits on the approver. Those waits run days, so the day-10 and day-30 thresholds simply stop being crossed. New exceptions keep arriving upstream, which is why exceptions never go to zero; the queue never empties, but nothing in it has to get old.
Fragment builds AI agents that work exception queues this way inside a company's existing SAP or Ariba environment: every hold picked up the day it fires, evidence gathered while it is still cheap, judgment calls handed to a person before the first threshold arrives. See the workflows Fragment's agents run or book a demo to watch an aging report flatten.
