Reconciliation & Audit

Most tools match two things.Finance problems rarely have two sides.

An invoice against a purchase order against a receipt against a contract price. A claim against point-of-sale against inventory against an agreement. DataTwin reconciles N-way at whatever grain the question needs, with tolerance rules and fuzzy matching where identifiers disagree across systems, and every match carries the document that supports it. The result is auditable rather than asserted, which matters more than the match rate the moment somebody challenges it.

How Discover works
  • Two-way through N-way, at line, header or balance
  • Full population rather than a sample
  • Every match linked to the document behind it

Any two sides, one exception register

Whatever the two sides are

Any two sides, matched N-way

Live process

Whatever the two sides are

  • Your ledgersGL, sub-ledgers, entities
  • Counterparty statementsBanks, vendors, customers, portals
  • Operational systemsBilling, WMS, CRM, payroll, gateways
  • The documentsContracts, POs, GRNs, certificates

DataTwin

Matches N-way, then names what did not match

One exception register

  • Bank vs book — Credit, no entryUnidentified receipt · 4d · open
  • Invoice vs GRN — Qty billed aboveShort receipt · 11d · open
  • Intercompany — One-sided entryNot booked by counter · 31d · aged
  • GL vs sub-ledger — Control accountManual journal · 2d · explained
  • Payroll vs GL — Net payMatches · 0d · clean

Why this matters A reconciliation that produces a number is half a reconciliation. The half that matters is the list of differences, each with a reason, an age and somebody’s name against it.

Read-only to start — nothing changes in your ledgers or your source systems. Every stage runs on the same engine that powers the DARP Framework and FSCP: acquire, process, govern, report.

The engine

Every reconciliation is the same seven questions

Bank against book and invoice against receipt feel like different jobs. They are the same seven decisions with different sources, which is why they run on one engine rather than on a tool for each and a spreadsheet for the rest.

01 · The two sides

What is being compared

Two systems, or four. A ledger against a statement, or an invoice against a PO against a receipt against a contract.

02 · The grain

At what level do they meet

Line, header, batch or balance. Most failed reconciliations are two sides compared at different grains.

03 · The key

What makes a pair a pair

A reference, or an amount and a date, or a name that is spelled differently in each system.

04 · The tolerance

When is a difference a difference

Rounding, exchange rates and fees mean exact equality is often the wrong test.

05 · The timing

When should they agree

Cut-off, settlement cycles and in-transit items make a real difference look like an error.

06 · The reason

Why did this one not match

A difference without a reason is a to-do. A difference with a reason is either resolved or accepted.

07 · The sign-off

Who says it is right

Preparer, reviewer, date. A reconciliation nobody owns is not a control, whatever the match rate.

The outcome

A position somebody stands behind

Seven answers turn a matching exercise into a control, on the engine every DataTwin product runs on.

The reconciliation

From two sides to a position

1

Part 1

Getting both sides into the same shape is most of the work

Reconciliation projects rarely fail at matching. They fail earlier, because one side is a PDF, the other is an export nobody can schedule, and the identifier that should join them was truncated by a system in between.

Whatever shape it arrives in

Feed, file or document

Direct connections, scheduled extracts, portal downloads, statements and scanned documents all land in the same pipeline.

  • ERP, banking, gateway, billing and operational systems
  • Statements and confirmations read as data, not filed as PDFs
  • The original kept as evidence for the match it supports

Normalised

One shape, many systems

Dates, currencies, entity codes and identifiers brought to one form so two sides can be compared without a manual clean-up first.

  • Multi-entity, multi-currency and multi-book handled together
  • Identifiers repaired where a system truncated or reformatted them
  • Reference data mapped once and reused by every reconciliation

At the right grain

Line, header or balance

Two sides compared at the level the question needs. Comparing a line-level source to a header-level one is why reconciliations never close.

  • Line, header, batch or balance, set per reconciliation
  • Aggregation applied deliberately rather than by accident
  • Both sides held at their native grain as well as the compared one
2

Part 2

Then the matching, which is not usually one to one

