components
The following table describes some examples of bundles which are possible in PXM. This is followed by real-life examples of complex bundles.
Bundle Type | Pricing | Description |
---|---|---|
Pure bundles | Fixed | Products are available only as a bundle. |
Joint bundles | Fixed, Automatic/cumulative | A bundled price offered for two or more products. |
Gift sets | Fixed, Automatic/cumulative | A bundle created from a set of predefined items. |
Leader bundle | Automatic/cumulative | A popular product is offered for a discount if you buy it with another less popular product. |
Mix and Match bundles | Automatic/cumulative | Bundle products are selected from a predetermined list of items that you can bundle together. |
Upsell bundles | Automatic/cumulative | Discounted 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.
Component | Options | Default Option | Component Min/Max | Option Quantity | Option Quantity Min/Max |
---|---|---|---|---|---|
Size | Small ($5.00) Medium ($6.00) Large ($7.00) | Medium | 1 / 1 | 1 | N/A |
Milk | Whole ($0.00) Skim ($0.00) Soy (+$0.20) Oat (+$0.20) Coconut (+$0.20) | Whole | 1 / 1 | 1 | N/A |
Blend | Signature ($0.00) Decaf ($0.00) | Signature | 1 / 1 | 1 | N/A |
Extra Shots | None ($0.00) One (+$1.00) Two (+$1.50) | None | 0 / 1 | 1 | 1 / 2 |
Syrups | None ($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) | None | 0 / 1 | 1 | 1 / 2 |
Extras | None ($0.00) Marshmallow (+$0.50) | None | 0 / 1 | 1 | 1 / 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.
Component | Options | Default Option | Component Min/Max | Option Quantity | Option Quantity Min/Max |
---|---|---|---|---|---|
Colour | Beige (50.00) Grey ($50.00) Navy Blue ($100.00) Charcoal ($50.00) | Grey | 1 / 1 | 1 | N/A |
Fabric | Linen ($50.00) Velvet ($50.00) Leather ($150.00) | Linen | 1 / 1 | 1 | N/A |
Leg Style | Straight ($75.00) Tapered ($75.00) | Straight | 1 / 1 | 1 | N/A |
Cumulative Pricing Example
The final price is the sum of each selected options price from each mandatory component (Color, Size, Fabric).
Component | Selected Option | Price ($) |
---|---|---|
Colour | Navy Blue | 100.00 |
Fabric | Leather | 150.00 |
Leg Style | Straight | 75.00 |
Total Price | 275.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:
Component | Options | Default Option | Component Min/Max | Option Quantity | Option Quantity Min/Max |
---|---|---|---|---|---|
Jacket & Trousers | Single Breasted Double Breasted | Double Breasted | 1 / 1 | 1 | N/A |
Shirt | Single Cuff Double Cuff | Double Cuff | 1 / 1 | 1 | N/A |
Shoes | Oxford Derby Loafer | Oxford | 1 / 1 | 1 | N/A |
Tie | Tie | Tie | 1 / 1 | 1 | N/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.
Component | Options | Default Option | Component Min/Max | Option Quantity | Option Quantity Min/Max |
---|---|---|---|---|---|
Couch Type | 2-Seater Sofa Bundle 3-Seater Sofa Bundle 4-Seater Sofa Bundle | 2-Seater Sofa Bundle | n/a | n/a | n/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.