Every month it's the same: the GL and the subledger disagree by an amount that changes, PPV on the report doesn't match PPV in the GL, two reports of the same thing give two answers, and the controller closes it with a journal entry and a sigh. The number is usually traceable to a transaction. Someone has to go and find it.
ERP is where manufacturing accounting gets made. When a number looks wrong, the cause is almost always upstream of the ledger — in a setting, a timing gap, a definition, or a master record.
Inventory, purchasing, and work orders feed the GL through module communication that was configured at install and never revisited. A lag, a rejected batch, a missed account assignment — and the ledger drifts from the subledger.
The receipt posted at 11:58 p.m. and the invoice at 12:02. The count was taken before the last shift's completions posted. Every timing gap is a variance that looks like a mystery until someone lines up the timestamps.
One margin report excludes freight; one includes rework; one uses standard cost, one actual. Nobody wrote the definitions down, so nobody can say which is right. Definitions belong in the tile, not in someone's head.
We don't pick a side between two reports. We reconcile both to root cause and publish the explanation with query-level proof — then fix the thing that produced the difference.
Take last month's plug and trace it to the transactions. Not "timing" — the actual receipts, issues and batches that make up the difference, with query-level proof both accountants and planners can read.
Module communication, account assignment, costing method, cutoff discipline, the master-data field that was blank. The fix is usually small and the cause is usually old.
Every measure gets a definition tied to the tile — what's in, what's out, which cost. Two reports that disagree become one report that explains itself.
Validated reporting that reads from one model with drill-to-transaction on every number, and alerts that fire when the ledger and subledger diverge during the month — not at the close.
A divestiture put a manufacturing division's Fourth Shift data on a hard deadline to land in the parent company's Oracle — AP, suppliers, GL extracts — with finance teams on both sides who needed the trial balances to tie. When period batches disagreed between systems, we didn't pick a side. We reconciled to root cause and published the explanation with query-level proof, and delivered AR visibility screens so finance could see the state of the book throughout. Finance signs off on numbers, not vibes.
At a forging operation, the new quality portal's scrap numbers disagreed with the legacy system by a fraction of a point. Rather than "trust the new tool," We reconciled both to root cause: the legacy system had silently excluded rework lots since 2016. Documented — and the plant learned something about its own numbers it had lived with for years.
GL vs subledger, PPV vs the report, inventory vs the count, two reports that disagree. Name the pair and roughly how far apart they are. If you can, bring last month's reconciliation to the first call.
You'll get a straight answer and a tight scope. If we can't help, we'll tell you that too — and usually who can.