The eCommerce Platform
eCommerce platforms have become an integral part of our lives in recent times. In the past, people tend to go shopping at stores and interact with sellers in person.
Now, it is changed after the eCommerce platform, many people especially the new generation always eager to place orders online. Such a platform gives unique value propositions to customers in a way that people get an addiction to it. eCommerce platforms have contributed around Trillion plus in market share worldwide in the last decade and are all to set hit more in this decade.
Table of Contents
- Popular eCommerce Platforms
- Development Flow
- Introduction to Salesforce Commerce Cloud (SFCC)
- Why I Became a Fan of SFCC
- Challenges with SFCC
- SFCC Realm Structure: PIG and SIG
- Useful Links
Popular eCommerce Platforms
There are many eCommerce platforms that are very popular like OpenCart, PrestaShop, Magento, Shopify, SFCC. Each platform has its own unique value propositions and base, which come with its own merits and demerits. As a developer, I worked on multiple eCommerce platforms from implementing plugin modules to supporting the owners on various stages of their success. Each success story of every owner is unique on its own.
The latest platform I have been working is SFCC aka Demandware. Most platforms I have worked with are mostly on PHP and are quite a favorite among shop owners. The reasons behind that are as follows:
- Server using PHP is easier to manage.
- PHP language is easier to learn compared to other server-side scripting languages. Almost 80% of sites are using PHP as their backbone.
- Developers of PHP are easier to find and those are cost-effective. Especially when your shop is still new and increasing revenues gradually.
- Site setup is easier with PHP compared to NodeJS and Java.
Some of the good platforms I have worked with like OpenCart and Prestashop are easier to implement and modify as per shop owner’s needs. Though every platform comes with pros and cons. I find it harder or not feasible to overload some features or templates in OpenCart whereas it is easier to handle it in Prestashop. But the learning curve is smaller in OpenCart compared to Prestashop. Although, when it comes to handling large requests it requires constant monitoring, caching mechanisms, and server capability.

Development Flow
The above flow is being used by many companies that I know. The scenario is like this:
Here, consider an example, where the customer has provided his site to implement features via plugins.
Every developer has to set up a new server on their computer, for example, WAMP in Windows, LAMP in Linux. If any developer blocks in server setup then it might affect the timeline in a number of ways.
Once plugin-related code is done, it is uploaded to the internal testing server via continuous integration or manually.
After testing, code is uploaded on the production instance for release to the public.
I have also seen that the release process and rollback flow are always different in different companies or not being followed at all.
Introduction to Salesforce Commerce Cloud (SFCC)
After I learned about Demandware and started focusing on it, I became a very big fan of it. Demandware is the previous name of the platform before its acquisition by Salesforce. Now it is known as Salesforce Commerce Cloud. When I started with SFCC, the first encounter was rather tough. But I demystified by using examples instead of going only line by line.
Salesforce commerce cloud has two parts B2B (Business to Business) and B2C (Business to Customers). Both come under the same name SFCC, but both have many feature differences in comparison. B2B can handle a large number of items in the cart whereas it is not possible to add a very large number of quantities in B2B. B2C orders can have multiple deliveries and locations.
Why I Became a Fan of SFCC
The reason I became a fan of SFCC:
- Once you have knowledge of the SFCC platform, it is easier to handle very large-scale requests at any given timeframe.
- Some integrations are complex, but an integrated platform works side by side with the SFCC platform and altogether it works as a single platform to the end-user.
- Underlying instances, technical stacks are built specifically for SFCC in a way that it provides its best performance.
- Release management via data and code replication is very easier. In the case of OpenCart, Prestashop or Magento are not having such options.
- Caching is part of the platform. Unlike other OpenSource platforms, there is no need to install caching separately.
- Quotas are used to avoid crashing the site which is not the case in any open-source platform as they rely on server and database capabilities.
- OCAPI (Open commerce API), an inbuilt powerful set of APIs ready to use. You just need to enable configurations for it.
Challenges with SFCC
Though there are a few hard parts in SFCC:
- The learning curve is very high. Just spending a few hours or days is not enough, you need to have throughout practice and learning to float with SFCC.
- Since the platform is tailored made of giving its best, it comes with very minor level configuration and settings management. Missing one tiny configuration and you might be spending the day to figure out the exact issue.
- SFCC platform is not free, and you can not find any demo or testing servers for learning. You have to be part of any partner organization of Salesforce which can provide you a sandbox.
SFCC Realm Structure: PIG and SIG
Unlike other platforms, SFCC comes with a pre-built structure. And I really like this flow. Because if there is a pre-defined structure or rule, the team always pays attention to those.
Let’s take the example of the big brand owner, Michael. Who wants to have a site on the SFCC platform. He will need to approach and contact Salesforce. After having a contract, Michael will receive access to the realm. In simpler words, you can say a pre-defined setup to the realm. When he will look inside the realm, he will see that there are two main parts: PIG and SIG. In easier words, you can say that there are two sections in the given realm. As both serve their various purpose.
PIG (Primary Instance Group)
PIG (Primary Instance group), is the main group of the realm that will serve its purpose to the public. In the above diagram (image #2) you would see that there is a total of three instances included:
-
Staging:
- This instance is very important in terms of the code and data it consists of.
- Data and Code replications are done from this instance.
- Final testing before releasing/replication to production should be done here.
Example:
Micheal requested a total of two features to release on production on a specific date. One is a promotion for a specific customer group and another is payment method integration which is handled by his development team.His solution architect would suggest he apply/create a promotion on the Staging instance instead of the production instance. Similarly, the development team will first deploy the payment method on the Staging instance.
Now, Micheal and his team will test both features on the Staging instance.
And once approved, the development team, will replicate code to Production and replicate data to Production from the Staging instance.Hardware resources allocated to the Staging instance are not very high.
-
Development:
- Development instance has more hardware power than the Staging instance but is lesser than the Production instance.
- Code and data build can be done directly on this instance or replicated from the Staging instance.
- Since the Development instance has similar power to production, we can use this instance to see the performance and testing purpose.
- Data or code can not be replicated to the Production instance from here.
-
Production:
- A very powerful resource machine prepared to serve customers 24×7.
- When needed rollback can be done on this instance in case of a severity issue.
SIG (Secondary Instance Group)
SIG (Secondary Instance Group), is the group containing sandboxes used by developers to implement and test various features. It is not having hardware resources same as PIG. That’s why the developer needs to pay attention to managing his sandbox or the sandbox might end up with performance issues.
Useful Links
Test Your Knowledge!
Note: These questions are generated by AI manually using the content of the blog post.
1. What was the previous name of Salesforce Commerce Cloud (SFCC) before it was acquired by Salesforce?
2. Which instance is used for final testing and as the source for replicating code and data to the Production instance in SFCC?
3. According to the article, what is a primary purpose of the SIG (Secondary Instance Group)?
