Skip to main content

Bundles

What are Bundles?

A bundle is a distinct, purchasable product formed by grouping one or more other products that you intend to sell together as a single offering. Bundles make it easier for shoppers to discover and purchase multiple related items together, while also helping merchants increase average order value and streamline merchandising.

Bundles are built using components. Components are logical groupings that define how shoppers can select from a set of product options, which are products or sub-bundles available within each group. This structure allows merchants to create everything from simple, fixed sets of products to highly flexible and customizable configurations.

You can have:

  • Fixed Bundles: These bundles contain a specific, pre-determined set of products with fixed quantities.
  • Dynamic Bundles: These bundles offer flexibility, allowing shoppers to select their own options or variations from a defined set of choices within the bundle.
  • Bundles of Bundles: These advanced bundles are composed of other pre-existing bundles. The parent bundle serves only as a logical container (cannot be added to cart directly) and should be used only for complex scenarios where simpler bundle options don't meet your requirements.

There are two different pricing options available:

  • Fixed Pricing: Assign a specific price to the entire bundle.
  • Cumulative Pricing: The bundle's price is the sum of the prices of the options selected by the shopper (in a dynamic bundle) or the products defined by the merchant (in a fixed bundle).

Use Cases

  • Fixed Bundles: The "Home Office Essentials" Bundle: An office supply retailer offers a convenient, pre-determined package (desk lamp, mouse, notebook, pens) as a fixed product bundle for easy home office setup, simplifying purchase and potentially increasing order value.
  • Dynamic Bundles: The "Build Your Own Latte" Bundle: A coffee shop lets customers create their ideal latte through a dynamic bundle. They select their preferred size, milk, blend, shots, syrups, and extras from a set of options. The price adjusts based on these choices, offering a flexible and tailored drink.
  • Bundles of Bundles: The "Couch Configuration" Bundle: A furniture retailer offers couches in different sizes (2-Seater, 3-Seater, etc.), where each size has its own base price and the same customization options (fabric, color, leg style) but with different pricing based on size. The parent bundle lets shoppers first select a couch size, then configure the specific options for that size. Each size-specific bundle must be added to cart individually.

Terminology

  • Component: A Component is a distinct group of one or more product options within a bundle. A bundle consists of one or more components.
  • Component Min/Max: The number of products within a Component that can be selected by the shopper, defined through the min and max configuration.
  • Option: A Component consists of one or more Options which are distinct products that are added to a component. These products could be a single product, another bundle (in the case of bundles of bundles), a parent product, or a child product. When adding a parent product to a component, all its child products (variations) automatically become available for selection, though you can configure specific child products to be excluded if needed.
  • Option Default: A product can be set as default, allowing the merchant to define a pre-selected product for the shopper within a component.
  • Option Quantity: Each product in a Component has a specific quantity that the shopper must purchase.
  • Option Min/Max: Allows Shoppers to purchase their desired quantity of a product, by configuring the the min and max bounds within an option.

Bundle Types

Dynamic Bundles

Dynamic bundles allow merchandisers to create configurable product groupings where shoppers can personalize selections within defined rules. These bundles are composed of components—logical groupings of related product options—each with customizable constraints and behaviors. This flexible structure enables tailored experiences, driving higher engagement and average order value.

Core Concepts

Component Level Rules

Rules can be defined for each component to control shopper selections:

  • Minimum Selections: Require at least a certain number of products that can be chosen within a component.
  • Maximum Selections: Limit the number of products a shopper can pick from a component.
  • Optional Components: Components can also be optional by setting the minimum selection to zero.

Product Option Quantity Rules

Merchants can define rules for each product within a component to control shopper purchase quantity:

  • Default Quantity: If you do not set a minimum or maximum quantity for a component option, the shopper will be limited to the default quantity that you have set for that specific option within the bundle configuration. This is useful when you want to ensure a specific number of a particular item is included if the shopper selects it.
  • Minimum Quantity: This sets the lowest number of units a shopper must select for a product option.
  • Maximum Quantity: This defines the highest number of units a shopper can select for a product option.

Product Option Defaults

