Hello, my Name is Smriti Sharan. I am avid
blogger and youtuber. Follow my Blog, Linkedin and YouTube to learn various aspect of Salesforce.
In this document I have covered in depth Salesforce CPQ Interview Questions and Answers, Use Cases, Screenshot for every step
Salesforce CPQ: Product Rules Interview Question USE CASE
What are the types of product rules in Salesforce CPQ?
Product Rules in Salesforce CPQ checks that sales reps configure products correctly by enforcing business logic. They validate selections, show/hide options, or filter products dynamically.
Types of Product Rules:
- Validation Rule: Enforces constraints during product configuration.
- Alert Rule: Displays messages without preventing actions.
- Selection Rule: Adds, removes, enables, or disables product options dynamically.
- Filter Rule: Dynamically filters product options in bundles based on criteria.
Use Case: When a user selects 4-Port USB Hub, hide the product options Camera in the Product bundle?
We will use selection rule to implement this use case.
Steps to Implement Selection Rule
- Create a Product Rule
-
- Product Rule Name: Hide Camera.
- Type: Selection.
- Scope: Product.
- Evaluation Event: Always.
- Evaluation Order: 10.
- Check Active.
- Condition Met All
-
- Define Error Condition
- Navigate to the Error Conditions related list in the newly created Product Rule.
- Click New.
- Tested Object: Product Option.
- Tested Field: Product Code.
- Operator: Equals.
- Filter Value: USB-HUB-4PORT
- Add Product Actions
- Navigate to the Actions related list in the Product Rule.
- For each product to hide, click New.
- Type: Hide and Remove.
- Filter Field: Product Code.
- Filter Value: Action: CAMERA
Use Case: In the “Laptop” feature of the Product bundle, display only products from the “Hardware” family.
We will use Filter Rule for achieving this use case. Filter Rule allows sales rep to choose their own options in bundle.
Points to remember for Dynamic Bundle
In Feature Option Selection Method is set to “Dynamic”
For Filter Rule We will use only “Default Filter” and “Optional Filter”
Steps to Implement Filter Rule
- Add a Formula Field to Product Object
- Navigate to Setup > Object Manager > Product > Fields & Relationships.
- Click New and select Formula.
- Field Label: Product Family.
- Field Name (API Name): Product_Family__c.
- Formula: TEXT(Family) (Use the “Product Family” standard field).
- Add a Formula Field to Product Option Object
- Navigate to Setup > Object Manager > Product Option > Fields & Relationships.
- Create a Formula Field.
- Field Label: Product Family.
- Field Name (API Name): Product_Family__c.
- Formula: TEXT(Product_Family__c) (Same API name as the Product field).
- Create a Product Rule
-
-
- Product Rule Name: Filter Hardware Products.
- Type: Filter.
- Scope: Product.
- Evaluation Event: Always.
- Evaluation Order: 20.
- Check Active.
-
- Add a Product Action
- Navigate to the Actions related list in the Product Rule.
- Click New.
- Type: Default Filter.
- Filter Field: Product Family.
- Filter Value: Hardware.
Use Case: Count the quantity of USB-related products in a bundle and display a validation error if the total exceeds 5.
We will implement using summary variable. Summary variable summarizes CPQ Related Records that include quote lines, product options, subscriptions, assets.
Steps to Implement Summary Variable
- Create a Summary Variable
-
- Name: USB Product Count.
- Target Object: Product Option.
- Aggregate Function: Sum.
- Aggregate Field: Quantity.
- Conditions:
- Field: Product Code.
- Operator: Contains.
- Value: USB.
-
- Create a Validation Product Rule
- Go to Product Rules.
- Name: Validate USB Count.
- Type: Validation.
- Scope: Quote.
- Evaluation Event: Save.
- Evaluation Order: 30.
- Add Message: USB product quantity cannot exceed 5.
- Go to Product Rules.
- Add an Error Condition
- Navigate to the Error Conditions related list in the Product Rule.
- Tested Object: Summary Variable.
- Tested Variable: USB Product Count.
- Operator: Equals
- Filter Value: 0
- Navigate to the Error Conditions related list in the Product Rule.
Salesforce CPQ: Subscription Pricing Interview Question USE CASE
What is a subscription product, and how is it defined in Salesforce CPQ?
A subscription product is a service-based product where the pricing is determined by the duration of usage. For example, services like Amazon Prime, Netflix, or mobile recharges are subscription-based.
Key fields that define a subscription product in Salesforce CPQ are:
- Subscription Pricing: Determines the pricing model (e.g., fixed price or percentage of total).
- Fixed Price: This pricing specifies that product gets its list price from a price book entry
- Percentage of Total: This pricing specifies that the product’s list price is a percentage of the quote, quote line group or a bundle.
- Subscription Term: The duration of the subscription, typically in months. When a product is added to quote “Default Subscription Term” field on quote line inherits the value of product’s subscription term.
- Subscription Type: Defines whether the product is renewable, evergreen, or a one-time product.
Renewable: Salesforce CPQ will include this subscription in renewable quote.
One Time: Salesforce CPQ wont include the subscription in renewable quote
Evergreen: This subscription remains active until cancelled and cannot be renewed
Evergreen/ Renewable: User can define whether subscription is renewable or evergreen on an individual quote line in QLE. This subscription record created from quote line inherits Quote Line Subscription Type.
How do you create a subscription product in Salesforce CPQ?
Steps to Create a Subscription Product
- Fill in Product Details
- Product Name: Cloud Storage.
- Product Family: Service.
- Active: Check the box.
- Pricing Method: List Price.
- Subscription Pricing: Fixed Price or Percentage of Total.
- Subscription Term: 12 (e.g., 12 months).
- Subscription Type: Select one:
- Renewable: Subscription renews automatically.
- Evergreen: Subscription continues until canceled.
- One-Time: Subscription does not renew.
- Add Price Book Entry
- Go to the Related Tab.
- Add a Standard Price Book entry with a price (e.g., $100).
Test the Product
Go to Quotes > Edit Lines > Add Product
How does Salesforce CPQ calculate subscription pricing?
Subscription pricing is calculated based on:
- Subscription Term: Duration (in months or days) specified on the product or quote line.
- Proration Calculation: Adjusts the price for partial periods (e.g. partial months).
Services may last for days, months or year. This choice is made in CPQ package setting by setting Subscription Term Unit and it applies to every product as it is set org wide. Note. It is not possible for some products to use months while others to use days. Choosing right subscription term unit is important because it calculates prices.
Steps to Configure Subscription Settings
- Go to CPQ Configuration
- Navigate to Setup > Installed Packages > Salesforce CPQ > Configure.
- Set Subscription Term Unit
- Go to Subscription and Renewals Tab.
- Set Subscription Term Unit to:
- Monthly: Calculates pricing on a monthly basis.
- Daily: Calculates pricing on a daily basis.
- Set Proration Calculation
- Set Proration Precision to one of the following:
- Calendar Day: Considers days in a calendar year.
- Month Weighted: Adjusts based on the weight of the months.
- Monthly + Daily: Combines monthly and daily calculations.
- Set Proration Precision to one of the following:
How do you test subscription pricing on a quote?
Subscription Pricing is calculated based on Start Date, End Date/ Subscription Term
Steps to Test Subscription Pricing
- Add Subscription Products to a Quote
- Navigate to App Launcher > Quotes.
- Open an existing quote or create a new one.
- Click Edit Lines > Add Products.
- Select Cloud Storage and Amazon Prime.
- Click Next.
- Define Subscription Term
- On the quote line, set:
- Start Date: 2024-01-01.
- Subscription Term: 10
- On the quote line, set:
- Verify Pricing: The system calculates pricing as: Total Price = (Prorated Days / Total Days in Year) × List Price.
The default subscription term and length of subscription affects subscription pricing of quote line. CPQ combines both factors to calculate prorate multiplier, which signifies actual number to calculate prorated price.
What fields are required to define a subscription product?
Subscription Pricing, Subscription Term, Subscription Type.
Can a single org have products with different subscription term units (e.g., daily and monthly)?
No. The Subscription Term Unit is an org-level setting and cannot differ between products.
How is proration calculated in Salesforce CPQ?
Based on the Proration Precision setting:
- Month: Month (Rounded up)/ Default subscription Term
- Monthly Daily: (Months + {Remaining Days /{365/12}/ DST
- Calendar Monthly Daily: ([Partial Days in start month days in start month] Whole Months++ [Partial days in end month days in end month]) DST
- Days: Days Number of Days necessary to complete DST from start date
- Days with Calendar Month Weighted: Years ++ (Remaining Days X) where X 366 if remaining days include Feb 29 otherwise X = 365
What is the difference between Evergreen and Renewable subscription types?
Evergreen: Subscription remains active until canceled.
Renewable: Subscription requires manual or automated renewal.
Salesforce CPQ: Pricing Method Interview Question USE CASES
What are the different pricing methods in Salesforce CPQ?
Pricing methods can be used to perform price changes when a rep adds a product to quote.
Salesforce CPQ supports the following pricing methods:
- List Price: Based on the price defined in the price book.
- Cost Price: Includes a base cost plus markup/margin.
- Block Pricing: Pricing based on quantity ranges (tiers).
- Percentage of Total: Pricing calculated as a percentage of other selected products or groups.
- Multi-Dimensional Quotation (MDQ): Allows segmenting subscription products into smaller time periods like monthly or quarterly.
How do you implement the List Price method?
- Create a Product:
- Add Price Book Entry:
- Go to the Related Tab.
- Add a Standard Price Book entry with the price (e.g., $100)
How do you implement the Cost Price method?
Cost Price is cost of a product plus the markup. Unlike list price, cost price starts with base price of product and rep can adjust price by amount of percentage.
In CPQ, cost is child object of product object and is very similar to price book entry as there can be only one cost per product per currency. CPQ selects the cost based on the currency of the quote.
Even though, there is no pricebook associated with cost price, we will need price book entries for these products. Without price book entries, these products won’t be available for selection to a quote.
Steps to Implement Cost Price
- Create a Product:
-
- Product Name: Cost Price Product.
- Active: Check.
- Pricing Method: Cost Price.
-
- Add Cost Price:
- Go to the Related Tab.
- Click New Cost.
- Define: Unit Cost: $100.
- Add Price book then only product will be available in Quote Line Editor.
- Add List Price as 0 because we are using cost price and List price wont affect pricing in this case.
- Add Product to a Quote:
- Open a quote. > Edit Lines
-
- Select the product and notice that list price is coming as 0
To add Markup field to Quote Line Editor, Go to Quote Line> Field Set > Line Editor
Add Markup and Unit Cost Field in the field set by dragging.
Now you can see Unit Price and Markup in Quote Line
Define margin or markup fields in the quote line editor.
- Quantity: 2
- Markup: 10%
So basically, the net price is calculated as: Cost Price + Markup.
How do you implement the Block Pricing method?
Block pricing is tier-based pricing. It is applied when we are purchasing a product in bulk quality. Tier-based pricing means price depends on the quantity customer is purchasing.
Example:
Printer Paper
1-100: Price is $25
101- 200: Price is $50
Key Fields in Block Pricing
Lower Bound and Upper Bound:
- These are tier ranges. We cannot have any gaps between lower bounds and upper bounds value while defining the block pricing.
- The upper bound is excluded and lower bound is included in price calculation.
- When final tier’s upper bound is left blank, it is treated as infinite. It means if upper bound is blank, block price scales to any quantity.
Multi-Currency:
When the field is enabled, you will see additional columns for block pricing in each currency.
Steps to Implement Block Pricing
- Create a Product:
-
- Product Name: Block Pricing Product.
- Active: Check.
- Pricing Method: Block Pricing.
-
- Define Block Prices:
- Go to the Related Tab.
- Click New Block Price.
-
- Add ranges:
- Lower Bound: 1, Upper Bound: 51, Price: $25.
- Add ranges:
-
-
- Lower Bound: 51, Upper Bound: 100, Price: $20.
-
- Create a Price Book entry because without adding the product wont show in QLE.
- Add Product to a Quote:
- Open a quote.
- Add Block Pricing Example to the quote.
-
- Update the quantity
If we put quantity as 30 then Pricing will come under Tier 1 (1-50) and Unit Price will be $25
If we put quantity as 30 then Pricing will come under Tier 2 (51-100) and Unit Price will be $20
How do you implement the Percentage of Total method?
In this pricing method, price is calculated as percentage of its parent quote, quote line group, or bundle total price.
POT is generally used for subscription product sales process. When the pricing method for a product is set to percentage of total, Salesforce calculates the price.
E.g.: Hotel Tip is some percentage of bill is an example of POT pricing.
Steps to Implement Percentage of Total
Click New Product
-
-
- Product Name: Installation Fee.
- Active: Check.
- Pricing Method: Percentage of Total.
-
- Configure Percentage:
- Define:
- Percentage: 10%.
- Total Base: List.
- Total Category: Specify relevant categories (e.g. Hardware).
- Define:
- Add Product to a Quote:
- Open a quote.
- Add multiple products (e.g. Laptop, Mouse).
- Add Installation Fee.
The price of Installation Fee is calculated as 10% of the total price of selected products.
How do you implement Multi-Dimensional Quotation (MDQ)?
Multi-Dimensional Quoting allows you to break a longer subscription into smaller blocks. For instance, you buy amazon prime for 2 years. There is a offer that first year we will give you lower pricing. This is one of the cases of MDQ. This helps sales rep to negotiate and close deal faster.
Steps to Implement MDQ
- Create a Product:
-
- Product Name: VPN License.
- Active: Check.
-
- Add Price Dimension:
- Go to the Related Tab.
- Click New Price Dimension.
- Define:
- Dimension Name: Yearly VPN.
- Type: Custom.
- Unit Price: $30
- Add Product to a Quote:
- Open a quote.
- Add VPN License.
Click on Pencil Icon besides Custom
Add Start Date, End Date
Result: You can update price $30 for year 1 and $50 for year 2.
Can you have multiple cost prices for the same product in different currencies?
Yes, but only one cost price is allowed per currency.
How does MDQ improve subscription handling?
MDQ breaks long subscriptions into smaller periods (e.g., monthly or quarterly), allowing for flexible pricing and billing.
How Overage Works?
Overage in Salesforce CPQ refers to additional charges applied when the quantity of a product exceeds the upper limit of a block defined in Block Pricing. The overage rate is used to calculate the cost for any extra quantity beyond the defined block pricing range.
How Overage Works
In block pricing, products are priced based on quantity ranges (e.g., 1–50 units cost $500, 51–100 units cost $900).
Overage allows you to charge for quantities exceeding the highest range with a specified per-unit price.
- Overage Use Case:
- Imagine a product with the following block pricing:
- 1–50 units: $500 (fixed price)
- 51–100 units: $900 (fixed price)
- Imagine a product with the following block pricing:
If a customer orders 120 units, the overage rate will determine the cost for the extra 20 units.
- Overage Rate Calculation:
The overage charge = Overage Rate × Quantity exceeding the upper bound.
For example, if the overage rate is $10 per unit, the charge for the extra 20 units will be:
20 × $10 = $200.
How to Configure Overage in Salesforce CPQ?
- Enable Overage on the Product:
- Add a new field called Overage Rate ( It is a special field so keep API name same as given in Document)
-
- Navigate to the product’s Block Price related list.
- Create a Block Price:
- Define the block pricing ranges in the Block Price related list for the product.
- For each range, specify:
- Lower Bound: Minimum quantity.
- Upper Bound: Maximum quantity.
- Price: price for the range.
- Add the Overage Rate:
- Add the Overage Rate for the last block (highest range).
- This rate will apply to any quantity exceeding the Upper Bound of the last block.
Set Overage Rate to $2
Salesforce CPQ: Price Rule Interview Question USE CASE
What are Price Rules in Salesforce CPQ?
Price rules in Salesforce CPQ are used to dynamically set or update the value of fields, not only on the Quote Line but also on Quote, Quote Line Group, and Product Options. This allows for automated pricing calculations and adjustments based on specific conditions.
Key Components of Price Rules
- Price Rule:
- This is the main record that controls the conditions, actions, and scope of the price adjustment.
- Price Condition:
- Acts as the entry criteria for the price rule.
- It evaluates whether the rule should run based on specific fields or variables.
- Price Action:
- Defines what happens when the conditions are met.
- Specifies the target object and field to be updated and the value to apply.
- Lookup Object (Optional):
- A custom object used to fetch data dynamically when a rule is executed.
- Allows for complex logic by referencing external data sources or metadata.
How to Create and Configure a Price Rule?
- Navigate to the Price Rules tab in Salesforce CPQ.
- Click New and set the following:
- Name: Give the rule a meaningful name
- Active: Ensure the rule is active.
- Evaluation Event: Specify when the rule should trigger:
- On Initialization: Runs when the Quote Line Editor loads.
- On Calculate: Runs during price calculations.
- Before Calculate/After Calculate: For fine-tuned control during calculation events.
-
- Scope: Determine if the rule applies to:
- Configurator: During product configuration.
- Calculator: During price calculation.
- Scope: Determine if the rule applies to:
Use Case: Apply discounts based on the Account Type field:
-
- Direct Customer: 10% discount.
- Channel Partner: 15% discount.
- Technology Partner: 20% discount.
Steps:
- Create the Price Rule:
- Name: “Account Type Discount”
- Scope: Calculator
- Evaluation Event: On Calculate
- Add Price Conditions:
- Condition 1:
- Object: Quote
- Field: SBQQ__AccountType__c
- Operator: =
- Value: Direct Customer
- Condition 1:
-
- Similarly, add conditions for “Channel Partner” and “Technology Partner.”
- Add Price Actions:
-
- Target Object: Quote Line
- Target Field: SBQQ__AdditionalDiscount__c
- Value: 0.10 (for 10% discount)
-
Formula:
CASE(
SBQQ__AccountType__c,
“Direct Customer”, 0.10,
“Channel Partner”, 0.15,
“Technology Partner”, 0.20,
0
)