mParticle (Import)

Overview

Sending events from mParticle to Branch will allow you to attribute downstream conversions like purchases across web and app to Branch link clicks. Events imported from mParticle to Branch will be available wherever you can normally use events within Branch, including dashboard visualizations, Data Feeds, Universal Ads postbacks, Journeys targeting, Liveview and more.

This guide walks through the server-side integration for data import from mParticle to Branch. For the client-side integration, see the mParticle iOS or android documentation. For data export from Branch to mParticle, go here.

What events does Branch import?

Branch will import events that are not auto-tracked with the Branch SDKs. This includes commerce, content, user lifecycle, and custom events, and excludes events like clicks and installs. See the full list of supported events and associated mappings here. Branch will only import events that can be tied to a user.

Setup

  1. Contact Branch to configure Branch to receive events from mParticle. Please note that a subscription to Data Feeds is required to enable data import from mParticle to Branch.
  2. Navigate to the Data Integrations page of the Branch dashboard.
    1. Select mParticle from the menu on the left.
    2. Select the platforms you would like to import events from and click Save.
23902390
  1. Navigate to your your mParticle UI’s Connections page.
    1. Select an input and add Branch S2S as the output.
    2. Enter your Branch Key. This can be found in the Account Settings > App section of the Branch dashboard.
    3. Enter your Branch Secret. This can be found in the Account Settings > App section of the Branch dashboard.

🚧

Avoid duplicate data

To avoid duplicate data, you should either track conversion events directly with Branch or track events with mParticle and then enable import to Branch, not both. Branch will warn you if you try to import events to Branch that you are already tracking.

Supported events

The Branch integration supports some of the events tracked with mParticle’s API or SDKs. Branch will only import events from mParticle that are not already auto-tracked with the Branch SDK. This means that events like click and install cannot be imported. The following outlines how mParticle events are mapped to Branch events, and which will be imported to Branch:

mParticle ActionmParticle Event TypemParticle Custom Event TypeBranch EventBranch Event CategoryImported
add_to_cartproduct_action-Add To CartCommerce EventYes
add_to_wishlistproduct_action-Add To WishlistCommerce EventYes
use the Branch event name--View CartCommerce EventYes
use the Branch event name--Add Payment InfoCommerce EventYes
checkoutproduct_action-Initiate PurchaseCommerce EventYes
purchaseproduct_action-PurchaseCommerce EventYes
use the Branch event name--Spend CreditsCommerce EventYes
use the Branch event namecustom_eventsearchSearchContent EventYes
view_detailproduct_action-View ItemContent EventYes
view_detailproduct_action-View ItemsContent EventYes
use the Branch event name--RateContent EventYes
use the Branch event name--ShareContent EventYes
use the Branch event name--Complete RegistrationLifecycle EventYes
use the Branch event name--Complete TutorialLifecycle EventYes
use the Branch event name--Achieve LevelLifecycle EventYes
use the Branch event name--Unlock AchievementLifecycle EventYes
use the Branch event name--CustomCustom EventYes
---Click-No
---Install-No
---Reinstall-No
---Open-No
---SMS Sent-No
---Pageview-No
---Web Session Start-No
---Branch CTA View-No
---Impression-No

Identifiers

Identifiers are required for events to be imported to Branch. You must include:

  • context.userId.Customer OR
  • (environment.Identity.DeviceIdentity.IOS_ADVERTISING_ID OR environment.Identity.DeviceIdentity.IOS_VENDOR_ID) AND context.runtimeEnvironment.type OR
  • (environment.Identity.DeviceIdentity.GOOGLE_ADVERTISING_ID OR environment.Identity.DeviceIdentity.ANDROID_ID) AND context.runtimeEnvironment.type

Branch maps mParticle's identifiers to the following:

mParticle fieldBranch field
context.userId.Customerdeveloper_identity
environment.Identity.DeviceIdentity.IOS_ADVERTISING_IDidfa
environment.Identity.DeviceIdentity.GOOGLE_ADVERTISING_IDaaid
environment.Identity.DeviceIdentity.IOS_VENDOR_IDidfv
environment.Identity.DeviceIdentity.ANDROID_IDandroid_id
context.runtimeEnvironment.typeos

At this time, Branch will not attribute logged out web events received from the server-to-server integration.

Validating the integration

Once you have import turned on in both mParticle and Branch, events should come through. You will see a green dot on the import card if Branch has seen events:

501501

To see more information on the events that are coming in, you can look at events with origin MPARTICLE in Liveview:

16961696

Branch imports events from mParticle as commerce, user lifecycle, content, or custom events.

Using imported events

Events imported from mParticle to Branch will be available wherever you can normally use events within Branch. This includes dashboard visualizations, Data Feeds (including Data Integrations, Query API, Webhooks, and Daily Export API), Universal Ads postbacks, Journeys targeting, Liveview and more.

Advanced

Attribution for logged out users on web

Branch uses a custom, in-house identifier for logged out users on web. If you enable the server to server integration from mParticle to Branch, you will not be able to attribute logged out web events to a campaign run with Branch. For this reason, you may want to track web events directly with the Branch web SDK, while still sending app events server to server from mParticle. Branch allows you to then toggle web event import off to prevent duplicate data.

Enabling Roku OTT Events

🚧

Prerequisite

You must complete the above set up steps
You must have OTHER events checked in the Branch Dashboard mParticle Integration

📘

Events Supported

OTT mParticle import will not give Branch OPEN events. (OPEN events coming soon)
Branch imports session_start events as a custom event.

Enabling the Connection in the mParticle Dashboard:

  1. Once the Branch S2S module has been configured, it can be selected as a destination via the mParticle connections UI (screenshot below).
  2. Select the Roku platform input and connect it to Branch without any transformations applied.
18861886
  1. Enter your Branch Key and Branch Secret in order to configure the Branch S2S integration.
10001000
Filters