Specific product options can be designated as default within each component. This is particularly useful when the bundle is initially displayed in the cart or when a shopper hasn't yet customized their choices.

Parent Products as Options

When working with products that have variations (such as clothing items with different sizes and colors), you can add the parent product to a bundle component. This automatically makes all child products (variations) available for selection within that component.

Additionally, you can configure specific child products to be excluded from the bundle when the parent is added. This gives you fine-grained control over which variations are available for selection within the bundle, while still benefiting from the convenience of adding the parent product.

For example, if you add a "T-Shirt" parent product to a bundle component, all its variations (Small/Red, Medium/Blue, Large/Black, etc.) become available for selection. However, you might want to exclude certain variations (e.g., Small/Green and Medium/Yellow) from this particular bundle. You can configure these specific child products as exclusions, ensuring they won't appear as options even though the parent product is included.

Bundle Configuration in Catalog and Cart

Dynamic bundles have a bundle_configuration which describes the options selected by a shopper. This configuration is crucial for both displaying bundle options in your catalog and processing bundle purchases in your cart.

Bundle Configuration Structure

The bundle_configuration is a JSON object that contains:

  • selected_options: An object where each key is a component ID (e.g., "size", "color", "extras")
    • Each component contains key-value pairs where:
      • The key is the product ID of the selected option
      • The value is the quantity of that option
Working with Bundle Configurations in Catalogs
  1. Once your bundles are published in a catalog, a shopper can select the products they want.
  2. Use Get a product in a catalog release to check a bundle's default configuration. The default bundle_configuration is returned in the meta section of the response.
  3. Use the configure a shopper bundle endpoint to store a shopper's selections.

When adding a dynamic bundle to a cart, you need to include the bundle_configuration in the cart item. This ensures that the correct products and quantities are added to the cart.

Bundles of Bundles

A Bundle of Bundles is a specialized grouping mechanism that allows merchandisers to organize multiple, related product bundles under a single parent container. The parent bundle serves only as a logical container and cannot be added to cart directly - it exists solely to help shoppers navigate to the appropriate child bundle.

Important: Bundles of bundles should be used as a last resort for complex scenarios when simpler bundle options don't meet your requirements. This is the most complex bundle use case and should only be implemented when other bundle types cannot address your specific merchandising needs.

Structure

In a Bundle of Bundles, you typically have:

  1. A parent bundle with a single component (e.g. "Couch Type")
  2. Multiple bundle options within that component (e.g., "2-Seater Sofa Bundle", "3-Seater Sofa Bundle")
  3. Each bundle option is itself a complete bundle with its own components and configuration options

When implementing a Bundle of Bundles in your storefront, the parent bundle serves primarily as a navigation aid. Shoppers browse the parent bundle to discover the available bundle options, then select and configure the specific child bundle they're interested in.

For a detailed implementation example, see the Couch Collection example.

Bundle of bundles

Requirements

  • You cannot have more than one level of child bundles. In other words, a child bundle cannot have a child bundle as a component.
  • A parent bundle can contain both bundle and product components.
  • Each bundle of bundle option needs to be configured and added to the cart individually.

SKU Considerations

When creating bundles, PXM offers the flexibility to assign a Stock Keeping Unit (SKU) to the bundle itself or to manage it as a SKU-less entity.

SKU-Based Bundles

A SKU-based bundle has a unique SKU. Fixed Pricing requires a bundle SKU.

When to Use a SKU-Based Bundle:

  • Implementing Fixed Pricing: To set a single price for the entire bundle.
  • Tracking Bundle Inventory: To manage stock levels for the complete bundle as a single unit.
  • Applying Direct Bundle Promotions: To easily target the bundle with discounts using Promotions Builder.

SKU-Less Bundles

A SKU-less bundle does not have its own unique SKU.

When to Use a SKU-Less Bundle:

  • Implementing Cumulative Pricing: The bundle price changes based on the shopper's selections.
  • Managing Inventory at the Product Option Level: You only need to track the stock of the individual items within the bundle.

Pricing Strategies

The following table describes the capabilities and pricing that bundles can have.

