--- title: "Set Up a TMID for Transactional Messages" slug: "add-a-tmid-to-messages" description: "Set up a group in Mapp Engage so every transactional message gets a unique TMID, including the mode settings and an example pattern." status: "update" updated: 2026-11-06T16:01:02Z published: 2026-11-06T16:01:02Z canonical: "docs.mapp.com/add-a-tmid-to-messages" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.mapp.com/llms.txt > Use this file to discover all available pages before exploring further. # Set Up a TMID for Transactional Messages ## Goal Set up a group so that Mapp Engage adds a unique Transactional Message ID (TMID) to each message. With a TMID, you can track every message individually. For the concept and the TMID modes, see [Transactional Messages](/v1/docs/transactional-messages). You only need this setup if Mapp Engage creates the TMID. If your external system creates a unique TMID and sends it with the API call, leave **Transactional Message Mode** on **Off**. See [Sending Transactional Messages (API)](/v1/docs/send-transactional-messages-api). --- ## Procedure 1. Go to *Audience > Group Management > Groups*. 2. Open the group and click the **Sendout Options** tab. 3. Expand the **Transactional Messages** section. 4. From **Transactional Message Mode**, select one of the following: - **On**: Mapp Engage creates a TMID for every sendout in the group. A TMID sent with an API call is replaced. - **Optional**: Mapp Engage creates a TMID only for sendouts that do not have one. A TMID sent with an API call is kept. 5. In the **Pattern for the TMID** field, enter a pattern that creates a unique ID for each message. To insert attributes, click *Personalisation*. If the pattern does not create a unique ID, you cannot track the messages individually. 6. Click **Save**. ### Example Pattern The following pattern combines the contact ID, the message ID, and the current time in UTC: ```pgsql u=<%${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']}%>`: the contact ID - `m=<%${message['PK']}%>`: the message ID - `t=<%${ecx:formatDate(...)}%>`: the current date and time in UTC, in ISO 8601 format. `ecm:addInterval(date.today, '-0d')` keeps the current date. Change the interval if you need a different date. Because the TMID combines contact, message, and sendout time, it is unique for every sendout. ## Related - [Group Creation: Sendout Options](/sendout-options-tab.md)