# TikTok Instant Messaging Ads (Click to Chat)
___

WhatsApp  
People  
___

The integration between Infobip and TikTok empowers businesses to track user engagement and measure the effectiveness of Click-to-Chat campaigns. Currently available only for **WhatsApp**, this application allows you to gain insights into lower-funnel events and user interactions on the TikTok platform.
___

## Features

Track successful entry to WhatsApp chat  
Track users who clicked on a TikTok ad and opened a WhatsApp conversation successfully.

Lower-funnel conversions  
Identify if users performed a desired action after entering the WhatsApp chat, such as making a purchase or signing up for a service.

Track messages exchanged in a chatbot session (Coming soon)  
Gain insights into user engagement by tracking the number of messages exchanged during a session. This feature allows you to refine chatbot interactions and improve conversation flows.
___

## What you will need

Before you start using **TikTok Instant Messaging Ads (Click to Chat)** event tracking, ensure you meet the following prerequisites:

- **Infobip account**: If you do not have an account, you can [create one](https://www.infobip.com/signup).
- [TikTok Business Account](https://ads.tiktok.com/help/article/tiktok-business-account) **and permissions**: You need a TikTok user account with permission to connect their TikTok Business Account and Ad Account to the **TikTok Instant Messaging Ads (Click to Chat)** event tracking application.
- **Permissions**: Existing users must have an Infobip account with **Channel setup and integrations** permissions enabled. Contact your account manager or [Support](mailto:support@infobip.com) to learn more.
___

## Installation and configuration

To integrate **TikTok Instant Messaging Ads (Click to Chat)** with Infobip, follow these steps:

1. **Log in to Infobip**

   - Access your [Infobip account](https://portal.infobip.com/login) and navigate to **Exchange** > **App Marketplace**.

2. **Find TikTok Instant Messaging Ads (Click to Chat) event tracking app**

   - Search for **TikTok Instant Messaging Ads (Click to Chat)** and select it to open its page.
   - Select the **Add** button.

3. **Connect your account**

   - Select **Connect account** and then choose the **TikTok Business Account** you want to connect.

4. **Verify the connection**

   - Once the connection is successful, your TikTok Business Account will appear as connected in the **Exchange** app.

## Creating an event set

After connecting your ad accounts, you must create an event set for each WhatsApp phone number used in your click-to-WhatsApp ads.

To create an event set, follow the steps below:

1. **Select the Create event set button**

   - On the app's landing page, select **Create event set**.

2. **Pre-select or choose an ad account**

   - If you begin the event set creation from the **Accounts** tab, the ad account will be pre-selected.
   - If you start from the **Event sets** tab, select the desired ad account (if multiple accounts are connected to your Infobip account).

3. **Select the channel and the channel resource**

   - Choose the **channel** for the event set. Currently, only **WhatsApp** is available.
   - Select the **phone number** used for WhatsApp messaging.

4. **(Optional) Allow user data sharing**

   - If you want to share the user's phone number in a hashed format, enable the **Allow sharing user data** option.

Note  
Ensure you correctly associate the event set with the appropriate ad account and phone number to enable accurate event tracking.

After creating an event set, it will appear on the **Event sets** page.

To stop advertising on a specific phone number, select the **Disconnect** button next to the corresponding event set.

💡 **Coming soon**  
Once your ad account is connected and the required event sets are created, you are ready to configure your chatbot! 🤖
___

## Tracking events

After you connect your TikTok business account, the following features become available in the Infobip web interface:

**1. Conversions API**

- Use the Conversions API to submit lower-funnel events when a conversion occurs. You can trigger this API using the [Call API element](https://www.infobip.com/docs/answers/chatbot-elements/core-elements#api) in [Answers](https://www.infobip.com/docs/answers/).
- To enable access:
  - In the [web interface](https://portal.infobip.com/), go to **Developer Tools** > **API keys**.
  - Select the relevant API key.
  - Scroll to the **API Scopes** section.
  - In the search bar, enter: `saas:tiktok-ads:manage`.
  - Select the checkbox to enable access to **TikTok Ads**.

**2. Message tracking**

- Infobip automatically tracks outgoing and incoming messages. The number of messages exchanged between the chatbot and the user is visible in TikTok Ads reporting.

### Setting up lower-funnel events in Answers [#setting-up-lower-funnel-event-in-answers-tracking-events]

You can track lower-funnel events in Answers using our API request.

Use the following example to define the request payload:

```json
{
  "sourceId": "WhatsApp business phone number",
  "conversions": [
    {
      ...
    }
  ]
}
```

› View example API request for conversions item in object

```json
{
  "event": "CompletePayment",
  "event_time": 1684574395,
  "user": {
    "phone": "2f9d2b4df907e5c9a7b3434351b55700167b998a83dc479b825096486ffcf4ea"
  },
  "properties": {
    "quantity": "4",
    "price": "40",
    "currency": "BRL",
    "value": "160"
  }
}
```

#### Request details

To sent the API request successfully, make sure to do the following:
- Use the `POST` method.
- Set the URL to: `https://api.infobip.com/saas/tiktok-ads/1/conversions`
- Use `application/json` as the content type.
- Include the authorization header with your Infobip API key.

Note  
This step is mandatory. Contact your Infobip account manager for assistance during setup.

### Event priority and descriptions [#event-priority-and-descriptions-tracking-events]

| Priority | Event | Event type in Events Manager | Description | Business description | Event type | Recommended field in the `properties` object |
| --- | --- | --- | --- | --- | --- | --- |
| P0 | `Spam` | Spam | Block or report users as spam. | Spam signals improve ad delivery performance by providing the model with information to exclude spammy users in the future. | Custom | - |
| P0 | `SubmitForm` | Submit Form | Triggers when a user submits contact information, such as an email address or phone number. This often categorizes the user as a "contact" or "lead" in the CRM system. | Improves lead ad performance and enables form submissions as an optimization goal. | Standard | `content_type``quantity``description``content_id``price``currency``value` |
| P0 | `DisqualifiedConversation` | Disqualified Conversation | Triggers when a business disqualifies a user due to lack of interest or inability to contact them. | Excludes users with no purchase intent, improving ad delivery performance. | Custom | - |
| P0 | `PlaceAnOrder` | Place An Order | Triggers when a user places an order, typically before completing the final transaction. | Enhances lead ad performance and allows "Place and Order" to be used as an optimization goal. | Standard | `content_type``quantity``description``content_id``price``currency``value` |
| P0 | `CancelAnOrder` | Cancel An Order | Triggers when a user cancels an order before the transaction is completed. | Improves lead ad performance by excluding canceled orders. | Custom | `content_type``quantity``description``content_id``price``currency``value` |
| P0 | `CompletePayment` | Complete Payment | Triggers when a user completes a payment. TikTok recommends using this event when placing an order and making a payment occur simultaneously. | Enables "Complete Payment" as an optimization goal. | Standard | `content_type``quantity``description``content_id``price``currency``value` |
| P1 | `Schedule` | Schedule | Triggers when a user books an appointment with a business. | Allows appointment scheduling to be used as an optimization goal. | Custom | - |
| P1 | `PayDeposit` | Pay Deposit | Triggers when a user pays a deposit to book an appointment. | Enables "Pay Deposit" as an optimization goal. | Custom | `content_type``quantity``description``content_id``price``currency``value` |
| P1 | `CompleteAppointment` | Complete Appointment | Triggers when a user completes an appointment and makes the final payment. | Enables "Complete Appointment" as an optimization goal. | Custom | `content_type``quantity``description``content_id``price``currency``value` |
| P1 | `AddPaymentInfo` | Add Payment Info | Triggers when a user adds payment information during the checkout process. | Enables "Add Payment Info" as an optimization goal. | Standard | - |
___

## Setting up a TikTok ads campaign

To create a TikTok campaign, follow these steps:

1. Log in to [TikTok Ads Manager](https://ads.tiktok.com/).

2. Go to the **Campaign** tab and select **Create**.

3. Select **Lead generation** as the campaign objective, then **Continue**.

4. Choose **Instant messaging apps** as your **Optimization location** and select **WhatsApp**.

     - For more information on how optimization location works, refer to the [Optimization location](#optimization-location-appendix) section below.

5. Test your WhatsApp number using the **Check if ID opens properly** feature.

   - Scan the QR code using your phone. This feature works only for certain operating systems and you need to have WhatsApp installed on your phone.

   - If successful, a WhatsApp chat will open with a pre-filled message:

      > Hello! I came across your ad on TikTok and would like to find out more.

6. The **Dayparting** feature is enabled by default. This allows you to control the hours during which you can respond to messages.

7. Select your **Optimization goal**:

     - **Clicks**: Focuses on getting more users to **click** the messaging link.
     - **Conversations**: Focuses on getting users to **start a chat** after clicking. We recommend you use this option.

Note  
The **Conversations** option requires an **event set**. Ensure it is set up using [Events Manager](https://ads.tiktok.com/help/article/how-to-create-message-events-on-tiktok-events-manager) or a supported [Message Management Tool (MMT)](https://ads.tiktok.com/help/article/about-message-management-tools) before proceeding.

8. Once event sets are created, select the appropriate **Message event set** from the drop-down list. The event set is automatically generated in your MMT.

     - For unique event sets created after **November 7th**, with selected MMTs, the event set will be **automatically matched and populated** based on your **WhatsApp number**.
     - Your unique event set is created based on the pairing of your ad **account ID** and your **WhatsApp number**.

9. Fill in the ad details.

    - (Optional) Add a creative (video or image) from your **TikTok Business Account**. This requires selecting a corresponding account identity.
    - Add a caption with a soft call to action under the **Text** field. For example:

      > Message now if you're interested / to get in touch!

    - Since you are using WhatsApp, the **Destination** field is pre-filled.

10. Select **Publish all** to complete the campaigns setup.
___

## Monitoring TikTok ads performance

You can monitor campaign performance using **TikTok Ads Manager** and **TikTok Events Manager (TTEM)**.

### TikTok Ads Manager

View **Cost per result (Conversations)** in the reporting section.

Customize reporting using **Custom columns**:

- Select **Messaging event**.
- Choose **Conversations (Instant messaging app)**.

### TikTok Events Manager

Track **message events** such as **Conversations**.

#### Create a message event set

To create a **Message event set** in **TikTok Events Manager**, follow these steps:

1. Log in to [TikTok Ads Manager](https://ads.tiktok.com/).

2. Go to **Tools** > **Events** to enter **Events Manager**.

3. Under Data Sources, select **Connect data source**.

4. Choose **Messaging** as the data source.

5. Connect to an **MMT (Message Management Tool)** by selecting one from the MMTs listed or search for the one you want.

6. Follow the [integration steps](https://ads.tiktok.com/help/article/about-message-management-tools?aadvid=7311628455680983042) specific to the **selected MMT**.

7. Once connected, **TikTok Events Manager (TTEM)** displays the event set created.
___

## Appendix

### Optimization location [#optimization-location-appendix]

The optimization location determines where TikTok optimizes your ad delivery based on your chosen campaign objective. It helps TikTok's algorithm focus on showing your ads to users who are most likely to complete your desired action. In other words, optimization location is where TikTok expects the highest likelihood of conversions based on your campaign objective.

#### Optimization location availability

The available optimization locations depend on the goal of your campaign.

| Campaign objective | Optimization location | Description |
| --- | --- | --- |
| **Traffic** | Website, App | The ad is optimized for users most likely to click and visit a website or app. |
| **Lead generation** | Website, Instant form, TikTok direct messages, Instant messaging apps | The ad is optimized for users most likely to submit a lead form or start a chat. |
| **App promotion (Pre-registration)** | Website, TikTok Instant Page | The ad targets users who are most likely to pre-register for an app. |
| **Website conversions** | Website, TikTok Instant Page | The ad is optimized for users likely to complete a conversion action, such as a sign-up or purchase. |
| **Product sales (Catalog as source)** | Website, App | The ad is optimized for users likely to browse and purchase products from a catalog. |

Choosing the right **optimization location** ensures your ad is delivered to the right audience in the most relevant place.

For more key terms related to advertising on TikTok, refer to [TikTok's official advertising glossary](https://ads.tiktok.com/help/article/tiktok-ads-manager-glossary-terms?lang=en).

