Working with Option Constraints in Salesforce CPQ

What are Option Constraints?

Product Dependencies can be managed effectively using Option Constraints and Product Rules in Salesforce CPQ.

Product Dependency Examples-

  • Product A is ONLY AVAILABLE if you are adding Product B. (Enable Product A only if Product B is selected.)
  • Product A is NOT AVAILABLE if you are adding Product B. (Disable Product A if Product B is selected.)

For any selling organization, there could be a set of specific products which are dependent on the other products and have to be sold together or there could be products which cannot be sold together due to the product compatibility issues. In such cases, it becomes a tedious job for the Sales Reps to keep track of all the product dependencies and compatibilities in the system. Reps end up spending a lot of time selecting the correct products for the customers which eventually takes a toll on their productivity and the company’s revenue.

Option Constraints allow you to enable or disable a Product Option for selection based on the selection of another product option in the same Bundle Product.

You can apply multiple Option Constraints (OCs) to the single Product Option (PO) by selecting the same PO as the Constrained Option on all those OCs. This can be achieved by using the Option Constraint Group Field on the Option Constraint.

Option Constraint Fields

Field LabelType DescriptionOther Info
Constraint NameText
Constrained OptionLookup-Product OptionSelect the option in the bundle that you want applied to this constraint.
ActiveCheckBoxMarks this constraint as active or inactive.
Check Prior PurchasesCheckBoxCheck if you want to look up prior purchases of Constraining Option within the Account.
Configured SKULookup-ProductProduct SKU being constrained.Bundle Product of the Constrained/ Constraining Option
Constraining OptionLookup-Product OptionChoose an additional option if the Constrained Option is constraining another option.
Option Constraint GroupTextIf multiple Option Constraints target the same Constrained Option, putting the Option Constraints in the same group will require ALL Constraining Options to be selected.
TypePICKLISTChoose the behavior of this constraint: dependency means inclusion is required while exclusion means the option constraint is not selected when the constraining option is or vice versa.Picklist Values: Dependency/ Exclusion