Money back,
with the proof attached.
Send Recoup an itemized bill or an architect's progress billing. It finds every overcharge the arithmetic proves and ties each one to a line on the bill. It totals only what the numbers support. Then it drafts the letter that asks for the money back.
Integer cents on every line55/55 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. 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 or a line without an id stops intake instead of being rounded. 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 from a constant or an estimate, and cites the line 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, such as a duplicate that might be a legitimate repeat or 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, which the letter turns into a request for paper. Promoting a candidate to asserted is your decision, and the engine never makes it for you.
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 different ways, so each gets its own detectors. 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, naming the channel to raise it in
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, and $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 them reconciled exactly, which is itself the proof the transcription was faithful.
What that buys the person paying the bill.
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, resolving $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 and 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 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, and the report prints it.
- 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.
Send one bill and the report answers line by line, with the letter attached.
Run a Bill