CPQ Products

CPQ Products

Products are items that users can add to a quote.
Create individual product records manually or perform a bulk upload of product data from an external source.
§  Types of Products

Configure your products to match your pricing and selling needs.
apply various discounts or markups to customize pricing on your products.
Summarize number field information about products into a single object called a summary variable. You can then reference the summary variables in your quotes, quote line fields, and product rules.
A bundle is a product with optional features or components that you want to include on a single quote line.
Example
Configure a bundle product using a combination of options and features.
  • Create or select a product to serve as your bundle parent.
  • Create the features you need from your parent product’s related list.
  • Create the product options you need from your parent product’s Options related list. Find your option’s Optional SKU field and give it a lookup to the product that you want to serve as the option.
  • If you want a product option to be grouped under feature, populate that option’s Feature lookup field.
  • Create option constraints from your parent product’s Option Constraint related list if needed.
A feature is a group of product options within a bundle. Use features if you want to organize options into set groups, such as hardware and software.
Options are individual products that users can select from when configuring a bundle.
Create a set of configuration attributes that you can assign to any number of product options. You can display a configuration attribute set in a drawer below each product option in the configurator. This feature reduces the time spent creating product options if your options share some of the same attributes.
Enable or disable a product option for selection relative to another product option.
Example
Example
Use configuration attributes to set the value of multiple shared product option fields simultaneously.
Inherit Default Value
Example
A nested bundle lets users select from a subset of options within a single product option.
§  Example
You can show a product in the quote line editor as a single quote line with multiple segments. Each segment represents a block of time (day, month, year, or custom) and has a quantity and discounts independent of the other segments. This feature is useful if you’re selling subscription products and services, because you don’t have to add multiple quote lines for each segment.
Example
Consider a few points before you create MDQ products.
Subscription products are services that run for a set period, such as a year-long support service. Salesforce CPQ automates pricing, prorating, and co-terminating subscriptions on contracts and renewals.
Set a product’s list price as a percentage of its parent quote, quote line group, or bundle total price. This feature is useful if you want to scale a product’s price relative to another group of products or the quote itself.
https://resources.help.salesforce.com/images/9999d773bec62031a7926ed9be8b18f9.png


Types of Products

Configure your products to match your pricing and selling needs.

1.       Product Bundles

A bundle product contains several records.
§  A bundle parent: The parent product is the bundle itself.
§  Options: These products in the bundle contribute to the bundle price. You can consider these children of the bundle parent. An option doesn’t contribute to the bundle price if you select its Bundled checkbox.
§  Features: A feature is a group of options. Options in the same feature can have selection constraints, such as “pick one or more” or “pick 3 of 5.”
§  Option constraints: Use constraints to control how users select options together.
§  Configuration attribute: A field and picklist shown above or below the list of product options. This field targets all options containing the same field and applies its value to all those fields.
First, choose a product to represent your parent, and at least one product to represent a bundle option. After you create your options, features, and constraints, associate them to the parent via related lists on the parent product record.
Your company sells an IT Professional Pack containing a customizable laptop and related hardware. You structure the IT Professional Pack bundle this way.
Parent: IT Professional Pack
§  Feature: Computers
o    Option: Business Laptop
o    Option: Laser Printer
§  Feature: Peripherals
o    Option: US Keyboard
o    Option: UK Keyboard
o    Option: Mouse
o    Option: HDMI Display
§  Feature: Printing
o    Option: Toner Cartridge
o    Option: Maintenance Kit
o    Option: Letter Paper
o    Option: A4 Paper
§  Feature: Networking
o    Option: Wireless Router
o    Option: Wireless Access Point
o    Option: Wireless Installation


Remember that the feature’s Configured SKU field automatically looks up to your bundle parent if you created the feature in the parent’s Features related list.
If you created your option off a bundle parent, the Feature lookup search results display all the parent’s features.


