Pre prepped products

Why not create the product, inventory item and recipe and once youve made them add them to inventory as an inventory transaction (“delivery”) and let the inventory of eggs, flour etc decrease as you sell them

Just set them up as any other product this will increase inventory of the item and reduce when selling

1 Like

@njrobbe, I understand exactly what you are going for here. I would like to be able to do the same thing with Burger Patties.

When I sell a burger containing a Patty, it decreases the Ingredients of that Patty from stock. So I can see that Ground Beef and Eggs have been consumed. It also shows the Cost of Patty (because I have a Product and Recipe linked together) and how many I sold.

However, I do not have an Inventory Item named Patty, so it cannot be “consumed”. Even if I had this as an Inventory Item, I would need to “Purchase” it as @RickH has mentioned.

It would be a nice feature to have to be able to consume raw Ingredients to create another Item… some way to deplete ground beef and create a Patty at the same time. This way we know there are 22 Patties ready, but 0 Ground Beef left (time to order!). When we sell, we see Patty Inventory decrease (not raw ingredients), and we will know when to prepare more.

I do not know of a way to make this scenario operate at this time. AFAIK, there are little-to-no Inventory Actions available in Automation to make this a reality.

It sounds like can be implemented with a Prep Ticket that generates no sales figures.

We may have when needed :wink:


Reading this thread, this makes me think that this is actually reflecing the need of a product tree. The end product that appears on the menu at the end of the process line. This product has ingredients nested in it. Which we can handle through the recipe system.
However, some of the ingredients are also made in the shop / kitchen. An hamburger might be a good eample. It contains bread (purchased and used the burger), onions (purchased, sliced and usedin the burger), greens (purchased, cut and used), tomotoes (purchased, sliced and used), burger itself (made of other ingredients; ie minced meat, onions, bread crumbs, salt and pepper andother seasoning). Among the above ingredients everything is used directly except for the burger itself.
@emre, such a non-sales tcket would serve the purpose. We may also need to backtrack inventory of theese nested items. For example, one may need to know how many hamburgers can be made with the minced meat inventory waiting in the deep freezer. Would this need enhancements on the recipe system? Or, can be configured by the user? Or through reporting module etc?

1 Like

This can be done with reports but it would be difficult to manage in a restaurant. To keep it accurate you would constantly be needing to update it. If its only 1 or 2 items it may not be bad but if you try to do this for all of your stuff it would not be realistic. The tried and true method for restaurants is the look and see method.

In a non food business where production is exact and ingrediant sizes dont change much its very realistic and used often. But for restaurant its just not realistic, for example you try to be accurate on things but Tomato for example not all tomato are same size…

A production kitchen warehouse is great for bakeries and places that use offsite storage assemble product and transport product to another location. If everything is in house and your not really transporting anything then there is not much reason to do this it just adds complexity. You can account for inventory when final product sold and adjust periodically for ordering reasons.

I do understand the analogy with hamburger however, the flow would be you assemble the patties ahead of time and often some people use gourmet ingrediants in them so you want to use production environment creating them then press a button to transfer finished product to a warehouse and subtract ingrediants from production warehouse.

Recipes can be created in this very fashion. No need for a separate product for this.

The main point of this discussion is the ability when needed in production/kitchen > cook/kitchen environment to store ingrediants in Warehouse A, create Product in Production that uses ingrediants from Warehouse A then Transfer that Product to Warehouse B in cook Kitchen. The method Emre described would work but I feel something that works from Warehouse Screen might be better.

Or even better in v5 custom Entity Screen that uses automation to do it. Could build a custom Production Screen to drive entire process. This would be my preferred choice but it would more than likely require some things not available to us yet.

The scenario is two-fold. It is not just about tracking Inventory, it also about tracking Cost and Profit Rate. SambaPOS does both of these things already. However, consider this:

Master Product: Burger
Ingredient Products: Patty, Bun, Cheese, Veggies, Condiments, etc.
Sub-ingredient Product Inventory for Patty: Ground Beef, Bread, Eggs, etc.

We cannot track the Inventory of the Patty itself (nor the Burger as a whole); rather, we can only track the Ingredients (Ground Beef, Bread, Eggs, Buns, Cheese, Lettuce, etc)

The Burger Master Product has a null Profit Rate, because its Recipe contains 0 Inventory Items. Instead, the Inventory Items are mapped to Order Tags. So now we need to look at the Profit Rate of each of the Ingredient Inventory Items (Order Tags) - again, Patty, Bun, Cheese, etc.

Untouched Inventory:

Sell 1 Burger:

Inventory Consumption:

Looking at the above, we see Ingredients being consumed. But we don’t see the Master Product (Burger), nor the Patty being consumed - only the Patty Ingredients, and other Order Tags (Bun, Cheese, etc). The reason we don’t see Patty consumed is because it is not an Inventory Item - it only has a Recipe composed of other Inventory Items (Ground Beef, Eggs, etc)

Now let’s look at Cost and Profit:

The above Cost analysis looks completely whacked. It shows the correct quantity of Products being sold, and their presumed Cost. Except for the Master Product (Burger) - it has no Cost, so no Profit. And the Patty, Buns, Cheese, etc, while they have a Cost, they have no Price, so the Profit Rate is negative. This analysis (Profit Rate) is somewhat useless in the current incarnation.

