Magento

Integration

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

With the Magento integration, you can facilitate quicker and simpler integration between your Magento 2 store and Bloomreach Engagement.

This integration allows you to efficiently utilize our cross-channel automation, extensive personalization, and store optimization features. The plugin includes essential integrations, though adjustments may be necessary depending on the level of customization of your Magento platform.

You can install the plugin directly from the Adobe Commerce Marketplace.

📘

Note

If you use a previous version of the Magento plugin, use the upgrade guide inside the installation document to seamlessly migrate to an existing version.

Plugin Overview

The plugin provides several data feeds, or “data flows” - streams of data from Magento, for standard data objects out of the box:

  • Customer Data Feed
  • Purchase Events Feed
  • Product Feed
  • Basic Web Tracking
  • Cross-device Identity Resolution for Logged-in Visitors

Correct configuration allows you to deploy automation immediately, triggered campaigns, and web personalization that will help you grow your store's revenue.

How the Integration Works

The data feeds run an initial import when the plugin is activated and then near real-time updates. These run every 15 minutes by default. The imports include:

  • Customer data feed
  • Purchase feed
  • Products feed

Customer Data Feed

Customer data feed are customer profiles and attributes, more specifically:

  • customer_id
  • personal information (email, name, phone number)
  • newsletter subscription flag (can be added if present)
  • additional custom attributes can be added by code

Purchase Feed

The purchase feed tracks all orders made by the customers when they are placed. Guest orders are also tracked under the email address. Additional custom attributes can be added by code, but the default ones are:

  • purchase_id
  • total_price in the reference currency
  • local_currency and total_price_local_currency for other currencies
  • purchase_item with product metadata (title, categories)
  • discount values and percentages

Products Feed

Products feed are products and variants catalogs. Both of these can be populated. It features near real-time item deletion via Catalog API. Additional custom attributes can be added by code, but the default ones are:

  • identifiers for product_id, variant_id, SKUs
  • metadata, including labels, categories
  • full URLs to images and product detail page
  • stock availability (stock_level)
  • online listing (active)

The plugin comes with front-end tracking of customer behavior on your Magento storefront that includes basic web tracking of events, such as view_item, cart_update, and order_placed ​​automatic injection of Bloomreach Engagement JS SDK into the website HEAD, and customer identification (when logged in). The tracking can be extended by code.

Any previously mentioned events will be tracked and added to the Queue and later sent to Bloomreach Engagement. The queue is processed by a configurable cron that runs regularly based on the plugin’s configuration.

The data is synchronized with Bloomreach Engagement via REST API, using CSV files, for the initial import, and API endpoints, to update the customer and product information.

Additional Features

There are a number of possible additional features that come with the plugin:

  • Customizable schedule of jobs* (affects updates frequency)
  • Customizable retention of data in queues
  • Application Logs for operations on the Magento side

Limitations

  • Multiple stores are not supported. This plugin is designed for a single-store setup
  • Consent events from the backend are not included in the plugin out of the box. Magento does not recognize this concept. However, a custom attribute on Magento's customer object can represent the newsletter subscription status (flag, not timestamp), which can be added to the customer data feed by adjusting the mapping in the plugin code
  • The plugin currently does not support Adobe Commerce (Enterprise) specific features, such as Reward Points and Gift Card out of the box. However, it is possible to use parts of the plugin and build a custom integration for additional data feeds

How to set it up

Prerequisites

Your project needs to have the following IDs set up to correctly integrate with Magento:

  • email_id - as a hard_id and in lowercase (email address)
  • customer_id - hard_id (Magento Customer internal ID)
  • cookie - a soft_id (JS SDK cookie)

1. Install the Plugin

Install the plugin from the Adobe Commerce Marketplace and follow the installation guide.

2. Create a new API group

Go to the Settings > Project settings > Project > Access management > API and in API groups, click on + New group to create a new API Group with a Private access type with:

  • Customer properties > enable all Set
  • Events > enable all Set
  • GDPR > Anonymize customer enable
  • Catalogs > enable all
  • Imports > enable all

3. Configure the Magento Plugin

Go to your Plugin Settings and enter your Bloomreach Engagement credentials.

You can find them in the Bloomreach Engagement Account > Settings > Project Settings. Here you can find all the necessary credentials.

Click on the Validate Credentials button to verify that the proper credentials have been entered.

4. Import data

After you have made the basic setup, Bloomreach Engagement will import already existing data (products, orders, customers).

Go to Marketing > Bloomreach Engagement Connector > Initial Import.

