Who Is This For?
StoreHub merchants who want to track ingredients, components, or individual items that make up a finished product, so stock is automatically deducted when the product is sold.
Overview
This article explains how to use composite inventory to track the ingredients or components inside your products. When a customer buys a composite product (like a cup of coffee), the system automatically deducts the right amount of each ingredient (coffee beans, milk) from your stock.
This guide covers setting up ingredients, creating composite products, setting usage amounts, tracking ingredients when products have modifiers, and real-world examples for different business types (F&B, retail, and services).
Before You Begin
Access to BackOffice (log in at your StoreHub BackOffice URL).
Products already added in BackOffice. If not, see this article first.
A stable internet connection.
Note:
Composite inventory only applies to StoreHub POS. It is not supported for QR Order and Pay or Beep Delivery orders.
Step-by-Step Guide
What Is Composite Inventory?
Composite inventory lets you bundle products or ingredients together so that selling one product automatically deducts stock from its components. It is useful when:
Scenario | Example |
You want to track ingredients by recipe. Each coffee sold reduces coffee beans and milk. | |
You sell products in sets. A fragrance set sold reduces shampoo, conditioner, and perfume. | |
You buy in bulk and sell individually. A box of 100 screws sold as loose screws. | |
You buy ingredients in one unit and sell in another. Beef (kg) sold as meatballs (pcs). | |
You sell portions from a whole. A tequila bottle sold as individual shots. |
Step 1: Add Your Ingredients or Components
Before setting up a composite product, you need to create each ingredient or component as its own product with simple inventory tracking.
1. In your BackOffice, go to 'Products'.
2. Click '+ Add Product'.
3. Enter the product name for your ingredient (e.g., 'Coffee Beans', 'Milk', 'Beef').
4. Set the selling price to 0 if you do not sell this ingredient separately.
5. Scroll down to the 'Inventory & Variants' section and tick 'Track Stock Level'.
6. Select 'Simple' as the inventory type.
Note:
Only simple inventory will work here. Other types of inventory will not work.
7. Enter the stock quantity based on the amount you purchased from your supplier.
Example:
Setting Up the Unit Column:
Make sure to convert your bulk stock units into the smaller units you actually use for recipes.
By Piece: For whole items like Eggs, track them as 1 unit (not by weight).
By Volume: If you stock liquids in Liters (L), convert the unit to ML.
By Weight: If you stock dry goods like Flour in KG, convert the unit to Grams (G).
8. Click 'Save'.
Note:
Repeat these steps for each ingredient or component you want to track. Use a consistent unit (e.g., kg, litres, pcs, bottles) so the default usage calculation is accurate.
Step 2: Create a Composite Product
Once your ingredients are set up, create the product that customers will buy and link it to those ingredients.
1. In your BackOffice, go to 'Products' and click '+ Add Product'.
2. Enter the product name (e.g., 'Coffee', 'Meatballs - 6pcs', 'Fragrance Set') and set the selling price.
3. Scroll down to the 'Inventory & Variants' section, tick 'Track Stock Level', and select 'Composite' as the inventory type.
4. Click 'Save'.
Note:
You must click Save before the component table appears. The component table only shows after the product is saved with the Composite inventory type.
5. Scroll down to the 'Component Table' that now appears at the bottom of the page. Click 'Add Component'.
6. Search for and select each ingredient or component you created in Step 1.
7. Set the 'Default Usage' for each component. This is the amount of that ingredient needed to make one unit of the product.
Notes:
Default usage does not need to be a whole number. For example, if 1 cup of coffee uses 0.01 kg of coffee beans, set the default usage to 0.01.
You can set up to 3 decimal places.
If a component does not appear in the search, you need to add it as a product first (see Step 1).
8. Click 'Save' to apply your changes.
Set Up Composite Inventory with Modifiers
If your composite product has modifiers (e.g., a burger with a choice of single, double, or triple patty), you can set ingredient usage per modifier option instead of using only the default usage.
1. Create a product and set up modifiers (see here).
2. Under 'Inventory & Variants', select 'Composite' as the inventory type and click 'Save'.
3. Scroll down to the 'Component Table' and click 'Add Component'. Add all ingredients.
4. Set the 'Default Usage' for ingredients that are always used in a fixed amount, regardless of the modifier selection. For example, a burger always uses 1 bun.
5. For ingredients that depend on the modifier selection, set the usage under each modifier option instead.
Example:
Single Patty: 1 patty
Double Patty: 2 patties
Triple Patty: 3 patties
Lettuce (optional topping): 0.01 kg
Tomato (optional topping): 0.05 kg
Note:
Do not enter usage for the same ingredient in both the Default Usage column and a modifier option column. This would cause double deductions.
6. Click 'Save'.
Real-World Examples
The following examples show how to apply composite inventory for common business scenarios. Each follows the same pattern: create the ingredient(s) as simple inventory products, create the composite product, and set the default usage.
Track Ingredients for Recipes (Coffee Beans and Milk)
Scenario:
You sell coffee. Each cup uses coffee beans and milk.
1. Create 'Coffee Beans' and 'Milk' as separate products with simple inventory.
Set selling price to 0 (not sold separately). Set stock quantity based on what you purchased from your supplier.
Ingredient | Stock quantity example |
Coffee Beans | 1 pack = 5 kg. 100 packs = 500 kg. |
Milk | 1 pack = 1 L. 100 packs = 100 L. |
2. Create 'Coffee' as a composite product. Add Coffee Beans and Milk as components.
3. Set default usage based on your recipe.
Example:
To make a cup of cofee, we need:
Coffee Beans: 0.01 kg per cup
Milk: 0.2 L per cup
Each time a coffee is sold, 0.01 kg of coffee beans and 0.2 L of milk are deducted from stock.
Track Alcohol or Liquor Shots
Scenario:
You sell tequila by the bottle and by the shot. Shots are poured from bottles.
1. Create 'Tequila Bottle' with simple inventory. Set selling price (or 0 if you only sell shots). Set stock quantity by bottles (e.g., 10 bottles).
2. Create 'Tequila Shot' as a composite product. Add 'Tequila Bottle' as the component.
3. Set default usage.
Example:
If 1 bottle makes 16 shots, set the default usage to 0.063 (1 divided by 16).
Each time a shot is sold, 0.063 is deducted from 'Tequila Bottle'.
To track by volume (litres) instead of by bottle:
Example:
If 1 bottle = 0.7 L and total stock is 70 L (0.7 L x 100 bottles), set the default usage to 0.03 L per shot.
Each time a shot is sold, 0.03 L is deducted from 'Tequila Bottle'.
Note:
Make sure the unit is the same for both the ingredient and the composite product.
Track Meat or Produce by Weight
Scenario:
You sell meatballs. Beef is purchased by the kg and sold as meatball sets (6 pcs per set).
1. Create 'Beef' with simple inventory. Set selling price to 0. Set stock quantity in kg (e.g., 50 kg).
2. Create 'Meatballs - 6pcs' as a composite product. Add 'Beef' as the component.
3. Set default usage.
Example:
If each meatball uses 0.025 kg of beef, and one set has 6 meatballs, the default usage is 0.15 kg (0.025 x 6).
Each time a set of meatballs is sold, 0.15 kg of beef is deducted from stock.
Track Individual Items from Boxes
Scenario:
You sell screws from a box. You buy boxes of 100 screws and sell loose screws individually.
1. Create 'Screw - Box' with simple inventory. Set selling price (or 0 if you only sell loose screws).
2. Set stock quantity by the number of screws per box (e.g., 1 box = 100 screws).
3. Create 'Loose Screw' as a composite product. Add 'Screw - Box' as the component.
4. Set default usage to 1 (each sale of a loose screw deducts 1 from the box count).
Each time a loose screw is sold, 1 is deducted from 'Screw - Box'.
Track Bundle or Set Products
Scenario:
You sell a 'Fragrance Set' that includes a shampoo, conditioner, and perfume.
1. Create 'Shampoo', 'Conditioner', and 'Perfume' as separate products with simple inventory. Set selling price (or 0 if not sold separately). Set stock quantity by bottles.
2. Create 'Fragrance Set' as a composite product. Add Shampoo, Conditioner, and Perfume as components.
3. Set default usage to 1 for each component (each set contains 1 of each item).
Each time a fragrance set is sold, 1 shampoo, 1 conditioner, and 1 perfume are deducted from stock.
Troubleshooting
Issue | Solution |
The component table does not appear after selecting Composite | Click 'Save' first. The component table only appears after you save the product with the Composite inventory type selected. |
A component does not appear when I search for it | The component must exist as a separate product in your BackOffice with 'Track Stock Level' ticked. Create it first, then try again. |
Stock is deducting too much or too little | Check the default usage values. Make sure the unit matches between the ingredient and the composite product (e.g., both in kg or both in litres). |
Stock is deducting twice for the same ingredient | Do not enter usage for the same ingredient in both the Default Usage column and a modifier option column. Use one or the other. |
Composite inventory is not deducting stock for QR Order and Pay orders | Composite inventory only works with POS orders. It is not supported for QR Order and Pay or Beep Delivery. |
I sell weighed items (for example, fish by kg) and I am not sure what unit to use | Pick one unit per ingredient product and keep composite default usage in the same unit. If you buy in kg and sell in kg, use kg everywhere. If you need piece and weight mixed, plan separate ingredient rows or get help from support to design the cleanest setup. |
FAQs
1. What is the difference between simple and composite inventory?
Simple inventory tracks a product's stock level directly (e.g., 50 bottles of shampoo). Composite inventory tracks the ingredients or components inside a product, so selling the product deducts from the ingredient stock instead.
2. Can I use composite inventory for products with modifiers?
Yes. You can set ingredient usage per modifier option. For example, a burger with 'Double Patty' can deduct 2 patties instead of 1. See the section above.
3. Does the default usage have to be a whole number?
No. You can use decimals up to 3 decimal places. For example, 0.01 kg of coffee beans per cup, or 0.063 bottles per shot.
4. Can I see how stock moved after a sale?
Yes. Open the product in BackOffice and use the Audit Trail to see movements by store and date. See full steps here.
5. Does composite inventory work with QR Order and Pay or Beep Delivery?
No. Composite inventory only applies to POS orders. Online orders through QR Order and Pay or Beep Delivery do not trigger composite stock deductions.
6. Can I track an ingredient across multiple composite products?
Yes. The same ingredient (e.g., 'Milk') can be a component in multiple composite products (e.g., 'Coffee', 'Milkshake', 'Cappuccino'). Each sale deducts from the same milk stock.
7. I have two menu items that use the same chicken stock. How do I count stock once?
Create one ingredient product (for example, 'Chicken - raw') with simple inventory. Link that ingredient as a component on every composite sellable item that uses it. Stock take and daily counts happen on the ingredient product.
Need Help?
Contact StoreHub Support via live chat in your StoreHub app or email [email protected].
Was This Article Helpful?
Let us know below or contact support for further assistance.