One receipt settles seven invoices. One bank credit covers three gateway batches. One invoice spans two purchase orders. Any tool can match a reference to a reference; the work is in everything that is not that.

One to many, many to many

Resolved, not deferred

Split settlements, batch payments and part-deliveries resolved into the set of records they actually cover.

  • One-to-many and many-to-many sets resolved explicitly
  • Split and batch settlements unbundled to their components
  • Partial matches cleared to the part they settle, not left whole

Tolerance

When close enough is correct

Rounding, bank charges, exchange differences and agreed variances treated as tolerances rather than exceptions, with the rule visible.

  • Tolerance by value, percentage or both, per reconciliation
  • Charges and exchange differences classified, not absorbed
  • What was matched within tolerance shown, never hidden

Fuzzy, where it has to be

Names never agree

Where identifiers differ across systems, matching uses names, amounts and dates together, and records why each match was made.

  • Party name variants resolved to one counterparty
  • Amount, date and narration used together where no key exists
  • Every fuzzy match carrying its confidence and its reason
3

Part 3

The unmatched list is the product, not the leftovers

A reconciliation that ends with a number and a pile of unmatched items has moved the work rather than done it. Each difference needs a reason, an owner and an age, or it will be the same difference next month.

A reason on every line

Classified, not listed

Differences classified into timing, error, omission, dispute and unidentified, so the list can be worked by cause instead of read top to bottom.

  • Timing differences separated from genuine breaks
  • Root cause attached, so the same break stops recurring
  • Unidentified items named as unidentified, not netted away

Aged

A break gets older, not better

Every open difference carries its age, so a two-day item and a two-year item are never presented as the same problem.

  • Ageing by reconciliation, counterparty and reason
  • Items past a threshold escalated rather than carried forward
  • What was written off, and on whose authority

Owned

Somebody is working it

Each break is assigned, worked and closed with a note, so the reconciliation is a live control rather than a monthly report.

  • Assignment, action and closure recorded against the item
  • Correspondence and evidence attached to the break itself
  • What is genuinely irrecoverable separated from what is late
4

Part 4

And the audit changes shape, because the population is already tested

Sampling exists because testing everything by hand is impossible. Once every transaction has already been tested and the evidence is attached to it, the argument for a sample is weaker, and the conversation with your auditor gets shorter.

Full population

Rates, not instances

Testing everything reports a rate rather than a handful of findings, which is a different and more useful conversation with a board.

  • Every transaction tested, not a judgemental selection
  • Exceptions reported as a rate across the population
  • Thousands of items below materiality that add up, surfaced

Evidence attached

As it happens

The document that supports a match is held against the match, so testing is a read rather than a document request.

  • Every match linked to the record that supports it
  • A complete trail from source record to posted entry
  • Sample requests answered without a new extraction

Continuous, not periodic

Controls that run

Reconciliations and control checks run on a schedule rather than at period end, so a failure is found in the week it happens.

  • Control checks run continuously, not as a close task
  • Breaks escalated on age rather than discovered at close
  • The same evidence serves internal and statutory audit

In practice

What people actually reconcile

This is not a fixed list of supported reconciliations. It is the set we see most often. A new one is a new configuration of the seven questions above, not a new product.

Bank to book

One side
Bank statements, all accounts
The other side
Cash book and GL
What it catches
Unidentified receipts, unpresented items, charges never booked

Gateway settlement

One side
Settlement files
The other side
Orders and bank credits
What it catches
Fees above the agreed rate, refunds and chargebacks never traced

Invoice to PO to GRN

One side
Vendor invoice lines
The other side
Order and receipt
What it catches
Billed above ordered or received, price and quantity breaks

Receipt to invoice

One side
Customer receipts
The other side
Open invoices
What it catches
Unapplied cash, short payments with no deduction behind them

GL to sub-ledger

One side
Control accounts
The other side
AP, AR, fixed assets, stock
What it catches
Manual journals to control accounts, and balances that stopped agreeing

Intercompany

