Connect Bloomreach Engagement with your BigCommerce store, analyze BigCommerce data, execute omnichannel marketing campaigns, and use Bloomreach Engagement’s AI-driven capabilities on your BigCommerce store.

Integration saves costs on integration projects and radically speeds up the time needed to integrate. Without our new native integration with BigCommerce, you would need to develop your own solution - invest in a system integrator partner, agency, or in-house development.


BigCommerce availability in BETA

This feature is currently available in the BETA version, but we are working on its improvement.

Setup process

  1. Go to Data & Assets > Integrations > Add BigCommerce integration.
  2. Copy Integration URL.
  3. Go to BigCommerce Marketplace and search for the Bloomreach Discovery app.


Install the right app

The BigCommerce Marketplace also features a Bloomreach Engagement app, but it is still in development. For the time being, please continue with the Bloomreach Discovery app.

  1. Install Bloomreach Discovery app.
  2. Go to Bloomreach Discovery app.
  • Go to Engagement settings and paste the Integration URL
  • Activate integration
  • Activate storefront data layer tracking
  1. Go to Bloomreach Engagement app > Tag Manager.
  • create and customize Data Layer helper tag from templates to track frontend tracking or use Google Tag Manager

After integration setup, Bloomreach Engagement downloads all historical data (data up to that point) and subsequently tracks new data (changes, additions, etc.) from the BigCommerce API. The app also exposes identification and other useful data in the data layer (works on the default storefront Stencil theme).


In order to be able to install Bloomreach app, you have to be logged in as the Store Owner. If the link above does not work for you, please replace your store ID and use this link instead.

Integration specifications

Initial data load

  • customer base (customer and attributes)
  • subscriber base (email, consents)
  • orders and line items (created orders)
  • product catalogs (products and variants)

Events loaded from BigCommerce

  • purchase
  • purchase_item
  • consent

Customer attributes loaded from BigCommerce

  • personal information

Near real-time webhooks (2 minutes)

Exponea subscribes and listens for webhooks from BigCommerce API:

  • customer updates (create, update, delete)
  • new orders (order placed)
  • cart updates
  • consents changes (subscriber create, delete)

Web tracking

  • datalayer is populated with
  • identification (email_id, customer_id)
  • view_item event data

Required project identifiers setup:

  • email_id - Hard ID, lowercase, trim; email address is the primary identifier for customers in Bloomreach Engagement. If there are multiple BigCommerce customers/subscribers/guest orders with the same email address, there is one customer for Bloomreach Engagement.
  • customer_id - Hard ID - numeric BigCommerce Customer identifier.
  • subscriber_id- Soft ID - numeric BigCommerce Subscriber identifier.
  • cart_id - Soft ID - unique cart identifier that is used to merge web and webhook tracking.
  • cookie - Soft ID - device unique cookie identifier (i) standard cookie identifier that is used in web tracking.

BETA Limitations

BigCommerce integration is enabled on multi tenant instances by default. For other instances, please ask the support team for activation.

JS SDK must be added manually by editing the theme files or Google Tag Manager. Actual tracking can be added manually by Data Layer helper Tag Manager.

For that, go to Tag Manager > 'Create new'.

  1. From the templates, select the dataLayer helper
  2. Update lines 126 and 127 by pasting the following lines:

if(m.event_name==="identification") exponea.identify(m.event_properties.customer_ids);else exponea.track(m.event_name,m.event_properties);

  1. Go to the 'Setting' tab.
  2. Select General Consent and priority 999.
  3. Save and Start the Datalayer.

After the activation of the DataLayer Helper, you need to integrate the web.

For that, go to the Settings of the Bloomreach Engagement app.

  1. From the dropdown menu, select Web integration and click on it
  2. Tick the action Track page_visit. Tracking of session_start, and session_end should
    be ticked by default.
  3. Click on the button 'Copy to clipboard'.
  4. Now you can decide if you want to use the BigCommerce Script Manager or Google Tag
    Manager (do not use both).

Afterward, you need to enable the Bigcommerce Script Manager.

For that, go to the BigCommerce Store (Administration) > Storefront > Script Manager.

  1. Check if the bloomreach-engagement-datalayer.js is part of the Installed Scripts listing (if not, try restarting the datalayer helper).
  2. Click on the button Create a Script.
  3. Fill in the Name of script - you can call it for instance Bloomreach Snippet.
  4. Location on page - Tick Head
  5. Select pages where the script will be added - Tick All pages
  6. Leave the script category by default or select it based on your preferences
  7. To select the script type - Tick Script and paste the Web Integration Snippet
  8. Click on 'Save'.

Now, check if the frontend tracking works properly.

For that, go to BigCommerce Store (Administration) > View Store and accept the cookies.

  1. Open the chrome extension Exponea console.
  2. You should see the already tracked events - page_visit, session_ping and a
    customer attribute - cookie. Copy this cookie.
  3. Go to Bloomreach Engagement App > Data & Assets > Customers.
  4. Paste the cookie into the search bar and hit the search button.
  5. Click on the filtered line and check the customer event tracking.

Implement this via Google Tag Manager as extensively described in our guide.

  • Tag Configuration > Triggering and tick Initialization - All Pages

Afterward, go to the BigCommerce Store (Administration) > Advanced Setting > Google Analytics

  • Paste the Installation Google Tag into the field tracking code and click 'Connect'.

Lastly, check if the frontend tracking is works properly the same way as above.

Customer anonymization must be done manually in the Bloomreach Engagement app. BigCommerce does not have a concept of anonymization to comply with CCPA/GDPR. BigCommerce admins are advised to delete private field values in the BigCommerce Admin UI when such a request comes. The integration will transfer these private customer attributes' empty values to Bloomreach Engagement customer properties, however, Customers on the Bloomreach Engagement side will not be anonymized as per Bloomreach Engagement rules. Anonymization triggers when a customer is deleted on the BigCommerce side. Anonymization can be always triggered manually for a specific customer in the Bloomreach Engagement app Customer UI. BigCommerce admins can read more on Implementing CCPA with BigCommerce - Deleting Personal Information.

Guest orders are tracked as purchase events into a customer profile identified by email address. These are not automatically anonymized at any point and you can set up an automated scenario to anonymize or anonymize these guest customers manually.

When BigCommerce admin deletes ALL subscribers manually, it will not revoke consents on the Bloomreach Engagement side in their customer profiles. As far as we know, this is a design decision on the BigCommerce side: BigCommerce is not sending a webhook about full subscriber list deletion. The workaround is a manual revocation of all consents on the Bloomreach Engagement side.

Anonymization scenario is not part of the integration and shall be created by hand: Repeat daily => Condition: subscriber_id has value AND customer_id has no value AND customer bigcommerce consent is not valid AND last bigcommerce consent timestamp is older than X days => anonymize customer

The integration does not have customizable backend tracking, which means that only customer attributes and events in the Tracking document are available.

Multiple stores in one project are not supported. BigCommerce customer ID is not unique and since the customer_id is a Hard ID, importing from multiple BigCommerce stores would cause customer collisions.