After sending messages using the Chat App Message Service API, you can receive status updates and user replies through either the Simple Message Queue (SMQ) consumption mode or the HTTP batch push mode.
Usage notes
Network exceptions or response timeouts can cause duplicate receipt pushes or retrieval failures.
Message receipt modes
You can receive message receipts through the SMQ consumption mode or the HTTP batch push mode. Choose the mode that best suits your needs.
The idempotence of message receipts cannot be guaranteed. We recommend that you take appropriate measures to ensure the accuracy and consistency of your data after receiving a message receipt.
SMQ consumption mode
The SMQ consumption mode uses a queue in SMQ to receive message receipts for a specific region. All service messages can be sent externally through SMQ. When you enable SMQ and subscribe to a specific message type in the Chat App Message Service console, the system automatically creates a dedicated message queue and name for that type. You can then use an SDK to retrieve message status reports from the queue with the corresponding queue name and message type.
HTTP batch push mode
The HTTP batch push mode sends data to a specified web URL through an HTTP POST request. After you set an HTTP callback URL in the Chat App Message Service console, the system pushes service messages, such as Mobile Originated (MO) messages or Mobile Terminated (MT) delivery receipts, to your specified URL.
Message receipt types
After selecting a receipt mode, subscribe to the specific types of receipts you want to receive. The available types correspond to specific events, such as message delivery or a user reply.
Type | Description | SMQ consumption mode | HTTP batch push mode |
ChatAppInbound (MO message receipt) | An MO message is a message sent from an end user to your business number. By subscribing to ChatAppInbound, you can retrieve the content of these user messages. | ||
ChatAppStatus (MT message receipt) | The counterpart to an MO message is an MT message, which is a message sent to a user. By subscribing to ChatAppStatus, you can track the delivery status of each message. | ||
ChatAppAudit (Template review status) | It notifies you of a template's review status after you call the |
Configure a message receipt mode
MT and MO message receipts
To receive message receipts, first enable receipts in the Chat App Message Service console.
Log on to the Chat App Message Service console.
In the navigation pane on the left, choose Channel Management. Then, click a channel ID or Manage in the Actions column.

On the channel's Data Panel page, click the feature in the navigation tree that corresponds to your channel type:
WhatsApp channel: Choose .

Viber channel: Choose .

Messenger channel: Choose .

Instagram channel: Choose .

Configure the messages you want to subscribe to.
After your page, account, or service ID is connected, click Configure Webhook and select the messages you want to subscribe to.
NoteStatus Report Callback URL: For ChatAppStatus (MT message receipt).
MO Message Callback URL: For ChatAppInbound (MO message).
Enable HTTP Protocol and enter the callback URLs. For example:
NoteWe recommend using distinct URL paths for each message type. This simplifies message differentiation. Avoid pointing all message types to a single URL that requires parsing the message body.
In the Status Report Callback URL field, enter a callback URL. For example, https://xxxx.com/appstatus.
In the MO Message Callback URL field, enter a callback URL. For example, https://xxxx.com/inbound.
Enable Message Queue Monitoring and click OK.
Click Configure Webhook again. In the dialog box that appears, you can copy the names of the Message Receipt Queue and MO Message Queue.

Template review status
Only WhatsApp channels support configuring template review status messages.
Log on to the Chat App Message Service console.
In the navigation pane on the left, choose Channel Management. Then, click a channel ID or Manage in the Actions column.

On the channel's Data Panel page, choose .

Enable HTTP Protocol.
Notification Callback URL: Enter the callback URL. Example: https://xxxx.com/appaudit
Enable Message Queue Monitoring and click OK.
Click Channel Webhook Settings again. In the dialog box that appears, you can copy the Notification Queue name.

Download the SMQ SDK
You can download the SMQ Java SDK to pull SMQ messages.
Download Link: SMQ Java SDK