Stock, recipes, and cost of sales, tracked in real time.
How raw materials, menu items, and the POS terminal work together — so every sale deducts the right ingredients and every cost stays accurate.
The big picture
The Inventory Module tracks raw materials, finished goods, and recipe consumption in real time — fully integrated with the POS terminal, whether you run a retail shop or a restaurant.
Every sale posts straight to the accounting ledger as real-time cost of sales — whether the order was for dine-in or take-out.
Standalone vs. Composite products
Getting this classification right from the start keeps your inventory valuation accurate.
| Feature | Standalone (raw materials) | Composite (menu items) |
|---|---|---|
| Definition | Individual items bought directly from suppliers — noodles, sauce, beef, paper bags, dine-in liners | Products made by combining multiple standalone ingredients — a spaghetti meal, a fried chicken pack |
| Stock tracking | Tracked directly via purchase orders, receiving, and manual stock-ins | Tracked indirectly through the stock levels of its ingredients |
| Recipes | None — they are the ingredients | Requires a recipe linking it to its standalone ingredients |
| POS checkout | Deducts 1 unit of this specific product directly | Deducts the exact quantities of every ingredient in its recipe |
Which comes first?
Follow this order to avoid database errors and keep inventory valuation correct.
Add every ingredient and packaging item first
Go to Inventory → Products and create your raw items — chicken piece, gravy mix, dine-in tray liner, take-out box — with type set to STANDALONE.
No ingredient can be used at 0 average cost
Go to Inventory → Stock Movements or Purchase Orders and perform a Stock In for your standalone ingredients, entering quantities and unit purchase costs.
Why this matters: if an ingredient has 0 average cost, the system can't calculate cost of sales — and will block POS transactions to prevent corrupted financial reports.
Build the items your cashiers will actually press
Create a new product — like a Chicken & Rice Meal — and set its type to COMPOSITE.
Link menu items to their raw ingredients
Go to Inventory → Product Recipes, select the menu item, and add each ingredient with its quantity and applicability: Both (every order), Dine-In Only (e.g. paper plate liner), or Take-Out Only (e.g. box, plastic bag).
Frequently asked questions
Why does the POS say "Ingredient X has only 0 on hand, but Y is required"?
This is a safety lock. LedgerIQ prevents "phantom sales" where items are sold without inventory backing. It usually means staff forgot to record a Stock In when a new supplier delivery arrived — record the Stock In for that ingredient to unblock the POS.
How does the Dine-In vs. Take-Out toggle affect inventory?
When a cashier toggles Take-Out on the POS summary panel, the system deducts ingredients flagged as Both and Take-Out Only (like a box or plastic fork), and ignores anything flagged Dine-In Only (like paper liners) — so packaging expenses track accurately to how the customer actually ordered.
What is "Average Cost" and how is it calculated?
When stock is bought at different prices over time, LedgerIQ automatically recalculates the average cost used to value remaining stock and determine cost of goods sold.
How do we record spoiled, expired, or spilled stock?
Never record a sale to clear spoiled stock. Instead, go to Inventory → Wastage Log (or manual Stock Out), record the product, quantity, and reason — spoiled, expired, or spillage. The system deducts it from stock and books the loss under a Wastage/Spoilage Expense account in your ledger.
Getting started
- Add raw materials — register all standalone ingredients, spices, and packaging materials.
- Load initial stock — record incoming stock via Purchase Orders or Stock In to establish stock levels and costs.
- Create menu items — register your composite menu items for the POS catalog.
- Build recipes — configure raw ingredients and set their applicability: Dine-In, Take-Out, or Both.
- Set POS defaults — instruct cashiers to check the Dine-In/Take-Out toggle before finalizing sales.