Inventory Journal Entries: From Receipt to COGS and Write-Offs
Inventory journal entries record how stock enters, moves through and leaves the business: receipt, invoice, landed cost, issue, adjustment and write-off. This guide walks one purchase from goods receipt to cost of goods sold and shows, at each step, what is debited, what is credited, which document is the evidence and how FIFO or Moving Average Cost sets the amount.
On this pageJump to a section
Inventory journal entries at a glance
The table shows a document-driven perpetual inventory process. The account names are types, not GL numbers: the chart of accounts, the accounting framework and the ERP configuration decide the final names and presentation.
| Event | Debit | Credit | Source document | Posted by |
|---|---|---|---|---|
| Purchase order raised | — | — | Purchase order | Nobody (commitment accounting is the exception) |
| Goods received | Inventory | GRNI (goods received not invoiced) | Goods receipt | ERP, from the receipt |
| Freight / qualifying landed cost | Inventory | Accrued freight or Accounts payable | Freight invoice, landed-cost allocation | ERP, from the allocation |
| Supplier invoice matched | GRNI | Accounts payable | Supplier invoice + three-way match | ERP, from the invoice |
| Invoice price differs from receipt | GRNI + Inventory (or Purchase price variance) | Accounts payable | Supplier invoice | ERP, per variance policy |
| Goods issued / sold | Cost of goods sold | Inventory | Sales delivery or issue note | ERP, from the issue |
| Count shortage | Inventory shrinkage (expense) | Inventory | Count sheet + approved adjustment | Warehouse counts, finance approves |
| Count surplus | Inventory | Surplus or variance offset per policy | Count sheet + approved adjustment | Warehouse counts, finance approves |
| Write-down to net realizable value | Inventory write-down expense / loss | Inventory (or allowance for write-down) | Valuation review | Finance, with documented basis and approval |
| Write-off of unusable stock | Inventory write-off expense | Inventory | Scrapping document | Warehouse scraps, finance approves |
| Return to supplier (not yet invoiced) | GRNI | Inventory | Return delivery | ERP, from the return |
| Return to supplier (already invoiced) | Accounts payable or return clearing | Inventory | Return delivery + credit note | ERP, from the credit note |
| Supplier paid | Accounts payable | Bank | Payment run | AP, no inventory effect |
Two things to notice before the detail. A supplier payment settles accounts payable and does not touch inventory. Every routine stock posting keeps quantity, valuation and source evidence together, so a standalone journal posted merely to force agreement hides the underlying error.
The running example
One item, one month, two purchases. Prices are chosen so that the method effect is visible.
| Date | Event | Quantity | Unit price | Value |
|---|---|---|---|---|
| 3 Sept | Purchase order to supplier | 100 units | €10.00 | €1,000 (commitment) |
| 5 Sept | Goods receipt against the order | 100 units | €10.00 | €1,000 |
| 6 Sept | Freight invoice for that delivery | — | — | €50 |
| 12 Sept | Second receipt, price increased | 100 units | €12.00 | €1,200 |
| 15 Sept | Supplier invoice for the first receipt | 100 units | €10.00 | €1,000 |
| 20 Sept | Sales delivery to a customer | 150 units | — | cost per method |
| 26 Sept | Cycle count finds 48 units instead of 50 | −2 units | — | cost per method |
| 30 Sept | Month-end: second receipt still not invoiced | — | — | €1,200 open in GRNI |
After the freight is capitalized the first receipt costs €10.50 per unit (€1,050 for 100 units). The second receipt costs €12.00 per unit. Everything that follows uses those two numbers.
1. Purchase order: no journal entry
A purchase order authorizes a purchase. It creates neither an asset nor a liability, so nothing is posted. Commitment accounting, where it is used, is the exception, and this example assumes none. The order still matters to accounting later: it is the price reference for the three-way match and the reason a goods receipt can be valued at all. An open order is not GRNI. The distinction is explained in the GRNI guide.
2. Goods receipt: Inventory / GRNI
On 5 September the warehouse receives 100 units. The company now controls inventory it has not yet been billed for. A valued goods receipt records both facts at once:
The debit gives the stock a value at the purchase-order price. The credit is an accrual: the obligation exists because the goods arrived, even though the supplier invoice has not. This is the entry that keeps warehouse quantity and general-ledger value in step from the first day. The mechanics of the receipt itself are covered in goods receipt accounting.
GRNI is the name used in this guide. Other charts of accounts call the same account uninvoiced receipts, accrued purchases or receipt accrual. The treatment is the same.
The unit cost after this entry is €10.00, until the freight arrives.
3. Landed cost: qualifying acquisition costs
On 6 September the forwarder invoices €50 for the delivery. Costs of bringing inventory to its present location and condition are part of its cost, provided they qualify under the accounting framework and the company’s policy. Assume this freight qualifies: the €50 is allocated to the 100 units.
Unit cost becomes €10.50. If the freight invoice has not arrived but the cost is known, the credit goes to an accrued freight account instead and is cleared when the invoice is posted. Allocation rules (by value, by weight, by quantity) are the subject of the landed cost guide. Timing matters: the allocation should be posted before the units are issued, so that inventory and cost of goods sold carry the right value from the start. A qualifying cost that arrives after issue needs a revaluation, a COGS adjustment or an accrual, whichever the policy prescribes.
4. Supplier invoice: clearing GRNI
On 15 September the supplier invoices the first delivery: 100 units at €10.00, matching the order and the receipt. A matched invoice does not touch inventory. It moves the obligation from the accrual account to the supplier’s account:
The €1,000 credit created at receipt is now cleared and the liability is a normal payable with a due date. Three-way matching of order, receipt and invoice is the control that allows this entry to be posted automatically.
5. Invoice price differences (separate illustration)
Suppose the supplier invoices €10.20 instead of €10.00: €1,020 for goods received at €1,000. The receipt accrual is cleared at its own value, and the €20 difference needs a home.
This price-variance example is illustrative and is not carried into the running example. The main example continues with €10.50 and €12.00.
If the units are still in stock and policy permits capitalization, the €20 increases inventory. If they have already been issued, the difference goes to cost of goods sold or to a purchase price variance account. Which applies is a policy decision the ERP is configured to follow. What must not happen is a manual adjustment of the inventory balance to “make it fit”.
For a separate standard-cost example with receipt PPV and a later invoice difference, see purchase price variance journal entries.
6. Goods issue and COGS: FIFO vs Moving Average Cost
By 20 September there are 200 units on hand: 100 at €10.50 and 100 at €12.00. A customer delivery takes 150. The quantity side is simple. The value side depends on the costing method, and the method is the only thing that changes in the entry.
FIFO issues the oldest layer first:
Moving Average Cost uses the current average cost of everything on hand:
The journal entry has the same shape under both methods. Only the amount changes:
Revenue is recorded separately (Accounts receivable / Revenue) through the customer invoice. Keeping the two apart is what allows a delivery to be posted at cost on the day it leaves the warehouse even if the invoice is issued later.
The €37.50 difference between the methods is not an error in either. It is the point of choosing a method. How each one behaves over many receipts is covered in the FIFO guide, the Moving Average Cost guide and the side-by-side inventory valuation methods comparison. For production issues the same entry debits work in progress instead of cost of goods sold, as shown in production orders and the general ledger.
7. Inventory adjustment: count difference
On 26 September a cycle count finds 48 units where the system shows 50. After the discrepancy is investigated and no unposted document explains it, an adjustment is approved for −2 units.
The offset account follows the reason: shrinkage, damage, obsolescence or another approved variance account. This example uses inventory shrinkage. For a surplus, debit Inventory. The credit follows the cause and is not automatically the same account used for a shortage.
Three rules keep this entry honest:
- Value follows the method. The adjustment is valued at the cost the units carry, the FIFO layer they would have come from or the current average, not at a typed-in price.
- Reason and approval travel with it. A reason code and an approver are part of the posting, as described in the inventory adjustment guide.
- A count difference is not automatically an adjustment. If the investigation finds an unposted receipt or delivery, the fix is to post that document. The inventory reconciliation guide covers the investigation, and cycle counting covers how the count itself is organized.
8. Write-down vs write-off
Two different events are often filed under one name. After the count, 48 units remain at €12.00 (FIFO) or €11.25 (Moving Average Cost). The two scenarios below are alternatives, not sequential events.
Scenario A: write-down
The 48 units remain saleable, but net realizable value falls to €9.00 per unit. Under a lower-of-cost-and-net-realizable-value policy:
Under both methods the 48 units are now carried at €432. Some companies credit an allowance account instead of Inventory so that cost and write-down stay visible separately. The balance-sheet result is the same. Whether the expense sits inside or outside COGS in the income statement follows the accounting framework and company policy. A write-down is a valuation judgement, so it needs a documented basis and an approval, whether it is posted through an ERP valuation process or a finance journal.
Scenario B: write-off
Instead, assume 10 of the 48 units are found damaged beyond use before any write-down is posted. They leave stock physically at their carrying cost of €12.00 under FIFO or €11.25 under Moving Average Cost. The €9.00 value from Scenario A does not apply here:
The write-off reduces quantity and value. The write-down reduces value only. The difference, the tax treatment and the controls around scrapping are the subject of the inventory write-off guide.
9. Return to supplier (separate illustration)
In a separate illustration, five units of the second delivery are rejected on inspection and returned. This return is not carried into the running example or its €1,200 month-end GRNI balance. The entry depends on whether the supplier invoice has been posted. Both entries value the return at the €12.00 receipt cost.
Before the invoice, the return reverses part of the receipt accrual:
After the invoice, the return and the supplier’s credit note reduce the payable. Some systems route this through a return clearing account first, with the same end result:
Return valuation follows the costing method and the ERP’s return logic: some systems reverse the original receipt valuation, others apply the current average. The €60 entries show one treatment.
10. Month-end: what stays in GRNI
On 30 September the second receipt (€1,200) has still not been invoiced. No additional accrual is needed, because the receipt already recorded it: the €1,200 credit is sitting in GRNI and represents the liability for goods received but not billed. The month-end task is to review that balance, not to create it:
- every open GRNI line should match an open, uninvoiced receipt line;
- lines older than the supplier’s normal invoicing cycle need a query to the supplier or a check for an invoice posted without a match;
- clearing follows matching, correction or an authorized exception process, not a journal posted to tidy the balance.
Accounting designs without a GRNI account reach the same liability through a period-end accrual that is reversed in the next period. The absence of the account name does not change what has to be recorded. The GRNI guide covers ageing and reconciliation of the balance.
Perpetual vs periodic: where the entries differ
Everything above assumes a perpetual system: inventory and cost of goods sold are updated by each document. A periodic system does not update them for each movement. Purchases are collected in a Purchases account and cost of goods sold is calculated at period end from the closing count. Conceptually:
Under a periodic approach a shortage is absorbed into calculated cost of goods sold unless it is separately identified, which is why count differences are harder to investigate. The comparison, and when each system is appropriate, is in perpetual vs periodic inventory.
What a controlled ERP should do
A mature ERP connects the operational evidence to the accounting consequence:
This is a vendor-neutral control model, not a claim that a particular product implements every step. The purchase-to-pay process guide provides the wider context for receipts, invoice matching and supplier settlement. The entries in this guide fall into three categories.
1. Document-generated postings
Goods receipt, landed-cost allocation, matched supplier invoice, delivery or issue, and supplier return generate their postings from the business document. Quantity, valuation and account determination travel together. If a posting is wrong, the source transaction is wrong: investigate it and correct or reverse the document.
2. Approval-controlled inventory postings
Count adjustments and write-offs connect the count sheet or scrapping evidence to the reason, the approval and the resulting posting. The warehouse supplies the evidence and authorized reviewers approve the correction. Those references stay available through the audit trail.
3. Exceptional finance journals
Valuation adjustments and policy-defined accruals may require finance review or an authorized journal. A documented basis and an approval explain the exception.
A well-controlled ERP restricts direct manual journals to inventory control accounts. Routine quantity and value corrections go through the underlying inventory document, so that quantity, valuation, GL, source document and audit trail stay synchronized. Exceptional finance journals can exist, with authorization, and are reconciled to the inventory records.
A journal posted merely to force agreement hides a missing, duplicated or mis-valued document. Investigating that cause is the focus of why warehouse and accounting never agree.
FAQ
What is the journal entry for an inventory adjustment?
For a shortage found at a count: debit an inventory shrinkage (loss) expense account and credit Inventory for the missing units, valued at the cost they carry under the company’s method. For a surplus, debit Inventory and credit the offset account that fits the cause. The entry should reference the count and an approval.
What account type is an inventory adjustment?
“Inventory adjustment” is not one universal GL account. The inventory side is a current asset account. The offset depends on the reason: shrinkage, loss, damage, obsolescence or another approved expense or variance account.
Does a purchase order create a journal entry?
Normally no: a purchase order is a commitment, and only environments with commitment accounting post it. The first financial entry is the goods receipt: debit Inventory, credit GRNI.
Is GRNI a liability?
For an uninvoiced receipt, the GRNI credit balance represents the accrued liability for goods received but not yet invoiced. It is cleared when the supplier invoice is matched and the amount moves to accounts payable. Exact classification and presentation follow the accounting framework and the chart of accounts.
How do you write off inventory in the journal?
Debit an inventory write-off expense account and credit Inventory for the quantity scrapped, valued at its carrying cost. The posting should be supported by a scrapping document and an approval. A write-down of stock that is still saleable but worth less is a different entry that reduces value only.
What is the journal entry for cost of goods sold?
Debit Cost of goods sold and credit Inventory for the cost of the units delivered. The amount comes from the costing method: the oldest cost layers under FIFO, the current average under Moving Average Cost. Revenue is recorded separately through the customer invoice.
Where does freight go in inventory accounting?
Freight and similar costs of bringing goods to their present location and condition are added to inventory cost when they qualify under the accounting framework and company policy: debit Inventory, credit Accounts payable or Accrued freight. They reach the income statement through cost of goods sold when the units are sold. A qualifying cost that arrives after issue needs a revaluation, a COGS adjustment or an accrual.
Conclusion
Inventory accounting follows a sequence of operational events: receipt, invoice, freight, issue, count and scrapping. Each entry has a fixed shape: the costing method sets the amount and the document is the evidence. Account determination and presentation follow the accounting framework, company policy and ERP configuration.
The control objective is a traceable path from each inventory event to its valuation and GL entry. When warehouse and finance disagree, investigate the source and correct the document. Document-based corrections and carefully authorized exceptions keep quantity, value and accounting synchronized without hiding the cause of a difference.
Bring your inventory posting questions to a pilot discussion.
Use the document, valuation and reconciliation checks in this guide to define the workflows you want to evaluate.
Request pilot access