When Related Price Scope = Cart, CPQ calculates the price of the dependent product based on the instances of the primary product in the entire cart. CPQ checks for the primary product in the whole cart.

When Related Price Scope = Bundle, CPQ calculates the price of the dependent product based on the instances of the primary product in the same bundle. CPQ checks only for the bundle and its options.

In all these use cases, if you add the dependent product to the cart first, its price is zero because there are no primary products in the cart. If there is only one primary product, the dependent product's price is calculated based on one primary product. If there are two primary products, the dependent product's price is calculated based on two primary products. If you delete primary products, the price of the dependent product is zero. 

Use Case 1: Standalone Products

Primary Product 1 = USD 1000

Primary Product 2 = USD 1000

Dependent Product 1 is related to both Primary Product 1 and Primary Product 2 (at 10% Discount)

When Related Price Scope = Cart, if you add all three products to the cart, CPQ calculates the price of Dependent Product 1 based on the instances of Primary Product 1 and Primary Product 2 in the entire cart, at 10% discount on the total. Sum of Primary Product 1 and Primary Product 2 = 2000 and 10% discount on 2000 is 200. So the price of Dependent Product 1 = USD 1800 (2000 – 200).

When Related Price Scope = Bundle, if you add all three products to the cart, CPQ calculates the price of Dependent Product 1 based on the instances of Primary Product 1 and Primary Product 2 in the same bundle Dependent Product 1 (be it a bundle or option). CPQ looks only for that bundle where Dependent Product 1 exists and there is no instance of Primary Product 1 and Primary Product 2 in the bundle. So the price of Dependent Product 1 = USD 0.

Use Case 2: Bundle and Option Products

Bundle 1 = USD 1000

Option 1 = USD 100

Option 2 is related to both Bundle 1 and Option 1 (at 10% Discount)

When Related Price Scope = Cart, CPQ calculates the price of Option 2 based on the instances of Bundle 1 and Option 1 in the entire cart, at 10% discount. If you add Bundle 1 to the cart once, CPQ calculates the price of Option 2 based on the instances of Bundle 1 and Option 1, at 10% discount. Because there is only one instance of Bundle 1 and Option 1 in the cart, the price of the Option 2 is (1000 + 100) – 110 = 990. If you add Bundle 1 to the cart a second time, the price of Option 2 in both instances is 1980, because there are two instances of Bundle 1 and option 1 in the cart (990 * 2 = 1980).

When Related Price Scope = Bundle, if you add Bundle 1 to the cart, CPQ calculates the price of Option 2 based on the instances of Bundle 1 and Option 1 (in Bundle 1), at 10% discount on the total. Sum of Bundle 1 and Option 1 = 1100 and 10% discount on 1100 is 110. So the price of Option 2 = 990 (1100 – 110). If you add Bundle 1 to the cart a second time, the price of Option 2 remains 990 because CPQ looks inside Bundle 1 only (though this is the second instance of Bundle 1).

Use Case 3: Discount Amount

Primary Product 1 = USD 1000

Primary Product 2 = USD 1000

Dependent Product 1 is related to both Primary Product 1 and Primary Product 2 (at 10 Discount Amount)

When Related Price Scope = Cart, CPQ calculates the price of Dependent Product 1 based on 10 discount amount on the instances of Primary Product 1 and Primary Product 2 in the entire cart. If Primary Product 1 and Primary Product 2 are not added to the cart, but only Dependent Product 1 is added, the price of Dependent Product 1 is USD – 10.

When Related Price Scope = Bundle, CPQ calculates the price of Dependent Product 1 based on 10 discount amount on the instances of Primary Product 1 and Primary Product 2 in the same bundle where Dependent Product 1 exists. There is no instance of Primary Product 1 and Primary Product 2 in the bundle where Dependent Product 1 exists, so the price of the Dependent Product 1 is USD – 10.

Use Case 4: More Scope (Product Group, Product Family, or Charge Type)

On related price, you can define the scope such as product group, product family, or charge type.

Primary Product 1 = USD 1000 (Charge Type = Standard Price)

Primary Product 2 = USD 1000

Dependent Product 1 is related to both Primary Product 1 and Primary Product 2 (at 10% Discount) and Charge Type = Standard Price

When Related Price Scope = Cart, if you add Primary Product 1 and Primary Product 2 to the cart, CPQ considers only those products that have the same charge type for calculating the price of Dependent Product 1. In this case, only Primary Product 1 has Charge Type = Standard Price. So the price of Dependent Product 1 is 10% discount of the instances of Primary Product 1 in the cart. 10% discount of 1000 is 100. So the price of Dependent Product 1 = USD 900.

CPQ skips Primary Product 2 even though it is related to Dependent Product 1.

Use Case 5: Custom Group

On related price, you can create a custom group by defining some formula fields.

Primary Product 1 = USD 1000 (PLI_CustomField = 10)

Primary Product 2 = USD 1000 (PLI_CustomField = 20)

Dependent Product 1 is related to both Primary Product 1 and Primary Product 2 (at 10% Discount) - You can create a custom field where (PLI_CustomField = 20)

When Related Price Scope = Cart, if you add Primary Product 1 and Primary Product 2 to the cart, CPQ considers only those products that have the same custom field for calculating the price of Dependent Product 1. In this case, only Primary Product 2 has PLI_CustomField = 20. So the price of Dependent Product 1 is 10% discount of the instances of Primary Product 2 in the cart. 10% discount of 1000 is 100. So the price of the Dependent Product 1 = USD 900.

CPQ skips Primary Product 1 even though it is related to Dependent Product 1.

Use Case 6: Locations

If primary product and dependent product have different locations, related pricing does not work. In that case, the net price of the dependent product will be 0. For related price to work, both products must be in the same location.

  • Dependent Product 1 is related to Primary Product 1 (at 10% Discount)
  • Related Adjustment Applies To: Base Price or Net Price

When you add both products to the cart:

ProductNet PriceBase PriceLocation
Primary Product 110001000Australia
Dependent Product 1100100Australia

After you change the location of Dependent Product 1:

ProductNet PriceBase PriceLocation
Primary Product 110001000Australia
Dependent Product 100India

If there is a requirement for related price to work even if the location is different for both products, you must use a custom location field.