Skip to main content

How to link POS products with your products or recipes in Yokitup?

Updated over 2 months ago

When you sell a product through your POS system, Yokitup can use that information to automatically adjust your stock, calculate your food cost, or track losses.

To do this, you need to link each POS product to a product or recipe in Yokitup, and choose a linking mode that tells Yokitup how this sale should affect your inventory.


🎯 What is the purpose of linking?

  • Automatically deduct the correct ingredients from stock

  • Handle options, add-ons, "no" buttons, substitutions…

  • Connect POS sales to your recipe database

  • Accurately calculate food cost

⚠️ Any changes to your configuration (associations, recipes, costs, etc.) are not retroactive.
To apply them to past sales, you’ll need to recalculate sales.


⚙️ Available linking modes

Add to recipe / order

👉 The most common case (95%)

This product represents a real sale. It is used to deduct a recipe or product from stock.

Example: A “Cheeseburger” will consume bun, patty, cheese…


🔄 Remove from recipe / order

Used for "no" buttons or simple removals.

👉 The linked product will be restocked in the quantity defined in the linked item.
No analysis of the parent recipe is done.

Example: “No cheese” → Yokitup restocks the “cheese” product.

🟡 Useful if the POS structure or recipe setup does not allow using “Remove from parent dish”.


Remove from parent dish

Used to remove a specific ingredient from a dish by analyzing the parent recipe.

Yokitup will:

  • Check that the parent dish is linked to a recipe,

  • Search precisely for the product to remove (even in sub-recipes),

  • Remove the actual quantity used in the recipe.

Example: “No bacon” in a burger → Yokitup checks if bacon is present in the recipe and removes the exact amount.


🔁 Replace in parent dish

Used to swap one ingredient with another inside an existing dish.

Yokitup will:

  • Count how many times the replaced product is used (including in sub-recipes),

  • Remove the original product,

  • Add the new product the same number of times.

Example: “Vegan patty instead of beef” → Yokitup replaces the beef patty in the recipe.

🟡 The parent dish must be linked to a recipe.


🧩 Replace parent dish

This product completely replaces another dish.

  • The parent dish does not need to be linked

  • The system replaces the original POS button with the replacement

  • Both amounts are combined

  • The replacement product behaves as if it were in “Add to recipe / order”

  • If there is no parent dish, then the product acts as “Add to recipe / order”

Example: “Veggie burger” button replaces a regular “Beef burger”.


Add to recipe depending on parent

This product should only be deducted if the parent dish matches a specific product.

Example: If the parent is “Base M”, add 50g of rice.
If it's “Base L”, add 70g of rice.

🟡 Very useful for options based on portion size (S / M / L / XL).


Remove from recipe depending on parent

Same logic as above, but the product is restocked instead of deducted.

Example: If I have a “Base M” and remove mango → restock 30g.
With “Base L” → restock 40g.


🧐 Replace parent dish depending on parent

Same principle as "Replace parent dish", but the replacement depends on the parent product.

  • The parent dish must be linked to a recipe

  • The replacement behaves as “Add to recipe / order”

Example: A “Switch to veggie version” button can replace a “Cheeseburger” or a “Chicken burger” depending on the original product.


🚫 Ignore

Use this if a POS product has no impact on inventory (comment, technical line, etc.).

➡️ It will no longer appear in the “To process” search filter.


📦 What about combos / menus? Should I link them to a recipe?

No.
Combos or set menus are just price structures – they don’t represent a real dish and should never be linked to a product or recipe in Yokitup.

👉 You only need to link the actual items within the menu, like the main dish, side, and drink, based on what really impacts your stock.

Example:
A “Lunch Menu” at €12 including a “Burger”, “Fries” and a “Soda”:

  • You do not link the “Lunch Menu” itself

  • You link the “Burger”, “Fries” and “Soda” individually


📏 How to manage portion sizes in Yokitup?

Let’s take a common case: a "Poke Bowl" in your POS, with size options (S / M / L) and ingredient choices (rice, salmon, mango…).

✅ Recommended setup:

  1. Ignore the “Poke Bowl” product itself
    → It’s a container, not a real stock item.

  2. Link size options (S / M / L) to recipes “Base S”, “Base M”, “Base L”
    → Each one should use “Replace parent dish”

  3. Link ingredients (rice, salmon, mango, etc.) using
    “Add to recipe depending on parent”

This way, depending on the selected base (S / M / L), you automatically adjust the deducted quantities.

Example:

  • Rice + Base M = 50g

  • Rice + Base L = 70g

  • Mango + Base S = 30g


🧠 How does Yokitup read a POS ticket?

Yokitup reads the POS ticket from top to bottom, just like a human would. At each line, it applies a specific sequence of rules to interpret and process the sale correctly.

1. 🧩 Process dish replacements

a. Replace parent dish

  • The system replaces the parent dish’s POS button with the replacement product’s button.

  • The original (parent) dish does not need to be linked in Yokitup.

  • The replacement product is treated as if it were in “Add to recipe / order”.

b. Replace parent dish depending on parent

  • Same logic, but the replacement depends on the linked product of the parent dish.

  • The parent must be linked to a product or recipe in Yokitup.

⚠️ These two modes are processed first, because they can change how the rest of the ticket is interpreted.


2. 🍔 Read and process each POS product line

For each POS product, Yokitup applies the associated mode:

  • Add to recipe / order → Directly deducts the linked product from stock.

  • Remove from recipe / order → Directly restocks the linked product (no recipe analysis).

  • Remove from parent dish → If the parent is linked to a recipe, Yokitup searches for the product (including in sub-recipes) and removes the exact quantity found.

  • Replace in parent dish → Same as above, but after removing the original product, it adds the new product the same number of times.

  • Add to recipe depending on parent → Deducts the product only if the parent dish matches a specific linked product.

  • Remove from recipe depending on parent → Restocks the product only if the parent dish matches.


3. 📦 Loss detection

If the sale is marked as a loss by the POS:

  • The quantities in the original sale are set to 0,

  • A loss record is created with the same products and quantities as if it were a normal sale.


✅ Key points to remember

  • In 95% of cases, use “Add to recipe / order”

  • For “no”, substitutions, options… use other modes as needed

  • Available modes vary depending on the level of detail provided by your POS system

  • Use “Ignore” for products that don’t impact inventory

  • For size management, use “Replace parent dish” on the base and “Add to recipe depending on parent” for ingredients

Did this answer your question?