Tag: Bootstrap 500 error

Sitecore 9.3 Commerce Installation Nuts and Bolts

I have got a chance to explore the Sitecore commerce 9.3 installation and configuration for one of our client demo. Sitecore has given the straight forward installation steps but some time we will face some issues. So we will discuss the steps of installation and details of issues with solution.


Step 1. Download the required software from Sitecore portal (https://dev.sitecore.net/)
• Sitecore 9.3 experience platform
• Sitecore Experience Accelerator (SXA) 9.3
• Sitecore PowerShell Extensions 6.0 for Sitecore 9.3
• Sitecore Experience commerce 9.3 initial version
• Sitecore_XC-9.3_Installation_Guide_for_On-Prem.pdf
Step 2. Install the all the Prerequisite before Sitecore 9.3 commerce installation start.
• NET Core 2.1.7 Windows Hosting module
• MSBuild Microsoft Visual Studio Web targets (available from Nuget)
• First install the Sitecore 9.3 experience platform using Sitecore UI based installer with Solr search.
Step 3 . Create Deploy folder in C drive and copied the SXA, PowerShell extension and unzip folder of Commerce installation package.

Copy the “Microsoft.Web.XmlTransform.dll” to deploy folder and unzip the “SIF.Sitecore.Commerce.3.0.28” folder marked as yellow in above screen shot.
Step 4 Expand the “SIF.Sitecore.Commerce.3.0.28” under “C:\deploy\SIF.Sitecore.Commerce.3.0.28” folder and open the sitecore commerce PowerShell installer file “Deploy-Sitecore-Commerce.ps1” .
Configure the following parameters
$MergeToolFullPath – This is the path to the location where you downloaded the Microsoft.Web.XmlTransform.dll file. Example $XCInstallRoot\Microsoft.Web.XmlTransform.dll.
$SiteNamePrefix – This parameter needs to match the prefix used in the Sitecore XP 9.3 base installation where Sitecore Commerce is going to be installed on.
$SiteName – This is the name of the already installed Sitecore XP 9.3 instance. Its default value was “$SiteNamePrefix.sc
$IdentityServerSiteName – Same as for the $SiteName parameter, the default value (“$SiteNamePrefix.IdentityServer”) of the name of the Identity Server application of the Sitecore instance .
$CommerceEngineConnectClientSecret – This parameter is the Commerce Engine Connect Client Secret for the Sitecore Identity Server, that you have generated in one of the prerequisites steps described in the Sitecore Commerce installation guide.
$SiteHostHeaderName – This parameter is the domain of the Storefront site. If you change it with a different domain, remember to update its value in the Hostname field of the Storefront SiteGrouping item (/sitecore/content/Sitecore/Storefront/Settings/Site Grouping/Storefront) after the installation is finished.
$XConnectInstallDir – This is the path to the xConnect application of your Sitecore instance..
$SitecoreDbServer – This is the name of SQL database server where the Sitecore XP databases are hosted. As its descriptive comment calls out, if you have a named instance, you will need to escape the back slash character (\).
$SqlUser && $SqlPass – These are the credentials for a sys admin user of the SQL database server where the Sitecore XP databases are installed.
$SearchIndexPrefix – This parameter is the prefix used in the search indexes of the Sitecore XP instance. Its default value is blank, but it should be “$SiteNamePrefix” instead.
$SolrUrl – This is the url of the Solr 8.1.1 instance.
$SolrRoot – This is the path where the solr application is installed.
• $SolrService – This is the name of the Solr service.
$CommerceServicesDbServer – This is the SQL database server where the commerce databases will be installed.
$CommerceServicesDbName – This is the name of the shared commerce database.
$CommerceServicesGlobalDbName – This is the name of the global commerce database
$CommerceServicesPostfix – This is the suffix that is added to the name of the commerce engine applications.
• $CommerceServicesHostPostfix – This is the suffix that is added to the hostname of the commerce engine applications in their IIS bindings.
$BizFxSiteName – This parameter is used on both the application name and the hostname for the Business Tools application.
$UserPassword – This parameter is the password used to create a local machine account user to run the commerce applications in IIS and to access the commerce databases.
$BraintreeMerchantId, $BraintreePublicKey, $BraintreePrivateKey, $BraintreeEnvironment – These parameters are needed if you are configuring the Braintree payment policy. Their values can be found in your Braintree sandbox account. The $BraintreeEnvironment should be set to sandbox value.
Run the deployment script “ .\My-Deploy-S”itecore-Commerce.ps1”


Solution to error occurred in Installation

  1. The remote server returned an error : (400) Bad Request – Identity Server token issue
    Solution: check the $IdentityServerSiteName parameter have correct Instance details.
  2. The MERGE statement attempted to UPDATE or DELETE the same row more than once
    Solution : Please remove all prior modules completed + Module-HabitatImages task itself from Install folder \SIF\Configuration\Commerce\Master_SingleServer.json and re-run installation script
  3. The remote server returned an error: (500) internal server error Solution: $SitecoreDbServer parameter value should use the double back slash and changed the ApplicationPoolIdentity built-in account for Ops commerce engine application on IIS.