You can receive incoming messages on your webhook, enabling real-time integration with your systems.

Note: this is not for message delivery status — the webhook is triggered only for incoming messages.

🛠️ How to Create a Webhook

To set up a webhook in Zixflow:

  1. Navigate to the Zixflow application.
  2. Go to the Settings section.
  3. Open the Developer section.
  4. Click on Webhook.
  5. Click on the ➕ Add button.
Below is a list of available events, including their structure and example payloads.

1. incoming.whatsapp.message

Triggered whenever a new WhatsApp message is received in your Zixflow account.

{
  "event": "incoming.whatsapp.message",                  // Event Type
  "eventId": "3472dff5-7c06-40e6-be06-a28a335ac263",     // UUID v4 - Event id to uniquilly identify event
  "timestamp": 1744346001738,                            // Message At 13 digit timestamp
  "phoneId": "xxxxxxxxxxxxxx79",                         // Meta Phone ID
  "wabaId": "xxxxxxxxxxxx266",                           // Meta WABA ID
  "messageId": "wamid.xxxxxxxxxxxxxxxx",                 // Meta messsage id
  "sender": {
    "name": "John Doe",                                  // End user name
    "number": "919999999999"                             // End user phone number with country code
  },
  "message": {
    // When Text Message Receives
    "type": "text",
    "text": {
      "body": "Hi"
    }

    // When Emoji Message Recieves
    "type": "text",
    "text":{
      "body": "😁😁"
    }

    // When Image Message Recieves
    "type": "image",
    "image":{
      "caption": "",                                     // Optional - image caption if there is any
      "mime_type": "image/xxxx",                         // Image Mime type
      "link": "https:://",                               // Image URL
      "name": "sample-image.png",                        // Image Name
      "size": 192699                                     // image size in bytes
    }

    // When Video Message Recieves
    "type": "video",
    "video":{
      "caption": "",                                     // Optional - video caption if there is any
      "mime_type": "video/xxxx",                         // Video Mime type
      "link": "https:://",                               // Video URL
      "name": "sample-video.mp4",                        // Video Name
      "size": 192699                                     // Video size in bytes
    }

    // When Audio Message Recieves
    "type": "audio",
    "video":{
      "caption": "",                                     // Optional - audio caption if there is any
      "mime_type": "audio/xxxx",                         // Audio Mime type
      "link": "https:://",                               // Audio URL
      "name": "sample-audio.mp3",                        // Audio Name
      "size": 192699                                     // Audio size in bytes
    },

    // When Document Message Recieves
    "type": "document",
    "video":{
      "caption": "",                                     // Optional - Document caption if there is any
      "mime_type": "xxxxx/xxxx",                         // Document Mime type
      "link": "https:://",                               // Document URL
      "name": "sample-document.pdf",                     // Document Name
      "size": 192699                                     // Document size in bytes
    },

    // When Location Message Recieves
    "type": "location",
    "location":{
      "address": "Cecilia Chapman, Mankato Mississippi",  // Optional - Address
      "latitude": 71.224418791205,                        // Location Latitude
      "longitude": 72.080068686951,                       // Location Longitude
      "name": "Cecilia Chapman",                          // Location Name
      "url": "https://"                                   // Location URL
    },

    // When Contact Message Recieves
    "type": "contacts",
    "contacts":[                                        // Its array, user can share multiple contacts
      {
        "name":{
          "first_name": "Customer",                     // Conatct First Name
          "last_name": "Care",                          // Conatct Last Name
          "formatted_name": "Customer Care"             // Formated Name
        },
        "phones":[
          {
            "phone": "+91 121",                         // Share phone number
            "type": "MOBILE"                            // Phone number type
          }
        ]
      }
    ],

    // * When User Click On Reply Button Message
    "type": "button",
    "button":{
      "text": "FAQs"                                    // Button Text
    },


    // When User Respond to Flow Form In Whatsapp
    "type": "interactive",
    "interactive":{
      "type": "nfm_reply",
      "nfm_reply":{
        "response_json": "{"screen_1_source_0":"0","screen_0_firstName_0":"text","screen_0_lastName_1":"Kaha","screen_0_email_2":"testb@gmail.com"}",  // User flow form response
        "body": "Sent",
        "name": "flow"
      }
    },

    // When user add product in crate generte order from whatsapp
    "type": "order",
    "order": {
      "catalog_id": "7079831418799929",                // Product Catalog Id
      "text": "",
      "product_items":[
        {
          "product_retailer_id": "2lc203LtsY",         // Selected product ID
          "quantity": 1,                               // Product quantity
          "item_price": 9876,                          // Product Unit Price
          "currency": "USD"                            // Product Currency
        }
      ]
    }
  },
  "metaData": {
    "accountId": "xxxxxxxxxxxxxb8de24d95b59",             // Zixflow Account Id
    "orgMsgId": "xxxxxxxxxxxx67f3cbd6b9d1"                // Zixflow Org Message Id
  }
}