User tracking in Mapp Intelligence enables you to identify visitors based on unique customer information rather than relying solely on cookies. This ensures consistent user recognition — even when cookies are deleted, browsers are switched, or users access your website from different devices.
Note on Data Privacy
Always transmit personal information in encrypted or hashed form.
Mapp recommends using SHA256 or MD5 hashing to ensure compliance with data-protection standards.
User data can be sent to Mapp Intelligence after a successful login, registration, or purchase.
Each user is identified through a Customer ID and can optionally be enriched with User Categories for segmentation and analysis.
Customer ID
The Customer ID serves as a unique identifier for a user.
It can be:
a customer number from your CRM or shop system, or
the user’s email address.
Note
If an email address is used, it must be encrypted or hashed before transmission to comply with data-protection requirements. Mapp recommends using SHA256 or MD5 hashing to ensure that the email address cannot be read directly.
If a plain (unhashed) email address is sent, the library automatically converts it to a SHA256 hash before storing it as the Customer ID.
User Categories
User Categories capture additional attributes about a user — for example, loyalty level, subscription type, or login source. They allow you to enrich user profiles with contextual or behavioral data for deeper segmentation and analysis.
They must also be configured in Mapp Q3 before tracking. Find more information here.
When implementing, include the ID number and the value as a string.
Method | Description | Where to configure * | Where to analyze |
|---|---|---|---|
constructor | Initializes a user object and defines the unique Customer ID. | – | Visitors > User Relationship Management > Custom Visitor ID |
setId | Sets the Customer ID — a unique identifier from your CRM, shop system, or hashed email address. | – | Visitors > User Relationship Management > Custom Visitor ID |
setCustomIdentifier | Defines a secondary unique identifier for the user (optional). | – | Visitors > User Relationship Management > Custom Visitor ID |
setEmailRID | Transmits the user’s email receiver ID for linking marketing communications with behavior data. | – | Visitors > User Relationship Management > [Name of User Category] |
setEmailOptin | Tracks whether the user has granted email permission (opt-in status). | – | Visitors > User Relationship Management > [Name of User Category] |
setGender | Tracks the user’s gender (1 = male, 2 = female). | – | Visitors > User Relationship Management > [Name of User Category] |
setValidation | Enables validation for overwriting existing user category values. | – | Visitors > User Relationship Management > [Name of User Category] |
setCategory | Adds or updates a User Category to describe additional user attributes. User Categories must be created beforehand in Mapp Intelligence. | UC > New Category | Visitors > User Categories > [Name of Category] |
* Configuration Path Abbreviations:
UC = Mapp Q3 > Configuration > Categorization > URM Categories > …
constructor
/**
* MappIntelligenceCustomer constructor.
* @param string $id
*/
$customerData = new MappIntelligenceCustomer($id);setId
/**
* @param string $id
* @return $this
*/
$customerData->setId($id);setEmailRID
/**
* @param string $emailRID
* @return $this
*/
$customerData->setEmailRID($emailRID);setEmailOptin
/**
* @param bool $emailOptin
* @return $this
*/
$customerData->setEmailOptin($emailOptin);setGender
/**
* @param int $gender
* @return $this
*/
$customerData->setGender($gender);setValidation
/**
* @param bool $validation
* @return $this
*/
$customerData->setValidation($validation);setCategory
/**
* @param int $id
* @param string $value
* @return $this
*/
$customerData->setCategory($id, $value);$customerData = new MappIntelligenceCustomer();
$customerData
->setId('user5684798169')
->setEmailRID('')
->setEmailOptin(true)
->setGender(1)
->setValidation(true)
->setCategory(5, 'login');
$mappIntelligence = MappIntelligence::getInstance();
$mappIntelligence->track((new MappIntelligenceDataMap())->customer($customerData));