How to sell a fixed price bundle on Shopify
A work set of laptop sleeve plus desk organiser plus cable for $69, where each slot can accept any of several interchangeable options. The cart still shows three items, so inventory and fulfilment stay per product.
- Bundle
When all three slots are filled the cart reprices the set to $69 and shows the saving. The three products remain separate lines, so the shopper can see exactly what is in the box.
How to set this up
- 1
Campaign > Offer type
Pick Bundle, then choose the fixed shape.
bundle.kind = fixed
- 2
Slots
Define one slot per component. Each slot lists the variants that can fill it, so a slot can accept any of several interchangeable options rather than one exact product.
bundle.requiredItems = 3 slots
- 3
Slot quantities
Set how many units each slot needs. A slot needing two units requires two cart units to complete one set.
bundle.requiredItems[n].qty = 1
- 4
Reward
Set the reward to a fixed price for the whole set, or to a percentage off the set lines. Fixed price is in minor units, so $69 is 6900.
tiers[0].rewardType = fixed_price
- 5
Preview
Simulate a complete set, an incomplete set, and a cart with two of everything, and confirm the second complete set is priced too, then publish.
Every setting, spelled out
These are the real configuration keys the offer is saved with, so you can check your own setup against this table field by field.
| Setting | Value | Config key |
|---|---|---|
| Offer type | bundle | type |
| Bundle shape | fixed | bundle.kind |
| Slots | 1 to 20, each with its own variant list | bundle.requiredItems |
| Units per slot | qty per slot | bundle.requiredItems[n].qty |
| Set price | fixed_price, 6900 = $69.00 | tiers[0].rewardType |
| Tier minQty | formal 1, ignored (slots define the set) | tiers[0].minQty |
| Discount class | product | discountClasses |
See it built end to end
The episode is not up yet
We are recording this one. The written recipe above is complete, so you can build it today.
What Shopify does natively
You can create a bundle as its own product with its own SKU, which is a legitimate approach when the bundle ships as a single unit.
A bundle product has its own inventory that has to be reconciled against the component stock, and it cannot accept interchangeable options per slot. A pricing bundle avoids both problems by discounting the real components.
Watch out for
- A cart unit fills at most one slot per set. If the same variant is listed in two slots, one set needs two units of it.
- Incomplete sets get nothing. Two of the three components stay at full price until the third arrives, which is correct but worth saying in the storefront copy.
- This is a pricing bundle rather than a merged line. The cart shows the components separately and inventory is tracked per item.
- A fixed bundle must define slots. If you want any three from a pool, that is the mix and match shape instead.
Common questions
- Can a slot accept more than one product?
- Yes. Each slot lists the variants that can fill it, so the shopper can choose between interchangeable options.
- What happens if the shopper only adds two of the three items?
- Nothing is discounted. Sets are only rewarded when complete.
- Does the cart show one bundle line or three products?
- Three products, with the discount spread across them, so inventory and fulfilment stay per item.
- Can a shopper buy two bundles?
- Yes, if the cart contains enough units to complete a second set.
Related examples
Any 3 items from a collection for one price, repeating for every complete set.
One item from each of several collections, rewarded as a set.
A fixed amount off, or a flat sale price, on a chosen collection.
Build this in your own store
Every recipe in this library runs on the same server-side engine, so the cart total and the checkout total agree.