Review the following fields when creating a bundle feature.
Feature Name
(Required) Provide a meaningful name for your feature
Number
(Required) Determine how this feature is ordered relative to other features in the parent product record's related list
Configured SKU
(Required) SKU Number of the bundle that includes this feature. This field populates automatically if you created this feature from the bundle product's detail page.
(Required) Min Options
Set the minimum number of options for this feature that must be part of the product bundle
Max Options
Set the maximum number of options for this feature that can be selected as part of the product bundle
Discount Schedule
Lookup to a Discount Schedule that applies to all this feature's options. Pricing from this discount schedule overrides the bundle product's Discount Schedule.
Category
Assign a feature to a category if you want to group multiple features together under a single tab within the configurator.
Option Selection Method
Choose the way users can add products or options to the feature.
§ Click: Checkboxes appear next to each option
§ Add: Options do not appear in the feature until the user selects Add Options and selects from available options on the Option Lookup.
§ Dynamic: You can use both predefined options and allow users to add more options.

Review the following fields when creating a bundle option.
Number
(Required) Determine how this option is ordered relative to other features in the parent product record’s related list.
Quantity
Enter the quantity of the product option to add to the quote. Leave this field blank if you want the user to enter a quantity when adding it to the quote. If this field has a quantity, the quote line editor shows the quantity as read-only by default.
Quantity Editable
Show a note in the quote line editor that users can edit this product’s quantity. This feature lets you set a default value for option quantity while allowing users to change it in the quote line editor.
Selected
Select this product option as part of the bundle by default.
Required
Make this product required on the bundle.
Price Editable
Let users change this product option’s price in the quote line editor.
Bundled
Indicate that this product is bundled with a parent product. Bundled options have a fixed quantity and a price of zero, because their price is included in the parent product price. Leave this field deselected if users manually add a price to this option.
Min Quantity
Enter the minimum quantity that this product is allowed within its parent bundle.
Max Quantity
Enter the maximum quantity that this product is allowed within its parent bundle.
Discount Schedule
A lookup to a discount schedule that applies to all this feature’s options. Pricing from this discount schedule overrides the bundle product or feature’s discount schedule.
Configured SKU
(Required) A lookup to the product that includes this option. This field is completed automatically if you created this feature from the bundle product’s detail page.
Optional SKU
A lookup to the product that this option represents.
Feature
Enter or look up the feature that includes this option. This process depends on the configured SKU.
Type
Choose one of the following.
§ Component: Choose if this option, including quantity, depends on its parent. When you select this field, the product option’s bundle requires it and that its quantity multiplies by the quantity of the bundle. For example, if two drives are selected for a server and the server quantity changes from one to two, the quantity for the drive’s option should change to four.
§ Accessory: Choose if this option depends on the parent, but the quantity is independent. For example, when a user enters a quantity for the product option, it remains the same even if the quantity of the bundle changes.
§ Related Product: Choose if this option is an independent product that can also be related to a bundle. Use this feature for cross-selling or upselling product options that users can add to the bundle while controlling the option’s quantity independently. Related Product options can’t be required.
§ None: The option acts like a component when it’s part of a feature. If it’s not part of a feature, its quantity is independent and it’s not required on the bundle.
Discount
Enter a discount as a percentage or dollar amount. This field is useful when your product option is offered standalone, but you offer a discount if it’s purchased as part of a product bundle.
Unit Price
Enter a value for the unit price of this option. This field overrides the price book’s price value.

