Finance & AccountingFeatured

Revenue Leakage Auditor

Finds the money you already earned and never billed

Version 2Published Sep 2, 2026
Finance & AccountingKnowledgeExtractclaude-opus-5Read-only · auto8 hard rules5 handover rulesResult
8hard rules
Things it must never do, enforced in every run
5handover rules
Conditions where it stops and gives the work to a person
9output fields
A structured result, not a paragraph you have to re-read
≤8steps per run
Bounded work: at most 6 tool calls, enforced by the runtime

Read-only by design. This agent has no path to sending, spending, publishing or committing anything. Where that limit is the product, removing it would remove the reason to trust the output.

Live wiring for version 2. Tool nodes are the capabilities this agent is registered to call — nothing else can run.

Overview

Revenue leakage is the rare problem where the money is already earned. Nobody has to sell, negotiate or collect anything new: the contract says one thing and the invoice says another, and the difference has been leaving every month since the two stopped agreeing.

It happens the same way everywhere. An annual uplift clause nobody applied, because applying it is a manual step in a system that does not know the clause exists. A customer who moved to a bigger tier while the invoice stayed put. A goodwill discount granted for one quarter and still running three years later. Overage terms that exist and are never metered. An account onboarded onto the wrong price book.

Nobody catches it because the contract lives in a document store, the entitlement lives in the product, and the invoice lives in billing. Three systems, three owners, and the gap is only visible to whoever reads all three side by side — which is nobody's job.

This agent does that reading. For every account it reports what the contract entitles you to bill, what was actually billed, the difference, and the clause the difference comes from. It raises no invoice and changes no price: re-billing a customer is a commercial conversation, and some of what it finds you will choose not to claim.

Benefits

Recovered revenue with no selling

The rarest kind: money already earned and already delivered.

The leak closed, not just found

Each finding names the clause, so the fix is specific.

Priced right going forward

Which matters more than the back-claim, and compounds.

What it does

  • Reads the contract against the invoice

    The gap between what you agreed and what you billed. It is invisible in either system alone, which is why it survives.

  • Finds unapplied uplift clauses

    An annual increase written into the contract that nobody ever triggered. Compounding, every year.

  • Catches the discount that never ended

    Granted for one quarter as goodwill, still running three years later, on your largest account.

  • Flags unmetered overage

    Terms that allow you to charge for excess usage, on accounts where nobody ever measured it.

  • Quantifies each finding

    The amount, the period it has been running, and the clause it comes from. Not a list of concerns.

  • Bills nothing

    Re-billing a customer for a past period is a commercial decision with a relationship attached. It gives you the list.

What this changes

What this changes about your week

It takes over
Reading every contract against every invoice to find what was never billed.
Done today by
Nobody, which is why it accumulates.
How often
Annually at best, usually never.
Typical manual effort
Weeks, and only ever done on the accounts somebody already suspects.

Why Finance & Accounting in particular. The contract lives in a document store, the entitlement in the product, the invoice in billing. Three systems, three owners, and the gap is only visible to whoever reads all three side by side.

  • Runs unattended

    Started by you or by an event, and it finishes on its own. Nothing waits for someone to be at a desk.

  • The same standard every time

    The two-hundredth item is held to the bar the first one was. Consistency is the part people cannot sustain.

  • It cannot act on its own

    Revenue Leakage Auditor has no path to sending, spending or committing. That limit is why its output is safe to act on.

How it runs

This agent runs server-side through the PROMIVO runtime. Each run is logged step by step and every tool call is permission-checked before it executes.

  1. 1InputValidated against the agent input schema
  2. 2Modelclaude-opus-5 with automatic fallback
  3. 3Toolssearch_knowledge, extract_structured_data
  4. 4PermissionsRuns READ actions automatically; anything higher waits for approval
  5. 5OutputStructured result matching the output schema
  6. 6LoggingTokens, duration and every step recorded

Demo

Demo dataIllustrative sample output, abridged.

Input

{
  "accounts": [],
  "currency": "USD",
  "periodsReviewed": "24 months"
}

Output

{
  "escalate": true,
  "findings": [
    {
      "type": "expired-discount-still-running",
      "basis": "measured",
      "total": 60750,
      "clause": "Schedule B: 15% introductory discount, first four months only.",
      "account": "ACC-2140",
      "perPeriod": 2250,
      "periodsAffected": 27,
      "annualisedImpact": 27000
    },
    {
      "type": "unapplied-uplift",
      "basis": "measured",
      "total": 18800,
      "clause": "Clause 6.2: annual increase at CPI, minimum 3%, each 1 January.",
      "account": "ACC-1877",
      "perPeriod": 940,
      "periodsAffected": 20,
      "annualisedImpact": 11280
    }
  ],
  "disclaimer": "A reconciliation of your own records. Nothing has been invoiced, credited or repriced, no statement is made about what is legally recoverable, and amounts marked estimated are not measured.",
  "overbilled": [
    "ACC-3012 was invoiced for a tier above the one the contract names, for 5 months. This one needs correcting whether or not you claim anything else."
  ],
  "couldNotCheck": [
    "Overage on 6 accounts — usage was never recorded, so there is nothing to compare against."
  ],
  "totalAnnualised": 38280,
  "totalIdentified": 79550,
  "ambiguousClauses": [
    "ACC-2455 clause 4.1 ties the uplift to 'the prevailing index' without naming one. The finding depends entirely on which index is meant."
  ],
  "escalationReason": "One account was overbilled for five months, and one finding rests on an ambiguous clause rather than on a clear term."
}

Requirements

Integrations

No integrations required.

Before you start

  • Contract terms per account: price, uplift clauses, discounts and their end dates, overage terms
  • What each account was actually invoiced, by period
  • Entitlements or usage where the contract charges for them
  • Requires the All-Access plan or higher

Use cases

Annual contract review

Every account, every clause, against what was actually invoiced.

Before a funding round or sale

Understated recurring revenue is money left on the valuation.

After a pricing change

Which accounts never moved onto the new terms.

A margin that keeps slipping

Usually leakage rather than cost.

Pricing

All-Access

Billed monthly through your PROMIVO subscription. Cancel at any time.

Runs consume your plan allowance for agent executions and tokens. See plan limits

FAQ

Will it invoice the difference?

No. Back-billing a customer is a commercial conversation with a relationship attached, and some of what it finds you will decide not to claim. It produces the evidence and the amount; the decision is yours.

Does it need our billing system connected?

No. It works from exports — contract terms, entitlements, and invoiced amounts per account. Most leakage is visible in three columns; it does not need write access to anything.

What if the contract is ambiguous?

It reports the ambiguity rather than resolving it in your favour. A clause that could be read two ways is a finding for a person, not a number to add up.

Reviews

Reviews open once customers have run this agent.

Need this agent to work differently?

Tell us what to change and our team will scope a customised version for your business.

Customize this agent