Bluecore

Send your event data from RudderStack to Bluecore.

Bluecore is an AI-powered retail marketing platform that helps brands personalize their campaigns by analyzing customer data. It enables targeted email and messaging campaigns, aiming to enhance engagement, boost sales, and improve marketing efficiency.

Find the open source code for this destination in the GitHub repository.

Setup

  1. In your RudderStack dashboard, go to Directory > Destinations > Cloud Destinations and search for Bluecore.
  2. Connect your source and click Continue.

Connection settings

Configure the following settings to set up Bluecore as a destination in RudderStack:

  • Name: Assign a name to uniquely identify the destination.
  • Bluecore namespace: Enter your Bluecore token from the Bluecore dashboard.

Connection mode

This integration supports sending events to Bluecore via cloud mode:

Connection ModeWebMobileServer
Device mode---
Cloud modeSupportedSupportedSupported

Configuration settings

After completing the initial setup, configure the following settings to receive your data in Bluecore correctly:

  • OneTrust cookie consent settings: Enter your OneTrust category names to associate the OneTrust cookie consent groups to Bluecore.

Mappings

Event mappings: Click Set-up mapping to map the RudderStack events to Bluecore standard ecommerce events. RudderStack also provides the JSON mapper to set these mappings.

Bluecore event mapping

RudderStack maps the following events to the Bluecore standard ecommerce events by default:

RudderStack eventBluecore event
Product Viewedviewed_product
Products Searchedsearch
Product Addedadd_to_cart
Product Removedremove_from_cart
Product Added to WIshlistwishlist
Order Completedpurchase

Identify

You can use the identify call to create a new customer or link an email ID to an existing customer in Bluecore.

RudderStack sends this information to Bluecore by leveraging their REST API endpoint.

A sample identify call to create a new customer in Bluecore:

rudderanalytics.identify("27340af5c8819", {
  firstName: "Alex Keener",
  logins: 2
})

You can link an email ID with an existing customer by sending the following attributes for the customer’s distinct_id (unique identifier for the customer):

  • email
  • custom field message.traits.action with identify value
rudderanalytics.identify("27340af5c8819", {
  firstName: "Alex Keener",
  logins: 2,
  action: 'identify',
  email: 'alex@example.com'
})

You can also send the distinct_id for a customer in the externalId object as shown:

context: {
  externalId: [{
    type: 'bluecoreExternalId',
    id: '54321'
  }],
}
info
Note that any customer attributes or product properties you send in the RudderStack identify or track calls (for example, first_name) are permanently created in Bluecore if they do not exist already. To avoid excess or redundant attributes, only send the attributes critical to your campaigns and ensure their syntax remains the same throughout.

Property mappings

RudderStack maps the following properties to the Bluecore properties:

RudderStack propertyBluecore property
externalId
email
userId
anonymousId
Required
distinct_id
namecustomer.name
agecustomer.age
sexcustomer.sex
addresscustomer.address
emailcustomer.email
context.app.versionclient
context.device.modeldevice
destination.Config.tokentoken

Track

You can use the RudderStack track call to track the user behavior along with any associated properties.

A sample track call is shown below:

rudderanalytics.track("Product Viewed", {
  product_id: "622c6f5d5cf86a4c77358033",
  sku: "8472-998-0112",
  category: "Games",
  name: "Cones of Dunshire",
  brand: "Wyatt Games",
  variant: "exapansion pack",
  price: 49.99,
  quantity: 5,
  coupon: "PREORDER15",
  currency: "USD",
  position: 1,
  url: "https://www.website.com/product/path",
  image_url: "https://www.website.com/product/path.webp",
})
info
Note that any customer attributes or product properties you send in the RudderStack identify or track calls (for example, first_name) are permanently created in Bluecore if they do not exist already. To avoid excess or redundant attributes, only send the attributes critical to your campaigns and ensure their syntax remains the same throughout.

Custom events

If you have created any custom events in the Bluecore dashboard, you can send them as track calls via RudderStack without mapping them in the RudderStack dashboard. RudderStack sends the custom event names as is.

You can also make calls to opt-in or unsubscribe an email address:

  • For opting-in a customer email, send a track call with a custom optin event and email field.
  • For unsubscribing a customer email, send a track call with a custom unsubscribe event and email field.

Property mappings

RudderStack maps the following properties to the Bluecore fields:

RudderStack propertyBluecore property
userId
anonymousId
email
distinct_id
namecustomer.name
agecustomer.age
sexcustomer.sex
addresscustomer.address
emailcustomer.email
properties.query
Required for Search events.
search_term
properties.order_id
Required for Purchase events.
order_id
properties.total
Required for Purchase events.
total
context.app.versionclient
context.device.modeldevice
properties.products[#idx].id/product_id/skuproducts[#idx].id
properties.products[#idx].nameproducts[#idx].name
properties.products[#idx].priceproducts[#idx].price
  • All the standard RudderStack ecommerce events require products array except the Products Searched event or any custom event mapped to Bluecore’s standard search ecommerce event.
  • Any custom event mapped to Bluecore’s standard purchase ecommerce event also requires products array, along with the order_id, total, and customer information (which RudderStack maps from the traits or context.traits object).
  • RudderStack maps the id for the products array either from the product_id, sku, or id. Further, RudderStack eliminates the product_id, sku, or id fields after computing the id of the products object before sending it to Bluecore.

FAQ

Where can I find the Bluecore namespace?

  1. Log in to the Bluecore dashboard.
  2. From the left sidebar, go to Account > Integration Guide.
Bluecore namespace

You can find the Bluecore namespace in the JavaScript code snippet:

Bluecore namespace

Questions? Contact us by email or on Slack