Inventory and Stock

Quick answer

Track ingredient and liquor stock in dineomAI: movement ledger, recipe food cost, guided counts, and variance reports. Stock never hides your menu.

dineomAI tracks the ingredients and liquor you buy, not portions of finished dishes. You see what's on hand, what each item costs, what you're using up, and where stock is going missing. You manage it all at /admin/stock (it shows as Inventory in the sidebar).

The most important thing to know up front: inventory here is for your costing and control. It never hides or blocks the diner menu.

Inventory never hides your menu

Running low on an ingredient does not pull a dish from the guest chat, and a dish never goes "sold out" on its own. What a guest can order is controlled only by the availability switch on each menu item.

To take a dish off the menu (to "86" it), open /admin/menu, find the item, and turn its availability off. It disappears from the chat at once, and comes back when you turn it on. Availability is a manual switch, fully separate from your stock numbers. See add your menu for the details.

Add a stock item

On the stock page, add each thing you buy. For every item you set:

  • Name and category (for example Vegetables, Spices, Spirits, Beer).
  • Kind: ingredient or beverage.
  • Measured in: the base unit you want to track it in (grams, millilitres, or pieces; kilograms and litres also work).
  • Bought by and size of one purchase unit (optional): if you buy in a different unit, say a 750 ml bottle or a 5 kg sack, set this so dineomAI can convert a purchase into your base unit. Leave it blank if you buy in the same unit you measure in.
  • Alert when stock runs below (optional): the low-stock threshold for that item.

For a beverage you can also set a peg / serving size in ml (for example 30 or 60). With a bottle size and a peg, liquor can be counted in bottles and measured in pours. The item's cost is set the first time you record a purchase, so new items start at a cost of zero until you buy.

Move stock: buy, use, waste, count

Every change to an item is a movement, recorded in a running ledger so the numbers always add up. Each item row has these actions:

  • Buy: receive stock. Enter the quantity in your purchase units and the total cost paid. dineomAI converts it to your base unit and refreshes the cost per unit to the latest price.
  • Use: stock used up in cooking, prep, or service. This is normal consumption, not waste.
  • Waste: stock thrown out, with a reason (spoiled, spillage, staff meal, or breakage).
  • Count: set an item to a number you have physically counted. This overwrites the current on-hand figure and logs the difference as an adjustment.
  • Edit: change an item's name, category, units, cost, or low-stock alert, or deactivate it to remove it from the list.

When an item drops to or below its alert level, it is flagged Low in the list and appears in the low-stock report. A low-stock badge can also show in the top bar.

You can tell dineomAI which stock items go into a dish. On the menu page (/admin/menu), open an item's Recipe drawer (the 🧪 button) and add each ingredient with the quantity used per dish.

As you build the recipe, the drawer shows the dish's food cost in rupees and as a percentage of its price, plus the margin per dish. That makes it easy to spot dishes that cost too much relative to what you charge.

Once a recipe is set, selling that dish automatically depletes its ingredients from stock, so your on-hand numbers and consumption reports stay current without any manual entry. This runs in the background and is best-effort: it never blocks or slows down a sale, even if an ingredient is missing or its recipe is incomplete. If a whole order is cancelled, that depletion is reversed so nothing is consumed for a sale that did not happen.

Guided stock count and variance

When it's time to count, use the Stock count session (the Stock count button near the top of the page). It lists your items in one screen so you can enter the actual quantity on hand for each, with liquor counted in bottles. Blank rows are skipped.

For every item, the variance is the counted figure minus what the system expected, and the running net variance value in rupees is shown as you go. Submitting the count writes the adjustments through the ledger and records the session, so you have a history of what was off and by how much.

Liquor pour variance (bar)

For beverages, the pour variance report compares the pours that should have sold (from recipe consumption) against what your counts say is actually gone. The gap is the unexplained loss: over-pouring, spillage, or worse. The report shows pours sold, the variance, and the rupee value of what's missing, so a bar can see leakage at a glance.

Reports on the stock page

Alongside the valuation total at the top (the value of everything on hand), the page carries these reports:

  • Low stock: items at or below their alert level.
  • Consumption: purchased, consumed, and wasted quantities per item over a period.
  • Stock variance: consumption and the net count adjustment per item, with the rupee impact.
  • Pour variance (bar): liquor over-pour and loss, as described above.

FAQ

Does running out of an ingredient hide a dish?

No. Stock levels never change what guests can order. A dish only leaves the chat when you turn its availability off on the menu page. Inventory is purely for your costing, usage, and variance tracking.

How do I mark a dish as 86 / sold out now?

Open /admin/menu, find the dish, and switch its availability off. It vanishes from the guest chat immediately and returns when you switch it back on. There is no stock count involved.

How do I see a dish's food cost?

Set its recipe. On the menu page, open the item's Recipe drawer (the 🧪 button) and add each ingredient with the quantity used. The drawer then shows the food cost in rupees, the food-cost percentage of the price, and the margin per dish.

What is pour variance?

It is a bar control check. dineomAI works out how many pours should have left the bottle (from sales) and compares that to your physical count. Any shortfall is flagged as over-pour or loss, with a rupee value, so you can catch leakage early.

What to do next

Open /admin/stock, add the ingredients and liquor you buy, and record a purchase so each item gets a cost. Then link recipes to your dishes from add your menu to start seeing food cost on every plate.