Every recovered dollar
shows its math.
Recoup audits an itemized bill or a progress-billing series, proves each overcharge against a real line, totals only what the arithmetic supports — and drafts the letter that asks for it back.
Integer cents, never floats26/26 tests greenZero network callsEvery finding cites its line
Recovery, bucketed
Four steps. Each one refuses to guess.
Bills lie in boring ways — a quantity that doesn't multiply, a phase billed past its own estimate, a consultant fee routed around a cap. Finding those is arithmetic, not opinion. Recoup does the arithmetic and stops exactly where the arithmetic stops.
Read the bill without rounding it.
Every amount enters as safe-integer cents. A float, an oversized number, a line without an id — intake throws instead of rounding. On a progress-billing series the intake goes further: hourly sections must sum to their stated totals and each phase line must satisfy contract = remaining + prior + this. If your transcription is wrong, the audit refuses to start.
Prove it against a line that exists.
Ten detectors run. Each one computes its recoverable amount from the bill's own numbers — never a constant, never an estimate — and cites the reference it came from. A detector that can't name a real line produces nothing; the grounding guard rejects it before totalling.
Total into three buckets that never blur.
Arithmetic the bill's own numbers prove is asserted. Anything needing a human — a duplicate that might be a legitimate repeat, a phase billed past its estimate — is a candidate, capped at low confidence and labelled for confirmation. Work billed with no authorization visible in the provided contract is a documentation gap: a paper request, never an accusation. Promoting a candidate to asserted is an operator's decision, not the engine's.
Draft the letter the math already wrote.
The output is a dispute letter that quotes each finding, its line reference, and its arithmetic — plus a limitations block naming every check that did not run. Asserted items are stated. Candidates ask the recipient to confirm. Nothing in the letter is a claim the report can't show its work for.
Line L-1108 bills $250.00 for a quantity of 2 at a unit price of $75.00. Quantity × unit price is $150.00; the statement exceeds it by $100.00.
Lines L-1131 and L-1133 appear identical on the same date of service. Please confirm whether these represent two distinct services.
Limitations: upcoding and contract-rate checks were not performed on this statement.
A clean bill recovers nothing. That is the feature. An audit engine that always finds something is an audit engine you cannot use as evidence.
Different bills. Identical discipline.
A medical statement and an architect's progress billing fail in completely different ways — so they get different detectors, not a shoehorn. What they share is the guard: integer cents, real references, honest coverage.
Itemized bills
Medical statements, vendor invoices, SaaS line items. Anything where a quantity, a unit price, and an amount are supposed to agree.
- Quantity mismatch — billed above quantity × unit price
- Duplicate charge — identical line billed more than once
- Unbundling — panel and component billed together
- Out-of-network balance bill — No Surprises Act context
- Cited rights annex — the channel, never the verdict
Progress billing
Architecture, engineering, legal, consulting. Percent-complete against phase caps, hourly-estimate sections, pass-through consultants, and a series that has to stay continuous.
- Hourly line math — hours × rate, to the cent
- Over-estimate billing — past a phase's own stated estimate
- Unauthorized phase — billed with no visible authorization
- Reimbursable markup — above cost plus the contract markup
- Cap bypass — a consultant fee routed around a phase cap
- Prior-billing continuity — regressions and missing invoices
Four invoices. 118 hourly lines. $431,315 billed — $262,710 of it against paper we were never given.
A commercial remodel's architecture billing series, run through the progress-billing engine. Every hourly line, phase reconciliation, and markup was recomputed from the invoices' own printed totals — all of which reconciled exactly, which is itself the proof the transcription was faithful.
What that buys the person paying the bill.
Not an accusation — a list of exactly four documents to request before the next payment goes out, each one attached to the dollar figure it would resolve:
- 1 The executed agreement and every change order — resolves $262,710
- 2 The missing invoices in the series — ~$134,800 appears only as prior-billing jumps
- 3 The retainer application trace — applied on paper, never visible as a credit
- 4 The rate schedule in effect — same-staff rates rose ~36% mid-project
Figures from a real engagement, reported with the client and firm unnamed. Re-running the audit against the requested documents is what converts the third bucket into either an authorization or a dispute.
What it checks — and what it honestly doesn't.
Ten detectors ship and are tested. Everything not covered is printed in the report as a check not performed, so an absent finding is never mistaken for a clean bill.
| Detector | Severity | State |
|---|---|---|
| Itemized bills | ||
| Quantity mismatchquantity-mismatch | Asserted | Shipped & tested |
| Duplicate chargeduplicate-charge | Candidate | Shipped — held for confirmation |
| Unbundlingunbundling | Candidate | Shipped — pair table is SAMPLE |
| Out-of-network balance billout-of-network-balance-bill | Candidate | Shipped — context-gated |
| Progress billing | ||
| Hourly line mathhourly-line-math | Asserted | Shipped & tested |
| Reimbursable markupreimbursable-markup | Asserted | Shipped & tested |
| Over-estimate billingover-estimate-billing | Candidate | Shipped & tested |
| Cap bypass via reimbursablecap-bypass-reimbursable | Candidate | Shipped & tested |
| Unauthorized phaseunauthorized-phase | Doc gap | Shipped & tested |
| Prior-billing continuityprior-billing-regression | Candidate | Shipped & tested |
| Declared gaps — printed in every report | ||
| Upcoding | — | Not deterministically detectable without clinical records |
| Expired contract rate | — | Waits on contract ingestion |
| Rate-schedule compliance | — | Needs the firm's employee-to-category assignments |
| Change-order authorization | — | Needs the executed agreement |
| Retainer application trace | — | Needs the full invoice series |
The parts that aren't finished, stated before you ask.
Honest status
- The engine is deterministic. No network, no secrets, no model in the pass/fail path. The same bill produces the same report every time — which is what makes a finding usable as evidence.
- The unbundling pair table is SAMPLE data until real quarterly source ingestion lands. That is a named launch gate, printed in the report, not a footnote here.
- Rights-annex entries surface context, never conclusions. Each is cited and dated; the decision stays with the payer, provider, or agency.
- Sample figures on this page are test data from the repository's fixtures. The case-study figures are from a real engagement, reported without naming the parties.
Send one bill. See what it can prove.
Send an itemized statement or a progress-billing series with its contract. You get the findings, the arithmetic behind each one, the three buckets, and the list of checks that did not run — before any engagement.
Recovery runs
on proof.
Not on volume, not on a percentage of what someone hopes is wrong.
Run a bill through it