0% found this document useful (0 votes)
3K views1 page

Salesforce CPQ Object Model PDF

The document provides an overview of Salesforce CPQ's object model for quote templates. It includes standard and custom objects for quote templates, fields for defining quote line columns and styles, and a separate package for advanced approval logic for opportunities and quotes. The model shown is intended for information purposes only and includes primary objects and relationships.

Uploaded by

Sev
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3K views1 page

Salesforce CPQ Object Model PDF

The document provides an overview of Salesforce CPQ's object model for quote templates. It includes standard and custom objects for quote templates, fields for defining quote line columns and styles, and a separate package for advanced approval logic for opportunities and quotes. The model shown is intended for information purposes only and includes primary objects and relationships.

Uploaded by

Sev
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

SALESFORCE CPQ [210.15.12] - OBJECT MODEL - V1.

1 - MARK CANE - 2018-03-24

Quote Templates
Standard Object

Custom Object

Field Name Lookup Relationship


Line Column Style Options (Font and Margin)
Advanced Approvals:
SBQQ__LineColumn__c Width (must add cumulatively to 100%) Master Detail Relationship
Column Options (Rollup, Conditional Print,
Separate Package - Advanced Approval logic for Opportunity or Quote records.
Column Specification within Hide on Product Options, Summary Level,
the Quote Line Item output. Function and Label)
Points of difference:
Roll Up (to the master line, if set on the
Approval Chains (parallel and independent) This model includes Primary Objects and
template)
… Dynamic Approvers (assign based on a specific parameter - e.g. regional approval paths) relationships only.
Smart Approvals (prior acceptances not re-requested on resubmission)
For information purposes exclusively.
Steps:
(0) Setup Approvers - Users and Groups (by Public Group Id)
Quote Templates:
(1) Create Approval Chain (Target Object) “Finance”, “Sales”, “Legal” etc.
Displayed for Preview or Generate Document.
(2) Create Approval Rules
All Output fields must be on the Quote object.
Target Object
Templates (Request, Approve, Reject, Recall)
Custom Tab Related List Approver
Content (lookup) Approval Chain
Quote Template Template Section Display Order
SBQQ__QuoteTemplate__c SBQQ__TemplateSection__c Group Field (Product Category, Subscription (3) Add Approval Conditions
Related List Family) Tested Field
Quote Document Template. Content section within a Conditional Print Field Filter Field/Value/Approval Variable
Selectable during Document specific Template output. Page Break Behaviour (Before, After, Both)
Generation. Filtering Information (Field, Value, Operator) Quote shows Approvers and current Approval Status in Related List
Related List Hide the “Generate Document” button until the Quote is Approved.
… …
• Approvers and Approver Groups
○ Parallel and Serial Approvers at each Tier.
Header Content Section filtering:
○ Record Status; { Pending, Approved, Rejected, Recalled }.
Footer Content Use filtering on LineItems content sections to
○ Approval Record for each Approver with Status; { Assigned, Requested, Approved, Rejected, Revoked }.
Quote Template Fields: break the line items into separate sections.
○ Approver is either User or Public Group Id. Approver has Unanimous flag.
Is Default?
Logo Document Id • Approval Chains and Email Templates
Page Information (Width, Height & Margins) ○ Approval Chain functions as a parallel path alongside a Serial Approval. All chained approvals executed in parallel.
Header/Footer Information (Height & Content, T&Cs) Custom Tab Custom Tab
○ Visualforce email templates only.
Corporate Information Content Name Active
Style Information (Font, Size and Colour) Template Content Type: Quote Term Locked • Approval Rules
Group Style Information (Font, Size and Colour) SBQQ__TemplateContent__c HTML - Font, Markup SBQQ__QuoteTerm__c Body ○ Approval Rule has parent Approval Chain and Approver.
Section Titles LineItems - Font, Table Type (Standard, Price Status (Draft, In Review, Approved, ○ Approval Rule has Conditions and Email Notifications (templates) and Exclusions (statuses, date ranges.
Print Options (Hide/Show Options) Reusable Content. Dimensions as Cols or Row with Summary) Quote Specific or Reusable Rejected)
Line Columns (Related List) Quote Terms - Font Conditions Met (All, Any Custom)
Legal Terms with Conditional • Approval Variables and Submittal
Sections (Related List) Custom - Font, Custom Source=VF Page Url Logic. ○ Approval Variable; Target Object, Type (Summary) etc.
Additional Documents (Related List) Template Top - HTML Editor, merge fields
… … ○ Submit for Approval button (Opportunity and Quote).
Template Bottom - HTML Editor, merge fields

Merge fields: Quote Terms:


{!template.[field]} >> reference Quote Template fields. Quote terms must be added to Template Content
{!quote.[field]} >> reference Quote Template fields. then added to a Template Section. Evaluation of the Guided Selling
related Term Conditions controls inclusion in output.

Name Field or Variable Label


Additional Document Display Order Term Conditions Operator Quote Process Process Input Input Field
SBQQ__RelatedContent__c Required SBQQ__TermCondition__c Value SBQQ__QuoteProcess__c SBQQ__ProcessInputValue__c Display Order
Related List External Id (Document or Salesforce Conditions Met; All, Any
Marketing Content Content Record ID - mandatory) Logical Condition used in Guided Selling Process Question (or Prompt) within a
Product Specifications, Case determining whether Quote Definition guided Quote Process Twin fields required on QLI
Studies etc. Terms are printed.
… … … …
Line Item Summaries:
The Quote Process ID field indicates a Quote
Quote Template: Process should be used - set by workflow.
Group Field / Sub Group Field: Grouping QLI for totals.
Roll-Up Field: Rollup into a single line where QLI have
the same value in the value specified.
Total Field: Field to Total (Net Total Price)
Subtotal Field: (Regular Total Price)
Line Sort Field
Attachment Id Process Input
Line Column: Quote Document Electronic Signature Process Input Values Process Input Condition Master Process Input (value determines
Rollup? SBQQ__QuoteDocument__c Signature Status SBQQ__ProcessInputValue__c SBQQ__ProcessInputCondition__c visibility of the Process Input)
Summary Level Paper Size Operator
Summary Function (Sum) Versioned Generated Quote Quote Level Values for a given Visibility Conditions that make Value
Summary Label Document instance. Audit Process Input the question flow dynamic
Purposes - Admin Only.
… … …

Summary Variables:
Similar to RSF but no fields required. Aggregate Custom Tab Field
a collection of products on a Quote.
Function
 
Composite Operator (another Summary Variable)
Aggregate Field =  Quantity, List Price Summary Variable
Filter Field
Dynamic SKU: Quote Line Fields:  Where Product Code or Family = XYZ SBQQ__SummaryVariable__c
Filter Value
Product Max, Min, Sum, Average, Count Operator
Product Option Fields: Quantity   Variable that summarise Quote Scope
Assign value to Component Code field Margin Used in :Product Rules, Price Rules, Validation Line items
Assign value to Component Code Position Quote Fields: Markup Rules, Dynamic Quote Terms
Primary Group   …
Product Field: Type { Quote, Renewal, Amendment, Re- List Total / Unit Price Combine With [another SV]
Add expression to the Component Code Pattern Quote } Net Total / Unit Price Composite Operator (+ - / *)
e.g. 0000{10}-{20}-{30}-123 Status { Draft, In Review, Approved, Customer Total / Unit Price Variable Element - SV or Value Element - literal
Denied, Presented, Accepted, Rejected } Gross Profit
Expires On Start Date
Output is stored in the Package Product Code
Margin % End Date
field on the Parent Bundle Quote Line Item.

Custom Tab

Product Fields: Customer Total


Component Quote Quote Line Quote Line Group List Total
Quantity Editable SBQQ__Quote__c SBQQ__QuoteLine__c SBQQ__QuoteLineGroup__c Net Total
Hidden - not visible on the Quote Document Markup %
Asset Conversion { One per Quote Line, One per Unit } A Customer specific Quote. Individual Quote Line Item. Custom Group of Quote Line Billing Frequency
Exclude from Opportunity Items.
CPQ Configuration > Option Layout (Wizard, Sections, Tabs)
CPQ Configuration > Option Selection Method (Click, Add, … … …
Dynamic)
Pricing > Pricing Method { List, Cost, Block, Percent of Total }
Pricing > Exclude from Percent Of Total
Subscriptions > Subscription Pricing
Subscriptions > Percent of Total
Upgrades > Upgrade Source
Upgrades > Upgrade Target Pricing & Discounts
Renewals > Renewal Product Price Dimensions: Pricing Waterfall: Percentage of Total Pricing Method:
Subscription Products that contain a segment Percent of Total Pricing allows a user to set a Percentage on
Product > Price Dimensions Related List List Price which the Product's List Price will be calculated based on the
MDQ = Multi-Dimensional Quote - System Discounts Quote, Quote Line Group, or Product Bundle's Total.
Opportunity Product Price Book Entry PriceBook   Regular Price (or Inject Special Price) Percent of Total Pricing is calculated based on non-subscription
Product2 PriceBookEntry PriceBook2 Product Rules not Product Options with MDQ - Additional Discounts Products and Products marked as Include in Percent of Total.
Sales Cloud Sales Process. Can't be used on Parent Bundle Product Customer Price  
Products that represent Goods Product List Price per Standard and Custom Segment Index = 0 activation fee, 1 = 1 Year 1… - Partner Discounts Product Fields:
or Services sold by the Pricebook. Pricebooks. One time Price Dimension requires at leat one Y, Partner Price % to Apply
Company. M or Q Price Dimension - Distributor Discounts Percent of Total Base: List, Regular, Customer, Net
… … … … Net Price Percent of Total Category - set on product and products included
in the calculation
Percent of Total Target - limit to a single product
Percent of Total Constraint - List Price is minimum or maximum
Include in Percent of Total
Exclude from Percent of Total

Type { Year, Quarter, Month, One-time } Lower Bound (inclusive)


Subscription Account Price Dimension Quantity Editable Block Price Upper Bound (exclusive) Price Rule Price Condition
SBQQ__Subscription__c SBQQ__Dimension__c Quantity Scale SBQQ__BlockPrice__c Effective Date SBQQ__PriceRule__c SBQQ__PriceCondition__c
Customers, Suppliers, Customer, Unit Price Expiration Date Evaluation Scope { Configurator or Calculator}
Customer Subscription to a Partners or Distributors. Distributor, Subscription Product Price Price Editable Quantity Block Pricing - Automate price calculations Conditions Met { All, Any or Custom } Use filters, variables and
Product or Service. Partner Segment Type (Year, Month Taxable Quantity Ranges and update Quote Line fields.   formulas to specify conditions
etc.). Record per Currency. … Configurator Evaluation Event { None (save and
… … … … leave), Save (on save), Edit (realtime within …
Configurator) }
Created for Subscription Products when Object { Quote, Quote Line, Product Option,
Opportunity is set to Contracted. Contracted Pricing: Summary Variable }
Separate record per currency Field (Product Code)
Contracted Prices are inherited down the Account hierarchy Tested Variable (Summary Variable)
(to block inheritance set Ignore Parent Contracted Prices=TRUE) Tested Formula
EffectiveContractedPrice Visualforce page Filter (Operator, Type, Value, Variable, Formula)
Overlaps not allowed
Custom Tab
Master
Contract Active Specific Product or Filter (Field=Product, Target Object { Quote, Quote Line, Price Rules:
Asset Contract Cost Unit Cost Contracted Price Product Code, Family > Operator > Value) Price Action Product Option } Price Rules automate price calculations and
SBQQ__Cost__c SBQQ__ContractedPrice__c Price SBQQ__PriceAction__c Target Field (Unit Price, Discount %/£, update quote line fields. Configure Price Rules to
Customer Asset (Product) Commercial Contracts. Used in Cost plus Margin pricing Discount % Markup %/£) automatically discount Quote Lines based on
Per Currency Cost Price. Per Customer Pricing. Takes Effective Date -> Expiration Date Actions taken when the Price Value Product or Quote attributes or to inject pricing
Precedence. Discount Schedule Rule fires. Usually a discount, Formula when Quantity hits a level.
Ignore Parent Contracted Prices applied or price injection. Source Field
… … … … … Source Lookup
Source Variable (Summary Variable)
Created for Non-Subscription Products when
Opportunity is set to Contracted.

Products & Bundles

Discount Schedules: specify volume


discounts. These volume discounts are based
on a % of the product's price (or specific
Amount) to be discounted using the quantity Custom Tab Configuration Rule: Product ID
Custom Tab
purchased or term. Set the quantity or term EQUALS
ranges in tiers of different discount values. Product Feature: Configured SKU ID Tested Object
  Discount Schedule Feature Configuration Rule Product Rule Error Condition Tested Field
