Deploy to Netlify
Learn how to deploy your customization to Netlify.
Prerequisites
Before you get started, you need to have:
- A Netlify account.
- A Merchant Center account and a Project.
- A customization configured in the Merchant Center:
- For Custom Applications, see Managing Custom Applications.
- For Custom Views, see Managing Custom Views.
Configuration
Adding the customization identifier and URL
Depending on the customization type, you'll need to specify either the Custom Application ID or the Custom View ID that was provided to you when you added the customization in the Merchant Center.
You'll also need to specify the production URL from your Netlify site. You can keep the standard Netlify URL https://<site>.netlify.app
or provide your custom domain.
For Custom Applications, make the following changes to the Custom Application config:
- Add the Custom Application ID to
env.production.applicationId
. - Add the production URL of your Netlify site to
env.production.url
.
{"env": {"production": {"applicationId": "ckvtahxl90097sys6har1e6n3","url": "https://<site>.netlify.app"}}}
For Custom Views, make the following changes to the Custom View config:
- Add the Custom View ID to
env.production.customViewId
. - Add the production URL of your Netlify site to
env.production.url
.
const config = {env: {production: {customViewId: 'ckvtahxl90097sys6har1e6n3',url: 'https://<site>.netlify.app',},},// ...};
Using environment variables
To avoid hardcoding values (such as the customization identifier or the Project key), you can use variable placeholders in your Custom Application config or Custom View config.
Example of environment variables with Custom Applications:
{"env": {"production": {"applicationId": "${env:APPLICATION_ID}","url": "https://<site>.netlify.app"}}}
Example of environment variables with Custom Views:
const config = {env: {production: {customViewId: '${env:CUSTOM_VIEW_ID}',url: 'https://<site>.netlify.app',},},// ...};
Connect Netlify with GitHub
The easiest way to deploy to Netlify is to use the GitHub integration.
Follow the steps in Netlify to create and import a new Git repository.
Make sure to also install the Netlify GitHub App to grant access to your repository.
Configuring build settings
In the Netlify setup process, you need to configure the following things:
Override the Build command with:
yarn build
.In your
package.json
make sure to have the following scripts defined:package.jsonjson{"scripts": {"build": "mc-scripts build"}}Override the Publish directory with:
public
.If possible, select or specify the Node.js Version. Recommended version is
>= v14
.
If your customization config requires environment variables, make sure to provide them in your Netlify site > Settings > Build & deploy > Environment.
Configuring rewrite rules
A customization is a Single-Page Application that uses client-side routing. Therefore, we need to instruct Netlify to rewrite all requests to serve the index.html
.
For this purpose, create netlify.toml
file in the root directory of your project with the following content:
[[redirects]]from = "/*"to = "/index.html"status = 200
Test your deployment
Install your customization in the Merchant Center to access it within your Projects:
- For Custom Applications, see Managing Custom Applications. You can also use deployment previews to test the application before releasing it to the production environment.
- For Custom Views, see Managing Custom Views.