During month-end close, the controller generates the inventory valuation report and sees one number, while the general ledger shows another. If the difference is significant, someone will need to explain it to the CFO, and the initial assumption is often that the ERP system is faulty.
However, the software is usually functioning as intended. The discrepancy between the inventory report and the profit and loss statement can happen even when the warehouse count is correct. This often stems from accounting controls rather than counting issues.
Three main reasons account for many of these differences: manual journal entries posted to the inventory account, costing method behavior, and receipt-to-invoice cut-off. This article explains each reason and provides a method to identify which one applies.

First, Establish Which Number Is Wrong
Three key gaps in inventory management are often confused as one, and each has a different owner.
First, there’s the difference between the physical count and the system quantity. For example, the shelf has 480 units, but the ERP shows 500. This mainly involves warehouse management and cycle counting, which traceability projects like the one at Langeberg Foods often target.
Second, we compare the system quantity multiplied by cost to the inventory sub-ledger value. This points to issues with costing.
Third, we compare the inventory sub-ledger with the inventory control account in the general ledger. This gap affects the P&L, which is the focus of this article. Before exploring these gaps, make sure your comparison is valid. Sometimes, the differences arise from running the two reports under different conditions. For instance, one report might show data as of month-end and the other as of today; one could be filtered for a specific subsidiary while the other includes all locations; or one might include in-transit stock while the other does not.
Make sure to run both reports for the same date, the same entity and location, and the same set of inventory accounts. If the difference disappears, then the issue lies with the comparison, not the financial records.
Cause 1: A Journal Entry Posted Directly to the Inventory Account
The inventory control account is meant to change when transactions update the sub-ledger, such as receipts, fulfillments, inventory adjustments, or assembly builds.
If someone makes a manual journal entry directly to that account, the general ledger will change, but the sub-ledger will not. This difference will continue into future periods until someone reverses or offsets it. These manual entries often happen for understandable reasons.
For example, an auditor may request a year-end reclassification. A rounding difference might be added to complete a previous close. Sometimes, a team member with access to the general ledger but who doesn’t fully understand the costing process could mistakenly correct the account in the closest way. Individually, each entry may seem reasonable; however, together, they can cause a mismatch between the two ledgers.
To minimize this risk, two controls are helpful. First, restrict who can post manual journals to inventory control accounts, or require approval for any entry that affects them. Second, if a direct entry is truly necessary, make sure to pair it with a matching inventory adjustment in the sub-ledger so both sides are updated together.
Run a detailed report on the inventory account to identify the cause of discrepancies while focusing on manual journal entries for the period. If the difference matches one entry or a combination of entries, you have likely found the source.
Cause 2: The Costing Method Is Making Decisions No One Reviewed
Every ERP values inventory through a costing method, and each method has its own ways of producing differences between the ledgers.
The average cost of items changes as receipts are entered. If a receipt is late or has the wrong price, it can affect the cost assigned to items sold later. Standard cost tracks differences in variance accounts, which should be reviewed regularly to remain useful. If negative inventory is allowed, the system might record a sale at an estimated cost and adjust it when it processes the receipt. This adjustment will be recorded in the same period as the receipt.
The main issue is ownership. The costing method directly influences the gross margin, making it an important accounting decision. Often, this decision is made during item setup without input from the finance team, regardless of whether the system is NetSuite, Sage Intacct, or Business Central. By treating it as a finance decision rather than a default setting, it becomes easier to explain any differences later.
Practical checks:
• Confirm which costing method is applied at the item level and whether it matches the documented policy.
• Identify any items whose costing method changed during their life.
• Review whether negative inventory is permitted, and if so, how often it occurs.
• Check when the purchase price variance and other costing variance accounts were last reviewed and cleared.
Cause 3: Goods Received, Not Yet Invoiced
The third cause is a cut-off gap. When goods arrive in the ERP system, it usually records the inventory by debiting it and crediting an accrued purchases account, often called goods received not invoiced (GRNI). When the vendor bill is entered, usually days or weeks later and sometimes in the next period, it clears that accrual.
Ideally, the account should balance out over time. However, it can build up: receipts might not match a bill, bills can be entered without a corresponding receipt, and differences in quantity or price between the purchase order, receipt, and invoice may go unresolved.
GRNI often lacks a clear owner. Procurement might see it as a finance issue, while finance might see it as a purchasing problem. Assigning someone to own the account and reviewing it monthly is an effective control measure.
To check for this issue, look at the age of the GRNI balance by receipt date. Items that remain unmatched beyond your regular vendor billing cycle, usually 30 to 60 days, need attention since older balances are more likely to be unresolved mismatches rather than valid accruals.
A Tie-Out Sequence to Find the Source
Before rebuilding costing configuration or opening a support ticket, work through this sequence at period end:
Step 1: Run the inventory valuation report as of period end and note the total.
Step 2: Pull the inventory control account balance from the general ledger for the same date and scope, and calculate the difference.
Step 3: Review manual journal entries posted to the inventory account during the period, and identify any without a sub-ledger counterpart.
Step 4: Age the GRNI balance and flag items older than your normal billing cycle.
Step 5: Run a negative inventory report for the period and quantify the resulting cost adjustments.
Step 6: List items whose costing method changed during the period.
Step 7: Document the explained and unexplained amounts, and set a tolerance for what requires further investigation.
In practice, steps three and four often explain a meaningful share of the gap, which is why it helps to start there rather than with the costing configuration. Any amount left unexplained after step six is more likely a genuine costing variance, and it benefits from review by someone with inventory accounting experience who can examine item-level cost history.
Why Implementation Often Misses This
User acceptance testing, even as enterprise testing becomes more automated, confirms that transactions post correctly. It generally cannot confirm that the ledgers still agree after months of live volume, because that condition only develops after go-live. The monthly inventory tie-out is a recurring control, and recurring controls typically sit outside an implementation statement of work. When the implementation partner rolls off, the responsibility can go unassigned.
This reflects a broader pattern in financial reporting controls. KPMG’s review of FY’25 annual reports, based on Audit Analytics data, noted that material weaknesses related to financial close, inventory, and systems increased compared with the prior year.
The issue is usually less about the software a company chose and more about whether the finance function has the capacity to operate it month after month. As ERP News has noted, success beyond go-live depends on sustained adoption, and the close is part of that. That work can sit with an in-house controller, or with a team providing NetSuite accounting and close support alongside internal staff.
Whoever owns the ERP should ask one question: who performs the monthly inventory sub-ledger to general ledger tie-out, and can we see last month’s?
If the answer is unclear, that is a good place to start.










