Project configuration overview

Ask about this Page
Copy for AI
View as Markdown

Overview of the concepts for configuring your Projects.

The Project is the central place where all global configurations and settings, such as Channels, Stores, and Tax Categories, are managed. It acts as the foundation for your business setup.

This central configuration enables you to support multiple regions, brand stores, permissions, omni-channel distribution, taxation of products, and shipping costs.

Learn more about Projects in our self-paced Projects module.

Project

A Project is the top-level entity in the information model. It serves as a secure container for all other entities, for example, Customers, Products, Carts, Orders, and Discounts. Projects are isolated from each other, ensuring data security and integrity. Create different Projects to separate your environments: one for development, one for staging, and one for production.

A Project includes top-level settings such as name and trial end date, as well as the following configurations:

  • Countries: the countries to which your business wants to sell products, affecting shipping, taxes, and legal compliance.
  • Currencies: the currencies your prices should have, enabling multi-currency support.
  • Languages: the languages in which you can have localized content for.
You can configure a Project for multiple regions by setting the countries, currencies, and languages it supports. For how to configure them with the API, see Project configuration APIs overview.
For the additional features you can configure on a Project with the API, see Project configuration APIs overview.

After setting up the Project, you can configure Stores, Channels, and Tax Categories to model your business structure.

Store

Stores let you model the context your customers shop in. Stores can be used to model, for example, physical retail locations, brand stores, or regions. They allow you to define which subset of resources within a Project is available in the context of a Store.

A Store can hold resources such as Carts, Orders, Shopping Lists, Customers, Business Units, Quotes, Quote Requests, Staged Quotes, Shipping Methods, Cart Discounts, Products, and Categories. For managing the availability of product assortments for your store, use Product Selections. For how to use Store settings to query Product Projections with the API, see Product Projections.

If a Store has no Product Selections, then it will inherit all Products.

Stores have built-in data fencing mechanisms, ensuring that data is isolated and secure. This means that each Store can have its own set of Products, Prices, and Orders, while still sharing the same Project infrastructure. We recommend configuring at least one Store for your Project, even if you operate in only one region. This setup makes it easier to scale your Project as your business grows or as you add Stores for different purposes.
For a full explanation of data fencing and OAuth scopes, see Store-scoped resources and data fencing.

Deleting a Store permanently removes all associated Product Tailoring data.

For how to work with the resources of a specific Store through the API, see Project configuration APIs overview.
Learn more about Stores in our self-paced Model your business and Stores and Channels modules.

Products available in Store

Store's active Product Selection(s) form its assortment.

A Store can incorporate multiple Product Selections, which is useful if a Product Selection is shared between Stores. For example, you may want to create a shared Product Selection as your base catalog which is supplemented by individual Product Selections for each Store.

For how long Store configuration changes take to apply, see Project configuration APIs overview.
For the rules that decide which Products are available in a Store, see Project configuration APIs overview.
For which Product Variants of a Product are returned in a Store, see Product Projections.

Channel

Channels let you manage Inventory (supply Channels) and Prices (distribution Channels) available to Stores.

Supply Channels are pipelines for Inventory and define how Products are supplied to Stores. Each supply Channel can be a warehouse, supplier, or other source of Products.

After the disposition process, line items can get supply channel information that would uniquely identify inventory entries that should be reserved.

Distribution Channels manage how Products and Prices are made available across different customer experiences within a Project. A Distribution Channel defines how Prices and Product availability are assigned and managed for each Store, enabling you to configure and control the pricing strategy and assortment for different sales channels.

Relationship between Distribution Channels, Stores, and Retail Locations

Each Store represents a specific shopping experience and can be associated with one or more Distribution Channels. A Distribution Channel can be linked to a physical retail location or an online store, enabling you to manage Prices and Product availability for each Channel separately.

This association allows you to unify pricing and inventory strategies across different sales channels, whether they are brick-and-mortar stores or online shops.

Tax Category

Tax Categories classify Products for taxation in different Regions. They define Tax Rates and rules that apply to specific Products or locations.

A Tax Category groups Tax Rates together, where each Tax Rate defines the tax percentage for a specific country or state. Tax Rates can include subrates for compound taxes (for example, local, state, and federal taxes).

Tax Categories can be associated with Products, enabling automated tax calculations during transactions.

Multi-brand Project configuration

Your Project can support multiple brands, allowing you to manage different brand Stores and Channels within a single Project.

To configure your Project for multiple brands, configure Channels and Stores for each brand:

  1. Create a Project to serve as the foundation for your multi-brand setup.
  2. Create Channels for each brand you want to manage. Each Channel can represent a brand store, such as Brand A and Brand B, allowing you to manage Prices and Inventory separately for each brand.
  3. Create Stores for each brand store. Each Store can represent a physical or online location for a specific brand, such as Brand A Store and Brand B Store. This allows you to manage brand-specific Products, Prices, and Orders within the same Project.
Optionally, your Stores and Channels can be associated with specific Regions and currencies to tailor the shopping experience for each brand. For example, you can create a Store for Brand A in the UK with GBP currency and another Store for Brand B in France with EUR currency. In this case, you also need to add respective Tax Categories to define tax rules for each brand in different Regions.

After configuring Channels and Stores, you can manage brand-specific Category structures, Products, shipping options, and other resources.

To learn more about managing multiple brands within a single Project, see our learning module on applying Stores and Channels.

Omni-channel distribution

In omni-channel setups, you can connect multiple Distribution Channels to multiple Stores, supporting seamless shopping experiences across online, physical, and marketplace Channels. This enables flexible management of Prices, Inventory, and Product offerings tailored to each Channel and location.

To set up omni-channel distribution in your Project, do the following:

  1. Create a Project with the required Regions and currencies.
  2. Create Channels for each supply and distribution channel you want to manage.
  3. Create Stores for each physical or online location where your Products are sold. Then, you can associate Channels with Stores to manage inventory and distribution.
For more information on configuring omni-channel distribution in your Project, see the Manage multiple experiences from one Project learning module.
For how to work with Projects, Stores, Channels, and Tax Categories with the API, see Project configuration APIs overview.