You may find it useful to show a product option in your bundle but prevent your sales rep from choosing it until they’ve selected another option. This way, they don’t sell it to a customer without the original option that makes use of it. Once Salesforce CPQ enables the option for selection, your rep can choose whether to select it based on the customer’s needs. You can also disable one option from selection relative to another option. For example, sales reps could not select American power cables in a bundle as long as they’ve selected hardware that requires European power cables.
The option constraint object lets you set up these restrictions. Create option constraints from the Option Constraints related list on your bundle parent product record.
Review the following fields when using option constraints.
Constrained Option
Lookup to the option that Salesforce QTC enables or disables.
Constraining Option
Lookup to the option that determines whether Salesforce QTC enables or disables the Constrained Option.
Configured SKU
(Required) SKU number of the bundle that includes this option. This field is completed automatically if you created this feature from the bundle product’s detail page.
Type
Choose the behavior for this constraint.
§ Dependency: Selecting the Constraining Option causes Salesforce QTC to enable the Constrained Option for selection
§ Exclusion: Users can’t select the Constrained Option if they’ve selected the Constraining Option.
Check Prior Purchases
By default, Salesforce CPQ evaluates constraining options only on the quote you’re editing. Select this field to also evaluate previously purchased units of the constraining option on the quote’s parent account.
Option Constraint Group
Use this field if you have multiple constraints targeting a constrained option and want to require the selection of all their constraining options. In this case, Salesforce CPQ selects the constraining options of all constraint records where the Option Constraining Group has the same value. This feature is useful if you want to require or exclude options based on combinations of other options. The value can be any text string, but we recommend making it descriptive and easy to remember.
You sell software licenses and offer an software bundle that contains your licenses and several options for each license. You want the configurator to enable a user training class option for selection when a sales rep chooses the data security license option. This way, your sales rep can present training as an option, but doesn’t have to select it if the customer has already used the software.
Go to your bundle parent and create an option constraint with the following fields.
§  Constraint Name: Training Class for Data Security Software
§  Type: Dependency
§  Constrained Option: Lookup to your user training class product option record
§  Constraining Option: Lookup to your data security license product option record
Let’s look at using multiple constraints and option constraint groups. You sell a bundle for custom performance desktops. You want the configurator to enable a water cooler for selection when you select a video card or when you select a large case. Create your option constraints as follows.
§  Constraint Name: Video Card Selection
§  Type: Dependency
§  Constrained Option: Lookup to your water cooler product option
§  Constraining Option: Lookup to your video card product option
§  Constraint Name: Large Case Selection
§  Type: Dependency
§  Constrained Option: Lookup to your water cooler product option
§  Constraining Option: Lookup to your large case product option
If you want the configurator to enable a water cooler only when both the video card and large case are selected, give both your option constraints the same option constraint group value. For example, you could use “water cooler.”

Review the following fields when using configuration attributes.
Apply to Product Options
Apply the configuration attribute’s value to all matching fields in your bundle’s product options. When this field is not selected, Salesforce CPQ applies the value to only matching fields in the bundle parent.
Target Field
Lookup to the field that you want to change. This field can be any field on any of the products you’re using as product options.
Required
Specifies whether users need to choose a value for this field before saving their bundle configuration.
Position
Indicates whether the attribute appears above or below your product options in the configurator.
Row Order
If your bundle contains multiple configuration attributes, Salesforce CPQ can use this field’s value to determine their order. Attributes with higher Row Order values are shown first. If you don’t give this field a value, Salesforce CPQ order configuration attributes alphabetically.
Column Order
If your bundle contains multiple configuration attributes, you can organize them into columns. Column 1 appears to the left side of the configurator, column 2 appears in the center of the configurator, and column 3 appears on the right side of the configurator. Use this field to assign your configuration attribute to a column.
Feature
If your bundle contains features, specify the feature where you want this configuration attribute to appear.
Hidden
Hide the configuration attribute from the configurator UI. This feature is useful if you want to target and change the configuration attribute’s value through a product rule but don’t want users to change the value on their own.
Apply Immediately
Apply field value changes whenever a user changes the configuration attribute’s value. When deselected, Salesforce CPQ applies field changes when the user saves the bundle configuration.
You can have up to three configuration attributes in a row.
A configuration attribute:
§  Applies its value to your bundle’s fields even if those values aren’t shown in your line editor field set.
§  Inherits the type of the field it targets. For example, if you target a picklist, the configuration attribute appears as a picklist with all the targeted field’s values.
When you set a configuration attribute’s value, Salesforce CPQ applies it across all matching fields in your bundle. Salesforce CPQ then considers all configurator-scoped product rules and price rules with parameters that match the changed values.
As of Salesforce CPQ Summer ’17, your configuration attributes can inherit their default values from a quote or quote group. Use this feature so you don’t have to re-enter certain field values while configuring a bundle.
The configuration attribute field Default Object targets a quote group. The Default Field field can contain the API name of any quote or quote group field. To avoid an error, make sure that your source field and the option field your configuration attribute targets are of the same field type.
You want your IT Professional Pack bundle product to show configuration attributes for Location (a custom field), Unit Price, and Discount (%). Users don’t need to enter a value for Unit Price. Create three configuration attributes on your bundle’s record and give them the following values.
Configuration Attribute
§  Target Field: Location__c
§  Required: Selected
§  Row Order: 10
§  Column Order: 1
§  Position: Top
Configuration Attribute
§  Target Field: Unit Price
§  Required: Not selected
§  Row Order: 20
§  Column Order: 2
§  Position: Top
Configuration Attribute
§  Target Field: Discount (%)
§  Required: Selected
§  Row Order: 30
§  Column Order: 3
§  Position: Top

