Transcripts
1. Introduction: Hello folks, welcome to mastering Salesforce
commerce Cloud, the complete boot camp calls. This course is offered by LTS
Hub and you can find us on www dot and LTS have
not gone into schools. We will be learning
about basic of Salesforce platform and what comes under Salesforce
commerce Cloud. So we'll be setting up our base understanding around the
goal platform itself. Once our understanding
of code platform is, but we'll see what are the various cloud services
that Salesforce offer. These services not only on
top of the cold platform, but Salesforce acquired
various companies and started offering the products of those companies as Salesforce
products and services. Now, broadly, we will be
dividing them into two parts. One is the Cloud products that
are built on top of SF DC, which is salesforce.com,
also known as code platform. And then the products
that are that are there in Salesforce
ecosystem because of the acquisitions of companies
made by Salesforce. So SFC C, which is
Salesforce commerce Cloud, and SFM see Salesforce
Marketing Cloud. They are also cloud
offering from Salesforce, but they are not built on top of the sales force.com platform, but ah, but have completely
different technology stack. And our result of
acquisitions made by Salesforce will be understanding them because we lead to see the underlying platform
for these are different. And still they talk to
each other hand in hand. They are tightly
integrated to each other, but are loosely coupled in
terms of solutions and are typical Salesforce project is also called a multi-Cloud
Salesforce implementation, where you would be having certain Cloud products
from salesforce.com, certain products for our SSE, SLCC or an SMC. Once we have the
base understanding around Salesforce platform
it's offering and cloud services and their
underlying platform will move towards SFC. See, we'll get the high
level understanding of the business manager. And as soon as you get your SFC license and login
into the backend of SFC. See that backend is
called Business Manager. And you would be seeing that what are the various sections as a merchant you can
take and back-end. Then we'll also see as an administrator of a website
built on top of as FCC, what actions you can take as an end customer will go
through the SLCC website. So it's not only the
backend that you get from Salesforce
commerce Cloud license, but pre-built front-end
solution as well, which is built on top of SFR, a reference
architecture, which is called salesforce
reference architecture, and will complete order
onto the website as a guest customer so
that you can see various pages that comes out
of the box from Salesforce. And we'll see the
same order again in the back-office so that you can relate front-end and
back-end together.
2. Understanding Salesforce echosystem: Hello everyone. Welcome to my string
Salesforce Commerce Clause. And this goes, we will be learning about Salesforce
Commerce Clause, which was which used
to be known as demand where before
Salesforce acquisition and after the acquisition, Salesforce renamed it to
Salesforce commerce Cloud. Now, before we go towards
Salesforce commerce Cloud, we would have to understand the overall offerings from sales falls and how they're pitching their various services and
products to the end customers. So without further ado,
let's get started. Since folds has a very
popular platform. And the CRM category, which is built on
Salesforce own platform, which is called S, F B, C, salesforce.com. Now, salesforce.com is
a scalable platform where you can build multiple, multiple type of apps. And Salesforce
themselves buried couple of applications on top of this. And now they are pitching them as they are Cloud offering. So e.g. on top ofs
s f dc sale foods has built Sales Cloud. Ultimately, when Salesforce
goes to accompany, They are selling the
Sales Cloud as a service. Apart from that, Salesforce
also have service cloud. This is also built on
top of us have DC. Salesforce has
experienced Cloud foods has couple of other Cloud
services and tools as well. So e.g. CPQ, which is
configure price coat, is a very popular tool and e-commerce domain is
built on top of SFTP. Then they have industry Cloud. They have domain
specific Cloud, e.g. for non-profit. They have non-profit Cloud for
Healthcare, for education. They have different
Cloud services. And then they have the
gold platform itself, which is also known
as false.com. So all of these are built
on top of salesforce.com. And that's the that's the underlying platform for
all of these cloud offerings. And here you don't see anything
for the e-commerce part. Because SFC C or any e-commerce
offering from Salesforce, any e-commerce
cloud offering from Salesforce is not built
on top of SF DC platform, but they are, they are the result of acquisition
of different companies. Salesforce acquired a company
called demand where and the malware was a
company who will speak specifically dealing
with B2C commerce. So they had a platform which was catering to B2C
e-commerce needs. It was a well-established
company. And when sales was
acquired it they rename this product to SFC. See sales force
commerce Cloud because Salesforce page all of their services as
a Cloud offering. So they renamed it to SFC see. And this is what we're going
to learn in this course. Apart from the B2C sales force also have B2B side
of offering as well. And this is also a result
of a company's acquisition, which is, which we'll use
to be known as Cloud craze. And these two are the broader categories under Salesforce
e-commerce offering. Apart from that, so as I
mentioned in Salesforce cells, all of their product
as a service or products as a Cloud offering. So Salesforce,
salesforce commerce Cloud or B2B commerce Cloud. Sales force also has B2C as an offering and B2
B2C as an offering. And we'll be
understanding but more around all these four
offerings from Salesforce. And this course would
be specifically focusing towards this
B2C segment of things. Now, before we go towards that, we would have to understand one more type of
offering that Salesforce has and is known as Salesforce
Marketing Cloud, S, F, and C. This is again not built on top of
SFD see platform, but is the result of
acquisition to name, exec, target and paradox. These are, these were the
companies who are focusing specifically towards
B2C and I think B2 B. And now Salesforce has them as a marketing
cloud offerings. So you will have to understand that Salesforce as
an, as a company, as a company is selling their services as
the comas offering. And they have two major
categories of their offering. One is the category of product built on top of S F DC platform. One is the category of products which are result of acquisition. And they are, there are many acquisitions
that same feels too, but these are critical ones.
3. Salesforce eCommerce Platform: Now, because this course
is about commerce, you'd have to understand the integrity is around
B2C, B2B, and B2C. B2c, as the name indicates, where a business is directly dealing to the end
consumers of the goods. So that's what is
called B2, B2C. When a business is dealing
with another business. And that business may d for
the width and consumers. Or that business may
deal further with another business and then eventually to the end-consumers. Still we're talking about this
particular communications. So that becomes a B2B. But where the producer
of the goods, which are the producers, the generator, or like directly factories selling their products
to end-consumers. That's what we call B2C. There directly reaching
to the consumer. And when we combine both B2B and B2C services,
this becomes B2B2C. Now let's take one example to make sure that we are
completely clear. Let's assume a fictional brand. This brand is known as LTS hub. Now, This brand is a
fashion and apparel brand. If this brand creates a website, and on that website, I, as a consumer, go and purchase something for myself or my family in nutshell, for the consumption
of those Go Live. Let's add via a t-shirt and then start wearing that T-shirt. That means I am
consuming that product. So this LPS Hub has created a B2C website because
there's a consumer I was able to go to their website. So I was with their website, I was able to go to the business and buy something
for my consumption. But if let's say LTS hub
sell something to XYZ, which is a brick-and-mortar
store in my city. And then this, when I go to
this brick and mortar store, I am able to purchase
the product of LTS hub. So LTS Hub as a business, sold products to
this XYZ business, which for this example is
a brick-and-mortar store. And brick-and-mortar
store is a business. It's not the consumer of
that particular product, selling that product further. And as a consumer, I went to this brick and mortar
store and purchase the t-shirt and
started wearing it. So now I'm consuming the goods. And that's why this
is a B2B website. Because we are talking in
reference to LDS have, if we are talking in
reference to XYZ, then that becomes a B2C website if I would have
purchased online. There may be situations where
a business is purchasing, purchasing the goods and then for the selling
to another business, which is for the
selling to consumers, then there can be
multiple hierarchies. We don't have to go
towards these details. So we'll be understanding
in reference to LTS have that this is a B2B. Now, if ITS Hub has
a website where these XYZ brick and mortar store can also
go and purchase, as well as as a consumer, I can directly go and
purchase. So I have choice. I can go to be XYZ or I can double-click
go to their website. And if they are providing
both of these offering, they come under their B2B2C because they're catering
B2B and B2C bots. So that becomes their
B2B2C offering. But let's, let's go towards a different
direction where a factory which produces certain goods is directly selling
to their consumers. That is the area where we
are talking about d to c. So e.g. a. Food shop, shop, which is, let's say a bakery shop which is preparing the bakery product
and selling to consumers, can be a B2C example can
be a good D to C example. Apart from that, when
we talk about B2C, it's so LTS have made
purchase certain things from from the producer of goods like in terms
of a barrels. They may purchase a
parallel the raw material for a better purchase, and then they make their
products here, right? But if that raw
material producer as directly selling
to consumers, That's where it's the B2C. So this is the key difference. There is a thin line
between B2C and D to C. But in terms of concept, they are very different. And I hope you are
clear with this. And the takeaway from this video is to
understand two things. One is that you
understand what are the different sales
offering from Salesforce as a company and how they pitch
in their product. So just to summarize
sales pitches their product as
the Cloud services, like Sales Cloud Service,
Cloud experience, Cloud industry,
Cloud, and so on. And since force commerce
Cloud B2B e-commerce cloud, Salesforce Marketing Cloud. And when they pitch
in these services, they been certain services on
top of their core platform. And certain services are
the result of acquisitions. So underlying technology
stack has different. But since we'll strive to make
sure that all of these SF, DC and known as FDC
platforms, work hand-in-hand. So a real-time example would be, let's say you're working
for a big brand, wants to give complete end-to-end experience
to their consumers. And assuming that we want to use Salesforce for providing
all the suffering. So let's say we talking about the B2C website that we're
building for that customer. And in a typical B2C website, you would have
e-commerce part, right? And that comes from SFC. See, Let's say we want a live chat that can
come from service club. V1, chatbots. Chatbots is also one offering from that is also part
of service cloud. Let's say we want to we want the B2B buyers to be
able to purchase. Then we may also use the
B2B commerce as well. And in B2B world, sell services epic use are
very popular self-service. Cpq is where you can come
to the website and ask for a quotation based on the combination of
product that you have. Cpq also can come and for
processing all of these orders, you may need the order
management system, which is built on top of SFD. See again. So when you are giving a complete
end-to-end experience, you may be using more than one Cloud offering from Salesforce. And that is called a
typical multi-cloud implementation in
Salesforce word. And it's very important
that you know how these, what are the various offering and how you can connect them. One other part is,
let's say Salesforce, commerce, Cloud, and
OMS are very popular. They work hand in
hand and is a very, very popular use case. So what Salesforce has
additionally done is that since there's no This
is a separate platform where MS is a separate platform. So they have built a
connector already, and that connects F
FCC to order system. This connector Salesforce
has already built, so the business user don't feel that they are
two separate platform. They are two separate
underlying platform. They just see them as the
overall Salesforce ecosystem. And that's how Salesforce wants to pitch in
their productive. Hope you are clear from
this. That's all for this. Thank you very much.
4. SFCC Sandbox: Welcome. In this video, we're going to learn
how you are going to create your SFCC sandbox. So for that, first of all, you have to go to your
Demandware account and login into that account. For the ease of use, typically you would go to
account.demandway.com, or you can just Google it. And you would have to
go to this website, account.demandwy.com. And here you would have to
log in with your details. If you're doing it for
the very first time, you would have to kind of,
you know, set this up. If you already have the
details, just login in here, and you may need to do a two FA setup if you are
doing it for the first time. Otherwise, you just need to, you know, login
into this account, and these details you should be receiving with the brand
you are working on or if you have got the access as an administrator
from your company. Now to create the
Sandbox of SFCC, first of all, you have
to create a API client. So for that, you'd have to go
to API clients and in here, click on at API client. Here you would have to
create a new API client that we are going to use to create our sandbox environment. And to do that, the most important thing in here is to control
couple of configuration. Let's just fill in the basic
mandatory information. So we'll just call it LTS Demo, and then we need a
password for this. So I'll just use my password. You can use any password. Then in the
organization section, you'd have to click on add
and add your organization. Then you would have
to add the roles as well. Just click on Add. Here, I would suggest
for the time being, you add all the roles so that the API key that you create has everything you don't need this because this is already
going to be deprecated. Let's add all of these things. When you add the role, just
note that within the roles, you would have to add
the scopes as well. So click on this filter icon. Again, select your
organization as well as then you can add
the name of your rolls. You can give access to all the sandboxes or
selected sandboxes. For the time being, I'll give access to all the sandboxes, and I will do the same
thing in here as well. I'll just again select my organization as well as give access to
all the sandboxes. Now, depending upon the user and the capabilities of that user or the type of access you
would want to give them, you can give them a
sandbox specific user or if you are an administrator, you would want to have
access to all the sandboxes, or if you are creating a new
user who should be having access to all the sandboxes,
you should do that. Now the next thing is you
can create a JWT token, but for the time being,
we don't need it. Then in here, we need
a couple of scopes. Mail is something that
comes out of the box. Then we need rolls. We also need tenet filter. And I think we would
need profile as well. I'll share more details
about this in a minute. Well, among these scopes, I think I need to allow
all of these scopes. You can also select which scopes you would want
to allow I need, I think rolls access and
tenant filter and profile. You can control allowed
access based on this, and then you need to configure
the redirect UI. URI. This is really important because when you are going to authorize for the first time, you need to have
this redirect URI properly configured so that your authorizations
take place properly. Now for the time
being, I have just copied it and just
pasting it in here, just remember that it is static for all the accounts
and it doesn't change. Make sure that right
now you select client secret post and
then click on Save. Now here I have all the keys. At the moment, I am
showing you these keys, but after the video,
I'll delete them. So don't try to use them at all. But essentially, you
need to get onto this page and create the
API key for yourself. Let's just open a new tab. And open this URL. I'll also share this
URL in the link of this video or in the description
section of this video. You have to come here and you have to open this
into a new tab. This is a Swagger UI, and here you would find the list of all the
APIs that you would essentially need
to call in order to make or create a new sandbox, as well as start and stop
those existing sandboxes. First of all, you have to
come here and click on Authorize and that's where you're going to use
your client ID. I'll just go back to here and I'll just use one
of these client IDs. I know that both
of them are same, so I'll just use
this one and just paste it in here and
click on authorize. Now I am authorized, and I'll just close this
one. You can click on Close. You can click in here. I think I have already authorized it. Let me just check by calling
some of the APIs in here. Probably I'll just
check by this API. I'll click on Execute, and let's see what's
the response. Yeah, I think these APIs are working, so I
should be good. Now, first of all,
I would request you to check that you have, complete access in your
account demand ware, and when you have
created the APIKey in case if you are not able to
access some of these APIs, probably the problem is the access level that you're given. In here, just come to
the sandboxes and you can find the list of all the existing Sandboxes
by calling this API. And right now I have
one active sandbox. But let's just create
a new sandbox. So for that, there
is a new post API. Below that, I'll come here. And right now I want to
create a new sandbox. To create a new sandbox, you need a LMID
that you can again go back to your
Demandware account and click on Organizations. And in here, when you go
to your organization, you would find those details. There are a lot of things, but you don't have to
worry about them, and somewhere here you
would find your ID. So Z Y OI is ID for me, so I'll just come here. I'll just change the RLMID to my RLMD and then you have to add a couple
of email addresses. When this sandbox account
would be created, these emails would be given
the administrative access. So make sure that
the right users are informed with this email as soon as this sandbox
would be created. The emails would be going
out to those users as well so that they can login and they can set
up their accounts. So just add the right
emails in here. Let me add my email address. For the time being,
I'll just add one, so I'll remove this one. For all of these details, I will request you to
follow the documentation, but let's just add a couple
of key information first. You can set your start
Scheduler and stop scheduler, as well as you can select
your resource profiles. I'll go through these when but I just want to
remove everything else and just go with the bare
minimum that we need. I think we would have
to remove this comma as well, and we should be good. Now, as soon as you are done, just click on Execute, and your new realm, should be getting created. So you can see this two oh one. Two oh one status is
like our request has been accepted and it's being processed into
the background. It would take some
time, and after that, you should receive an email onto your email address that you
have, you know, provided. So we'll wait for some time, and let's come
back to this page. After waiting, I think
what we would do is we will just call this
Get API again. Let me just call it for now. If I click on Execute. Earlier I had only
one sandbox in here. Now you can see my
second sandbox, which has also been booted. So essentially, our Sandbox
account has been created. You can do all sorts
of operations with these APIs, and again, you will receive an email or your business users
would receive an email so that they can configure their sandbox accounts and they would be able to log
into the business manager. One more thing for the details of what all you can do
within these sandbox API, you can control and
create a new sandbox. You can also start and
stop your sandboxes. Make sure that you understand whenever you create a sandbox, it takes certain credits
from your sandbox account, so you don't overgo that and make sure that you
are under your limit. You can stop. You
can automatically schedule your sandboxes to
be stopped at certain times. For example, you can start
your sandboxes at 9:00 A.M. When your office time
starts and 5:00 P.M. When your office
stops and so on. You can have many configuration. And for that, I
would request you to go through this documentation. And meanwhile, I'm waiting
for the email to be received. I also wanted to
share with you guys that once your
sandbox is created, you would be given
administrative access. But to find the right URL where you need to login,
what you can do is, let's go back to this page, and this BM URL
that you see would be the URL of your admin
page that you would receive. If you don't receive that in
the email, typically you do, but if you don't receive
that, you can just use this particular URL to login
into your sandbox account. Let's just copy
this and see if it already works because I'm
not received the email yet. Let's copy this in the
browser, just pay it. It's still starting, so you
can get the gist of it, and that's how you
create a new sandbox. Make sure you stop the sandbox
as soon as they are done. Now, I have received the
email that my count is ready, and I've just refresh this page. But for your ease,
I'll just go back to this page and you can copy
your business manager URL. I'll just open a new tab. And paste my business
manager URL, and I'll be prompted
for logging in. Let me just login into my
newly created account. Again, you will
receive a two FA. Okay, now I'm logged in, and that's how my
business manager is going to look like when my sandbox is ready and
is working. Thank you.
5. Control Center: Hello, friends. Today we
are going to learn about how you can control
the sandboxes in UI. Earlier, we discussed
about creation and deletion of sandboxes
by using APIs, but there is an alternate way which is called Control Center. So for that, go to
your browser and look for control center dot
comcloud dotsalos.com. I'll also share this
URL in the description. When you go to this website, you would have to login with
your Demandware credentials or which are your Salesforce
credentials as well, and I'll just approve my
two factor authentication. Soon as you are logged
in, you land onto this particular page which lists all your sandboxes,
all your realms. Right now, I have one
realm in the system, so I can see my realm in here. And inside this realm, I'm allowed to create multiple sandboxes.
I'll go in here. And on the top, you see
create on demand sandbox. This is more or less the same
thing that we have done in our previous videos on how to
create a sandbox via APIs, but you would get
a user interface. If I click on this, I'll find
the basic configuration. I can set the time to
live for the sandbox. I can also select the
resource profile. This is essentially the size of the sandbox, CPU, and so on, as well as the email addresses, which would become the
business manager administrator for this particular sandbox. You would notice that we have very limited
configurations in here. So I would always recommend you to use the APIs
for this purpose. But if you don't want
to use the APIs, you can create the
sandbox from here and then modify the
sandbox as you need via the APIs because
you don't have multiple other options in here in terms of configurations. I'll not create a
new one in here, but let's just close this. You can see I already
have two sandboxes. One is in the deleted state. Once the sandbox
has been deleted, I cannot perform any actions
on the sandbox anymore. And the other sandbox
that is system down, that means it's in a stop state. I can click on this
start button and the sandbox will be started. Please note that I can also add an update additional
configuration on these sandboxes via the APIs. But still, you get a
couple of more options. Once this would be enabled, I can schedule when the
sandbox needs to turn off, as well as if there are
any other configuration that I need to do in terms of which date and
time or what day of the week the sandbox needs
to be turned on and off. But overall, you get
this control center from where you can control
your sandboxes from the UI. This is an alternative
to using the API. Just again, remember one thing, you would have limited
configurations available in Control Center compared
to the APIs. Thank you.
6. Creating SFRA in vanila SFCC: Friends. This is how our vanilla
SFCC sandbox looks like. As soon as you get the
access to your sandbox, or your administrator has provided you the
access to the sandbox, you login into your system. This is how it's
going to look like. First of all, I
want you to notice that we have a
drop down in here, but it has no values because out of the
box in the sandbox, we don't have any websites. In Sales for Commerce Cloud, you can create
multiple websites, and at the moment,
we don't have any. How do we create a new website? For that, you can go
to Administration, click on sites and under that, you would have managed sites and here you can create
a new website. You just need to fill in
certain basic information and you would be able to
build your first website. Or if you are a new user and if you're
learning it for the first time, then probably you can
start with a template. What you can do is under
the administrator, go to site Important Exports, and here you would find
certain templates or certain out of the box type of websites that you
get from Salesforce. One is known as Site Genesis
and the other one is called SFRA storefront Reference
Architecture and you can select any one of them and
just click on Import. It's going to take
some time, but essentially it's going
to build your website. When you click on Import, you would be given a
couple of options. You would want the website with, you know, what sort of
details if you want, XYZ type of modules already available in
the system or not, and you can select based
on whatever you want. So what I need is, I need front architecture with
all the optional feature, okay and I'll just
click on Deploy. And if you see this
process is still running, and it would take some
time for this to complete. And as soon as this is done, we would have our
website up and running. Let's just wait for it. You can click on Refresh
and see if this works. Let me just click on here and refresh rather
than resubmitting. You can see that
in my drop down, I can see two websites. One is the global one and the second one is only
reference architecture, and this can be a
good starting point for you to learn
Saleforce Commerce Cloud. Please note that you may still
want to use site Genesis, but that has been
older architecture. I've created SFRA and that's what we are going
to focus in this course.
7. Business Manager Overview: Hello folks. Now we
will understand what S FCC is will just
directly jump into SLCC. And you will see
that what you get as part of your sales force
commerce Cloud license. And what are the various
like you have back-end, front-end, what out of
the box features you get. And once we understand this, then we will be jumping towards the detail understanding
of each of these. But let's just get the
overview of what you get. And the screen that you see is the backoffice of SLCC platform. This is what you
would get once you login into your Salesforce
commerce Cloud. Of course, we will be
covering the login and all sorts of details in
subsequent lectures. And this section is also
known as business manager. Because mostly business users
would be logging in into the system and they will be
taking multiple actions. Now, in this
back-office solution, you have multiple things
that you can control. Merchant tools where
you can create multiple websites in your
Salesforce commerce Cloud, and all of the website
will be listed in here. Let's select one
reference architecture as one of the website that
comes out of the box. And when you go
towards this upside, you get more merchant tools. These tools as a merchant
to manage overall stove, then you have
administrative tool. These are the tools to
administer the website as well as they are the tools that mostly developers
are going to use. Then you can go to
the storefront. This is the default
store front of SFC. See, this is built on top of FIFRA stole front
reference architecture. And before as FCC when
it was known as demand, where the architecture
was so agenesis. And when sales was acquired it, they changed the front-end
architecture to SFIA. We will be discussing
about SFR as well in subsequent chapters
and lectures.
8. A complete Order Journey on SFRA: Now let's just quickly
see what you get. You get promotional messaging. You get our header
on the website, this header menu bar, these are essentially
the categories. Then you have promotional
banners and so on which you can manage from
the content management side, you get a mini CMS as
well with Salesforce. Then you can have some of your popular product
run mostly used for data highlighted
on the website. There are many content
blocks that you can use to perform these activities. Then you have a footer. You have common links
in the footer which would be remaining same
throughout the website. So overall, paid structure is divided
into a couple of chunks, header, footer and
main content section. And then if you go towards, let's say a category than the main content section is further divided
into two sections, the left sidebar and
the content area where you would see the content, which would be enough
frequently changing. Now let's go to men's category and try to purchase something. In this category. I have all the product listed, and I have couple of filters
here which I can use. This is the category filter. So if I would have been on
a new arrival category, it shows me what are the
other subcategories. So I can put it there to
a specific categories. If I want to select suits
of a specific color, I can have color filter. These all are the
attributes of product. And when you configure
the attributes, you can make them filterable. Then you can have a couple
of other filters as well. We're also seeing, you know,
how to define these figures. Okay. I think this looks good. So this tidy this overall page is called PLP product
listing page. And from this page you can
see the basic details of the product and the
pricing and so on. And let's go to the details page where you will be getting the complete idea
what this product days. So here you have couple of
sizes that are available. Well, I'm not a bulky, so I'll just go for probably
41 to be on a safer side. The regular weight, I need one. So if I want, I can perform it to cart. I can do store pickup as well if I have added
all the stores. So you can have click and
collect functionalities. You have detailed description of the product here you have
some social sharing links. You can add more
description reviews and so on, on this page as well. When you create the
product attribute, we'll just let add the
productive cartoon here. Now, as soon as I add the
product to cut this section, this mini card, you
can see your product. You can see basic information
around the product as well. And you can perform multiple actions if you have multiple
product in the card, add, remove, and so on, which you would have done
in your day-to-day life. Now let's go let's
go to the cart page first and see how you're
a little cart looks like. So this is a typical cart page
of an e-commerce website. If you have multiple
product lines, Let's just add one more product. I also want jackets, and this one looks good. So I'll just select
my size again, probably fatigue
and add to cart. Now let's go to the cartridge. So when you have
multiple products, you can see all the
details of a product. You can move the
productive wish list and when you want to know budget later on you can go to your wish list and add
the productive card. You can find the quantity, the lecture, and
you can remove the pre-diabetic and add the promo. So basic card stuff
you can do in here. This comes out of the box again. And when you click on Checkout, so you can perform a
guest checkout or you can login into the system and
checkout as a registered user. So typically there
are two types of buyer on any e-commerce. One is the targeted bile. They already know that you know what they want to
purchase and they are targeting either cheaper
price or they know that, you know, from which brand they want to purchase something. So they would be going to that brand website
and performing the purchase. And then there can
be an overdose. Shoppers want to compare
the product and see what is on sale and so on
and purchase from there. So let's just go
for the in here. I'll just add one dummy e-mail. So it's we'll continue as guest. So shipping more
than one address. So you can have
multiple shipping as well because we have
two products in a card, we can shape both of these
two separate locations. But no, I don't want them to be shipped to
separate location. I just want to one location. So I will just add the detail. Right now I have
only one country, but you can add multiple countries from backend once you have those enabled. But let's just go,
what do we have out-of-the-box than our city? So our array. And let's see if this works. No one to help, okay, it's a US lips.
Let's try that. Yeah. So once you've added
your shipping details, system can calculate the
overall shipping price and that additional price can also be displayed to you in here. But in this case
we don't have any. Now it's asking us to
add the card detail. Let's try the dummy card. And just to be frank
with you guys, I have not used
this sandbox yet, so this is the first time I'm also making any
purchase from this. So when I have dummy
card details in here, I'll just click on Place Order. Everything looks good. It asks me to
confirm the details. I think it looks good. I'll just place the order and it gives me the
thank you screen. The order has been
placed into the system and this whole journey of the various steps
comes out of the box. And as a developer or
as a business users, you will be managing either
the content and the system. You will be managing
email content, you would be managing
this thank-you page. You will want to personalize
this for the customers. And as a developer, you will be adding
additional features to this overall journey. But you get something
out of the box which can take you to the market. Now I'll just create
an account so that it's easy for me to
use that in future. Because I purchased
as a guest system is giving me an option to
register an account. Created the GAN. Okay, so my count is there. I'll just save it
for future use this. And that's it. Now, I can go on top. When I am logged in, I can see my, you know,
my username here. I can go to my account section. This is where I
managed the profile, password and general
lottery little details. I can go to my order
listing page as well. This lists all the orders that are placed into the system. Very basic because this
comes out of the box, but you can completely customize the look
and feel of this. And that's what we're
going to learn.
9. High Level SFCC Admin Overview: When you are on this website, you can see that these are the key actions that
merchant will be taking. So you can create multiple users and you can give
specific access to, let's say, product and catalog management or content
management to the contract. Sorry, content management to
the content team and so on. But now as an admin, I would want to just
go to the ordering. See the list of
orders in the system. When I come to this page, list of orders, I see no
other I'll click on fine. And this shows me
the first-order. And you can come to this from, when you click on this top
section, you see all of these. You can just say no
filter like that as well. There are many, many
options in here. We'll just go in details to each of them in
subsequent lectures. But as a merchant, you would be no
playing around these. And when I go to that order, I can see all the details around that order and I can perform the processing
of the order. I can just change the status. What's the status
of the order if I have shipped order or not. So I can do all of those
interactions as well if you want to give limited
access to your users. So you can also do that as well. Now, Let's just quickly take a look in the
merchant center so you can manage the content
as an administrator, you can manage the
overall customer. You can group the customer into multiple customer
groups so that you can have groups,
phosphate promotions. You have many custom objects
that you can create. You have SEO related activities that you can perform
on the website. You can manage
your Meta details, URLs and so on. You have products
and catalogued head. You'd be creating multiple
type of products. Like you can create
simple virtual products. You can create
configurable product where you can sell very customer can select size and
colors and so on. So you can manage the pricing, you can manage the inventory, but you can manage the orders, taxation and all the
processing around the orders. Then you have in a
searching related feature, you have marketing feature. This, these marketing
features are, you can create coupons, you can create any
discount if one product has been added to cart if
you want to give, let's say, if more than thousand
pounds and card, you can give additional
discount to customer. You have basic analytics
available as well. You have sight preferences
if you want to, if you want to
customize something specific or the basic details, like in a currencies
on the website, you will get in here. So this is the high level idea of the merchant tools that comes with Salesforce
commerce Cloud.
10. Get SFRA on Local Machine: Now, let's see how
we are going to get our SFCC code base
onto Local Machine. For this, you need to have a Salesforce Commerce Cloud
business manager access. The email address by which
you have this access, make sure you create
a Github account from the same email address. When you create a
Github account, you need to ensure that you enable two factor authentication
on your Github account and just ensure that
the email address in SFCCBM where you have been given access
and Github accounts, email address are safe. Apart from that, you would need node and NPM installed
onto your local machine. So let's go to our
business manager, and I have this business
manager access. From here, I can
go to my profile, and under my profile, I have to click on
Managed Access Keys. Here, I need to generate
Access key so that we can pull and push the code
onto our sandbox account. Make sure you
generate a web dev, File axis and UX
studio Access Key. Click on generate, copy this and download this file further
use and just close this. Once you generate this, you
can see in here, let's say, if I again click on
Generate Access Key, I cannot create the
FlexS and UX Studio Key. There are other keys
that I can still create. So at a time, there can be only one web Dive File
Axis and UX Studio key. And this key that we have
generated is a password, which we are going to utilize in VS code in subsequent chapters. So once you have
this back indexes and you generate the scheme, go to the GitHub and login
from the same email address. If you are logged in and you see the Salesforce Commerce
Cloud organization, you can click on this
view organization, and it would require you to sign on with your
Commerce Cloud identity. Once you sign in, you
would be able to see all the private repositories where Salesforce
gives you access. And here you would also
see the repository for SFRA I would say, PR. Yeah. So you can see
reference architecture. Store front reference
architecture. This is the repository that you're going
to need access to. If you log into your
Github account and you don't see this repository
under your account, make sure you go
to this quip URL and click onto this login
to Github using SSO. I'll also post this into the
description of this chapter. Once you click onto
this particular URL, this will ask you to single sign on via your Salesforce
Commerce Cloud account. And that way, Github
will link your account to Commerce Cloud and will
give you needed access. And once you have both of these, let's go to your storefront reference architecture
repository, click on code on the
SSH side, click copy. Once you have this,
you can just simply clone this onto
your local machine. Let's go to my item. And let's go to
the sites folder. Here we install all the code whenever you click onto
our local machine. Under sites, I'll
create a new directory. I'll create new
directory as SFRA. I'll go into SFRA Inside
this, I'll just Okay. I'll run Git clone and
paste the URL that I have copied from Git and this
will ask you the password. And this password is the SSH key password
of your local machine. It's not the password
that we have copied. So just add the key of
your local machine. If you don't have SSH key
uploaded on your Github, you can also copy this
repository via HTTPS URL. Typically, you would go to code and copy this URL instead, but it's recommended to copy
clone the code from SSH. And for this, you
may need to upload your SSH key onto
your Github account. So once you have this code
based onto Local machine, you will just go to your
reference architecture, I'll just to LL. You can see in here. So it's storefront reference
architecture as my subdirectory. I'll go into that
and inside that, I'll have to run NPM install. But before that,
let's see what's our NPM version and
what's our no Js version. So SFRA at the moment is
compatible with node V 12. So make sure you have compatible version of node installed. If you have node 14 60, you install the application
via NPM install, but subsequently you would
start facing problems. So make sure this version is
at the compatibility level. Now let's run NPM install. This will bring in
all the libraries, all the dependencies
that are required for SFRA and we will be pulling
it onto your local machine. And once you have all of these
onto your local machine, you would have
complete SFRA code where you can start performing
your customizations. So that's all for this chapter. I'll not wait for
this to complete. And to build the application, typically you would use let's
just go to your quip URL. So these are typical
node JS commands. So once you run
these compilation, this would create the
needed JS CSS file, which we will utilize in our subsequent video to
upload onto sandbox. Let's do it now itself. Let's just wait for a
couple of more seconds to get this completed. So our NPM install is done. All the dependencies are
on our local machine now. Let's run these three
commands together. And let's Yeah, sometimes you may see
certain errors popping up, but until unless it's an error,
you don't have to worry. It would be, mostly they
would be warnings only. And after this, you are done, your SFRA is set up onto
your local machine. That's all for this one.
Thank you very much.
11. Connect VS code to SFCC: Our previous video, we pulled the code from
Github repository and got the code in a sub
directory under SFRAFolder. So our code base right now
resides under this directory. Now, we want to connect
our local machine to sandbox so that whenever we are doing any changes
on our code base, we can push the code onto
our sandbox instance. For that, we have to open
our VS Studio or VS code. So we'll open VS Studio code. And once you open this, click on Open folder. Here you would find you have
SDS folder under sides, we have SFRA and this is the folder where we
have all the files. We'll click on AD and you would get all your SFCC files in here. I had a workspace
created for this one, so you automatically see
your workspace popping up. If you don't have a
workspace for this, then make sure you
create a workspace. Via studio code workspace. Let me show you how to do that. Let's go back to our item. Let's run LS hyphen LA. Here, you see this
storefront reference architecture dot code
hyphen workspace. So this workspace
has been created. And in your day to day life, you may need to delete
this SFRA version or you may need to get a latest version of SFRA
as well from Github. So it's better to create a VS code workspace parallel to this rather
than inside this folder. So we just go to one
directory parent, which is in SFRA and we
create a workspace in here. To do this, typically you would go to your VS Studio code. When you are onto
this file and folder, you just click on this file, save workspace, and here you can give the workspace
name and it will be saved. And next time, when
you open the VS code, let's quit the VS code. Now, next time when you are
going to open the VS code, you will see your workspace
is automatically loaded. So that way, it becomes faster. And when you work in SI
or with multiple clients, you may be having multiple
versions of SFRA, so it's better to separate them via multiple workspaces as well. Now we have our
workspace and code base onto a local machine. Let's connect our
code to the sandbox. For that, you need to
create a dwt JCNFle. So I'll just click in here, click on New File and
create a dwt JSON. EW stands for Demandware. So we're still using
that naming convention, and in dwt GSN, you have to specify a
couple of parameters. Let's go back to our quip. Here, you would also find what needs to be defined in dwt JSN. Let's just paste everything
for now and now, these five lines, host
name and use a name, these two are mandatory. You can have password in here or you can also remove
this line as well. And whenever you
are going to open this workspace and
connect to your sandbox, you can specify the password at that time. So it's optional. Cartridge is also optional. Here, you typically define which cartridges you
would want to push from your local machine to sandbox and you have multiple cartridges and you want to exclude
some cartridges, then you can use this word, this thing, but we
will not need it, so we'll just remove this. Code version is also mandatory, and let's see how we find
all of these detail. So first of all, for host name, it's the URL of your sandbox. So let's go to our Sandbox.
And here you see this. This is our host name from
Jet jet TE till this Oh, I'm sorry for this.
Let's just go back. Sure. So this is starting
from this titil.com. So this is the host name. Let's go back. Let's
put the host name. Next thing is, it
needs a username. So this should be
the username or the email address that you are using to login into
Business Manager. Will specify info
at the dtschb.com. Now this password field is the key that we have generated
in our business manager. Let's go back to our
business manager. For that, we went to
the profile icon, and here we went to
manage access keys, and under here, we created
a web D file access key. The key that you get in
here is the password. So we still have the key. Now, what we will do is we'll
just open this CSV file. And in this CSU file,
you would find the key. Let's see where is a key. Yeah. So this is a key
from here to this line. After this video,
I'll remove this key, so, you just copy your key into the password
and remove this section. Now this version is the version
of code we want to pload. You can keep version one when you are ploading
very first time, or what you can do is go
to your business manager, go to your administration
and code deployments, under code deployments,
click on ad, and here you create
a new version. Let's call it VERSION
version one oh one, okay? Now, let's copy this
wording exactly. Go back to our VS code
and paste it in here. Then close it. So this dw dot GSN is
ready. We'll just save it. And once you save it, it should connect to the extension that we have
installed prior to this. So let's just close
VS code once again. Let's restart it, and
I'll show you how this start our VS code. Once you restart, you'd see
everything set up properly. We'll just click on
this top section and click on Show
and Run Commands. You would find that Profit
Unable Upload is there. If not, then you can
just search for this and click on Profit
Unable Upload, and you would see this output
in your terminals window. And what this is doing is, this is uploading our code
onto our sandbox account. You can see the progress. You can see all the
information in here, and our code has been uploaded. Let's go back to
our SFCC instance. So here we have
this version one. Then let's just refresh. Now, under this version one, you can see our code
has been uploaded. Just now, if you click
on this version one, you would be able to
see all the files that we have just uploaded. And let's go back to
our code deployment. Now here, this version
is right now not active, but you can activate this and
on your website front end, you would be able to see
this code reflecting and any changes that you
would be performing in this code base will be visible onto the
website front end. So let's just try that as well. Let's click on Activate. So once this is activated, we'll just go on our reference
architecture website. Okay. Under the
administration, sorry, let's go to the store front
and under administration, let's just make sure that our
this version is activated. And when we go to storefront, we can see that this
is our storefront. Let's go to our code base, and under the code base, let's make a small change. So let's just go
to the cartridges. Under cartridges, we have
this base cartridge. Under base cartridge, we
have multiple things, but let's go to form. Maybe let's go to the template under template,
let's go to default. And yeah, let's go to homepage DataSML and there are multiple
uses of these scripts, but let's just to do this. Here, just about
this hero banner, let's just add H one tag. Okay. And let's try hello world. And my bad. Let's just close that tag. Okay? Now, let's just save. Okay. And once you save it, let's just refresh the website, and you should be able
to see this halo wood. And I want to bring your
attention onto this section. So whenever you run the
command, you upload the code. Eventually, this starts watching your local files
and keep them in sync to the I want to bring your
attention to this section. So whenever you upload the code, it starts watching
your local files. And as soon as you
do the changes, just see when I
click on Controls, just focus onto the
bottom section. I clicked on Controls. Now, this file from Local has been uploaded
to my Sandbox. So, it's synced onto the runtime so that you can
see your changes reflecting. I've removed Halo word, so it's very easy for you to do the development
when you have your local code
being watched by NPM and continuously synced
with your sandbox account. So that's all. That's how
you're going to set up your local machine
with VS code and sync your code to your
sandbox instance and start making changes
onto your local machine.
12. Hello World: Our local code base is
connected to our sandbox. And in your day to day life, whenever you are doing any
coding related modifications, or you are asking your team
to do any such modifications, they would be doing
them typically as a separate cartridge, and it is advised that you don't modify anything in your
storefront base cartridge, which is your SFRA
base cartridge. So for any changes, you would be creating
a new cartridge and using the feature
that are available from the base cartridge
and then pushing this new cartridge to
your Cloud instance. So let's try this.
Let's print Hello World onto our website via
a new cartridge. To create a new cartridge, you go to the terminal, and under terminal, you
can use SGMF scripts. So when you install SFRA, you also get SGMF
installed with NPM. So let's run GMF scripts. Then we want to create
a new cartridge. So with a flag we hyphen hyphen, create CAR TR IDGE and
then your cartridge name. Let's give name app,
custom storefront. Doing this name
because you would find this on BTC commerce
documentation as well, so it will be easier for you to relate if you do
some parallel work. Now execute this command. This will essentially create a sub directory under
your cartridges folder, and this subdirectory
would include a structure of a cartridge which would have
multiple folders. And you see in here this dwt GCN that we had
has been updated because this ID things we
may not want to upload this, but we still want to
upload this code base. So I'll just change this
back to the earlier version. My cartridge has been created. Cartridges typically resides within this
cartridge folder. And what we want to do is we would first be
creating a controller. So let's just click in here. Create hello dot js file
and pase this code. We'll understand
this code later on. But essentially
what we are doing is we are writing a message, hello word and
creating a template, hello hello word template, which would reside within
this Hello directory, and we are entering
this template. And when you have this template, ready, this path belongs
to your template folder. So you go to the
template folder in the left side,
click on defaults, and under the default section, you have to create
this new template. So make sure you click on this file and make sure you
have the exact same name. So we'll just create a folder. Hello Hello Hello world. So this is my file
and folder name. So once I'm done with this, what I have to do is this template name itself
should be JS file. So when you write this, make sure you put it as
a Js and then hit Enter. So you would have your
hello world dot JS onto your template folder. Now we would do is
write H one tag. Okay. And within this H one tag, what we can say is you
want to use dollar, and under the dollar, you would write PDICT
dot message MEWS GE. So what we are doing is
from our hello dot JS, we have this message
variable passed. We would be using this
message variable and we'll be printing this message
variable under H one tag. And once you have this ready, what you can do is you can
simply go to your website, and before that, make
sure your code is pushed. So just let's run this
prophet PloudOce again, let's go to the
output section and see if our code has
been uploaded properly. Okay, our code is there, and I think this should not be dot. This should be dot SML. So let's just rename it. My bad. I'll rename it to ISML. Yeah, it should be good now. And now, as soon as
I do the changes, this SML file has been
uploaded there as well. So what we are going to do
now is go to our Again, make sure we select the right website that we want to use. This website front end
is loaded in here. We'll just click
on Administration and click on Manage sites. Under Manage Side, click on Reference Architecture
and here go to settings. Here we have to specify the path of our cartridge
that we are created. So I'll just go back
to my terminal. I'll just copy the
cartridge name ***. I'll put the cartridge name in front and then separate
them via a column. And you move towards the right
side and click on Apply. That way we are attaching
this cartridge to the site, and cartridge should
be attached now. Now let's go back
to up front end. So here you see we have site
reference architecture. Now we want to add
TE FAULT default, and then we'll write HE WLO
hyphen SHOW. Hello, show. Hello is our controller name. Show is the function
that we created, and you can see Hello
world printed in here. Let's just do a quick change. Let's go to hello dot js and Hello World from LTsHOB just so that you know
this is coming from here. We save it, this would
be automatically uploaded and you can see
the changes coming in here. Now this view, this
presentation is very minimalistic because
we just created ISML template and just
printed this message. If you remember earlier, when we go to our
storefront pase cartridge and under here, we went to the
template for homepage. Let's go back to the
same template once. Let's copy all of this
to our hellowd dot SML, and I'll just copy
this message back. And under this
particular section, let's just put our message now. So what I've done is I've copied everything from the
homepage and just added this message under
this home main homepage Div. I've saved this just refresh
onto the website frontage. Now you see, I have
all the headers, footers that is
there on my website, which is a reusable component, and my code is reflecting hello
word in the central part. Because these ISML
templates are reusable, so you can have
your website head of footer and all the
structure intact, and just your new code would be either
doing any changes on the main content side. If your code is making changes
to let's say menu bar, then you extend that
ISML template as well. So this way, you can
reuse ISM as well. We'll study them in detail later on. That's
all for this one. Try your own custom cartridge and see if you can
upload and make it run. If you have any problems,
do let us know. Thank you very much.