Set Up Product Configurator for B2B Stores

Use the product configurator to offer configurable products and bundles to your buyers. To set up the product configurator, configure Revenue Cloud features, permissions, sharing settings, and advanced pricing. Then, create a configurator flow, assign it to your store, and republish your store.

Required Editions

View supported editions.

Which Salesforce Commerce Product Do I Have?

Important
Important To use the product configurator, you need these licenses:
  • Salesforce Commerce Growth or Advanced with Advanced Pricing for Commerce Powered by Revenue Cloud enabled
  • Salesforce Revenue Cloud Advanced
Important
Important To use product configurator, enable the Advanced Product Configurator and Commerce: Salesforce Pricing permission. Contact Salesforce Customer Support to enable them.

Enable Revenue Cloud Features and Billing for Product Configurator

Enable Revenue Cloud features and turn on billing to prepare your org for the product configurator.

  1. At the top of the page, click Settings icon and select Setup.
  2. In the Quick Find box, search for and select Revenue Settings.
  3. Make sure that Enable Revenue Cloud Features is selected.
  4. In the Quick Find box, enter Billing, and then select Billing Settings.
  5. Turn on Billing.

To avoid access issues after turning on billing and before setting up billing features, assign the Billing Admin and Billing Operations User permission sets to users with the System Administrator profile.

Note
Note After you turn on billing, order activation succeeds only if the order records have values for the Bill to Contact, Billing Address, and Shipping Address fields. Order activation fails if any of these values are missing.

Assign Permission Sets to Product Configurator Users

Assign these permission sets to users who set up the configurator and create configurable products or bundles.

Permission Sets for Product Configurator Administrative Tasks
Permission Set Name Description
Billing Admin Gives permission to configure billing policies, treatments, and legal entities, define policies, manage org defaults, and assign user permissions.
Billing Operations User Gives permission to schedule invoice runs and manage invoice-related operations.
Context Service Admin Gives permission to create and manage all context service objects and context definitions.
Product Configuration Constraints Designer Gives permission to create and manage constraint types and rules in Configurator with Constraint Rules Engine.
Product Catalog Management Viewer Provides read access to Product Catalog Management objects and APIs, and browse products by using Product Discovery.
Product Discovery User Provides read access to Product Catalog Management objects and APIs, and permission to browse products by using Product Discovery.
DecimalQuantityRuntime Gives view access to the Decimal Quantity Feature for runtime users.

Assign this permission set to buyers who configure and purchase configurable product bundles.

Permission Sets for Buyers
Permission Set Name Description
Product Catalog Management Viewer Provides read access to Product Catalog Management objects and APIs, and permission to browse products by using Product Discovery.

To assign permission sets:

  1. From Setup, in the Quick Find box, search and select Users.
  2. Click the user.
  3. Scroll down to Permission Set Assignments, and click Edit Assignments.
  4. From the available permission sets list, select the permission sets listed in the table and add them to the enabled permission sets list.
  5. Save your changes.

Assign Additional Permission Set to Buyers Who Use Configurable Products or Bundles

Create an additional permission set for buyers to access product configurator features.

  1. From Setup, in the Quick Find box, search and select Permission Sets.
  2. Click New to create a permission set.
  3. For Label, enter B2B Buyer - Revenue Cloud Management.
  4. Leave the other fields as their default values, and save.
  5. On the new permission set page, click System Permissions.
  6. Click Edit, and then select Manage Revenue Cloud and Product Configurator permission sets. Deselect all other permissions.
  7. Save your changes.
  8. Click Manage Assignments.
  9. Click Add Assignments, select the buyer user from the list, and click Assign.

Configure Advanced Pricing and Enable Subscriptions for Product Configurator

To enable the product configurator, configure Advanced Pricing for Commerce powered by Revenue Cloud and enable subscriptions.

  1. Turn on and configure Advanced Pricing for Commerce Powered by Revenue Cloud. For details, see Configure Advanced Pricing for Commerce Powered by Revenue Cloud.
  2. Enable Subscriptions for your org.
    1. From your store, go to Settings and select Store.
    2. Go to the Pricing tab.
    3. Under Subscription Management, enable Subscriptions. If you don’t see the setting enabled, refresh your browser.
  3. (Optional) If pricing information doesn't appear in your store, refresh your price book entries.
    1. Click Settings icon and select Setup.
    2. In Quick Find, search for and select Salesforce Pricing Setup.
    3. Click Sync to sync all the pricing data into your pricing tables.

