Hello,
Posting Group Setup
There is no single prescribed setup for inventory adjustment accounts; it depends on your reporting preferences. Using the COGS account for adjustments can make sense if you treat losses and write-offs as part of cost of sales. However, using separate G/L accounts (e.g., inventory shrinkage, slippage, or adjustment accounts) allows better visibility and auditability. Avoid general expense accounts unless they’re specifically tracked.
Scenario 1 - Initial Inventory Load
For loading opening inventory, best practice is to post against an Opening Equity account or a designated Inventory Opening Balance account to clearly differentiate it from operational COGS. Temporarily change the Inventory Adjustment Account in the General Product Posting Group or use a unique posting group for this purpose.
Scenario 2 - Zero-Price Items to Customer
If the items were intentionally given away (e.g., promotional), then using the COGS account is correct since the cost needs to hit your income statement. You can use Item Journals with a Reason Code and maintain the default posting group setup if you want this to reflect in COGS properly.
Scenario 3 - Inventory Count Loss (Slippage)
Yes, Reason Codes in Business Central allow you to tag adjustments and later report on them. If you associate Reason Codes with specific G/L accounts, BC posts to those accounts automatically no need to change posting groups. Set up Inventory Slippage as a Reason Code with its own adjustment account for better tracking.
On Managing Multiple Use Cases Without Manual Changes
Rather than manually editing the posting setup each time, it’s better to use either:
Different Reason Codes with G/L account mapping, or
Different General Product Posting Groups assigned temporarily in journals, especially when doing special transactions like slippage or initial loads.
This helps maintain audit trail, visibility, and accuracy without compromising standard posting setup
Yes, many companies either use reason codes with mapped accounts or create duplicate posting groups (like _LOSS variants) to cleanly handle edge cases like slippage, giveaways, or initial inventory all while keeping standard posting untouched. Your thinking is aligned with best practices.
Hope this answer will help you!
Regards,
Mansi Soni