K Khan
Jun 8, 2015
(2 votes)

Standardizing the Catalog Structure - 2

In an E-Commerce website Catalog Structure consists of categories and products. 
Categories are a tool to assist navigation of online product range to customers. Clients usually structure the catalog the way they manage their outlets with the help of their marketing experts.

Image categories.JPG
Image subdivisions.jpg

We normally have SECTIONS BASED structure for categories, where each catgeory is a like a section/division in a store. And each section can have further sub sections or divisions. In EPiServer this relation is called Parent category and Sub Categories.

If there is no Sub Divisions exists for categories than this can be called as PLAIN.

Without subcategories it will be very hard for Editors also to manage thousands of products under one category. Usually products will store under most related category physically, but it can be approached by all relating categories. In EPiServer’s catalog UI, a simplified version will be used if items under a category go above 2000 to stay UI responsive. This value can be configured.


  <add key="SimplifiedCatalogListingThreshold" value="1000" />


Managing products in EPiServer Commerce is bit different then keeping an item on rack in a physical store. A Product represents various forms of merchandise, including Products, Variations/SKUs, Bundles, packages and Dynamic Packages. Bundles and Packages are combination of Products and Variants. Based on associations between products and variants we can have 4 types of structures.

Simple Product Structures


When each product in a catalog has ONLY one variant then we don’t have need of products and a catalog can has only variations. Catalogs without having Product can be called SKUs Only Catalog. Usually Electronics types of products are managed with this concept. On a product listing/search pages refinements will be applied on Variants.

Image skusonly-listing2.JPGImage skusonly-listing.JPG


When each product in a catalog has ONE OR MORE Variants (will not have child products). This type of structure is very common in commerce websites. Fashion products are usually managed with this concept. Customer must have to select variant before adding into basket. On a product listing/search pages, refinements can be based on Variants or Products or on both; this should be discussed at the time of backlog grooming. We can avoid complexity of refinements by moving all refinements at variant level at the cost of data duplication. Performance impacts should be considered carefully if variants are involved on product listing pages e.g. Stock checking of variant at listing pages, to display a product can be a costly activity.

Image variantsbased-listing3.JPGImage variantsbased-listing4.JPG

Complex Product Structures


When we try to manage and display SKUS ONLY and PRODUCT BASED structures in one catalog. This type of catalog is complex to implement in listing pages and should be avoided wherever possible. It can be converted into PRODUCT BASED Catalog by adding a parent product for SKUS Only items.

Image variantsbased-listing2.JPGImage composite-listing2.JPG


When each product in a catalog has ONE OR MORE child products and child products have ONE OR MORE variants and further product. This type of structure is very complex on product listing pages. Think! Can we can convert this to PRODUCT Cased catalog by adding some sub categories

Image multilevel.JPG

A website can have more then one catalog. e.g. a business selling Childern Products and Electronics can have a Product Based and a SKU Based catalog. Bundles and packages can be included in any type of structure.

This blog was the 2nd part of Standardizing the Catalog Structure, I have tried to revise the catalog structures that I have come across and tried to give them a name for a shared vocabulary.

It will be helpful if you could share your experiences, issues and challenges that you have faced while designing these structures and how you solve those or when structures gave you issues while working on the Product Listing Pages.

Jun 08, 2015


Please login to comment.
Latest blogs
Configured Commerce - Introduction to Long-Term Support (LTS) Releases

First off, for those who have not had a chance to meet me yet, my name is John McCarroll, and I am the Technical Product Manager for the Optimizely...

John McCarroll | Sep 29, 2023

Auto-translate with OpenAI in Optimizely CMS

You can now auto-translate content using your favorite online AI service, inside the old trustworthy Episerver.Labs.LanguageManager!

Tomas Hensrud Gulla | Sep 29, 2023 | Syndicated blog

Vulnerability in CMS 12 shell module configuration

Introduction A potential security vulnerability has been identified in Optimizely CMS 12, triggered by a certain shell module configuration. To be...

Magnus Rahl | Sep 28, 2023

AI-Assistant: The 'Change Tone' Shortcut

The AI-Assistant for Optimizely is constantly evolving, adjusting, and transforming to meet your digital needs, providing a cutting-edge advantage...

Luc Gosso (MVP) | Sep 27, 2023 | Syndicated blog

How to fix scheduled job 'Remove Abandoned BLOBs' if it keeps failing

Optimizely inlcudes a job named 'Remove Abandoned BLOBs'. This post will help you fix it if it's no longer working.

Henning Sjørbotten | Sep 26, 2023 | Syndicated blog

Optimizely Web Experimentation Metrics

Within the domain of Optimizely Web Experimentation Metrics, the emphasis is on objective key performance indicators (KPIs) selected to assess an...

Matthew Dunn | Sep 23, 2023 | Syndicated blog