§  To create a nested bundle, assign a bundle product to the Optional SKU field of an option record. When users configure the top-level bundle, they’ll see a configuration icon on the quote line for the option containing the second bundle.
§  For easy user navigation, we recommend keeping your nested bundles one to three levels deep.
§  “Parent bundle” means the configured SKU of the product option represented by the nested bundle. It’s not always the top level. It’s always the immediate parent of a “child bundle.”
§  Your top-level product in a bundle is a customizable laptop, where the first level of options lets you select the brand of hard drive for the laptop. Create two sets of features on each hard drive brand so you can set the brand’s memory size and warranty after a user selects it in the laptop bundle. These hard drive sizes and warranties represent the second level of options in your bundle.


2.       MDQ Products
You can apply discounts or uplifts to individual segments—for example, a start-up discount on the first year of a three-year service subscription. You can also adjust the quantities of each segment.
Add MDQ (multi-dimensional quoting) segments to a product by creating a price dimension in your product’s Price Dimensions related list. The price dimension’s type controls whether your segments appear by year, quarter, month, custom, or as a one-time segment. You can also control whether users can edit the cost, quantity, or discounts of segments, or whether the segments inherit editability of these fields from their parent product record.
After you create a dimension, Salesforce CPQ calculates the number of segments by considering the length of your quote’s term. For example, a product with a monthly price dimension and a two-year term might have 24 segments.
To add a one-time charge, such as an installation fee, create a price dimension with a Type value of One-Time and set its unit price to a value of your choosing. The unit price overrides the product’s Price Book value. The one-time fee appears to the left of your segmented values in the line editor.
You want to price three years of service for a generator, including a one-time installation fee, and allow sales reps to edit each segment’s quantity, discount, and cost. The generator has a list unit price of $15,000, so each segment has a starting price of $5,000. You need two price dimensions on your generator: one for the one-time installation fee and one to cover the three years of service.
§  Dimension Name: Installation
§  Type: One-Time
§  Unit Price: $15,000
§  Dimension Name: Yearly Charges
§  Type: Year

§  You can’t associate product options or configuration attributes with an MDQ product.
§  Bundles can contain MDQ products, but an MDQ product can’t be the parent of a bundle. Your bundle parent appears on the standard table, while any of its MDQ child options appear in the segmented table. If a segmented product is a child option, the line contains an icon indicating which of your quote’s bundles it belongs to.
§  Hovering over a segmented product in the quote line editor shows a dialog box with that segment’s pricing details.
§  If you have an MDQ product with multiple currencies (stored in separate price books), each currency needs its own price dimension. For example, if you have two price dimensions (Dimension A and Dimension B) and are using US dollars and euros, you need four separate dimensions (Dimension A: USD, Dimension A: EUR, Dimension B: USD, and Dimension B: EUR).
§  If a quote's subscription term doesn’t equal full-year terms, the quote line editor rounds it up when determining how many segments to create. So, the last three months of a 39-month subscription term are housed in “Year 4,” with four total line items created. Then the price is prorated to match the 3-month term.
§  You can place MDQ products in different quote line groups, even groups with different subscription terms.
§  If you drag an MDQ product quote line, Salesforce CPQ moves all its segments, too.