The page will show a table with a list of available feeds:

  • Products Feed - includes all products visible individually in Magento.
  • Product Variants Feed - includes simple, virtual, and downloadable products that are visible or not visible individually at Magento.
  • Customers Feed - all customers.
  • Purchase Feed - all orders.
  • Purchase Items Feed - items from all orders.

Click the Enable button to enable initial import, if it is disabled. The page is reloaded, the feed status is changed to NOT READY, and the action button is changed to Configure.

Click the Configure button to start the import configuration. Once you click this button, a confirmation modal window appears where you can download the import file and validate it.

Click the Confirm button. The page is reloaded, the feed status is changed to READY, and the action button is changed to Start.

A new import and a new Catalog will be created in Bloomreach Engagement.

📘

Note

The catalog is created only for the Products Feed and Product Variants Feed. For the other feeds, the import will be created later.

Click the Start button to run the Initial Import. The page is reloaded, the feed status is changed to SCHEDULED, and the action button is changed to Stop.

Once the import cron task starts, the status will be changed to PROCESSING.

Once the import is finished, the status will be changed to SUCCESS, and the action button will be changed to Flush.

The import may finish with an ERROR status. This means that the import was completed, but for some reason, not all data was imported. In this case, the error can be found in the log files or by clicking the View Errors button in the Progress Log column.

5. Enable Real Time Updates

Enable real time updates to always have up-to-date data. An extension tracks changes in feeds and sends them to Bloomreach Engagement.

Customers Feed:

  • Create a new customer
  • Update customer
  • Delete customer

Products Feed / Product Variants Feed:

  • Create a new product
  • Update a product
  • Delete a product

Purchase Feed / Purchase Items Feed:

  • Place a new order

Each of the feeds has a separate setting that allows you to enable/disable Real Time Updates.

📘

Real time updates

Real time updates will be sent to Bloomreach Engagement after the processing of an initial import. Before that, all updates will be added to the queue and once the initial import is complete, it will be sent too.

6. Enable Frontend Tracking

You can use an extension that can track the following events:

  • Place Order - order and order_item events on the Order Success Page.
  • View Item - view_item event on the Product Details page
  • Cart Update - cart_update event on any shopping cart contents changes.

The Magento store administrator can enable or disable event tracking by changing the appropriate setting. To do so, go to Stores > Configuration > Bloomreach Engagement > Settings > Frontend Tracking.

There are two options for frontend tracking:

Bloomreach JS SDK

To enable this type of tracking, go to Stores > Configuration > Bloomreach Engagement > Settings > Frontend Tracking > Enable JS SDK.

In this case, events will be tracked and sent directly to Bloomreach Engagement using a JS snippet provided by Bloomreach.

In addition to the standard events provided by the extension (view_item, cart_update, order, order_item), this snippet will also track and send other events (for example: page_visit, session_start, session_end, etc.).

DataLayer Helper

This type of tracking works only with Google Tag Manager. When this type of tracking is enabled, event data is added to a dataLayer object. This object processes the GTM script and sends events to Bloomreach Engagement.

To enable this type of tracking, go to Stores > Configuration > Bloomreach Engagement > Settings > Frontend Tracking > Enable Pushing Tracking Information To DataLayer.

You can find more details on how to set up this type of tracking in our documentation on Implementing via Google Tag Manager and in the DataLayer Helper.

7. Set Up Warning Notifications

There is an option to notify the administrator if something goes wrong while processing the export queue. The cron will run every hour and check if the number of errors in the export queue in the last hour exceeds the specified percentage, after which the Magento store admin will be notified.

The Magento store administrator can enable or disable notifications, specify multiple recipients, and specify the percentage of errors at which he wants to send notifications. To configure notifications, go to Stores > Configuration > Bloomreach Engagement > Settings > Notification.

📘

Note

Are you still missing some details? Check our installation guide inside the Adobe Commerce Marketplace.

Use Cases

We aim to provide you with all the necessary data for the majority of StartRight use cases. However, the real selection of use cases will depend on the integration and what data are available in your Magento store.

Here are some example use cases that work out of the box:

  • Welcome Flow
  • Traffic Analytics Dashboard
  • Email Performance Dashboard
  • Birthday & half-birthday campaigns
  • Abandoned Cart Flow without Product Personalization
  • Post-purchase NPS survey email
  • Lookalike targeting based on CLTV and loyalty
  • Conversion Dashboard
  • Abandoned Browse Flow
  • On-Exit Banner with the Last Viewed Items
  • Retention Dashboard
  • Customer Lifetime Value Dashboard (+ RFM Segmentation)
  • Product Analytics Dashboard
  • Watchdog automatic restock alert
  • Abandoned Cart Flow with Product Personalization