Turn On Configure Product at Run Time

Enable buyers to configure products and bundles in the store.

  1. In Setup, in the Quick Find box, search for and select Revenue Settings.
  2. Turn on Configure Products at Runtime.
  3. Refresh the page.
  4. Turn on Set Up Configuration Rules and Constraints with Constraint Engine.
    This setting lets you use the Constraint Rules Engine to manage complex product configurations and ensure valid combinations. For details, see Set Up Constraint Rules Engine for Product Configurator.
  5. After you create and activate a constraint model, go to your store, and select Settings | Search | Run Full Index.
    Rebuilding the search index makes sure that buyers see accurate, up-to-date results after you activate a constraint model or make other configurator changes.

Configure Sharing Settings for Product Configurator Objects

Give buyers access to the objects that the product configurator uses at run time.

  1. In Setup, in the Quick Find box, search for and select Sharing Settings.
  2. Click Edit.
  3. For each of these objects, set both Default Internal Access and Default External Access to Public Read Only.
    • Product Component Group
    • Product Configuration Flow
    • Product Qualification
    • Product Configuration Rule
    • Product Disqualification
  4. Save your changes.

Add the Product Type Field to the Product Page Layout

Add the Product Type field so you can classify a product as a bundle when you create it.

  1. From Setup, open Object Manager.
  2. Find and select the Product object.
  3. On the Page Layouts tab, select the page layout that your store uses.
  4. Drag the Product Type field onto the page layout.
  5. Save your changes.
    Note
    Note If the Product Type field doesn’t appear when you create a product, log out and log back in to your org, or switch browsers.

Create a Commerce Product Configurator Flow

Assign a flow that defines the bundle configuration experience for buyers. This flow applies to all pages where the configurator is used.

  1. From Setup, in the Quick Find box, search for and select Flows.
  2. Select Default Product Configurator Flow.
  3. Click Save As New Flow.
    Save as commerce product configurator flow.
  4. Enter a name for the flow.
  5. For Flow API Name, enter Commerce_Product_Configurator_Flow.
  6. From the Flows page, click Edit action arrow icon for the flow you created and select Edit Access.
  7. If Override default behavior and restrict access to enabled profiles or permission sets is selected, add the B2B buyer profiles to the enabled profiles list. Include both the default and any custom profiles that you created.
    Provide B2B buyers access to the flow.
  8. Assign the flow to your store.
    1. From the App Launcher, find and select Commerce, and open your store.
    2. In the left navigation menu, select Settings | Store | General Settings.
    3. Scroll to the Bundle Configurator section, and select the flow that you created.
    4. Save your changes.

Configure the Product Configurator UI for Configurable Subscriptions

To improve the buying experience for configurable subscription products, configure the product configurator page in your flow.

  1. From Setup, in the Quick Find box, search for and select Flows.
  2. Open the product configurator flow assigned to your store.
    To find which flow your store uses, go to your store and select Settings | Store | General Settings, and check the Bundle Configurator section.
  3. On the flow canvas, click S01_ProductConfiguratorUI.
  4. Select the Product Configurator Option Group component, and expand the section.
  5. Set the Origin value to configuratorContext.origin.
  6. For Context Definition, select the context definition assigned to your pricing procedure or pricing procedure plan.
    The context definition in the flow must match the one defined in your pricing procedure or procedure plan. If they don't match, you can't select the definition. If you use the default pricing procedure, select CommerceCartContextDefinition__stdctx. If you extended the context definition, select your extended version.
  7. Move these fields from Available to Selected.
    • Product Selling Model
    • Net Unit Price
    • Quantity
    • Subscription Term
  8. Save the flow as a new version, and then activate it.
  9. Publish your store.

Republish Your Store

After you modify a flow, republish your store to make the changes live.

  1. From the App Launcher, find and select Commerce.
  2. From your store, go to Website Design | Experience Builder.
  3. Select the Product page.
  4. Delete the Product Details Purchase Options component.
  5. From the components panel, drag the Product Details Purchase Options component back onto the same spot on the page.
    Product details purchase options component.
  6. Find the Product Bundle Item component, towards the bottom of the top section.
  7. Set Parent Product Data Binding to {!Product.Details}.
  8. Select the Product Detail Headings component and enter a configurable attributes label. This label identifies configurable products.
    Product details heading component.
    Note
    Note The Publish button is enabled only after the system detects a change. If you don’t plan to modify any fields, make a small change and then revert it.
  9. Publish your store.