Skip to main content

Explore the Salesforce Data Model

Learning Objectives

After completing this unit, you’ll be able to:

  • List the objects included in the Store object.
  • Describe the function of a store in Salesforce.
  • Explain how products fit into the data model.
  • Relate a catalog to a store.
  • Associate categories to catalogs.

B2B and B2B2C Commerce Data Model

Maria Jimenez (she/her), Ursa Major Solar admin, is ready for a deep dive into the Salesforce Commerce offerings. She’s pleased to know that its included products, B2B and B2B2C Commerce, share a common data model, with a few exceptions. We point those out as we go along.

Maria Jimenez, Ursa major Solar admin

Before we delve much farther into the land of data models, let’s see what data we have to work with. When you start using B2B or B2B2C Commerce, you get a set of standard objects in your org, like these.

  • Catalog: Product and navigation
  • Category: Groups of products
  • Entitlement Policy: B2B customer rules
  • Product: Products available to customers
  • Price Book: Negotiated pricing (B2B) or available pricing (B2B2C)
  • Price Book Entry: Price per product unit
  • Buyer Account:* Customer data
  • Buyer Group:* Grouping of buyers
  • Buyer Group Member:* Instance within a group

These objects are limited to specific licenses. Many of them are also used in other licenses such as CPQ (Product, Price Book, Price Book Entry).

Note

You need to configure these for both B2B and B2B2C Commerce, but they are mostly relevant to B2B Commerce.

The Store Object

Think of the Store object as the hub, and you can add various elements around it, like spokes. This framework gives you maximum flexibility to add what you need to meet your business requirements. The following data is associated with the Store object by default, before you start associating other objects. 

  • A store experience
  • Default and supported languages
  • Default and supported currencies

Once Maria configures her store, it becomes a container for her commerce data, including catalogs, categories, price books, and products. Like with B2B Commerce, B2B2C Commerce stores use Experience Cloud sites for the front-end buying experience. 

Taylor Givens, the Ursa Major Solar merchandiser, can use Experience Cloud to showcase products, arrange information for shoppers, and decide how to process orders on the store. Maria can create multiple stores to serve different business areas or regions.

The Commerce app data model object relationships make the data model’s structure and data easy to understand and work with.

B2B2C Commerce uses the concept of store as the default for catalog, entitlement policy, and buyer group. 

When Maria imports data into the org, using the Data Importer feature, it automatically creates a default catalog, entitlement policy, and buyer group.

The Products Object

Each Ursa Major Solar product, such as a solar panel, is listed as a record in the Product2 object, and each product has its own SKU (store-keeping unit) number. Maria can add products to the org in different ways. She can mass upload products by importing them from an external system with a tool like Data Loader. Or she can add them one by one, as needed. 

The product record contains data such as product description, specifications, and links to product media that allow customers to make informed decisions.

The B2B and B2B2C Commerce products use different price books.

  • B2B Commerce: Each product is tied to a price book record that records its list price. The Price Book object stores information on the price of a product through a price book entry.
  • B2B2C Commerce: The price book is assigned to the store in the webstore price book object. You can add products to the org in different ways.

Here’s how it works for B2B Commerce.

For B2B Commerce, each product is tied to a price book record that records its list price.

Relate a Catalog to a Store

Maria is thrilled to create her first store. To show those products in the store she needs a catalog. The building blocks of a catalog are categories and subcategories. 

Let’s start with the catalog. Catalogs are the organizational principle that enables Maria to offer products in a store. Categories are groupings of products. Here are a few rules.

  • A single catalog includes categories and subcategories up to five levels.
  • Only one catalog can be associated with a store.

Once Maria has a store, she can relate a catalog to it, or when she runs the import tool, the default catalog for that store is created automatically. When she has several stores set up in her org, she can associate the same catalog with multiple stores. 

Taylor says they need two stores: one in the USA and one in Europe. Customers will see the same products in both stores, but the default language and currency will be different.

Buyer Group Price Books for B2C

This diagram uses a Store Price Book (common in B2C) rather than Buyer Group Price Books (common in B2B).

The corresponding B2B configuration looks like this:

Buyer Group Price Books for B2B

Note

A Buyer Groups object establishes the pricing rather than the Store Price Book.

Not only does each store have its own experience and pricing, it also has a specific catalog of products. The beauty of the Commerce data model is that it’s flexible. You can do whatever you need to meet your business needs.

How Do Categories Work?

In the Commerce app, the following catalog and category rules apply to products.

  • A product is owned by one or more catalogs.
  • You can include the product in any combination of categories in that catalog.
  • When you edit a product in the catalog that owns it, your edits are reflected automatically in:
    • The categories that include the product
    • Other store sites that share that catalog

After Maria assigns a catalog, the Catalog tile toggles to Categories. If categories are not included as part of the catalog import, she can quickly add and modify categories in the Catalog workspace. 

Catalog has a master-detail relationship with category objects.

In the Commerce app data model, categories and subcategories are represented by the same ProductCategory object. This object controls how customers search for a product. It is uniquely self-relational with a ParentCategory attribute. The ParentCategory indicates the hierarchical relationship (from category to subcategory to subcategory up to five levels). 

Maria can emphasize this special relationship by displaying the ProductCatalog and ProductCategory objects in Schema Builder, which we explore more in the next unit.

In the B2C store, Maria can click through to the Commerce App/Categories workspace to display the Ursa Major Solar Catalog. She wants to help customers find the most compatible third-party structures and vendors for their solar panel needs. Once she settles on a Components and Structures category, she then clicks the Categories tab to create several subcategories—things like Module Clamps, Wiring Harnesses, and Inverters are a good place to start.

After clicking through to link the corresponding products with the subcategories, she leaves the Is Primary Category in each category dialog setting unselected. This assures that shoppers will follow her category → subcategory breadcrumbs. In the test org, she can now search solar panels/components and structures and quickly navigate to any sub-categories of her choosing.

Next Steps

In this unit, you learned about the Commerce data model and how its Store object relates to pricing, products, and catalogs. Next, learn to organize how customers access your store.

Resources

Keep learning for
free!
Sign up for an account to continue.
What’s in it for you?
  • Get personalized recommendations for your career goals
  • Practice your skills with hands-on challenges and quizzes
  • Track and share your progress with employers
  • Connect to mentorship and career opportunities