Set Up a CPQ-enabled org

Learning Objectives 

In this project, you’ll:

  • Sign up for a special Trailhead Playground with Salesforce CPQ.
  • Create fields that are used in configuration and global attributes.
  • Create bundle-specific configuration attributes.
  • Default a text configuration attribute using a formula.
  • Create global attributes and combine them into an attribute set.
  • Apply an attribute set to multiple product option records.

AW Computing’s Customization Conundrum

AW Computing is known for selling a wide variety of consumer technology, from laptops to home security systems. Now it wants to get in on the smartwatch trend. As a first step, the company’s Salesforce admin applied the skills they learned in Configurable Bundles in Salesforce CPQ to create a smartwatch bundle. A bundle is a collection of related products, meant to be sold together. In this case, the smartwatch bundle has options for a watch band that’s included in the price and an optional spare band for $30 more. It also has some charging-related items.

Product Configuration page of Smartwatch bundle

The bundle is a good start, but a smartwatch is more than just a helpful piece of technology. It’s also a fashion accessory, and one size does not fit all. Customers expect a high degree of customization for something so personal. One might want a large watch with light gray accents and a sporty red silicone watch band with dark gray accents. Another might want a small watch with gold accents, and a brown canvas band.

Three customized watches

If AW Computing plans to offer watch bands in two materials with 10 colors and three accent choices, that’s 60 combinations. Now multiply that by two (to account for two watch sizes), and you get 120 combinations. So here’s the question: Does AW Computing create 120 different products? What happens when the company adds another material such as leather and suddenly needs 60 more products? This is an example of what’s known as SKU proliferation, which is when the number of similar products balloons to a level that’s very difficult to maintain. 

AW Computing wants to avoid SKU proliferation, but how else can it offer customization? The answer is to use configuration attributes and global attributes.

Configuration and global attributes are like fields that appear on the Product Configuration page. They allow sales reps to capture information to customize the bundle, in real time. For example, the rep can choose the material, color, and accent of each watch band using picklists.

Product Configuration page of Smartwatch bundle with attributes present

The attributes of the watch bands are called global attributes. Global attributes are reusable, so admins can attach them to as many options as they’d like (even across multiple bundles). If AW Computing started selling belts, admins could use Material, Color, and Accent for those options too.

You can also find attributes at the top of the product configuration page (Size, Accent, and Engraving). These are called configuration attributes. They are specific to just the Smartwatch bundle, and cannot be reused in another bundle. Configuration attributes have a few additional behaviors you can set up to make them easier to use, which you can see throughout this project. Sometimes configuration attributes are found in specific bundle features, like the Outlet Standard attribute in the Charging Options feature. That attribute is used to make sure the right plug is selected for international orders.

Both configuration and global attributes are meant to gather information you can use later in the sales and fulfillment process. For example, if the customer wants engraving and the sales rep adds text to the Engraving attribute, this could affect the pricing of the watch. It also means the product would need to be manufactured to specification. As an admin, you need to set up objects so that this kind of data is passed on from configuration to quote lines, then to order products.

In this project, you make the simple smartwatch bundle capable of supporting hundreds of variations.

Sign Up for a Developer Edition Org with Salesforce CPQ

To complete this project, you need a special Developer Edition org that contains Salesforce CPQ and our sample data. Get the free Developer Edition and connect it to Trailhead now so you can complete the challenges in this project. Note that this Developer Edition is designed to work with the challenges in this badge, and may not work for other badges. Always check that you’re using the Trailhead Playground or special Developer Edition org that we recommend.

Even if you’ve recently signed up for a special CPQ-enabled Developer Edition org, sign up for a new one now. We’re always adding new data. Also note that the Salesforce CPQ managed package expires after 90 days, so you may need a new org anyway.

  1. Sign up for a free Developer Edition org with Salesforce CPQ.
  2. Fill out the form.
    1. For Email, enter an active email address.
    2. For Username, enter a username that looks like an email address and is unique—but it doesn't need to be a valid email account (for example,
  3. After you fill out the form, click Sign me up. A confirmation message appears.
  4. When you receive the activation email (this might take a few minutes), open it and click Verify Account.
  5. Complete your registration by setting your password and challenge question. Tip: Write down your username, password, and login URL for easy access later.
  6. You are logged in to your Developer Edition.

Now connect your new Developer Edition org to Trailhead.

  1. Make sure you’re logged in to your Trailhead account.
  2. In the Challenge section at the bottom of this page, click the playground name and then click Connect Org.
  3. On the login screen, enter the username and password for the Developer Edition you just set up.
  4. On the Allow Access? screen, click Allow.
  5. On the Want to connect this org for hands-on challenges? screen, click Yes! Save it. You are redirected back to the challenge page and ready to use your new Developer Edition to earn this badge.

Great, you have a CPQ-enabled org, and it’s connected to Trailhead!

Enable Global Attributes in a New CPQ Org

As it stands, you can’t yet create global attributes in your new org. You must do a few easy, one-time steps to enable support for global attributes. So let’s take care of them now.

  1. If you don’t already have your CPQ-enabled org open, scroll down to the Challenge section and click Launch to open it.
  2. You should already be on the Setup page, but if you’re not, click Setup icon and click Setup. The Setup page opens in a new tab.
  3. In the Quick Find box, type profiles.
  4. Click Profiles.
  5. Click S in the alphabet list.
  6. Click System Administrator.
  7. Under Custom Record Type Settings, click Edit for Configuration Attributes.
  8. In Available Record Types, click Configuration Attribute, then click Add.
  9. In Available Record Types, click Global Attribute, then click Add.
  10. Verify that Configuration Attribute is the default record type.
  11. Click Save.

Now anyone using the System Administrator profile (which includes your user) can choose to create global attributes. When you’re working in your real CPQ org, remember to add both attribute record types for any other profiles that need the same level of access.

Finally, in order to view global attributes in the product configuration user interface, you have to do a one-time setup step in your org.

  1. In the Quick Find box, type packages.
  2. Click Installed Packages.
  3. For the Salesforce CPQ package, click Configure.
  4. Click the Additional Settings tab.
  5. Check Enable Product Option Drawer.
  6. Click Save.

Excellent, your CPQ-enabled org is now also a global attribute-enabled org. You’re ready to start creating attributes!