Salesforce Stack Exchange is a question and answer site for Salesforce administrators, implementation experts, developers and anybody in-between. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have received a request from Sales/Marketing:

They need to package several of the products we sell as a single product/Combo - and give it a promotion price for a certain period.

  • It's an addition for a limited time on the regular partner price book - I can create a special price book that will only hold that product - and the PB is available for ceratin period
  • It can be 'exploded' to the nuclear products on the reports/dashboards


We sell 3 products:

  1. P1 @ 2k$
  2. P2 @ 1.5K$
  3. P3 @ 1K$

We have 2 special products combos for 2 months:

  1. Combo 1 - includes: P1+P2+P3 @3.5K$
  2. Combo 2 - includes: P1+P2 @2.5K

On the reports both options should be available:

  • As nuclear products
  • As Combo product

Any idea how to do this?

AKA: Configure-Price-Quote

share|improve this question

This is a classic package type scenario which salesforce doesn't handle so elegantly out of the box. (It's a classic use case for a CPQ Product in cases where there is a regular need for such stuff)

Some implementation considerations would be :

  • if you want all products to show up in the list of opportunity lines or use them on Quotes, all products will need to be in the same PriceBook

  • I reckon you can add a text field (or maybe use ProductFamily) on Product to signify that is is part of a Package. All products which form part of the same package will have the same text in the package name field, say ABC. You could write some trigger logic that automatically adds the other two products in the package when one of the products from the package is selected.

  • given the complexity of handling edits via a trigger, I'm leaning towards recommending a Visualforced product entry screen which only displays packages rather than products (grouping by ProductFamily/ PackageName) and abstracts the complexity of maintaining data integrity (this is assuming that products which are the constituents of a package cannot be added independently)

  • as far as reporting goes I'm wondering how a custom summary formula or bucketing field would fare which aggregates values based on package names for the rollup scenarios, assuming that you have only a finite number of package names to configure.

share|improve this answer
Working with triggers will be painful - as the logic to handle edits will be huge. *CPQ - new definition for me +1 – Saariko Dec 11 '12 at 9:30
Another idea would be to visualforce the product entry screen so that whilst the exploded products are viewable, a lot of the complexity of edits can be abstracted in the custom controller – techtrekker Dec 11 '12 at 9:34
nice idea, but again - very complex if I want to make it generic I think. – Saariko Dec 11 '12 at 9:41
You could drive the aggregation (package) behaviour off the Opportunity RecordType or an Opportunity attribute if that helps make it generic. You could redirect to the default Product Screen for other cases. – techtrekker Dec 11 '12 at 9:45

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.