Salesforce CPQ – C in CPQ – Configure Products & Bundles

This is the second edition of my Salesforce CPQ series which will help us start deep diving into Salesforce CPQ concepts and how the quote-to-cash process can be implemented in the same. I would recommend you to go through the first one mentioned in my earlier blogpost on Salesforce certified CPQ Specialist resources before reading this through.

This edition is intended to cover specific features related to configuring products using Salesforce CPQ. I didn’t want to make it too detailed since we already have quite detailed documentation on SteelBrick’s CPQ Knowledge base and basics covered well in Salesforce trailheads for CPQ.

There are two primary target users who use this part of the CPQ

  • Product / Business managers to create new products and make them sellable
  • Sales agents / managers to sell (and sell more) the products.

Creation of product records is the first step – both for single products and bundle products.

In the case of simple products, the configuration ends with creation of the single product record and rules if required. Product records should also be created for those products which cannot be sold stand-alone and need to be part of a bundle. In this case, the Component checkbox is selected so that it is not visible in configurator to be independent sold.

In the case of bundled products, the product will have multiple features which will then have multiple options. A sample bundle selling Google Pixel and 50 Mbps Internet is given below:

This slideshow requires JavaScript.

Bundled products are extremely useful for implementing cross-sell / up-sell capabilities. Some important details to fill in while creating a bundled product are:

  • Needs to be active and added to pricebook
  • Option Selection Method: Add button will display options under features on clicking the add button. Click will enable checkboxes next to product options
  • Package product code: Configured Code Pattern (Bundle), Component code (Option), Component code position (Option)
  • Hidden checkbox: Hides bundle product to client
  • Configuration type: Disabled (Sales agent cannot configure), Allowed (can configure), Required (must configure). This will be useful when there are details to be entered during configuration.

Product feature

Product - Features
Product – Features
  • One product can have multiple features.
  • Features by itself cannot be sold.
  • They can be used to group different product options.
  • Can include cardinality rules controlling minimum and maximum product options under a feature which can be added

Product option

Product - Options
Product – Options
  • Associates another product created, as a component, accessory or related product.
  • Quote line visibility field in product option decides whether to show a given option or not
  • Can have minimum / maximum cardinality for each of the product options under a feature.

 Option constraints

Product - Option Contraints
Product – Option Constraints
  • ‘Check Prior Purchases’ flag: Sell based on past purchases under a given account
  • Should be activated for it to work
  • Constraining option and constrained option can have dependency / exclusion relationship

Configuration attributes

Configuration attributes are used to gather information during Sales and perform some product actions (like showing / hiding / selection products, performing validations / alerting the sales agent) or pricing actions.

This slideshow requires JavaScript.

  • Attributes can be shown in 2-columns or 3-columns.
  • ‘Apply to Product Options’ flag: Make attribute value at bundle level flow to all product options (Example: Phone number for a mobile product can be copied across all line items under a bundle)
  • Apply to specific product option during sale: Have a product option field and attribute with same name. Twin field setup
  • Apply immediately flag can be checked to ensure the attribute value is immediately passed to the quote line. This will be useful in rules that are run depending on the same.

Product rules

  • Types: Alerts, Selection, Validation, Filters
  • Alerts: Show information message, but do not stop further from completing the quote
  • Selection: Add, Enable, Remove, Disable, Enable & Add, Disable & Remove, Show, Hide, Show & Add, Hide & Remove products based on selection
    • Product Selection rules over validation rules for better UX
  • Filter: Dynamic bundles can be configured to conditionally show/hide products based on selection in attribute(s).
  • Tested variable can be tested against summary variables, example: Number of existing subscriptions of a particular type is greater than 0

Quote Line Editor

This is used by the sales agent during the sales process.

This slideshow requires JavaScript.

Search products during Sale

Quote Line Editor - Search Product
Salesforce CPQ Quote Line Editor – Search product
  • Field sets are used to include new fields shown here
  • Search filters can also have have hidden filters, example: show only products which have stock available in warehouse
  • Custom actions can be used to show some products based on button click in quote line editor

Configure products during sale

Quote Line Editor - Configuration
Salesforce CPQ Quote Line Editor – Configuration
  •  The attributes can be shown at the top or within each of the features / product options level
  • Each Features can be grouped further based on categories
  • Feature level cardinality rules are shown within the feature heading
  • More fields can be added using field sets.

Quote Lines Editor Summary

This page shows a summary of the quote lines which are selected during sales.

Quote Line Editor - Add Product
Salesforce CPQ Quote Line Editor – Add product

There are primarily two different views

  • Price dimensions, are shown by splitting the lines across each of the dimension. Example, in the case of one-time fee, setup fee or recurring charge for a product or yearly prices there will be 3 columns whereas the example above shows an Year 1 price
  • Product lines sold normally will have one line each, if they are meant to be visible, depending on other configurations in the product level (like component or Quote line visibility fields).
  • If we want to split the root products from the child products, we can do so by configuring in Managed package -> Configure -> Line Editor -> Visualize Product Hierarchy

I hope this page helps you in your learning journey. Please feel free to add any of your blogs or point out to any missing / incorrect details in the comments section.

Next edition: Salesforce CPQ – P in CPQ – Pricing & Discounts


10 thoughts on “Salesforce CPQ – C in CPQ – Configure Products & Bundles

  1. Hi, nice article!
    One question dough. How come that in your last image a line with a bundle “Google Phone + 50Mbps…” has its own list unit price(100€)? I thought that the line item with the bundle name should be 0 and the price of the bundle will be sum of its components.
    Did I get something wrong?

  2. Hello…!!
    Is there a way to add a message why a specific product is not available on product search screen. I know it could be one of the following reasons:

    1.Product is not active.
    2.Product ‘Component’ checkbox is set to true.
    3.Because of any Search Filters.
    4.Or if product do not have a active price book entry which is on Quote.

    Is there a way to add some information message about the reason why a product is not available or searchable, which helps the Sales rep understand why this product is not available.


  3. Some or all options require further configuration. Look for configuration icon next to options that must be configured

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s