Shopify and Shopify Plus Overview

Integration

The following article is a guide on how to integrate Shopify with Bloomreach Engagement.

Connecting your Shopify or Shopify Plus account to Bloomreach Engagement lets you easily analyze your Shopify data, run marketing campaigns across multiple channels, and use Bloomreach Engagement's advanced AI features on your Shopify store. No more dealing with numerous plugins!

Bloomreach Engagement retrieves customer information, past orders, and product catalogs from Shopify. It regularly imports the Delta product catalogs in real time and stays connected to Shopify to receive real-time updates on customers and orders.

📘

Time to complete

Initial Integration: less than 10 Minutes
Web Integration: A few days

How is the integration useful

With the Bloomreach Engagement Shopify Integration, you can effortlessly send emails and push notifications, create experiments, and gain valuable insights from your Shopify data analysis. It simplifies and optimizes the entire process.

Instead of having to depend on external plugins, the Shopify integration allows for a simple plug-and-play transition.

  • You can set up a straightforward and uncomplicated way to analyze your Shopify data and use them to boost your marketing campaigns.
  • You do not have to use external plugins to integrate my Shopify data with Bloomreach Engagement.
  • You can integrate your Shopify data with Bloomreach Engagement most efficiently.

Prerequisites

📘

An existing project is required

An existing project is required for this integration. You can choose from one of our Predefined Project Templates or create your own. Use the Shopify project structure template to make your initial set-up even easier

Your project needs to have the following IDs set up:

  • email_id - Hard ID, lowercase, trim; email address is the primary identifier for a customer in Bloomreach Engagement If there are multiple Shopify customers with the same email address, there is one customer for Bloomreach Engagement
  • shopify_id - Soft ID - numeric Shopify Customer identifier one customer can have more values if multiple Shopify stores are integrated into one Bloomreach Engagement project
  • cart_id Soft ID - an alphanumeric token of a shopping cart for purposes of cartupdate tracking _the cart_id is used to match Shopify carts with Bloomreach Engagement customers
  • cookieSoft ID - device unique cookie identifier standard cookie identifier that is used in web tracking

Ensure 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. Once the integration starts working, it will automatically use these IDs.

🚧

Shopify integration does not use the default "registered" as its ID. Setting up a project without a "registered" ID is recommended. If the project has this ID, it will be ignored, but it is better to create a new project without "registered" if possible.

How the integration works

📘

Out-of-the-box integration guide

See how to integrate Shopify with Bloomreach Engagement in our out-of-the-box integration guide and video.

After you set up the integration, Bloomreach Engagement downloads historical data (data up to that point) and subsequently tracks new data (changes, additions, etc.) from the Shopify API:

Initial data load

Bloomreach Engagement loads customer base, historical orders or purchases, and product catalogs from Shopify:

  • Initial load of all events from the beginning until the time when webhooks were added
  • Events loaded from Shopify: purchase, purchase_item, cart_update
  • Customer attributes loaded from Shopify: personal information, accepts_marketing
  • Catalogs: products and variants

Real-time imports

Bloomreach Engagement imports delta product catalogs from Shopify Products API in real-time.

📘

Real time imports for new integrations

All new integrations with Shopify import data to Bloomreach Engagement in real time.

However, older integrations have updates of imports every 4 hours.

Near real-time webhooks

Bloomreach Engagement subscribes for new updates on customers and orders from the Shopify backend.

Webhook registration

Bloomreach Engagement registers webhooks to receive real-time tracking and customer updates from Shopify.

Webhooks processing

Bloomreach Engagement processes real-time tracking:

  • customer create/update attributes/deletion (track _customer_change)
  • purchase events
  • cart_create, cart_update

Limitations

🚧

Service worker not supported

Shopify does not support using a service worker as it prevents installing the service worker into the root folder of Shopify. The root folder is required 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.

What is the latency between an order happening and an order appearing in our app when using our Shopify integration?

The sync is near real-time - Bloomreach Engagement subscribes and listens for new updates on customers and orders from the Shopify backend, resulting in near real-time webhooks.