Product Bundles
Sell several products as one item. Set bundle contents, pricing, and let stock flow from the components at POS, on receipts, and on your online store.
A bundle is one product your customer buys once, made up of other products you already sell. Example: a gift set with two mugs and a bag of coffee. The bundle has its own price and photo, but stock comes from the items inside it.
Bundle, Extra, or Discount?
| Question | Use |
|---|---|
| Does the customer pick add-ons on the same item? (extra shot, gift wrap) | Extras add to the price without touching stock |
| Do you want a lower price on one SKU for a limited time? | Catalogue discounts mark a variant, product, or category down on a schedule |
| Do you sell a fixed set of products together as one line? | Bundles take stock from every component when one bundle sells |
Extras stay on one SKU. Discounts change the price. Bundles combine separate products into one sellable item.
Create a Bundle
- Open Catalogue > Products and click Add New Product.
- On step 1, choose Bundle as the product type. Product type is set at creation and cannot be changed later.
- Fill in the name, category, and other general fields. Bundle products have exactly one variant and inventory tracking stays off. The bundle itself holds no stock.
- On step 2, add each component: search for a product variant, set Quantity per bundle (how many units of that item go into one bundle), and reorder rows for display.
- Choose a pricing mode, set the bundle price (or discount off the component total), and save.
To change bundle contents later, open the product details page, use the Bundle contents card, and click Edit contents.
To stop selling a bundle, deactivate the product or delete it. You cannot convert a bundle back to a standard product or turn a standard product into a bundle after creation.
How Stock Works
A bundle never has its own quantity on the shelf. Sellable now is calculated from the components:
- For each trackable component, divide available stock by quantity per bundle and round down.
- The bundle can sell as many complete sets as the lowest of those numbers.
- If every component is non-trackable, sellable quantity is Unlimited.
The card also shows Enough for N beside each component so you can see which item is the bottleneck.
Bundles do not appear in stocktake or the low-stock list, because they hold no stock of their own. Watch the component products instead.
Pricing Modes
| Mode | What it does |
|---|---|
| Set the price myself | You type the bundle selling price directly |
| Calculate from components | Cashvio totals component list prices, applies your discount percentage, and writes the result as the bundle price |
Calculated prices do not auto-update when component prices change later. If the component total drifts from the bundle price, the portal shows a banner with Recalculate so you can refresh the price in one click.
Sales, Returns, and Profit
- Selling one bundle deducts stock from every component in the quantities you defined.
- Returning one bundle puts the same component quantities back when the return is restocked.
- Profit on the bundle line uses the sum of component costs at sale time, so margin stays accurate even if you change the recipe later.
Past orders keep a snapshot of what was inside each bundle, so receipts and order history stay correct after you edit contents.
Where Bundles Appear
| Surface | What customers and staff see |
|---|---|
| New Sale | Bundle label on the tile; stock follows derived availability |
| POS ticket | One line with a short "Contains N items" note |
| Receipts | Bundle name plus indented component lines |
| Product list | Bundle marker and derived stock |
| Online store | Bundle badge on cards, "What's inside" on the product page, contents note in the cart |
| Meta catalog feed | Availability follows derived stock, not "always in stock" |
Limitations
These rules are intentional in this release:
- No nesting: a bundle cannot contain another bundle.
- One variant only: two colourways of the same set are two separate bundle products.
- No stocktake row: bundles do not appear in stocktake or low-stock alerts; track the components.
- No CSV import: you cannot create bundles through product import in this release. Create them with Add New Product and choose Bundle.
- No dead-stock row: the dead-stock report ranks products by stock movement. A bundle has none, so it never appears there.
Related Features
- Products: catalogue overview, duplicate, and status
- Product Extras and Add-ons: optional picks on a single item
- Catalogue discounts: scheduled markdowns on existing SKUs
- Creating orders: New Sale where bundle tiles appear