Find duplicate, anomalous, or missing expense records

Author: AILesson9 min setupTested with:ChatGPTReviewed: 2026-08-28

Quick answer

Audit expense rows with explicit duplicate, completeness, range, sequence, and policy tests without alleging misconduct. Provide: Expense records, Audit tests and reference rules, Review workflow. Expected result: A row-level exception register, duplicate clusters, missingness profile, reconciled totals, and review queue.

1

Add your context

Your text stays in this browser. AILesson Prompts does not send it to a model or server.

2

Your prompt

Unfilled fields remain visible as placeholders, so you can still copy and edit the prompt

Audit the supplied expense records using only the stated tests and references.

Records:
[records]

Tests:
[tests]

Review workflow:
[review]

Preserve each source row. Validate schema, types, currency, signs, dates, required fields, source-ID uniqueness, status, and total coverage before anomaly tests. Separate exact duplicate, possible duplicate, missing field, invalid value, threshold exception, sequence conflict, policy mismatch, and statistical outlier. Explain the rule and evidence for each flag; show comparison rows for duplicate clusters. Do not delete, merge, impute, accuse, infer fraud, or treat an outlier as an error. Account for legitimate repeats, split expenses, reversals, per diem, subscriptions, and approved exemptions. Produce a row-level exception table, unflagged control total, duplicate clusters, field-completeness table, reconciliation before and after only proposed exclusions, and a prioritized human-review queue with required evidence and safe next action.
Private by defaultPrompt assembly happens locally in your browser. Avoid placing confidential information into any AI service unless your organization allows it.

From input to outcome

A worked example

See how concrete context turns this recipe into a usable result

Actual input

Expense records
CNY expense export, 1–15 August. E01 source S100, 08-03, vendor RailGo, 480, Travel, receipt yes, approved, project P1, ticket RG77. E02 S101, 08-03, RailGo, 480, Travel, receipt yes, approved, P1, ticket RG77. E03 S102, 08-04, CityHotel, 1,280, Travel, receipt yes, approved, P1, invoice H55. E04 S103, 08-04, CityHotel, -1,280, Travel, receipt yes, reversal, P1, invoice H55. E05 S104, 08-06, MealBox, 286, Meals, receipt no, submitted, P2, six attendees named in restricted system. E06 S105, 08-07, CloudKit, 3,600, Software, receipt yes, approved, blank project, annual subscription. E07 S106, 08-08, TaxiNow, 890, Travel, receipt yes, submitted, P2, trip note blank. E08 S107, 08-10, OfficeMart, 42,000, Supplies, receipt yes, approved, P3, purchase order PO9. E09 source blank, 08-11, OfficeMart, 420, Supplies, receipt yes, submitted, P3. Export says 9 rows, signed sum 46,676.
Audit tests and reference rules
Required: source ID, date, vendor, amount, category, receipt status, workflow status; project required except annual shared subscriptions. Exact duplicate key ticket/invoice plus amount and same direction; reversal with opposite sign is not duplicate. Possible duplicate: same vendor, amount, date within 2 days. Travel over 800 requires trip note; meals over 200 require receipt unless approved lost-receipt form; purchases over 20,000 require PO. Statistical outlier only if above category median plus 5 MAD; sample too small may be not computable. Negative amount allowed only with reversal status. Expected signed total 46,676.
Review workflow
High: exact duplicate or missing source ID; medium: missing required evidence or threshold exception; informational: statistical outlier. Finance reviewer decides corrections; no automatic deletions. Show masked employee data only. Confirmed duplicate exclusions must still reconcile. Do not use fraud language.

Example output

Expense audit — source preserved

Schema check: 9 rows and signed amount CNY 46,676 reconcile to the supplied export. Source ID completeness is 8/9; project is 8/9, with E06 covered by the stated annual-subscription exception.

Row/clusterFlagRule evidenceSeverityRequired review
E01, E02exact duplicate candidatesame ticket RG77, amount 480, direction and date; different source IDshighverify ticket and payment records; do not delete either yet
E03, E04valid reversal pairsame H55, opposite signs; E04 status reversalnoneretain both
E05missing evidencemeal 286 >200 and receipt absentmediumcheck approved lost-receipt form
E07threshold evidence missingtravel 890 >800; trip note blankmediumobtain trip evidence or authorized exception
E08threshold satisfiedsupplies 42,000 >20,000; PO9 presentnoneordinary PO match still required outside this audit
E09missing required source IDblank source IDhighrecover ID and test possible duplicate after recovery

No possible-duplicate rule additionally flags E08/E09 because amounts differ. E06's blank project is allowed by the explicit exception. Category samples are too small for a reliable median-plus-5-MAD outlier test, so no statistical label is assigned.

Control totals: all rows 46,676. If and only if Finance confirms E02 duplicates E01, proposed retained total becomes 46,196; difference 480 links exactly to E02. Priority queue: E01/E02 evidence comparison; E09 source recovery; E05 receipt exception; E07 trip note. None of these flags establishes error or misconduct.

Why this works

  1. 1

    Typed exception rules make a flagged row reproducible instead of suspicious by intuition

  2. 2

    A review queue preserves source data and prevents false positives from becoming unauthorized corrections

Check the result

  • Can every flag be reproduced from a stated rule and exact source rows?

  • Are possible duplicates, outliers, policy exceptions, and confirmed errors kept distinct?

  • Do counts and amounts reconcile before any authorized correction?

Use it with confidence

Frequently asked questions

Practical answers about when to use this recipe, what to provide, and where human review still matters

What should I prepare before using “Find duplicate, anomalous, or missing expense records”?

For “Find duplicate, anomalous, or missing expense records,” prepare Expense records, Audit tests and reference rules, and Review workflow. Replace placeholders only with information you can verify. If a detail is unknown, preserve that uncertainty explicitly instead of asking the model to infer it.

When is the “Find duplicate, anomalous, or missing expense records” result not ready to use?

The result is not ready if it does not yet deliver the stated outcome—A row-level exception register, duplicate clusters, missingness profile, reconciled totals, and review queue—from the supplied evidence, or if it relies on unresolved assumptions, missing approvals, or invented details. Use the checks as release gates: revise the source inputs or assign a named, authorized reviewer instead of polishing an unsupported output.

Which AI tools have recorded tests for “Find duplicate, anomalous, or missing expense records”?

The published test record for “Find duplicate, anomalous, or missing expense records” lists ChatGPT as of 2026-08-28. This confirms recorded runs, not guaranteed compatibility or identical results in later product versions. For another tool or version, keep every constraint visible and repeat the result checks before use.

Keep the work moving