تخطَّ إلى المحتوى
POS Beast
Chapter 19 of 28

Inventory, purchasing and recipes

Ingredients, suppliers, purchase orders, goods receipts, recipes and wastage.

17 topics in this chapter · الإصدار 3.4.0

How stock control works here

There are two different lists and people mix them up. Menu Items are what you sell. Inventory items are the ingredients you buy.

A Recipe is the bridge: it says how much of each ingredient one sold dish uses. When an order is completed, the recipe of each sold item is deducted from stock.

So the sequence is: create your units, create your ingredients, buy them in with a GRN, write the recipes, and from then on selling food moves your stock by itself.

The chapter before this one, Stock from scratch, walks that whole sequence in order with one running example. This chapter is the reference for each screen on its own.

Units of measurement

Inventory → Units (UOM)

Units (UOM), reached from the Inventory page, is where Gram, Kilogram, Litre, Piece and anything else you use are defined.

Keep stock in the smallest unit your recipes use — grams rather than kilograms — and buy in the larger one. The software handles the conversion.

The list separates the two kinds with a Type column: Base Unit for a unit that holds stock, and Derived for one that converts into a base unit. The Conversion column reads a derived unit back as plain arithmetic.

A derived unit can only point at a true base unit — no chains — and a unit that is in use anywhere cannot be deleted.

The units a normal kitchen needs

  • Base units: Gram for anything weighed, Millilitre for anything poured, Piece for anything counted.
  • Derived from Gram: Kilogram, with a conversion factor of 1000.
  • Derived from Millilitre: Litre, with a conversion factor of 1000.
  • Derived from Piece: Dozen at 12 for eggs, and a crate or carton unit for each case size you actually buy.
  • One unit per case size is deliberate: a carton cannot mean six bottles of one drink and twenty-four of another.

Ingredient categories

Inventory → Manage Categories

Manage Categories on the Inventory page groups your ingredients — Meat, Dairy, Dry Goods, Packaging.

It is only for finding things and for filtering the Inventory Report, but on a list of two hundred ingredients that matters.

Add Category takes a Parent Category, which starts on None — top-level category, and a Name. Each category card also has its own Add Sub-Category button.

Filtering the Inventory list by a top-level category also covers everything in its sub-categories, so Meat finds Poultry too.

Adding an ingredient

Inventory → Add Ingredient

Add Ingredient asks for an Ingredient Name, a Category, an optional Sub Category, a Base Unit (stock kept in), a Default Purchase Unit and a Reorder Level, and it has an Opening Stock (optional) block at the bottom.

Base Unit is the smallest unit your recipes use, for example Gram. It is locked once the item has stock history, so choose carefully.

Default Purchase Unit is the unit you usually buy in, for example Kilogram. It is also the unit your stock is read back to you in.

Reorder Level is the point at which the item counts as low. Set it to roughly what you get through between deliveries.

Cost Price and Current Stock appear when you open an existing ingredient with Edit, along with its generated Item Code, rather than on the Add form.

The chapter before this one walks the whole sequence — categories, units, ingredient, stock, supplier, purchase order, goods receipt and recipe — with one running example.

Opening stock

Inventory → Add Ingredient

The Add Ingredient form has an Opening Stock section — a quantity, a unit and a cost per unit — for what is already in the store room the day you start.

Use it once, on setup. After that, stock should only ever move through purchases, sales, wastage and adjustments, so the ledger tells the true story.

Adjusting stock by hand

Inventory

Adjust Stock on an item asks for a Direction — Stock In (+) or Stock Out (−) — a Quantity and a Reason / Note, which is required.

Use it after a physical count, or when something is lost. Leave the cost box blank to keep the current average cost.

It needs the Adjust Stock Manually button permission.

An adjustment with a vague reason is worthless three months later. Write what actually happened.

Stores: freezers and godowns

Inventory → Stores

Stores are locations holding stock outside the main inventory — a freezer, a godown, a second kitchen.

Transfer to Store on an item moves quantity from the main stock into a store, with a note. The main figure drops and the store's rises.

Manage Stores is where you create them.

The stock ledger

Inventory → Stock Ledger

Stock Ledger shows every movement of every ingredient: what came in from a purchase, what went out with a sale, what was wasted, transferred or adjusted.

When a stock figure looks wrong, this is the screen that tells you why.

Low stock warnings

Inventory

An item at or below its reorder level is flagged Low stock, the Inventory link in the sidebar shows a count, and the Dashboard carries a Low Stock Alert.

The Inventory page has a View Low Stock filter and a New PO button, so you can go from the warning to a purchase order in two taps.

Setting a reorder level that actually helps

  • You get a meat delivery every Thursday, and you get through roughly 6 Kg of chicken a day.
  • Set the Reorder Level to 5 Kilogram — about a day's cooking.
  • The moment the freezer falls to 5 Kg the item is flagged, the sidebar shows a count and the Dashboard carries the alert.
  • That gives you a full day to ring the supplier instead of finding out at seven o'clock on a Saturday.
  • A level of zero warns you only once you have already run out, which is a warning nobody can act on.

الموردين

Suppliers

Suppliers lists who you buy from, with their Purchases total, their Payable Balance and their status.

Add Supplier takes a Name, Phone, Email, Address and an Opening Balance (payable) — what you already owe them the day you start.