One side
Entity A books
The other side
Entity B books
What it catches
One-sided entries, mismatched amounts, unagreed balances at close

Inventory

One side
Physical and WMS
The other side
Stock ledger
What it catches
Shrinkage, goods in transit, receipts booked but never accrued

Payroll

One side
Payroll register
The other side
GL and bank
What it catches
Net pay differences, statutory deductions never deposited

Revenue

One side
Billing system
The other side
Revenue and deferred balances
What it catches
Unbilled and deferred that never rolled forward, cut-off errors

Tax

One side
Registers and returns
The other side
Ledger and counterparty filings
What it catches
Credit at risk, credit unclaimed, exposure from wrong treatment

Claims and programmes

One side
Claims and agreements
The other side
Sales, POS and settlements
What it catches
Unclaimed and short-paid claims, and claims about to age out

Payouts and commissions

One side
Scheme or plan rows
The other side
Volume, bookings and payments
What it catches
Wrong band applied, overlapping schemes, guarantees topped up twice

Not a fixed catalogue.

If you can describe the two sides, the grain and what counts as a difference, it can be configured. That is the whole argument for one engine rather than a tool per reconciliation: the eleventh one costs what the first one cost, and no less, but it does not wait for a release.

Prevent

Then it stops being a month-end exercise

Prevent is not a second build. The reconciliations that found your history are the reconciliations that run every night. That is where a one-off clean-up starts compounding.

  1. 1

    Configured

    The two sides, the grain, the key and the tolerance agreed once, per reconciliation.

  2. 2

    Run on schedule

    Nightly or intraday, so a break is days old rather than a month old.

  3. 3

    Classified

    Every difference given a reason and an owner as it appears.

  4. 4

    Escalated

    Age and value drive escalation, rather than somebody remembering at close.

  5. 5

    Signed off

    Preparer and reviewer recorded against the period, with the evidence attached.

What changes

What changes, honestly stated

Not a longer list of features. A different distribution of who does what, and when a difference is found.

When it runs

How reconciliation runs today

At period end, on the days there is least time for it

How it runs on DataTwin

On a schedule, so a break is found in the week it happens

How many sides

How reconciliation runs today

Two, because that is what the tool does

How it runs on DataTwin

As many as the question needs, at the grain it needs

The hard matches

How reconciliation runs today

Left unmatched, or forced through so the total agrees

How it runs on DataTwin

Many-to-many resolved, with tolerance and fuzzy matching recorded

The unmatched list

How reconciliation runs today

A pile that gets carried forward

How it runs on DataTwin

Classified by reason, aged, owned and escalated

Evidence

How reconciliation runs today

Found again each time somebody asks

How it runs on DataTwin

Attached to the match when the match was made

A new reconciliation

How reconciliation runs today

A new spreadsheet, and a person who now maintains it

How it runs on DataTwin

A new configuration of the same seven questions

Audit

How reconciliation runs today

A sample, tested after the event

How it runs on DataTwin

Full population, tested as it happens

Start here

Before you change anything, find out what it has already cost you

Everything above is prevention; it stops the next month breaking. It does nothing about the differences already sitting in your ledgers, some of them for years. So we start there, read-only, before there is anything to sign.

2min

This is how long it takes to understand how much can be recovered.

Send us the two sides of whichever reconciliation worries you most. We test the full transaction population, not a sample, and come back with what is recoverable and what is merely unexplained, split by heading. Before any contract.

  • One side
  • The other side
  • Full population tested
  • What is recoverable and what is merely unexplained

Money to collect

Receipts never applied, credits never taken, claims never raised, balances owed and never chased.

Money paid out

Duplicate and over-payments, charges above the agreed rate, deductions never netted.

Entries that are wrong

Control accounts that stopped agreeing, one-sided intercompany, accruals never reversed.

Control gaps

Why the first three keep happening: recs nobody owns, breaks nobody ages, sign-off nobody records.

The same engine reconciles for manufacturing, distribution, retail, logistics, pharma, financial services and multi-entity groups. If you can describe the two sides, it can be configured.

How Discover works