PricingDescriptionRequires SKU?Price Book EntryCapabilities
FixedEnables you to assign a fixed price for all the products in a bundle. The bundle can contain items that are available for individual purchase, however, when purchased in a fixed-price bundle, are offered at a discounted price.YesMandatorySale Pricing - defines reduced pricing for the total price of the bundle.
Volume Pricing - offers promotional prices for products bought in bulk.
Bundle Inventory Management - bundle inventory can be tracked based on the availability of individual items in the bundle. In this case, the maximum number of bundles you can sell is equal to the number of the option that is least available.
CumulativeThe price of a bundle can be generated automatically based on the sum of the component products. Each individual product can use its underlying volume, sale, and normal price. Ensure that you set a price for each product within the bundle. If a component product does not have a price, the bundle price cannot be set and customers cannot purchase the bundle.OptionalNot available when SKU is presentSale Pricing - define reduced pricing for individual products when purchased as part of the bundle. Each product can have a special sale price that will only be used when the product is brought as part of the bundle.

Sale Pricing

Fixed Price Bundles

For fixed price bundles, you can set a sale price for the entire bundle. This allows you to offer the bundle at a discounted price compared to the regular bundle price.

Cumulative Price Bundles

For cumulative price bundles, you can set a sale price for an item within a bundle so that the product is sold at the sale price when sold as a part of the bundle. Each individual product can use its underlying volume, sale, and normal price, but you can also set a special sale price that will only be used when the product is brought as part of the bundle.

For example, if you have a bundle consisting of four items, you can apply a discounted price to an item within the bundle to get a bundle sales price. Both list and sale price (or was/is prices) are available in the catalog response, enabling you to display slash pricing on your storefront, depending on your requirements.

ProductRegular product priceBundle sales price
Product A$100$80
Product B$50$50
Product C$30$30
Product D$130$130
Total$310$290

Volume Pricing

Fixed Price Bundles

For fixed price bundles, you can configure volume pricing for the entire bundle. You can define the price range for different quantities of the bundle, as explained in the following example.

Bundle QuantityPrice/Each
1-5$10.50
6-10$10.00
11+$9.50

Cumulative Price Bundles

For cumulative price bundles, each individual product uses its underlying volume pricing. When a customer adds sufficient quantity of an item and meets the minimum required quantity for different pricing, all products with that item SKU are discounted in the cart. The volume pricing of the individual products is applied when calculating the total price of the bundle.

Inventories

To track inventory at the bundle level (i.e., the total number of complete bundles available), you must use a SKU-based bundle. The system will then manage the stock of the bundle as a single unit.

If you do not need to track inventory at the bundle level and instead want to rely solely on the inventory of the individual product options within the bundle, then you do not need to use a SKU-based bundle. This is the approach used for SKU-less bundles.

Examples

The following table describes some examples of bundles which are possible in PXM. This is followed by real-life examples of complex bundles.

Bundle TypePricingDescription
Pure bundlesFixedProducts are available only as a bundle.
Joint bundlesFixed, Automatic/cumulativeA bundled price offered for two or more products.
Gift setsFixed, Automatic/cumulativeA bundle created from a set of predefined items.
Leader bundleAutomatic/cumulativeA popular product is offered for a discount if you buy it with another less popular product.
Mix and Match bundlesAutomatic/cumulativeBundle products are selected from a predetermined list of items that you can bundle together.
Upsell bundlesAutomatic/cumulativeDiscounted price for the current product when bought together with an accessory as a related item.

Dynamic Bundle: Customize Your Latte

This example models a customizable latte where the Size component uses variations of a base "Latte" product (Small, Medium, Large) to determine the initial price. Subsequently, the shopper can personalize their latte through optional components (Milk, Blend, Extra Shots, Syrups, Extras). These components consist of individual products that act as upsells or modifications, potentially increasing the final price of the latte.

