Audit assertions, with the evidence.

See what holds up.

Test records and AI decisions.
Surface control exceptions.
Keep a reviewable audit trail.

Free within daily limits. No card required. View pricing.

Illustrative AP reviewINV–2026–0841
Supplier invoice
Northstar IT Supply
$24,800.00
Purchase20 business laptops
Unit price$1,240.00
Purchase orderNot provided
Pending AP review
Inspect the supporting evidence
Illustrative invoice review
The purchase-order control fails.

The $24,800 invoice has no purchase-order reference. The configured control requires one above $1,000, so this assertion fails.

Required supporting evidencePurchase order: not providedThe finding links to the invoice amount and missing PO field.

Read the checks
behind each verdict.

Exact checks where the answer can be computed. Open questions where it can’t.

TrueThe checked requirements hold.
FalseA checked requirement fails.
UncertainNo decided verdict in this scope.

Put your work
under scrutiny.

Send a record or decision with its context. Get the checks, the evidence, and the open questions back.

Follow the reasoning.
Inspect the limits.

Test audit assertions against amounts, dates, duplicates and approval controls. Trace each finding to the supplied evidence. Model answers decide checks only when qualified; unresolved checks stay visible.

Materiality is a judgment. An exception is evidence.

Assess an exception’s amount, nature and context in your audit plan. The $1,000 PO threshold is a purchasing control, not audit materiality. OpenAuditor preserves the failed assertion; your team assesses its significance.

In the published synthetic financial audit evaluation: 0 errors in 3,366 held-out true verdicts decided by deterministic tests. The one-sided 95% upper error bound is 0.09%. These corpus results do not measure accuracy on your records. Read the evaluation method.

Inspect the sample request and response

This synthetic invoice was checked by the local engine in the production configuration; the PO failure decided it, so the model was not asked. The animation illustrates the saved result; it does not submit a request.

Synthetic example. Response computed by the local engine in the production configuration. This page displays a saved example, not a new verification request. Sensitive identifiers are masked in public examples.

The request body, invoice.json:

{
  "use_case": "financial-audit",
  "item": {
    "type": "invoice",
    "id": "INV-2026-0841",
    "data": {
      "vendor_id": "V-1042",
      "invoice_number": "INV-2026-0841",
      "invoice_date": "2026-09-18",
      "amount": "24800.00",
      "currency": "USD",
      "description": "20 business laptops for the finance team equipment refresh.",
      "line_items": [
        {
          "quantity": "20",
          "unit_price": "1240.00",
          "description": "Business laptop, 16 GB RAM, 512 GB SSD"
        }
      ],
      "tax_amount": "0.00",
      "discount_amount": "0.00"
    }
  },
  "context": {
    "records": {
      "vendor": [
        {
          "id": "V-1042",
          "name": "Northstar IT Supply",
          "created_on": "2024-02-12",
          "status": "active"
        }
      ],
      "invoice": []
    },
    "engagement": {
      "entity": "Illustrative procurement audit",
      "period": {"start": "2026-07-01", "end": "2026-09-30"}
    }
  }
}
curl https://openauditor.ai/api/v1/verify \
  -H "Authorization: Bearer $OPENAUDITOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d @invoice.json

The response, shortened:

{
  "verdict": "false",
  "probability_true": "0",
  "probability_basis": "deterministic",
  "certainty": {
    "value": "0.9987",
    "basis": "holdout",
    "stratum": "false_deterministic",
    "bound": "0.00133",
    "measured_on": 2253,
    "errors": 0
  },
  "undecided": [],
  "assertions": [
    {
      "id": "not_duplicate",
      "test": "procedure:not_duplicate@4",
      "outcome": "holds",
      "error_bound": "0",
      "evidence": ["/item/data/invoice_number", "/item/data/amount"]
    },
    {
      "id": "arithmetic",
      "test": "procedure:arithmetic@4",
      "outcome": "holds",
      "error_bound": "0",
      "facts": {"computed": "24800.00", "stated": "24800.00"},
      "evidence": ["/item/data/line_items", "/item/data/amount"]
    },
    {
      "id": "vendor_active",
      "test": "procedure:vendor_active@4",
      "outcome": "holds",
      "error_bound": "0",
      "evidence": ["/context/records/vendor/0/status", "/item/data/invoice_date"]
    },
    {
      "id": "po_present",
      "test": "procedure:po_present@4",
      "outcome": "fails",
      "error_bound": "0",
      "message": "No PO for an invoice of 24800.00, above the threshold of 1000.00.",
      "facts": {"required": true},
      "evidence": ["/item/data/amount", "/item/data/po_number"]
    },
    {
      "id": "goods_specific",
      "test": "question:invoice_specific@1",
      "outcome": "not_asked",
      "message": "Not asked: a deterministic test already fails this item, so the model cannot change its verdict.",
      "evidence": ["/item/data/description", "/item/data/line_items"]
    }
  ],
  "risk": {
    "points": "1.10",
    "probability": "0.0060",
    "basis": "prior",
    "base_rate": "0.002",
    "reasons": [
      {"source": "assertion:po_present", "points": "0.60"},
      {"source": "indicator:round_amount@2", "points": "0.50"}
    ]
  },
  "configuration": "cfg_c924a60e74c0",
  "scope": {
    "stratum": "false_deterministic",
    "evidence": "supplied",
    "skipped": [],
    "certainty_target": "0.995",
    "deterministic_only_verdict": "false"
  }
}
Compare supported checks and measured coverage

Checks by use case

Use caseWhat it verifiesItem typesChecksQuestions
Agent actionsActions AI agents take in business systems, checked against the agent's grant, approvals, its session's pace, the user's instruction and the inputs it read.182
AI output verificationFields an AI extracted from documents and sentences it generated from them, checked against the source text sent with the request.272
Contract complianceVendor invoices and their lines checked against the contract's term, currency, rate card, cap, service-level credits and scope, and against earlier invoices.2102
Financial auditExpenses, invoices, payments and vendors, and the approvals, releases and changes around them.9354
Insurance claimsClaims tested against their policies, the claimant's and provider's identifiers and the claim history, and the decisions to pay them.2122

Share of sampled items with decided verdicts

Measured coverage in published evaluations. A certainty target is not a measured overall accuracy.

Use caseRules-only coverageModel-assisted coverageCoverage gain (pp)
Agent actions10.7%10.7%0.0 pp
AI output verification8.0%21.1%13.2 pp
Contract compliance27.1%27.1%0.0 pp
Financial audit51.4%87.2%35.9 pp
Insurance claims46.8%46.8%0.0 pp

From the blog

What changes
the verdict.

Explore the blog

Pro and pilots

Hear when
Pro opens.

Free is open now. Tell us what you would audit: we will let you know when Pro opens, or talk about a pilot on your own records.

Run your first
verification.

Try the sample in your browser or connect the API. The free plan includes 5,000 items a day. See pricing and limits.