-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Open
Labels
Description
What is the feature?
It would be very useful to have ingredient-level inventory, not just menu item stock. For example:
- Define a list of “Ingredients” (bread, lettuce, cheese, tomato, etc.)
- When creating a menu item (e.g. a sandwich), specify how many of each ingredient are needed (e.g. 2 slices of bread, 1 piece of lettuce, 1 slice of cheese)
- When an order is placed for that menu item, automatically subtract the used ingredients from their respective stock totals
- Display low-stock alerts or prevent item from being ordered if ingredients are insufficient
Why this is useful / pain point:
- Prevents overselling based on raw materials, not just finished menu items
- Helps with food cost tracking, waste management, and purchasing
- Gives restaurants better operational control and forecasting
Proposed solution / implementation ideas:
- Add a new backend model for
Ingredient(name, current_stock, unit, etc.). - Add a “Recipe” relation on
MenuItemthat links ingredients + required quantity. - When an order is created/saved, hook into the order-complete event to deduct from
Ingredient.current_stockfor each linked recipe item. - Add admin UI to:
- Manage ingredients (add, remove, set stock)
- Map recipe to menu items (define which ingredients + quantities)
- Report on ingredient usage / low stock
Backwards compatibility / opt-in:
- This could be optional (only enabled when a “recipe stock” mode is turned on)
- Existing “stock on menu item” logic remains for those who don’t need recipe-level tracking
Reactions are currently unavailable