I Lost Sleep for Two Years Over an Inventory Subledger

Here's what none of the consultants could figure out.

There's a specific kind of accounting problem that doesn't show up in textbooks. It doesn't come with a formula. It doesn't have a clean answer in the back of the chapter. It lives in the gap between what your ERP system says you have and what your general ledger says you should have.

It's called a subledger imbalance. And mine nearly broke me.

The Setup

In 2015, the company I worked for — a mid-market consumer products distributor in South Florida — implemented Microsoft Dynamics GP as its ERP system. I was the senior accountant. In practice, I was also the controller, the EDI coordinator, the systems administrator, and the only person who understood what was happening under the hood.

When the system went live, inventory was loaded at estimated landed cost. Except not all of it. Some items came in at ex-factory cost — which is considerably lower. The landed cost components — freight, duties, broker fees — were booked as separate journal entries. The plan was for those costs to expense through as the inventory sold.

They never did. Not correctly.

From day one, the inventory subledger and the general ledger didn't agree. Not by a lot — maybe a few hundred dollars on the surface. But I didn't trust it. The beginning balance had never been verified. The variance could have been masking something larger, offset by errors moving in opposite directions.

I was right. It was.

The Island

Here's what nobody tells you about subledger reconciliation in a small company: you're alone.

There was no team. There was no senior accountant above me who'd done this before. My boss — the office manager — didn't understand what a subledger was. The VP of Finance understood it conceptually but had never gotten his hands dirty with one in GP. He deferred to support. Support deferred to consultants. The consultants failed.

We brought in two of them. The first one poked around the system for a few days and left. The second one — an older guy, supposed to be an expert — couldn't figure it out either.

Meanwhile, my boss's assessment of why it wasn't done yet: "It's too hard and he doesn't want to."

She told me that if I gave back the time I spent smoking cigarettes, it would be done by now.

I was working on it at home. On weekends. On holidays. I was pulling 60-megabyte CSV exports from a cloud server that took an hour to generate. I was cross-referencing transaction-level detail across inventory sites, matching receipts to invoices, tracing adjustments through fiscal periods, looking for the moment — any moment — when the subledger and the GL had ever agreed.

They hadn't. Not even on day one.

The Problem Behind the Problem

If you've never reconciled an inventory subledger, here's what makes it different from reconciling a bank account or an AP aging:

A bank statement is authoritative. You trust the bank's number and reconcile your books to it. The bank is the source of truth.

An inventory subledger has no external source of truth. The subledger is a running total of every receipt, every adjustment, every cost change, every transfer, every sale — across every site, every item, every fiscal period. The GL is a parallel running total of the same activity, posted through journal entries. They should agree. When they don't, you have to figure out where they diverged, and the divergence could be in any transaction, in any period, going back to the beginning of time.

In our case, the root issues were:

  1. Landed costs loaded as separate GL entries that the subledger never knew about — creating a permanent gap from day one.
  2. Defective inventory returns processed by a staff member who didn't understand the accounting impact — putting items back into on-hand inventory at the wrong site, in the wrong period, at the wrong cost.
  3. No separation of duties. I received inventory, matched invoices, posted adjustments, ran the physical counts, and reconciled the result. One hundred percent of inventory in the system was received by me. Every error was mine to find, and every fix was mine to validate.
  4. A system with limited transaction-level visibility. GP's inventory module doesn't make it easy to walk activity forward day by day. You're working with period-end snapshots. Find an error, fix it and wait until the next period posts to see if your fix held.

The Breakthrough

On September 24, 2018 — almost two years after the implementation — I reconciled the inventory to the penny.

I figured it out on my own. No consultant helped. No manager guided me. I reverse-engineered the beginning balance, identified the landed cost entries that should have been allocated, traced the defectives through the wrong sites, and rebuilt the reconciliation from scratch.

I went into my boss's office excited. For the first time in two years, I had solved the thing that kept me up at night. The thing two consultants had failed to solve. The thing I'd been told I was too lazy to finish.

She looked at me and said, "I want to be excited for you, but I asked you to do this two years ago. You're lucky I have so much patience."

Deflated in an instant.

The Part They Don't Teach You

Here's what that experience actually taught me — and it has nothing to do with inventory accounting:

1. The hardest problems in corporate accounting are systems problems.

The subledger imbalance wasn't an accounting problem. I knew debits and credits. I knew how inventory flows work. The problem was that the system had been configured with assumptions nobody documented, transactions were being posted by people who didn't understand their downstream impact, and no one had built the reconciliation process before I arrived. This is a systems design problem. It requires systems thinking, not just accounting knowledge.

2. Small companies punish exactly the competence they depend on.

I was the only person who could do this work. That made me indispensable — and also unsupported. When I struggled, it wasn't framed as a difficult problem that needed resources. It was framed as a performance issue. When I succeeded, it wasn't celebrated as a breakthrough. It was treated as an overdue obligation.

If you're the person in your organization who does the hard thing nobody else can do, you already know this dynamic. The reward for solving the impossible problem is being expected to solve the next one, faster, with less acknowledgment.

3. Document everything. For yourself.

Nobody at that company could have written the story of what I solved or how I solved it. If I had left the day after that breakthrough, the next person would have started from zero — just like I did. The institutional knowledge lived entirely in my head. That's a failure of the organization, but it was also a failure of mine. I should have written the manual the day I figured it out.

4. The same problem will find you again.

Eight years later, at a different company, with a completely different ERP system, I'm looking at the same fundamental challenge: snapshot data loaded daily into SQL, no transaction-level detail, green screens for real-time lookups, and an inventory-to-GL gap that nobody has reconciled.

The systems change. The problem doesn't.

Why This Matters Beyond My Story

Every mid-market company running an ERP system has some version of this problem. The inventory module doesn't tie to the GL. Nobody knows why. The person who set it up is gone. The consultants can't figure it out. And the accountant who inherits it is being told they're not working hard enough.

If that's you, here's what I'd tell you:

  • The beginning balance is the first thing to verify. If your subledger and GL never agreed from day one, every variance you find could be masking another one.
  • Map every entry point. Receipts, adjustments, transfers, cost changes, physical count variances, defective returns — each one posts differently to the subledger and the GL. Know every path.
  • Don't trust period-end snapshots alone. You need transaction-level detail. If your system doesn't give it to you natively, build a query that does.
  • Separate your duties, even if you're the only one. When the same person receives, adjusts, and reconciles inventory, errors compound because there's no second set of eyes.
  • Write it down. The moment you solve it, document how you solved it. The process, the root causes, the workarounds, the queries. Because you WILL need it again, or the person who replaces you will.

The Pattern

I've been in accounting for over 15 years. I've worked with Dynamics GP, legacy ERP green screens, QuickBooks, and custom SQL environments. The inventory subledger problem is the same everywhere:

A system is implemented. Assumptions are made about cost layers, landed cost allocation, and posting logic. Those assumptions are never documented. Staff turnover happens. Processes drift. The subledger and the GL diverge. And someone — usually the most technical accountant in the building — gets handed the mess and told to fix it.

That person loses sleep. Misses weekends. Questions their competence. Gets told they're not working hard enough.

And when they finally solve it, someone says: "What took you so long?"

This post is for that person.