I'm looking for guidance on the recommended modeling approach in Revenue Cloud for configurable furniture bundles.
Scenario
We have a bundled furniture product that consists of multiple child products. (see attached for bundle details)
For example:
Parent Bundle
- Desk
The bundle is available in four finishes:
- Espresso
- Dark Walnut
- Gray
- Cherry
Each finish represents a different set of child SKUs.
For example:
Gray Finish
- Desk Shell → Gray SKU
- Return Shell → Gray SKU
- Pedestal → Gray SKU
Dark Walnut Finish
- Desk Shell → Walnut SKU
- Return Shell → Walnut SKU
- Pedestal → Walnut SKU
The bundle structure remains identical—the only thing that changes is the SKU assigned to each child component based on the selected finish.
The product hierarchy and option mappings are maintained in our PIM and synchronized into Salesforce.
Goal
When a seller configures the bundle and selects Gray, I want Revenue Cloud to automatically substitute all of the child SKUs with the corresponding Gray SKUs.
Likewise, selecting another finish should automatically replace all child SKUs with the matching variants.
My Question
Is Constraint Builder intended to solve this type of SKU substitution, or is there another recommended approach in Revenue Cloud Advanced?
Some possibilities I'm considering are:
- Constraint Builder
- Product Variants
- Product Configurator
- Bundle Option Groups
- Variant Resolution
- A custom mapping object driven from PIM
- Another recommended design pattern
I initially expected to associate Constraint Models at the Product Class level, but the Product Class selection in Constraint Builder is disabled in my org. Salesforce Support indicated this functionality is not currently available.
For organizations with highly configurable products, what is the recommended architecture for maintaining one logical bundle while automatically substituting the appropriate child SKUs based on a selected finish or color?
I'm looking for the most scalable, metadata-driven approach that minimizes custom development and leverages standard Revenue Cloud capabilities wherever possible.
The following information is based on the implementation of Product Variations in a developer org:
- Regarding your first point: In theory this requirement can be met through variant products in Revenue Cloud. https://help.salesforce.com/s/articleView?id=ind.product_catalog_create_product_variants_in_revenue_cloud.htm&type=5 I tested it in a developer org and was able to create variations (as shown in the screenshot). However, due to system limitations, I could not create any additional structure, so I was unable to further validate its feasibility.
- Regarding your second point: sales reps cannot directly add a purple variant product at the quote line level if it does not already exist in the product catalog. Product variations must be pre-configured in the catalog with defined attributes, such as color, size, or other specifications. However, sales reps can select from existing variations in the catalog and modify attributes like price, description, or lead time at the quote line level. To add a completely new variation (e.g., purple), it would need to be created as a new variation product in the catalog by an admin. At the product level, variant products (e.g., a desk in purple) must exist in the product catalog beforehand.https://help.salesforce.com/s/articleView?id=ind.qocal_product_variation_use_in_transaction_management.htm&type=5 Alternative Solution: Use a standard placeholder SKU (e.g., "Custom Component") within the bundle, and allow sales reps to manually override the description, cost, and vendor directly on the Quote Line for ad-hoc requests like "Purple."