Table of Contents
Price Rules
- more sophisticated pricing
- negotiated prices with special customers
- Using criteria to change some fields on the quote line, the quote line group or the quote itself
- Price rules follow the if/then format
- IF = all data of the quote and its related object can be evaluated
- THEN(THAN) = which fields to change and how to change them

Price Rule – basic information and where it works
Price Condition – Defines the criteria when the Price Rule should start – jumps to Price Action
Price Action – What should happen when the criteria of the Price Condition are met.
Multiple Price Rules can be created. However, no conflicts may occur.
Select Advanced Calculator
- Legacy Calculator is used by default
- but some price rules need Advanced Calculator
- Setup
- Installed packages
- on Salesforce CPQ – click Configure
- Pricing and Calculation tab
- Disable Use Legacy Calculator
- Save
- Click Authorize new estimator service
- Allow
Customize Listprices
- Sales reps should be able to create quote quickly and accurately
Example scenario
- a netbook will be expired for $ 500
- schools are to receive a special offer – $400
Options
Option 1
- create new pricebook
- maintain it accordingly when a new product is added
- Sales Reps can select the appropriate pricebook
- but it must be ensured that they always select the correct pricebook
- very error prone
Option 2
- Create Price Rule
- adjusts the price whenever a quote is created for an education customer
- so the correct price is always ensured
Create Price Rule
- App Launcher
- Price Rules
- New
- Type Name
- Evaluation Scope = Calculator
- Select Active
- Save
Conditions
- Price rules come into force only under some conditions
- the Customer’s Industry must be checked (field Industry=Education, on the Account)
- if the value is correct, then the price rule comes into effect
- In the following example Account.Industry = Education should be used
- Additionally there is an automatically created form field (by Trailhead) – „Account Industry“ – contains the value from Account.Industry
- an Related List Price Condition – New click
- Object – Select Quote
- Select Field – AccountIndustry__c (API name of the form field on Quote – must be added to the picklist)
- Operator – Select equals
- Filter-Type – Select Value
- Filter Value – enter appropriate value for the field (= ‚Education‘)
- Save
A 2nd condition is needed for the product code so that the price rule only affects this product.
- click on Related List Price Condition – New
- Object – Select Quote Line
- Field – Select Product Code
- Operator – Select equals
- Filter-Type – Select Value
- Filter Value – Enter Product Code (=NETBOOK)
The rule is now only applied if both conditions are also true.
Price Action
- Make changes to Quote, Quote Line or Quote Line Group if the conditions are true.
- as admin find out which fields have to be changed and how
- in the example change List Price to 400 $
- click on Related List Product Actions – New
- Target Object – Select Quote Line
- Target Field – Select SBQQ__ListPrice__c (API name of the standard list price field – must be added to the picklist)
- Value – add appropriate value (=400)
- Save
Test the Price Rule by creating an appropriate quote.
The Object/Field Combination – Price Condition
- can only identify fields at Quote, Quote Line, or Product Option
- therefore form fields should be used to utilize information from linked objects
Example:
- Reduce an SD card once by a lump sum of $25
- Customers are determined by picklist „Type“ of the opportunity as „New Customer
- in is not referenced by formula field
- a tested formula is used
- App Launcher
- Price Rules
- New
- Type Name
- Evaluation Scope = Calculator
- Select Active
- Save
- an Related List Price Condition – New click
- Object – Select Quote
- Tested Formula – enter the reference to the field (=SBQQ__Opportunity2__r.Type)
- Operator – Select equals
- Filter-Type – Select Value
- Filter Value – enter the corresponding value (=New Customer)
- Save
- an Related List Price Condition – Click New
- Object – Select Quote Line
- Field – Select Product Code
- Operator – Select starts with
- Filter-Type – Select Value
- Filter Value – enter the corresponding value (=SDCARD)
- Save
For the price, the list price from the Pricebook must be reduced by $30.
Note:
- a formula can become very complex
- a standard formula field on an object can be used for syntax checking („Check Syntax“ button)
- However, in Price Conditions CPQ does not support all formulas (e.g.: ADDMONTH())
2 Prices for price determination
- CPQ uses additional fields to represent certain adjustments
- Original price
- List price
- Special offer
- Regular price
- Customer price
- Partner price
- Net price
- RECOMMENDATION: Apply price rules only to list price and special price
- Regular price, customer price, partner price and net price – pro rata price
Avoid italic calculations
- Do not use the same field as source and target for a calculation!
- this leads to calculation problems
Special price
- adjust the package price of a product instead of the list price
Example:
- SSD hard disk in laptop as an option
- SSD hard disk for small companies additionally 20% cheaper
- Solution: Price rule on the special price
- App Launcher
- Price Rules
- New
- Type Name
- Evaluation Scope = Calculator
- Select Active
- Save
Thus, the rule is intended to target companies with fewer than 50 employees.
- an Related List Price Condition – New click
- Object – Select Quote
- Tested Formula – enter the reference to the field (=SBQQ__Account__r.NumberOfEmployees)
- Operator – select less than
- Filter-Type – select Value
- Filter Value – enter the corresponding value (=50)
- Save
- an Related List Price Condition – New click
- Object – Select Quote Line
- Field – Select Product Code
- Operator – Select starts with
- Filter-Type – Select Value
- Filter-Value – enter appropriate value (=SSD)
- Save
Deduct 20% from the special price.
- click on Related List Product Actions – New
- Target Object – Select Quote Line
- Target Field – Select SBQQ__SpecialPrice__c (API name of the standard list price field – must be added to the picklist)
- Formula – enter corresponding formula (=SBQQ__ListPrice__c * 0.8)
- Save
Attention:
- For price rules on the special price
- Special price type must be customized (=custom)
- Further Price Action
- click on Related List Product Actions – New
- Target Object – Select Quote Line
- Target Field – Select SBQQ__SpecialPriceType__c (API name of the standard list price field – must be added to the picklist)
- Formula – enter appropriate formula (=Custom)
- Save
Test the Price Rule by creating an appropriate quote!
Summary variables
- CPQ-verknüpfte Datensätze zusammenfassen
- Quote Lines
- Product-Options
- Subscriptions
- Assets
Example:
- In the navigation – Select Summary Variables
- New
- Enter name (=Laptop Asset Sum)
- Target Object – Select Asset
- Aggregate Function – Select Sum
- Filter Field – Select ProductCode
- Operator – select starts with
- Filter Value – enter corresponding value (=LAPTOP1) – considers Laptop13 and Laptop15
- Save
Price Rules with Summary Variable
- App Launcher
- Price Rules
- New
- Type Name
- Evaluation Scope = Calculator
- Select Active
- Save
Condition 1
- click on Related List Price Condition – New
- Object – Select Summary Variable
- Tested Variable – Select Laptop Asset Sum
- Operator – Select greater and equals
- Filter-Type – Select Value
- Filter Value – enter corresponding value (=10)
- Save
Condition 2
- click on Related List Product Actions – New
- Object – Select Quote Line
- Field – Select Product Code
- Operator – Select starts with
- Filter Type – Select Value
- Filter Values – enter appropriate value (=LAPTOP1)
- Save
Action
From the Pricebook price, another $100 is now to be added.
- click on Related List Product Actions – New
- Target Object – Select Quote Line
- Target Field – Select SBQQ__ListPrice__c (API name of the standard list price field – must be added to the picklist)
- Formula – enter the appropriate formula (=SBQQ__OriginalPrice__c – 100)
- Save
Test the Price Rule by creating an appropriate quote!
Composite Information
- for example:
- Summarize the weight of a product and convert from grams to ounces.
- with Composite Information area – last minute calculation on CPQ sum value.
- Example: 1 ounce = 28.3495 grams