Maybe I set it up incorrectly, but I would have assumed that the Cost of the Burger would have been the Cost of the Order Tags combined, but this is clearly not the case. And to be honest, I don’t really care about the Profit on the Bun, Cheese, Bacon, etc… I just want the Profit on the Burger Master Product. Of course, I can calculate this…

4.65 + 8.00 + 3.75 + 106.93 = 123.33
290.00 / 123.33 = 2.35

But after having sold 30 Burgers with varying Order Tags, the manual calculation becomes tedious to say the least, not to mention - I have no idea if the Cheese (for example) was used on a Burger, or a Hot Dog. In fact, the Bun may have been used for a Pulled Pork Sandwich as well…

But I digress… I have led this discussion astray from the original Topic of building prepped Products to use as Inventory. Sorry for the hijack.

Yes we need Inventory Actions exposed, but this could certainly work.

Look at my post again @emre, I have shown the Cost screen, and explained why it does not work well for this scenario.

I think this topic is a good food for thought unless it is a dead end structurally.

I see. You want to track inventory by order tags instead of recipes. That’s whole different idea.

Track Inventory by Order Tags linked to sub-products, with Recipes that include Inventory Items. This shows the way I have it set up…

But I had an issue when it came to Recipes for the same Products linked to Product Portions. That’s when I asked for a Recipe Multiplier.

This Topic is about something else, so I’ll stop talking about my other issues here, and get back to talking about a method to pre-prep Inventory Items.

Yes I know what you want. You need dynamically created recipe definitions that builds from your order configuration. Something like you build recipe lines by choosing order tags. In fact you want just the reverse of what we have actually. You want to map recipe items to order tags instead of mapping products to order tags. That feature implemented to solve a basic need we encountered while building hamburger + coke type configurations. Coke is an order tag for hamburger but we map it to coke product to be able to deduct from inventory. That does not increase hamburger cost. It has it’s own price and cost.

I honestly thought tracking lettuce inventory or tracking meat inventory by count of meatballs is not needed in general just because things @Jesse stated on his previous post. Instead I decided to simplify process, focused on creating end of day documents to allow manual inventory corrections and calculating real time inventory levels on the fly. So I didn’t processed each orders individually. Just calculate it from totals.

Like we discussed with @pauln, simplifications I made to conventional ERP and Accounting systems is the real reason of these issues. I tried to simplify these complex setups for restaurants but yes in a perfect world like account trees we need product trees too. A food manufacturing system has to support semi manufacturing, resource planning, pre-productions, cost centers, shelf life of indigents or how much weight meat losses in cold chain etc… Yes how many hamburgers we can produce really depends on how many days meat waits in refrigerator .The question is if we should go in that direction… or not…


What we need is to figure out a way to keep it simple by default but allow advanced setup by experienced people also possible. Perhaps a way to do just that but it would require very technical knowledge. It can’t be a mode to turn off and on because inexperienced people will still mess with it and get frustrated and move to another solution.

So how would we do it? Maybe figure out a way using API and a few options with actions that would allow it but it would not be obvious.

Look what @rickh did with menu recently. That was wild and completely unexpected and very technical but he did it and it works.

1 Like

Let me release V5 and I’ll check later if it will be possible to map order tags to recipe items. It is possible of course but I’m wondering how it will affect performance. A lot of changes needed as we don’t eval orders individually while calculating inventory levels.

If I can implement that we won’t need to have products or recipes for order tags. Everything will configured in main product recipe. So this is not an advanced setup. It will greatly simplifies @QMcKay’s case.



Would something like this not be the easiest option? Whereby you create 2 products. One called chocolate brownie and one called chocolate brownie Prep. When you sell a chocolate brownie, it takes out one chocolate brownie as per usual. However as shown in the picture if you select chocolate brownie prep, it takes out all of the relevant ingridients from your stock (in my case 10 eggs, 250gr of flour, 500gr of chocolate, 250 gr of flour and 800 gr of sugar but at the same time it does negative 20 of the brownies thereby adding 20 brownies to stock). At the moment, this is not possible because you are not allowed to have a negative value in the recipes!


That sounds good until the negative brownie thing. That does not fit the flow of what recipe is. That flow should be transaction document.

Ok here is an idea. I am thinking what if we had premade tickets which behave like @emre said above in regards to inventory. Automate a system for needs so it creates these tickets automatically each day and lists them on a Ticket Lister widget. When you press Order Ready button it consumes ingredients for final product and then puts final product into Restaurant Warehouse inventory.

It would be like a scheduled production chart for each day. Now what if we need to change the process and alter the production schedule? Well we could automate a way to enter changes and it will automatically adjust the tickets created according to production needs.

I think most of this can be automated now but we may need some help from @emre with a few things.

@Jesse what requested here is basically reporting / disallowing products from selling when semi-produced products, related ingredients or raw materials depletes. That comes to a point I never designed inventory system for. We basically focused on cost tracking and inventory level correction based system. We assume computed inventory will never exactly match to physical inventory. That’s why order tag based cost calculation is something I’ll work for but this is something different. That much more like catering type business. A regular restaurant never runs out of food. If -in a rare case- x meat finishes they use y meat or serve stuff without ketchup for example.

Portion based tracking might be a better fit for that.

Your right I’m thinking more linear I should look at what’s really the problem.