Adding a TMID to Messages
    • 1 Minute to read
    • Dark
      Light

    Adding a TMID to Messages

    • Dark
      Light

    Article summary

    Goal​

    To enable individual tracking of message delivery and engagement, add a unique Transactional Message ID (TMID) to every message in a group.

    Background Information​

    A TMID is a unique identifier assigned to each transactional message. It allows precise tracking to verify if a contact received and opened a message. This is especially useful when tracking interactions across systems.

    • TMIDs are generated using a pattern defined in the group settings.

    • The pattern must generate a unique ID for every message. Otherwise, you cannot track the messages individually.

    • TMID data can be exported using Raw Data Export for use in external systems.

    • This procedure is not required if you send transactional messages via the Mapp Engage API and your external system has already assigned unique IDs. For details, see: Send Transactional Messages (API).

    Procedure

    1. In the main navigation, click Audience > ​Group Management> Groups.

    2. Open the selected group and navigate to the Sendout Options tab.

    3. Expand the ​Transactional Messages section.

    4. From the ​Transactional Mode​ drop-down, choose the desired setting:

      • On: Mapp Engage generates a TMID based on your defined pattern. It overwrites any external IDs.

      • Optional: Allows you to use external TMIDs if provided. If no TMID is included in the sendout, Mapp Engage automatically generates one based on the defined pattern.

    5. In the Pattern for the TMID field, enter a pattern that creates a unique ID for each message. To include attributes, click Personalisation.

    6. Click Save.

    Note: If a transactional message is sent to a contact who is not already in the group, Mapp Engage automatically adds the contact to the group.

    Example Pattern

    This expression creates a TMID using the user ID, message ID, and a UTC timestamp:

    =<%${user['PK']}%>m=<%${message['PK']}%>t=<%${ecx:formatDate(ecm:addInterval(date.today, '-0d'),'yyyy-MM-dd\'T\'HH:mm:ss.SSS\'Z\'', ecm:timeZone('UTC'),'', false)}%>
    • u=<%${user['PK']}%>

      • Adds the user’s primary key (user ID) to the TMID.

    • m=<%${message['PK']}%>

      • Adds the message’s primary key (message ID) to the TMID.

    • t=<%${ecx:formatDate(...)%>

      • Appends a timestamp in UTC format:

        • date.today sets the current date.

        • ecm:addInterval(..., '-0d') keeps the date unchanged but is available for modification if needed.

        • 'yyyy-MM-dd\'T\'HH:mm:ss.SSS\'Z\'' formats the timestamp in ISO 8601.

        • ecm:timeZone('UTC') ensures the time is recorded in Coordinated Universal Time.

    This combination guarantees that each TMID is unique for every user-message pair and sendout time.


    Was this article helpful?


    ESC

    AI Assistant, facilitating knowledge discovery through conversational intelligence