Mapp Engage can be connected to your tracking setup to send user-specific data in real time.
This enables you to enrich customer profiles with behavioral or preference-based information and to trigger automated actions directly in Engage.
Typical use cases include:
Sending dynamic user attributes to Mapp Engage – for example, preferences or behaviors such as “Size Finder used” – to improve segmentation and targeting.
Triggering a Custom Web Event when a user interacts with a specific feature (e.g., a virtual fitting room), which can start an automation workflow in Engage.
Note
To use this functionality, User Matching with Mapp Engage must be enabled.
Details on setup and supported methods can be found in the Engage User Matching section below.
Method | Description | Data Type |
|---|---|---|
constructor | Initializes the Engage data object. | – |
setAttributes | Sends user-specific data to Mapp Engage, which can be stored as Custom Profile Attributes. These attributes can be created and managed directly in Engage. | {[key: string]: string} |
addAttributes | Adds additional user attributes to be transmitted to Mapp Engage. Works like setAttributes, but allows appending values to an existing set. | {[key: string]: string} |
setEventName | Defines the name of the Engage Custom Web Event (e.g. “Size Finder Used”). This event can trigger automations in the Engage Whiteboard. | string |
setEventId | Alternative to eventName. Refers to the numeric Engage Custom Web Event ID as defined in Engage. Typically used in advanced setups. | number |
construct
setAttributes
addAttributes
setEventName
setEventId
$engageData = new MappIntelligenceEngage();
$engageData
->setAttributes(array('engage.attribute.fittingToolUsed' => "true"))
->setEventName("Virtual Fitting Room Used")
->setEventId(12345);
$mappIntelligence = MappIntelligence::getInstance();
$mappIntelligence->track((new MappIntelligenceDataMap())->engage($engageData));User Matching
This feature extends the Mapp Engage integration by enabling direct user matching between Mapp Intelligence and Engage.
It allows you to identify or register users in Engage by transmitting their email address and related contact attributes.
Use this functionality only if the Mapp Engage integration is enabled — it cannot be used standalone.
Typical use cases include:
Registering new contacts in Engage when users sign up or subscribe on your website.
Updating existing Engage contacts with information such as name, gender, or opt-in status.
Associating website activity in Intelligence with known Engage users for automation and segmentation.
Method | Description | Where to analyze |
|---|---|---|
constructor | Initializes a new registration object for user matching with Engage. | – |
setEmail | Email address used to identify the user in Mapp Engage. | Mapp Engage |
setGroupId | Provides the group ID for a new registration in Engage. | Mapp Engage |
setMode | Defines the registration type used in Engage. Determines how new contacts are added to a group:
| Mapp Engage |
setFirstName | First name of the contact in Engage. | Mapp Engage |
setLastName | Last name of the contact in Engage. | Mapp Engage |
setGender | Gender of the contact (u: undisclosed, f: female, m: male). | Mapp Engage |
setTitle | Contact’s title (e.g., Mr., Ms.). | Mapp Engage |
setOptIn | Indicates whether the user has given consent (true: consent, false: no consent). Only when set to true will data be sent to Engage. | Mapp Engage |
construct
$registrationData = new MappIntelligenceRegistration();setEmail
/**
* @param string $e The Email address used to identify the user in Mapp Engage.
*
* @return $this
*/
$registrationData->setEmail($e);setGroupId
/**
* @param string $g Provide the group ID in case of a new registration for the user in Mapp Engage.
*
* @return $this
*/
$registrationData->setGroupId($g);setMode
/**
* @param string $m Provide the registration method used to register for marketing activities.
*
* @return $this
*/
$registrationData->setMode($m);setFirstName
/**
* @param string $f First name of the user to be used in Mapp Engage.
*
* @return $this
*/
$registrationData->setFirstName($f);setLastName
/**
* @param string $l Last name of the user to be used in Mapp Engage.
*
* @return $this
*/
$registrationData->setLastName($l);setGender
/**
* @param string $g Gender of the user.
*
* @return $this
*/
$registrationData->setGender($g);setTitle
/**
* @param string $t The title of the user to be used in Mapp Engage.
*
* @return $this
*/
$registrationData->setTitle($t);setOptIn
/**
* @param bool $o Provide information that the user consented to use their data.
*
* @return $this
*/
$registrationData->setOptIn($o);$registrationData = new MappIntelligenceRegistration();
$registrationData
->setEmail('john@doe.com')
->setGroupId('abc123')
->setMode('c')
->setFirstName('John')
->setLastName('Doe')
->setGender('m')
->setTitle('Professor')
->setOptIn(true);
$mappIntelligence = MappIntelligence::getInstance();
$mappIntelligence->track((new MappIntelligenceDataMap())->registration($registrationData));