3.       Subscription Products

Select your type of subscription product with the product field Subscription Pricing.
§  Fixed Price: This product gets its list price from a price book entry.
§  Percent of Total: This product’s list price is a percentage of the quote, quote line group, or a bundle’s total price.
Salesforce CPQ determines the length of a subscription by considering the value of the package setting Subscription Term Unit alongside a subscription product’s Subscription Term. For example, you can set a yearly subscription by setting Subscription Term Unit to Month and your product’s Subscription Term to 12. You can also set Subscription Term Unit to Year and your product’s Subscription Term to 365.
Salesforce CPQ prorates subscription products against a quote’s Subscription Term. For example, a 12-month subscription has its final price halved on a 6-month quote.

For example, you can create a bundle containing software licenses and then a single product representing a yearly maintenance subscription. Your subscription cost can increase as your sales reps add more licenses to the bundle. In this case, you set the maintenance subscription as the percent of total product and calculate its price off your bundle’s total price.
Set your subscription product’s Pricing Method field to Percent of Total. Then set other field values to customize how your percent of total product calculates its price.
By default, a percent of total product calculates its price off the quote’s net total. You can override this default by setting Percent of Total Target to target a single product. If your percent of total product is a bundle component and you want to base its price on the bundle’s net total, find your relevant product option record and set its Percent of Total Scope field. You can set this field so your percent of total product calculates based off the net total of the bundle parent, the bundle components, or the parent and components together.
Percent of Total (%) sets the percentage value used to calculate a percent of total price.
You can also set Percent of Total Base to determine which of your percent of total products’ prices are used in calculating its final price.
§  List: Take the percentage from this product’s list price. Salesforce CPQ uses this price by default.
§  Regular: Take the percentage from this product’s regular price.
§  Customer: Take the percentage from this product’s customer price.
§  Net: Take the percentage from this product’s net price.
Note
When you add to a quote a percent of total product that has a Contracted Percent (%) discount, Salesforce CPQ stores the percentage discount value on the quote line’s Special Price field.

Example

Your business offers an SLA maintenance package for generator installations. The package has a list price of $20,000. You want your maintenance package to set its price based on 15% of the net total of all generators included on the quote. Configure your maintenance package with the following field values.
§  Product Name: SLA Silver
§  Subscription Pricing: Percent of Total
§  Percent of Total Base: List
§  Percent of Total (%): 15
If the generators on your quote have a combined total price of $195,000, your maintenance package ends up with a total price of $29,250 after you add it to your quote.
§  Percent of Total Guidelines
Consider key guidelines when you’re setting up a percent of total product.
You can use a few more fields to further customize your percent of total products.
§  Percent of Total Constraint changes your percent of total product’s price to its original list price if its percent of total calculation creates a price above or below that original list price. This feature is useful if you don’t want your percent of total product to fall outside its list price in nonstandard settings. For example, you might have one quote where a customer is ordering a large number of products used as the percent of total target.
§  Salesforce CPQ considers all static products and excludes all subscription products when calculating a percent of total product that looks up to the entire quote. You can select Exclude From Percent of Total to exclude a static product from all percent of total calculations. And you can select Include In Percent of Total to include a subscription product in all percent of total calculations.

Product Pricing Methods


§  Block Pricing
Assign fixed prices to a product based on quantity, which override the automatic calculation of quantity multiplied by unit price.
§  Cost-and-Markup Pricing
Set a price based on its cost plus a markup amount, rather than list price and discount.
§  Batch Pricing
Price your component and accessory bundle options by static amounts based on quantity ranges.

1.      Block Pricing


Assign fixed prices to a product based on quantity, which override the automatic calculation of quantity multiplied by unit price.