ComponentOptionsDefault OptionComponent Min/MaxOption QuantityOption Quantity Min/Max
SizeSmall ($5.00)
Medium ($6.00)
Large ($7.00)
Medium1 / 11N/A
MilkWhole ($0.00)
Skim ($0.00)
Soy (+$0.20)
Oat (+$0.20)
Coconut (+$0.20)
Whole1 / 11N/A
BlendSignature ($0.00)
Decaf ($0.00)
Signature1 / 11N/A
Extra ShotsNone ($0.00)
One (+$1.00)
Two (+$1.50)
None0 / 111 / 2
SyrupsNone ($0.00)
Caramel (+$0.20)
Vanilla (+$0.20)
Hazelnut (+$0.20)
Sugar Free Caramel (+$0.20)
Sugar Free Vanilla (+$0.20)
Sugar Free Gingerbread (+$0.20)
Cinnamon Bun (+$0.20)
None0 / 111 / 2
ExtrasNone ($0.00)
Marshmallow (+$0.50)
None0 / 111 / 2

Dynamic Bundle: Build a Couch

This example demonstrates a "Build a Couch" configuration where the shopper must choose exactly one option from each of the following components: Color, Fabric and Leg Style. The final price of the Couch will be the sum of the prices associated with the selected option in each of the components.

ComponentOptionsDefault OptionComponent Min/MaxOption QuantityOption Quantity Min/Max
ColourBeige (50.00)
Grey ($50.00)
Navy Blue ($100.00)
Charcoal ($50.00)
Grey1 / 11N/A
FabricLinen ($50.00)
Velvet ($50.00)
Leather ($150.00)
Linen1 / 11N/A
Leg StyleStraight ($75.00)
Tapered ($75.00)
Straight1 / 11N/A

Cumulative Pricing Example

The final price is the sum of each selected options price from each mandatory component (Color, Size, Fabric).

ComponentSelected OptionPrice ($)
ColourNavy Blue100.00
FabricLeather150.00
Leg StyleStraight75.00
Total Price275.00

Dynamic Bundles: Outfit Builder

This example demonstrates how a clothing company can implement an Outfit Builder that allows shoppers to configure a complete outfit from a selection of related products within the same collection.

Clothing products are typically modeled as "Parent Products" with Variations that represent all possible combinations (sizes, colors, etc.). These parent products can be added to a Bundle Component, which automatically allows shoppers to select any of the parent's child products (variations).

Additionally, you can configure specific child products to be excluded from the bundle when the parent is added. This gives you fine-grained control over which variations are available for selection within the bundle, while still benefiting from the convenience of adding the parent product.

For example, if you add a "T-Shirt" parent product to a bundle component, all its variations (Small/Red, Medium/Blue, Large/Black, etc.) become available for selection. However, you might want to exclude certain variations (e.g., Small/Green and Medium/Yellow) from this particular bundle. You can configure these specific child products as exclusions, ensuring they won't appear as options even though the parent product is included.

The following table illustrates a Wedding Outfit Builder where each component represents a category of clothing, and each option represents a style variant within that category:

ComponentOptionsDefault OptionComponent Min/MaxOption QuantityOption Quantity Min/Max
Jacket & TrousersSingle Breasted
Double Breasted
Double Breasted1 / 11N/A
ShirtSingle Cuff
Double Cuff
Double Cuff1 / 11N/A
ShoesOxford
Derby
Loafer
Oxford1 / 11N/A
TieTieTie1 / 11N/A

Bundle of Bundles: Couch Collection

This example demonstrates how a furniture retailer can implement a "Couch Collection" as a bundle of bundles, where a single component contains multiple couch bundle options. This approach helps to group related couch bundles together for better display on the storefront.

ComponentOptionsDefault OptionComponent Min/MaxOption QuantityOption Quantity Min/Max
Couch Type2-Seater Sofa Bundle
3-Seater Sofa Bundle
4-Seater Sofa Bundle
2-Seater Sofa Bundlen/an/an/a

Important: Bundles of bundles cannot be added to cart directly and cannot be configured at the parent level. Each bundle option (like the 2-Seater Sofa Bundle) needs to be configured separately and added to cart individually.

For implementation details on child bundles such as the individual sofa bundles, refer to the Build a Couch example above. This example demonstrates how to create a configurable bundle with components for fabric, color, and leg style.

We use cookies to enhance your experience. By continuing to visit this site you agree to our use of cookies.