The operators available here are addition, subtraction, multiplication and division.
Restriction of records – Contraint field
- sometimes second filter is necessary
- Example
- only laptops sold in the last year
- Example
- overlay another filter
- with contraint field in summary variable

General procedure:
- Create field for asset – distinguish which assets are included
- Create field to quote – same API name as asset field
- Formulas in both fields (automatic or manual) – same value
- In Contraint field the API name of both fields Asset and Quote
Rule distribution
- actually, a separate rule is needed for each possible price constellation
- netbook – schools – 400$
- Netbook – students – 350 $
- Netbook – health care – 450 $
- Laptop – schools – 600$
- Laptop – students – 550 $
- Laptop – healthcare – 450 $
- etc.
- Price rules potentiate so quickly
- Solution
- one rule for all
- variations in a custom object
- Query custom object

Price Rules
- Navigation bar – Price rules
- New
- Enter name accordingly (=look up net price)
- Valuation scope – Calculator
- Lookup object – IndustryPrice__c – API name of the custom onbject
- Save
Filtering the custom object with search queries
First Lookup Query
- Lookup Queries (Price Rule) Related List – click New
- Match Type – Select Field Value
- Tested Object – Select Quote
- Tested Field – AccountIndustry__c
- Operator – equals
- Select Lookup Field – IPIndustry__c
- Save
Second Lookup Query
- Lookup Queries (Price Rule) Related List – click New
- Match Type – Select Field Value
- Tested Object – Select Quote Line
- Tested Field – SBQQ__Product__c
- Operator – equals
- Select Lookup Field – IPProduct__c
- Save
Third Lookup Query
- Lookup Queries (Price Rule) Related List – click New
- Match Type – Select Field Value
- Tested Object – Select Quote
- Tested Field – AccountSLA__c
- Operator – equals
- Select Lookup Field – IPSLA__c
- Save
Important: All search queries must never return more than one line, otherwise an error message will appear. If there are 0 lines, the search is simply not updated
Price Action
- Price Action Related List – click New
- Target Object – Select Quote Line
- Select Target Field – SBQQ__ListPrice__c
- Select Source Lookup Field – IPPrice__c
- Save
Test the Price Rule by creating an appropriate quote!
Calculation fields
- Calculating fields are used by CPQ to know that a change could affect the price in any way
- Calculating fields are defined in the field set of the same name („Calculating Fields“)
- Own calculating fields can be added
Offer Calculation Sequence – Calculation Evaluation Event
- In most cases „On Calculate“ is sufficient – will be executed only once.
- In some cases, however, „After Calculation“ or „Before Calculation“ may also be required
- More than one can be selected – not recommended – Performance
Concurrent conditions
- if the conditions build on each other, this can lead to problems
- IF the ship date is within 2 weeks, THEN set Expedited to Checked.
- IF Expedited is checked, THEN add a $20 surcharge to shipping.
The 2nd rule is no longer implemented because it does not see the change in the 1st rule.
Prioritization of actions
Possibilities
- Valuation event of the Price Rule
- Valuation sequence of the Price Rule
- Order of the price action
Also have priority accordingly (1 before 2 and 3…)