## Catalog structure
Set up a catalog's structure with _products_and \_variants/SKUs_ based on how you intend to work with the data. You can use a product grouping under the categories, or work directly with stock keeping units (SKUs). If you will have only one SKU per product, there does not need to be a product.
The system also supports multi-level product inheritance to attach products as variants to a product. A child product can have further child variants. In the following example image from the fashion industry, a _product_ in Commerce is a _style_ for a _sweatshirt_. A specific color of that shirt is a _variant_ linked to the product, and the combination of a specific size and color is an _SKU_.
Enrichment is primarily done on the style level, and images and color are added on variant level. The SKU is the sellable unit with a set price. Typically, some information is retrieved from an external Enterprise Resource Planning (ERP) or Product Information Management (PIM) system integrated with Optimizely Commerce.
## Pricing features
Catalog pricing, tiered pricing, and custom sale types offer flexible ways to define multiple prices for products. See [Pricing](🔗).
## Display catalog data
Like the catalog structure itself, the display of products, SKUs and product categories is implementation specific. The website views of catalog data are rendered using the Optimizely content rendering system. Examples of different approaches to common scenarios:
Display products and SKUs as separate detail pages, or select SKU based on options on the product detail page.
Display product categories as product listings, or use search and/or faceting to dynamically generate product listings.
Display different types of products and SKUs in different ways, both what data is displayed and how it is displayed. It is also possible to use different types of product categories (for example, jackets category, shoes category, campaign category) for this.
Mix editorial content with product details, product listings, or direct add-to cart functionality.
Use different displays for different devices.