Skip to main content

Discover Product Bundles

Learning Objectives

After completing this unit, you’ll be able to:

  • Explain how product bundles work in Shared Catalog.
  • Summarize the different ways to price product bundles.
  • Describe how cardinality and cardinality overrides work in product bundles.
  • Explain how attribute overrides work in product bundles.

Bundle Up

Infiwave Product Designer Devi has finally accomplished the unimaginable. He’s made Infiwatch available to customers in way less time and effort than it would’ve taken with previous systems. But it’s not time to celebrate just yet. The marketing team just informed him that they are making the smartwatch available as part of a product bundle to sweeten the deal for customers. “Wonderful!,” Devi exclaims, perhaps too loudly. 

What Are Product Bundles?

A product bundle is a set of products sold together. If you’ve ever purchased insurance, you’ve likely encountered bundled offers that combine life, home, and auto plans. In the communications industry, phone plans, devices, and accessories are often sold together as bundles so customers can buy them together for a reduced price. In short, bundles are a great way to market products, boost sales, and simplify orders. 

In Enterprise Product Catalog (EPC), product bundles are collections of products, product specifications (specs), or even other bundles sold together. Bundles use a Has-a containment relationship in which the bundle is represented by a parent product that stores product child items (PCIs). Bundles can contain optional products that the customer chooses to add when ordering. They can also contain required products that must be included. 

Here’s what a product bundle for Infiwave looks like in the CPQ Cart. The Infiwave Phone 10 & Infiwatch Bundle contains the smartwatch and smartphone. The bundle also includes an Individual Simple Choice Plan child bundle, which includes Unlimited Talk + Text, a 4G LTE Data Plan, and other products. Each child product displays as a line item nested under its parent product. 

The Infiwave Phone 10 & Infiwatch Bundle in the CPQ Cart.

In Shared Catalog, you configure bundles in the Structure tab of the parent product. Here’s the structure of the Infiwave Phone 10 & Infiwatch Bundle.

The Structure tab of the Infiwave Phone 10 & Infiwatch Bundle product showing the visual hierarchy of products.

On the Structure tab, you can easily view the logical relationships of products, add or remove products, and assign cardinality and pricing adjustments or overrides to child items–all in a handy visual format. 

Bundle Pricing Strategies

One great thing about product bundles in Shared Catalog is that you can take many approaches towards pricing them. You can: 

  • Set a price for the parent product so the bundle is always listed with a single price.
  • Roll up the prices of each child product to the total price of the bundle, or even have different prices for parent and child items.
  • Adjust or override the pricing of child products in a bundle so that they’re differently priced.

Cardinality

Cardinality settings control the allowable quantities of products that can be sold as part of a bundle. When configuring a bundle, there are two methods for setting the minimum, maximum, and default quantities of products: PCI cardinality and Group cardinality. 

PCI cardinality defines the quantities of each child product in a product bundle. Here, we see the PCI cardinality of the Back to School Backpack child product in the bundle offer. It has a minimum quantity of 0, a maximum quantity of 3, and a default quantity of 1.

The cardinality settings for the Back to School Backpack child product.

Using Group cardinality, you set the allowable minimum and maximum quantities of child products at the parent level to control all the child product cardinalities.

For example, set the minimum quantity to 0 and the maximum quantity to 5 for all child products. The Max Children Quantity field restricts the orderable quantity for all child items to 5. 

The Group Cardinality settings.

Here’s how Infiwave uses these settings for its new business-to-business (B2B) product bundle—Office Internet Solution. This bundle includes child products such as broadband internet, installation service, an office hub modem, and a cloud backup solution. If Devi wants to limit the order quantity of each child product per customer to 1, he simply sets the Group cardinality on the product bundle like this. 

Parent Product Cardinality

Office Internet Solution

Minimum: 1

Maximum: 1

Default: 1

However, Devi knows that most customers need only one instance of the internet, installation, and cloud backup products, but they include more modems in their order. So he decides to use PCI cardinality to set the child product cardinality like this.

Child Product Cardinality

Internet

Minimum: 1

Maximum: 1

Default: 1

Installation

Minimum: 1

Maximum: 1

Default: 1

Cloud Backup Solution

Minimum: 1

Maximum: 1

Default: 1

Office Hub Modem

Minimum: 1

Maximum: 10

Default: 1

Now, customers can order up to 10 modems when purchasing the product bundle.

Cardinality Overrides

What if Devi has a giant bundle containing dozens of products and services, and even other bundles with varying cardinalities? With cardinality overrides, he can use both Group and PCI levels of cardinality to set higher quantities of items in a child bundle when they’re ordered as part of the parent bundle. He must always set cardinality overrides equal to or greater than the minimum and maximum limits set by the original cardinality. 

For the Office Internet Solution product bundle, Devi sets the maximum Group cardinality to 1 and then creates an override to set the Office Hub Modem’s maximum quantity to 10. As you can imagine, cardinality overrides are quite powerful to fine-tune the orderability of complex bundle configurations. 

Optional and Required Products

Next, we look at how you can use cardinality to make child products optional or required in a bundle.

  • Define an optional product by setting its PCI minimum quantity to 0. To include the product in the bundle automatically, set its default value to 1.
  • To make a product mandatory in a bundle, simply set its minimum value to a number greater than zero. When you set the minimum, maximum, and default values to the same value, it prevents the user from changing the product’s quantity.

Attribute Overrides in Bundles

Remember, when products inherit attributes from an object type, you can’t delete those attributes. Sometimes, though, you want to change the values and behavior of these attributes in child products at the bundle level. 

For Infiwave Phone 10, Devi can make only certain phone colors available when the phone is ordered as part of a specific bundle. Here, you see an attribute override for the Infiwave Phone 10 that makes Space Gray the only orderable color for the phone in context of the bundle. If the customer orders the phone separately and not part of the bundle, they can choose from any of the color options. 

Color attribute override on Infiwave Phone 10 child product.

When you’re creating an attribute override, you can set the value of the attribute, choose excluded values, and control behavior, such as making it Read Only, Required, or Hidden. 

Now that you’ve learned the basics of product bundles, you’re ready to create one of your own. In the next unit, follow along as Devi groups other products with the Infiwatch and releases the bundle in the market.

Resources

Share your Trailhead feedback over on Salesforce Help.

We'd love to hear about your experience with Trailhead - you can now access the new feedback form anytime from the Salesforce Help site.

Learn More Continue to Share Feedback