This topic describes a simple onboarding deployment scenario to create a new Customized Commerce website and deploy the application, database and content to the _Integration_ environment in [Optimizely Digital Experience Platform](🔗).
When is this applicable?
This is an onboarding scenario for a **first-time deployment** when you want to set up a site and run development in a cloud environment from the beginning. Through Visual Studio you can deploy an empty database. A new site like this does not require database restore, and the database schema will be created during initial deployment.
## Before you start
This topic uses Visual Studio with the Optimizely extensions and publish profiles. However, you can also use [other deployment methods](🔗).
See [DXP Requirements](🔗) for recommended versions of software, tools and services to use when deploying.
See [Getting Started with DXP](🔗) for information needed to deploy.
If not already done, remember to **change the default login credentials** (admin/store) provided in the Customized Commerce installation, before deploying. See [Installing Optimizely](🔗).
## Deployment steps
This section describes how to create a new website with CMS, Customized Commerce and Azure, and deploy the code and database with content to the Integration environment in DXP. The deployment is done from Visual Studio, using the publishing profiles provided with your DXP setup.
A Commerce solution consists of **two sites**, a front-end site and the back-end Commerce Manager site, and two databases: one for CMS and one for Commerce. So, you need to repeat some deployment steps for each site.
### STEP 1. Create a front-end website with Azure
Follow the substeps under the **STEP 1 and STEP 2** sections in [Creating and deploying a Content Cloud (CMS) site](🔗) to create a site and configure it for Azure, but select **Empty** project (instead of the Alloy templates). Then add the **EPiServer.Commerce** package and the **EPiServer.Commerce.Azure** package. You also need to add **EPiServer.Commerce.UI.ManagerIntegration** to the front-end site, if you want the UI integration between the front-end and back-end of Customized Commerce.
### STEP 2. Publish code and database for the front-end site
Right-click on the project in Visual Studio and select **Publish.** Browse and select the publish profile for the Customized Commerce front-end site.
Click **Import** to import the settings from the publish profile and click **Next**.
The **Connection** tab should display the imported publish profile settings; no changes are required here. Click **Next** (not Publish).
In the **Settings** step, enter the remote connection string to SQL Database by selecting it under the **EPiServerDB** section (CMS database).
Enable **Update database.**
Click **Configure database updates**.
Clear the **\[Auto schema update\]** option.
In the **Settings** step, enter the remote connection string to SQL Database by selecting it under the **EcfSqlConnection** section (Customized Commerce database).
### STEP 3. Add Commerce Manager (back-end) to the solution and publish the code
Follow **steps 5-8 under Installing Customized Commerce** in [Installing Optimizely](🔗), to add Commerce Manager to your solution.
Add the _EPiServer.CommerceManager.Azure_ package to the **Commerce Manager** **site**.
Compile the solution, follow the instructions to update the database.
Repeat **sub-steps 1-4 under STEP 2 Publish code...** above, this time using the **publish profile for the** **Commerce Manager site**. You only need to publish the code since the database was already published with the front-end site.
Click **Publish** to publish the back-end site, which will open in a browser when finalized.
### STEP 5. Verify the website
Go to the default access URL; for example, _[http://\[projectNNNNinte\].dxcloud.episerver.net](🔗)_.
Log in to the website using the administrator user provided.
Verify that all parts of the site are working.
When starting the site, there might be remaining migration steps. When logged in, navigate to _<site-url>/<ui-path>/Commerce/Migrate_ (if not automatically redirected there), and verify that all migration steps are completed. If there are any issues, correct them and run the incomplete migration steps again.
When the site is started after the publishing has finalized, you might receive a temporary missing license notification before the cloud license is retrieved. Also note that **it may take up to one hour before the CDN is available for usage**. The site may display an error message during this time.
### Adding Find
See [Creating and deploying a Content Cloud (CMS) site](🔗) and [Deploying an Existing Content Cloud (CMS) Site](🔗) to add Optimizely Search & Navigation to your solution (not required).