Discount tiers - SBQQ__DiscountSchedule__c SBQQ__ProductFeature__c SBQQ__ConfigurationRule__c SBQQ__ProductRule__c SBQQ__ErrorCondition__c Operator
Lower Bound IS INCLUSIVE Min Options Type: Value
Upper Bound IS NOT INCLUSIVE Automatic Volume Discount Headers that group related Max Options Product Rule links to a Product Viability Check for Product { Validation (requires Message) Logical condition that causes Tested Attribute
   Schedule Options. Category (picklist) Bundle. Parent Bundle Condition Level Configuration. Alert (requires Message) the Product Rule to FAIL. Tested Variable
Slab = Blended (1-10 5%, 11-20 10% etc.) Configuration Field Set (Product FieldSet) - Child Bundle Condition Level Selection
Range = single tier applied … … fields display in Quote Line Editor. … Child Bundle Action Level … Filter } …
Type: { Range - (quantity tier), Slab (quantity tier
  Option Selection Method - { Click, Add, Evaluation order
plus preceding tiers i.e. Blended)
Can be Product or Account specific Dynamic } Evaluation events; Load, Edit, Save, Always
Discount Unit: % or Amount or Price
Quantity Discounted or Term Discounted. Scope: { Product (Inside Configurator)
Aggregation Scope: Quote, or Quote Line Group
Cross Product: consider all product or features Quote or Quote LineItem (Outside Configurator) }
that share the same schedule Conditions Met: { All, Any
Cross Orders: or Custom (Advanced Formula field) }
Product Option: Configured SKU ID
EQUALS
Feature: Configured SKU ID
Product Rules:
Evaluate Quote Products against Conditions to validate configuration.
Lower Type { Dependency (must) Type: { Add, Remove, Show,
Constaining Option Error messages appear in the Quote Line Editor.
Discount Tier Upper Product Option Option Constraint Exclusion (can’t) { Product Action Hide, Enable, Disable }
Contract Amendments and Renewals: Real-time Rule Processing (Apply Immediately flag on the Product Option)
SBQQ__DiscountTier__c Discount Amount SBQQ__ProductOption__c SBQQ__OptionConstraint__c Check Prior Purchases SBQQ__ProductAction__c
Note: Option Constraints Override Product Rules
Discount % Constained Option Group Product (to target)
• Contract Generation
Discount Tier (Quantity Range) Product added to a Bundle. Constraints govern which Actions taken when the
○ User creates Opportunity. Validation Rules: Scope=Quote.
within a Schedule Boundaries: inclusive on Lower Bound and Type { Component - fully dependent; qty and existence, Product Options must or must Product Rule FAILS. Filter Field (target all Options that match
○ User creates Quote ([Primary]=TRUE, [Start Date] & [Subscription Term] set) linked to Opportunity. Accessory - existence only, Related Product -
Configuration Rules: Bundle Specific Rules.
exclusive on Upper Bound. not be selected together. the defined filter)
○ User adds Products (1xSubscription Type (e.g. Warranty), 1xAsset Type (e.g. Printer)). independent) Filter Rules: Pre filter products for Dynamic Product Bundles.
… … … … Operator
○ User sets Opportunity field [Contracted]=TRUE. Unit Price Alert Rules: Like validation but allow continuation.
Filter Value
○ CPQ generates Contract, Subscription (related to Contract) and Asset records. Bundled, Required, Selected
Quote Line Visibiity Value Object Use cases:
○ User activates the Contract.
Apply Immediately Value Field Add a Product to a Bundle based on Conditions.
Apply Immediately Context (Always, On Selection, On
• Contract Amendment Quantity Change)
Display an Error if configuration is not viable or simply alert the Agent.
Product Features:
○ User clicks Contract “Amend” button. Discounted by Package Category is the primary grouping - this groups Features in the Quote
○ CPQ creates Amended Opportunity (e.g Amendment for contract #00000101). Upifted by Package
Line Editor, which in turn groups Product Options. Dynamic Bundles:
Package Product Code; Component Code, Component
○ CPQ creates Amended Quote. Discount Schedule at Feature level overrides Product level.
Code Position? Product Feature with Option Selection Method = Dynamic
○ CPQ displays Quote Line Editor (Configurator). Configuration Attributes: are inputs located Dynamic bundles are based on a Feature.
Custom Tab Dynamic Option Filter Field Set : Product FieldSet containing Code, Name and Family
○ User adds Products, configures Quote Lines and saves the Quote. above or below the Product Option list in the
Dynamic Option Lookup Field Set : Product FieldSet containing Code, Name and Desc
○ User sets Amendment Opportunity to [Contracted]=TRUE. Configurator that enable convenient setting of the Row There are no Product Option records.
○ CPQ creates New Subscription for Existing Contract. value of a field shared by one or more Product Configuration Attribute Column (1 to 3) Option Constraints:
Use Product Rules to validate the configuration.
Options on a selected Bundle . SBQQ__ConfigurationAttribute__c Position { top (above) or bottom Override Product Rules
• Contract Renewal (below) Product Options) } Groups enable AND logic to be applied where 2 options impact a 3rd option
○ User sets Contract [Renewal Forecast]=TRUE. For example, adjust the Location or Discount % of Discount, Unit Price etc. Target Field
○ CPQ creates Renewal Opportunity linked to Renewed Contract and Forward Contract. all Product Options in a Bundle from within the Applied to all Product Options Required Configuration Attributes:
○ CPQ creates Renewal Quote linked to Contract. Configurator. within a Bundle or Feature. Auto Select Make changes to fields across Product Options within Bundle - spend less time in the
… Default Object & Field Configurator.

Common questions

Powered by AI

Product Rules in Salesforce CPQ ensure that product bundles are configured correctly according to defined constraints and business logic. They evaluate quote products against specified conditions to validate configurations, utilizing error messages and alerts to guide users. Real-time rule processing allows immediate feedback in the Quote Line Editor, improving the user experience by preventing invalid configurations before they are finalized. Product Rules also automate actions such as adding or removing products based on configuration outcomes. This automation and real-time validation support business efficiency and accuracy in quoting processes.

Salesforce CPQ ensures pricing accuracy through strategies involving Price Rules, Contracted Price records, and Discount Schedules. Price Rules apply conditions and automate pricing adjustments, ensuring consistency with predefined criteria. Contracted Price records offer customer-specific pricing that inherits through account hierarchies, unless blocked, providing consistency across customer interactions. Discount Schedules manage tiered discounts, aligned with different purchase quantities, ensuring structured discounting. This system of rules and records maintains integrity and precision in pricing across various scenarios.

Salesforce CPQ manages pricing and discounting strategies for subscription products using various mechanisms like Price Rules, Discount Schedules, and Percent of Total Pricing. Price Rules automate price adjustments by applying discounts or price injections based on product or quote attributes. Discount Schedules provide volume-based discounting tiers, which define how discounts are applied over different quantity ranges. For subscription products, Price Dimensions can be set for different time frames (yearly, monthly, etc.), allowing for detailed control over pricing strategies. These tools collectively offer flexibility and control, ensuring pricing aligns with specific business models and customer contracts.

Configuration Attributes in Salesforce CPQ streamline the product setup process by allowing users to set shared attribute values for multiple product options within a bundle. By positioning these attributes above or below the Product Options, users can easily apply changes like discounts or locations across an entire bundle, reducing the time and effort required for setup. This centralized approach is particularly beneficial for complex configurations, as it minimizes user input redundancy and enhances efficiency in configuring large product bundles.

Integration of Quote Terms and Conditional Logic in Salesforce CPQ enhances document generation by enabling dynamic content inclusion based on specific conditions. Conditional logic evaluates Term Conditions to determine which Quote Terms are included in the document, ensuring compliance with legal and business standards without manual oversight. This functionality supports automation and accuracy in generating contract documents, reducing errors and aligning outputs with business rules. It gives companies the ability to customize documents based on the unique requirements of each quote.

Dynamic Bundles in Salesforce CPQ transform quote configurations by allowing product options to be automatically filtered and displayed based on real-time conditions. This functionality uses a Dynamic Option Filter Field Set to streamline the selection process, reducing manual configuration efforts and minimizing errors. The primary advantage for sales processes is the enhanced flexibility and speed in configuring quotes, allowing sales teams to quickly adapt and present viable product combinations to customers, which can improve customer satisfaction and sales outcomes.

Advanced Approvals in Salesforce CPQ facilitate complex approval processes by offering features such as Approval Chains, Dynamic Approvers, and Smart Approvals. Approval Chains allow for parallel and independent approval paths, enabling multiple approvals to occur simultaneously. Dynamic Approvers assign approval tasks based on specific parameters, such as regional approvals, enhancing flexibility. Smart Approvals optimize efficiency by recognizing prior approvals, which reduces unnecessary approval requests on resubmission. These features collectively enhance the agility and responsiveness of approval processes in complex organizational environments.

In Salesforce CPQ, Option Constraints enforce restrictions on which product options can be selected simultaneously, ensuring that only viable product configurations are possible. They support configuration integrity by imposing rules such as dependency (must select) or exclusion (cannot select together), which override Product Rules when applicable. This interaction prevents incompatible selections and ensures that product bundles are configured according to business and product requirements. Option Constraints thus serve as an additional layer of logic that interacts with Product Rules to maintain valid configurations.

Salesforce CPQ supports contract amendments and renewals through a structured process involving objects such as CPQ__QuoteProcess__c, Contracts, Opportunities, and Quotes. Amendments involve creating new Opportunities and Quotes that are linked to the existing contract, allowing users to modify product configurations and pricing as needed. For renewals, the Renewal Forecast flag on Contracts triggers the creation of Renewal Opportunities and Quotes, facilitating forward contract planning. The CPQ system automates parts of this process, ensuring that contracts are updated accurately while maintaining consistency across related records.

The Salesforce CPQ object model facilitates the management of quote templates and documents through objects such as SBQQ__QuoteTemplate__c, SBQQ__TemplateContent__c, and SBQQ__TemplateSection__c. Quote templates are configured to define the layout of generated documents, including selecting reusable content and defining sections within the document. Elements involved include headers, footers, document properties like style and print options, and conditional terms which govern the inclusion of content based on specific conditions. The object model allows these elements to be configured and linked, thereby customizing the generated documents to meet specific business requirements.

You might also like