Professional Documents
Culture Documents
Oleg Sapishchuk
277 Followers Lists New
About Follow
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 1/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
The question you may be asking yourself is, what is expected of me? Can I really work
with this platform? The motive for writing this article is the lack of publicly available
resources. You cannot really “google” too much about it, as historically speaking, it was
a closed ecosystem. Previously, you could only learn about SFCC after a few months of
working with the platform. If what you encountered matched what you had expected,
then great! If that is not the case, then help is here. I am happy to share this article
explaining the SFCC platform with you.
By now, you have probably figured out that I gave it a try. Recently, documentation
about the platform became public, facilitating high-level analysis of the functionalities
and capabilities of SFCC. Here is an introduction to the details of the SFCC platform.
No comparisons have been made to domain competitors such as Magento or Hybris.
Architecture
When customers enter a website created on SFCC — all static content (JS, CSS, and
images) is delivered from CDN. SFCC use eCDN (Embedded Content Delivery Network)
for such purposes. Also, we can configure external CDN by native platform capabilities.
This ensures that there are no resource consumptions on the platform for static
content. The rest of the information and data are covered by Salesforce servers.
Powerful data centers are distributed globally, placing them physically closer to the
end-users.
Structure-wise, in such data centers, Salesforce may keep multiple PODs (Point of
Delivery). PODs are groups of hardware shared by multiple Salesforce customers. The
PODs enable the sharing and availability of additional resources to the stakeholder
should there be a spike in demand for those resources. PODs consist of firewalls,
switches, load balancers, computing power, and a file system.
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 3/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
taxation providers
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 4/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
1.3. Demo-shop
Like other eCommerce solutions, SFCC has its own demo shop. The demo shop starts
with the development of projects. SFCC demo shop includes:
Home Page
Categories (Category Landing Page, Product Listing Page, Product Detail Page)
Promotional banners
Store locator
Promotions
Checkout
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 5/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
https://production-sitegenesis-dw.demandware.net/s/RefArchGlobal
For customizations with demo-shop, a highly engaged delivery team consisting of UX &
UI designers, Business Analysts, and other professionals are deployed to support the
client during the development phase
The SFCC eCommerce business model works. I was supporting a B2B solution less than
a year ago. We saw the client increase revenues to several billion, or ⅓. more than
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 6/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
In BM, there are capabilities directly linked to developmental and IT operations. Such
capabilities include Jobs that are similar to Cron Job Software Utility, web services, and
others.
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 7/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
Business Manager allows the user to control the creation of the code and data
replications between different environments. It also facilitates the scheduling of
backups. In addition to those features, the admin with responsibility for the BM can
allow other users to access the system, assign roles, and grant permission for users to
utilize various aspects of the BM.
B2C Commerce API includes inside B2C Commerce Script API and B2C Commerce
Pipelets API (legacy).
The B2C Commerce Script API provides a mature structure of the classes that work
seamlessly with the platform and realization standard eCommerce flow. Features, such
as orders, baskets, customers, catalogs, and others each have their specific classes; with
which to work. SFCC does not have the capability to allow you to interact directly with
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 8/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
their Database (DB). Access to the DB is solely via the API of SFCC; the same goes for
To make Medium work, we log user data.
core platform logic. By using Medium, you agree to our
Privacy Policy, including cookie policy.
The reason for this is the permission to access and change how the core platform
functions operate, which is not available to you. All customizations must be done in
collaboration with what is already in place, as with any other SaaS solution. This
feature saves the developer the trouble of designing databases, creating relationships
between tables, and so forth because the platform does it all for you. However, the
platform will permit the expansion of the existing system objects; and the
implementation of new custom data features if necessary. The platform handles a wide
range of tasks, which provides you with the time to focus on delivering efficient
business solutions.
Below is an example of an extension suitable for the Basket system class with a newly
customized feature.
In order to get the current customer basket via B2C Commerce Script API, you are
required to write only two (2) lines of code:
1. Shop API (more information at Shop API resources and Shop API documents) —
provides access to Commerce Cloud Digital storefront functionality. The primary
role of a shop API is to assist with the customer journey to buy products. It helps
with access to products, baskets, the creation of orders, and other customer-related
features.
2. Data API (more information at Data API resources and Data API documents) —
provides access to Commerce Cloud Digital configurations and integration
functionality for the related projects.
3. Meta API (more information at Meta API) — provides access to resources and
document descriptions, which are available in Open Commerce API.
The existing version of the SFRA server-side JavaScript might remind us of the Express
Node.js framework. For example, this is how it is written out if we are using
SomeController.js as the controller that we are adding data structures/parsing logic to
for a GET-request under SomeController-SomeEndpointAction :
server.get('SomeEndpointAction',
someMiddleware1,
someMiddleware2,
someMiddleware3,
res.json(someResult);
next();
);
The current version of the demo-site of the SFRA does not have JavaScript optimally
organized. In my opinion, the architecture of the storefront JavaScript doesn’t exist.
While I do not think it is the worst code, it still is certainly not one that I would ever
include in my portfolio. The issue with JavaScript is one of the key reasons why quite
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 10/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
often; developers tend to have their own custom solutions (micro-frameworks) for the
To make Medium work, we log user data.
client-side JavaScript architecture whenyou
By using Medium, they are
agree managing the customizations of the
to our
Privacy Policy, including cookie policy.
demo-site. Currently, Salesforce is working on the standardization of the approaches
for the architecture of the client-side JavaScript. For this development, they intend to
use Lightning Component Framework. This framework is widely used and known in the
core products of Salesforce and various domains.
Before SFRA came into the picture, SFCC had a few other major solutions. Their
previous solution was implemented on “pipelines”. The development of pipeline
architecture is a form of visual programming. You can find an example of such a
development approach below:
Modern developers do not enjoy working with pipelines. Solution Integrators always
encountered challenges in solving control version conflicts. Performance improvements
were also difficult to execute using pipeline technology. That is why SFCC decided to
move away from using pipelines and did JavaScript-based technology and architectural
approach. The JavaScript-based versions are similar to Express Node.js. Clearly, each
version of the SFCC Reference Application is an improvement on the previous one.
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 11/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
Commerce API
In Headless Commerce, we have a complete separation between server logic and the
presentation layer. The back-end only provides API, which is hosted somewhere else
(another domain) and does not have any default front-end implementation. “Head”
terminology means “front-end” which is closely (monolith-like) connected to the back-
end. There are a lot of variations in visualizing the presentation layer from mobile
application to the complex web application. These frontend implementations are
hosted separately from API.
For those working with the frontend using such a backend, API would make it look like
they are working with any other 3rd party integration. Headless Commerce provides
API to operate with products, catalogs, baskets, inventory, pricebook, and many others.
Various solutions to the experience layer are using the same server-side API. To add a
new front-end solution, we do not need to rewrite all business logic on the server-side.
You can read this in more depth about Headless Commerce in the article from
Stanislav Publika.
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 12/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
The process and nature of buying behavior are changing. In July 2020, Salesforce
published a Shopping Index for the second quarter. It showed that the number of
online shoppers did not reduce even though many physical stores reopened. Salesforce
has predicted that eCommerce will continue to grow, even if all physical shops reopen
and the pandemic is stabilized.
you would require some experience working with backend systems in any
technology
you need to be familiar with what eCommerce is and its common business
functionalities.
you also need to understand the inflow of revenue and what are the main user
scenarios encountered in eCommerce
Even if you did not have a chance to get familiar with the above elements, you could
search for learning programs, special courses, and student academies that are teaching
JS or even SFCC. For example, Astound occasionally offers a JS Boot Camp. If you were
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 13/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
successful with a similar course, you are qualified to become a Trainee SFCC Developer.
To make Medium work, we log user data.
Currently, the industry hasByausing
limited number
Medium, of to
you agree SFCC
our experts.
Privacy Policy, including cookie policy.
Furthermore, the future looks bright for the global development of eCommerce. These
factors indicate that the demand for SFCC experts is only set to increase. These factors
also explain why a lot of Consultancy and Solution Integrator companies are ready to
invest heavily to train novices all the way up to outstanding SFCC experts. Companies
have been providing SFCC novices with a lot of time (up to several months) for
onboarding to build familiarity with the platform. They only send that trainee for
“combat” missions after they have been properly upskilled.
In Summary
Salesforce Commerce Cloud — is a cloud platform with the main purpose of providing
B2C e-commerce solutions. Because this SaaS solution is cloud-based, the technical
team does not need to worry about supporting the hardware parts. Scaling challenges
or the threat of the site crashing on “Black Friday” are also removed by the cloud
technology.
This platform is usually used by clients with high revenues. This is because SFCC makes
part of their revenue by negotiating and collecting a predetermined percentage of gross
merchandise (volume-based) of the total sales on the eCommerce site. It is, therefore,
unprofitable for Salesforce to support small businesses.
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 14/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
SFCC, like most eCommerce solutions, has its own demo shop (or reference
To make Medium work, we log user data.
application) from which all
Byprojects are you
using Medium, developed.
agree to ourThe nature of development consists
Privacy Policy, including cookie policy.
of customization and extension of the demo shop capabilities, adding new integrations
for payments, taxation providers, and so forth. Technology-wise, the server code of the
SFRA is similar to a well-known Express Node, JS framework. Client JS needs
improvement, and users must exercise caution if using Client JS until it is fixed. We
expect that SFCC will refactor client-side JS in the nearest future. Probably new JS
architecture will be based on the Lighting Component Framework.
SFCC is growing rapidly. A lot of positive changes have been happening each quarter.
Soon, we will be able to implement projects based on Salesforce Headless Commerce.
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 15/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
Your email
Subscribe
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 16/17
11/08/2021 How to Understand Salesforce Commerce Cloud Platform | by Oleg Sapishchuk | Medium
By signing up, you will create a Medium account if you don’t already have one. Review our Privacy Policy for more information
about our privacy practices. To make Medium work, we log user data.
By using Medium, you agree to our
Privacy Policy, including cookie policy.
https://osapishchuk.medium.com/how-to-understand-salesforce-commerce-cloud-78d71f1016de 17/17