When we were gathering the requirements for the Online eCommerce project for Implus Brands, one of the main requests was to provide a common shopping experience for their customers through a Unified Cart without losing the brand identities. Implus wanted their customers to be able to navigate between brands and be able to purchase multiple products across their brands while using a single shopping cart.
In this article, I will explain how we implemented the Unified Cart for Implus. Although, I am calling it Unified Cart, it is more than that because the cart is not the only place where we had to unify the brands. We had to implement a unified experience in areas of: Account Management, Wish Lists, Order History, and more. For example, users can add products from multiple brands in the same Wish List.
Implus was built using the Sitecore Accelerator Framework for Integrated Commerce (SAFIC). The following diagram shows the high level architecture of SAFIC:
Implus uses SAFIC with Sitecore and Episerver B2B Commerce (formerly InsiteCommerce) as the eCommerce engine. The cart is an eCommerce feature and naturally the Unified Cart was created by extending InsiteCommerce.
Technical Implementation Consideration
- Unified Cart: InsiteCommerce creates a cart for the user’s current website. Since Unified Cart includes products from multiple websites (brands), we needed a website just for the Cart. So, we created a website called Unified Cart. Out of the box, Insite works with the current site context. We had to customize the CartOrderProviderByFactory to return Unified Cart as the CartOrderProvider. Also, Insite creates a Cart cookie with the Website ID and we had to customize CartOrderProviderBySession to use Unified Cart Website Id to create the Cart cookie. Also, Cart Cookie and Orders are shared among sub-domains.
- Brand Unification: Other than implementing the Unified Cart, we had to customize many other features in the application to provide a Unified Brand experience to the users.
- Unified Account Management: All Account Management features are adjusted, so that the user can use them from any brand site. For example, user login, create account, change password, add addresses, and add credit cards all work similarly from any brand site.
- Unified Order History: We had to customize Order History to accommodate Unified Cart Order. For example, when the user is looking at a previous order in which they bought products from different brands and clicks on a product link in the order, it might be a product from a different brand than the current website they are visiting. Therefore, the user should be navigated to that brand site. This required customization in the Order History.
- Unified Wish List: The user wants the Wish Lists to be accessible from all brand sites and contain products from all brand sites in the Wish List. Like Order History, user can navigate to the any brand site from the product links in the Wish List.
- UI Design Consideration: To have a Unified Brand experience, we had to stick to a common design structure but at the same time keep the unique brand identity. This was achieved by morphing the Unified Brand functionalities to the brand where the user is currently engaging. The following two screenshots show how the same Cart looks in Fuelbelt and Yaktrax, respectively. The Cart takes the shape of Fuelbelt or Yaktrax but indicates the product from the Yaktrax or Fuelbelt by their logo.
- SAFIC Theming: Implus’ brand sites are built using SAFIC and the reason we could achieve the Unified Brand experience so seamlessly is because of SAFIC’s architecture and N-Level Theming Engine. I explore the details about SAFIC architecture and N-Level Theming Engine in the following blog entries:
- 7 Design Principles in Sitecore Commerce Accelerator SAFIC
- How Nish Tech launched a brand in 3 weeks using Sitecore Commerce Accelerator
It’s an incredible achievement by the Nish Tech team to create a Unified Shopping experience within such a short time. We were able to create a framework for our client that enables them to add new brands to the Unified Shopping experience effortlessly.