Shopify (Plus)

Integrating your Shopify or Shopify Plus account with Bloomreach Engagement enables you to analyze Shopify data, execute omnichannel marketing campaigns, and use Bloomreach Engagement's AI-driven capabilities on your Shopify store – all that without the need to rely on hundreds of ad-hoc plugins.

Bloomreach Engagement loads customer base, historical orders/purchases and product catalogs from Shopify and then regularly imports delta product catalogs from Shopify Products API. Bloomreach Engagement also subscribes and listens for new updates on customers and orders from Shopify backend.

Whether it is sending email campaigns, push notifications, creating experiments or just analyzing your Shopify data, the Bloomreach Engagement Shopify Integration helps the whole process to be as simple and efficient as possible.


Time to complete

Initial Integration: >10 Minutes
Web Integration: A few days

Setup process

  1. Log in to your Shopify account and click on Apps.
  1. Click on Develop apps.
  1. Click Create a new private app.
  1. Complete the field Private app name with a descriptive name (we recommend Bloomreach Engagement Integration). Complete the field Emergency developer email with a responsible technical person.


Required user permissions

To be able to this in your Shopify account you need the following user permissions: read_customers, read_orders, read_products.

  1. Click Save.
  1. Select the integration you've just created from your list of private apps.
  1. Open a new window and go to Bloomreach Engagement – be sure to leave your Shopify window open as well. You will need to copy the Example URL and the Shared Secret from Shopify into Bloomreach Engagement.
  1. Go to Data & Assets -> Integrations -> Add new integration and + Add Shopify integration in Bloomreach Engagement.
  1. On the next screen, you will see 4 IDs that need to be set up in your project. Make sure these are set up before you continue and match exactly; ID names are not customizable.
    You do not need to fill anything in here – just be sure these IDs have been set up. The integration will automatically use these IDs once it starts working.
  1. Copy & paste the Example URL and the Shared secret from your Shopify account to the matching fields in Bloomreach Engagement.
  1. Now, you can move on to web integration. You will need a technical person to complete the integration by making a few front-end modifications. This will take less than a few hours to complete.
  1. After the web integration is complete, the data will start coming in. Events from the API should appear instantly after the set-up is finished (remember to click Save integration). Regular catalog imports and customer and historical purchase data can be found in Bloomreach Engagement under Imports.


Tracking delay

Bloomreach Engagement tracks event order once it is placed in Shopify. However, the event purchase will only be tracked once the order is fulfilled, which will take additional time.

  1. Take a coffee break before all the imports are visible, as it might take a while before the whole import is finished.


Shopify Front-end integration for Bloomreach Engagement

This repository contains .liquid snippets that can enable standardized front-end tracking of e-commerce events on your Shopify Plus website.


Using Shopify instead of Shopify Plus

Using the non-Plus version of Shopify doesn't allow you to customize your checkout page, thus not allowing you to add checkout tracking. This means that Bloomreach Engagement cannot track the checkout steps.
Bloomreach Engagement script runs only on the final checkout step; therefore, Bloomreach Engagement cannot personalize the previous checkout process steps.



Service worker not supported

Shopify does not support using a service worker as it prevents from installing the service worker into the Shopifies´ root folder. The root folder is requiered to install the service worker for web push notifications and non-flickering experiments, therefore, those two features are not supported out-of-the-box for this integration.

Did this page help you?