Starting with a supplier you already owe

  • Name: Al-Madina Meat. Phone: the number you actually ring on a Tuesday morning.
  • Opening Balance (payable): 18,000 — two deliveries from before you had the software.
  • Their row now shows a Payable Balance of 18,000 before you have bought anything through the system.
  • The first payment you record against them brings it down, and their Ledger shows both.

The supplier ledger and payments

Suppliers → Ledger

Ledger on a supplier shows every purchase and every payment, and what is still outstanding.

Recording a payment needs the Add Supplier Payment button permission, and printing the ledger needs Export / Print Ledger.

أوامر الشراء

Purchase Orders

A Purchase Order is what you send the supplier before the goods arrive. It records what you asked for, from whom, and when you expect it.

The list shows the Reference, Date, Supplier, Expected date, Est. Total and Status, with a Receive (GRN) action to turn it into a goods receipt.

POs are optional. If you simply buy things and they arrive, skip straight to the GRN.

A purchase order that already has goods received against it cannot be deleted or cancelled — the software says so and asks you to leave the paperwork alone.

A part delivery against one order

  • You raise a purchase order for 40 Kilogram of chicken at an estimated 620.
  • The lorry brings 25 Kilogram, so the goods receipt is saved for 25.
  • The order stays open with 15 Kilogram outstanding, and Receive (GRN) offers those 15 next time.
  • When the rest arrives you receive it against the same order, and the order closes itself.

Receiving goods (GRN)

Purchases (GRN)

A GRN — a Goods Receipt Note — is what actually moves stock. Purchases (GRN) is the list; New GRN (Receive Goods) creates one.

Choose the Supplier and the Receive Date, optionally link it to a PO, then add a row per item with the Quantity and Cost / Unit.

Receiving against a PO prefills the pending quantities — adjust them to what actually arrived.

There is a Charges block for Tax % and Freight / Delivery, and a Payment block: type what you Paid Now, or tap Pay Full, and choose the account. Anything unpaid is added to the supplier's ledger as due.

Save GRN — Update Stock is the button that files it. Stock goes up and the average cost of each item is recalculated.

A meat delivery, half paid

  • Supplier: Al-Madina Meat. Receive Date: today.
  • Row: Chicken Breast, 40 Kilogram, 620 per Kilogram — 24,800.
  • Freight: 500. Grand Total: 25,300.
  • Paid Now: 15,000 from the Main Cash account.
  • 10,300 is added to the supplier's payable balance, and 40 kg of chicken lands in stock.

Returning goods to a supplier

Purchase Returns

Purchase Returns handles goods that go back — spoiled stock, a wrong delivery.

Find by GRN Reference loads the original receipt so you can see what is returnable, or build the return by hand.

The Settlement block decides where the money goes. Adjust Supplier Ledger reduces what you owe them, which is required while a balance is outstanding; anything above that is refunded into a cash or bank account you choose.

Save Return — Reduce Stock files it and takes the goods back out of stock.

الوصفات

Recipes

Recipes, under Menu Items in the sidebar, lists your dishes and whether each has a recipe. Opening one gives you the recipe editor.

Add Ingredient adds a line: the Inventory Item, what it Applies To, the Quantity and the Unit. The unit defaults to the ingredient's own.

For an item with sizes, the All Sizes lines are the default recipe, and you can add size-specific lines to override them — a large pizza using more chicken than a small one.

The editor shows an Estimated Recipe Cost as you go, which is how you find out what a dish actually costs you.

A menu item with no recipe simply does not move stock when it sells.

A bottled drink

  • Menu item: Cola 345ml.
  • Recipe: one line — Inventory Item "Cola bottle 345ml", quantity 1, unit Piece.
  • Every Cola sold now takes one bottle out of stock.
  • When the bottles fall below the reorder level, the Dashboard tells you before the fridge is empty.

The wastage log

Wastage Log

Wastage Log records ingredients that were thrown away. Log Wastage asks for the Inventory Item, a Quantity, a Unit, a Reason, a Date and a Note.

Log & Deduct Stock files it and takes the quantity out of stock, with the cost recorded so you can see what waste is costing you.

It needs the Log Wastage button permission, which can be given to kitchen staff without giving them anything else.

The Wastage Log Report under Reports → Stock & Purchasing totals it over any period.

A tray of chicken that went off

  • Inventory Item: Chicken Breast. Quantity: 2, Unit: Kilogram.
  • Reason: Expired, with the note "freezer door left open overnight".
  • Log & Deduct Stock takes 2 Kg out and records what those 2 Kg cost you.
  • A month later the Wastage Log Report shows whether that was a one-off or a habit.

Own consumption: staff and owner meals

Own Consumption

Own Consumption records everything eaten from the restaurant by the owner or the staff, at cost price rather than the menu price.

Log Consumption takes a Date, who it was Consumed By, and a search box to add the menu items eaten. It shows the total cost to deduct before you save.

Log & Deduct Stock takes the recipe ingredients out of inventory and records the cost as money out, so it shows in Transactions and in the Cash Flow Report.

Because cost prices are visible on this screen, the module stays hidden until a role is explicitly given it on the Roles screen. Administrators always see it.

The staff meal

  • Date: today. Consumed By: Kitchen staff.
  • Items added: 4 Zinger Burgers and 4 Colas.
  • The screen shows the total cost to deduct — the ingredients, not the menu price.
  • Log & Deduct Stock takes the buns, the chicken and the bottles out of inventory and records the cost as money out.
  • Your sales figures are untouched, because nothing was sold — but your stock and your food cost now tell the truth.

This chapter describes the software as it is today. Every account gets the same guide inside the product, searchable and printable.