E-Commerce Software Design Patterns
This page assumes the readers to have an intermediate/advanced level of exposure to e-Commerce and payment software development.
There are some common design patterns that e-Commerce companies follow. Although there is a lot of overlap between the B2C e-Commerce and B2B e-Commerce software design patterns there are lots of subtle differences between them. On this page we will focus on B2B e-Commerce software design patterns.
We will go over them in the below order as a series of pages. We will cover the design patterns pertaining to Catalog Management Systems on this page.
Catalog Management System
Cart and Checkout
Payment
Order Management System
Inventory Management
Fulfillment
Part — 1 Catalog Management System
The catalog is a container where the retail/e-Commerce stores package their products to display on their storefronts. These Catalogs powered by Product Information Management (PIM) software help enrich a store’s product information management with a single source of truth. This will enable the stores to target multiple modes of sales channels such as physical retail stores, Direct To Consumer e-Commerce stores, and Marketplaces.
Catalog Management System has the following steps on a high level
- Product creation
- Category creation/Assigning products to Categorie(s)
- Adding products to Catalogs
- Catalog Assignment to the Sales Channel
The following are a few key design patterns that helps the implementation architecture/software solution scale well for B2B DTC and marketplace modes
- PIM — Single Source Of Truth
- Backend — Frontend/Two Faceted Category Pattern:
- Fixed Category Pattern:
- Catalog Assignment Pattern:
- Multi-Level PIM Enrichment Pattern
- Shared Catalog Pattern
- Catalog Based Category — Anti Pattern
PIM — Single Source Of Truth
I would advise strongly following this pattern. This pattern prescribes commerce stores to have a Product Information Management (PIM) software / Module. This will allow product information enrichment by upstream channels yet retain them in a central repository as the single source of truth. This will enable the stores to target multiple modes of sales channels such as physical retail stores, Direct To Consumer (DTC) e-Commerce stores, and Marketplaces.
Backend — Frontend or Two Faceted Category Pattern
This is a popular Commerce pattern that allows the stores to ingest their products under a Category called back end Category. The ingested product assortments are presented to the end customers under another category called Front end Category.
This is a very common design pattern in designing Business 2 Business (B2B) DTC and Marketplace PIM Software solutions.
Fixed Category Pattern
This is a popular Commerce Marketplace pattern popularized by Amazon that has a fixed backend and front end category. It is simple to manage, provides great operational efficiency, and does scale well for B2B commerce as well.
It is very less commonly used in B2B commerce, due to its B2B nature.
If the nature of the business allows, I would prescribe this pattern over the Two Faceted Pattern.
Catalog Assignment Pattern:
This is the most basic and obvious design pattern that has been in use for more than two decades.
In commerce, you can use product catalogs to identify the products that you want to offer in your physical sales channel and e-Commerce store. When you create a catalog, you must assign the catalog to the store level. The use of this pattern helps scale your catalog managemnt across sales channels. This pattern will also lend itself well into physical store’s deployment Inventory Management Systems.
Multi-Level PIM Enrichment Pattern
This is the most basic and obvious design pattern that has been in use for more than two decades.
In commerce, catalog assignments are the key to identify the products offered in your physical sales channel and e-Commerce store. When you create a catalog, you must assign the catalog to the physical store level. This pattern handles data mapping across domains from PIM to Inventory Management Systems.
Shared Catalog Pattern
Shared Catalog is a common B2B commerce pattern that a Catalog is shared by two business entities. The key in this pattern is to establish the Catalog data transformation workflow with proper access rights and data owners identified across the B2B entities.
Catalog Based Category — Anti Pattern
Categories assigned at the Catalog level did not scale well and, hence it is considered as an Anti-Pattern. In other words, Categories should not be confined by the Catalog level.
Conclusion
This marks the end of the first part in this multi-part series.