For example, let’s say you sell user licenses on a subscription basis and charge by license packs. Purchasing one to five licenses costs $100, while six to 10 licenses cost $150.
To set up block pricing, set your product’s pricing method to Block. Then select New Block Price in your product’s Block Prices related list and create block prices for each price range.
In the example above, you have one block price with a lower bound of 1, upper bound of 6, and price of 100. You have another block price with a lower bound of 6, upper bound of 11, and price of 150. Remember that the upper bound value is not inclusive. Ensure your upper bound is one digit higher than the value you want to include.
To cover the difference between the minimum quantity for the block and that product’s actual quantity, create a custom block price currency field called Overage Rate. Salesforce CPQ then calculates the final block price as block price + ((quantity - minimum quantity for block) * overage rate). Overage rate must have an API name of OverageRate__c, length of 16, and 2 decimal places.

Example

You enter an overage rate of 0.25 on a block price with a lower bound of 100,000, upper bound of 500,000, price of $100,000, and quantity of 250,000. The final block price is $100,000 + (($250,000 - $100,000) * 0.25) = $137,5000.


2.      Cost-and-Markup Pricing

Set a price based on its cost plus a markup amount, rather than list price and discount.
Cost pricing is useful in these scenarios.
§  You’re selling to a partner. In this case, the customer is buying at a cost from you, applying a markup and then upselling to a distributor.
§  You’re selling a commodity with a variable price. In this case, you probably want to charge a predetermined cost and set a static markup. That way, you’re charging a certain value regardless of variations in your product’s list price.
To set up cost pricing on a product, set its Pricing Method field to Cost. You can then add cost values by currency in the Costs related list.

3.      Batch Pricing

Price your component and accessory bundle options by static amounts based on quantity ranges.
If you have the Batch Quantity field in your product page layout, you can set batch pricing in your product’s Batch Quantity field. Then change it anytime as needed.
When a user enters a quantity for a batch-priced product on the edit lines page, Salesforce CPQ calculates the line’s price by:
1.       Dividing the entered quantity by batch quantity
2.       Rounding up to a whole number
3.       Multiplying by the product’s price

Example

Your Batch Quantity field is 32, and your product option’s price is $10, so an order of 98 products costs $40. A quantity range moves to the next pricing level at one product over the maximum amount of the current level. In this case:
§  1–32 items: $10
§  33–64 items: $20
§  65–96 items: $30
§  97–128 items: $40
§  And so on



Summary Variables

Summarize number field information about products into a single object called a summary variable. You can then reference the summary variables in your quotes, quote line fields, and product rules.
A summary variable targets a field on an object and then performs a math function on that field. You can set a target object and leave the filter information fields blank to target all instances of that object across your quote. You can also customize the filter fields to target only the fields and values you need—for example, all product options where Product Code equals “LJ-TONER.”
The Aggregate Function field sets the type of math function the summary variable performs. You can choose from:
§  Add all values in that field together (Sum)
§  Calculate the average of all values in that field (Average)
§  Find the lowest of all values in that field (Min)
§  Find the highest of all values in that field (Max)
The Aggregate Field represents the field where you’re performing the function. This field needs to be a number field, such as Quantity or List Price.
Composite information fields let you add to, subtract from, multiply, and divide the result of your function.

Example

You need to calculate the number of wireless access points to add to a quote. Twelve laptops can connect to one access point. You need a summary variable that sums the number of laptops on a quote and divides it by 12. Your laptops have a product code of PCPRO.
§  Variable Name: Laptops / 12
§  Target Object: Quote Line
§  Aggregate Function: Sum
§  Aggregate Field: Quantity
§  Filter Field: Product Code
§  Filter Value: PCPRO
§  Operator: Equals
§  Composite Operator: Divide

§  Value Element: 12


Comments

  1. Thanks, this is generally helpful.
    Still, I followed step-by-step your method in this salesforce cpq training
    salesforce cpq learning path
    cpq certification

    ReplyDelete
  2. Thanks, this is generally helpful.
    Sales Force CPQ Online Training
    Visit us: sales force CPQ Online Training

    ReplyDelete

Post a Comment

Popular posts from this blog

Calculate Prices

Learn About Quotes