{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition","partial","tabs","tab"]},"type":"markdown"},"seo":{"title":"WhatsApp Messaging","description":"Complete developer documentation for the eCommunicate Omnichannel platform. WhatsApp Cloud, WhatsApp Lite, SMS, Live Chat, and Conversations APIs. Send messages, manage templates, configure webhooks, and build customer engagement at scale.","siteUrl":"https://docs.ecommunicate.co.za","keywords":["eCommunicate API","WhatsApp Business API","SMS API","omnichannel messaging","WhatsApp templates","messaging platform","South Africa messaging API"],"llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"whatsapp-messaging","__idx":0},"children":["WhatsApp Messaging"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Send WhatsApp messages through two channels — ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["WhatsApp Cloud"]}," (Meta Cloud API) and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["WhatsApp Lite"]}," (direct connection). This guide covers message types, template components, media, and SMS fallback."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Addressing a recipient — phone or BSUID"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Every customer has a durable, business-scoped user id (",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["BSUID"]},", alpha usernames — e.g. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ZA.1021033720668862"]},") that stays stable for your business even if the customer changes their phone number. Address a recipient by phone (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["to"]},"), by BSUID (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customerUserId"]},"), or both — supply at least one. When both are present, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["to"]}," takes precedence and the BSUID rides along as a durable fallback. ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["The phone number remains the primary identifier today"]}," — store the BSUID now and rely on it as phone numbers become optional."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Each entry in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["recipients"]}," accepts:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Field"},"children":["Field"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["to"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Recipient phone number in international format, country code first, leading ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["+"]}," optional (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["+27821234567"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["27821234567"]},"). Must ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["not"]}," start with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["0"]},". Required unless ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customerUserId"]}," is supplied"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customerUserId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Recipient ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["BSUID"]}," (e.g. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ZA.1021033720668862"]},"), durable across phone-number changes. Supply alongside ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["to"]}," (phone wins, BSUID kept as a fallback) or on its own to address a recipient with no phone. A malformed value is ignored, so a BSUID-only send then requires a valid ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["to"]},". Required unless ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["to"]}," is supplied"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ctId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Client-defined tracking id, echoed back in delivery receipts and webhooks"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["gstId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["eCommunicate system tracking id for end-to-end delivery tracking"]}]}]}]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Authentication Required"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All API requests require your Developer Key in the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Authorization"]}," header. No ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Bearer"]}," prefix — pass the key directly."," ","See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/authentication"},"children":["Authentication"]}," for setup and security best practices."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"endpoints","__idx":1},"children":["Endpoints"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Method"},"children":["Method"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Endpoint"},"children":["Endpoint"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/whatsapp-api-service/v2/messages"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Unified endpoint — routes to WhatsApp or SMS based on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["channel"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/whatsapp-api-service/v2/channels/whatsapp"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["WhatsApp-only endpoint"]}]}]}]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Messages sent here don't appear in Live Chat"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Both endpoints above deliver directly to the customer through the API Service — they do ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["not"]}," flow through the chat service, so they will not show up on agent screens or in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Message/getMessagesByParticipantId"]}," responses."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If an outbound message must be visible to your live-chat agents, send it through ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /pl4chat-service/Message/sendMessageWhatsapp"]}," (or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/sendMessageWithAttachment"]},") instead. See the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/live-chat"},"children":["Live Chat guide"]}," for the request shape, and ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/getting-started#how-the-system-fits-together"},"children":["How the system fits together"]}," for the full architecture."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"message-types","__idx":2},"children":["Message types"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Value"},"children":["Value"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"When to use"},"children":["When to use"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Notification"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["NOTIFICATION"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Outbound template messages — requires approved ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["templateName"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["templateId"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Chat"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CHAT"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Free-form session messages within a conversation"]}]}]}]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Session window"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["WhatsApp Cloud:"]}," Chat messages can only be sent within the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["24-hour customer service window"]}," (starts when the customer messages you)."," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["WhatsApp Lite:"]}," Chat messages can be sent ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["at any time"]}," — no window restrictions."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"template-messaging-rules","__idx":3},"children":["Template messaging rules"]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Five mandatory rules"},"children":[{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["templateName"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["templateId"]}," are ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["required"]}," for all ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["NOTIFICATION"]}," messages"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If the template body contains ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{{n}}"]}," placeholders, include a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["body"]}," component with matching parameters"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Media templates require a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["header"]}," component with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["format"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["url"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Button templates require a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["button"]}," component with parameters"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Carousel templates require a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["carousel"]}," component with a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cards"]}," array"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"message-examples","__idx":4},"children":["Message examples"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"text-template","__idx":5},"children":["Text template"]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Unified Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/messages\n\n{\n  \"channel\": \"WHATSAPP\",\n  \"payload\": {\n    \"sender\": \"+27123456789\",\n    \"templateName\": \"seasonal_promo_text\",\n    \"templateId\": \"your-template-uuid\",\n    \"messageType\": \"NOTIFICATION\",\n    \"messages\": [\n      {\n        \"recipients\": [{ \"to\": \"+27987654321\", \"customerUserId\": \"ZA.1021033720668862\" }],\n        \"components\": [\n          {\n            \"type\": \"body\",\n            \"parameters\": [\"John\"]\n          }\n        ]\n      }\n    ]\n  }\n}\n","lang":"json"},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"WhatsApp Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/channels/whatsapp\n\n{\n  \"sender\": \"+27123456789\",\n  \"templateName\": \"seasonal_promo_text\",\n  \"templateId\": \"your-template-uuid\",\n  \"messageType\": \"NOTIFICATION\",\n  \"messages\": [\n    {\n      \"recipients\": [{ \"to\": \"+27987654321\" }],\n      \"components\": [\n        {\n          \"type\": \"body\",\n          \"parameters\": [\"John\"]\n        }\n      ]\n    }\n  ]\n}\n","lang":"json"},"children":[]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["parameters"]}," array maps to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{{1}}"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{{2}}"]},", etc. in the template body."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"media-template","__idx":6},"children":["Media template"]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Unified Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/messages\n\n{\n  \"channel\": \"WHATSAPP\",\n  \"payload\": {\n    \"sender\": \"+27123456789\",\n    \"templateName\": \"invoice_delivery\",\n    \"templateId\": \"your-template-uuid\",\n    \"messageType\": \"NOTIFICATION\",\n    \"messages\": [\n      {\n        \"recipients\": [{ \"to\": \"+27987654321\" }],\n        \"components\": [\n          {\n            \"type\": \"header\",\n            \"format\": \"DOCUMENT\",\n            \"url\": \"https://example.com/invoice.pdf\",\n            \"filename\": \"invoice_jan.pdf\"\n          },\n          {\n            \"type\": \"body\",\n            \"parameters\": [\"John\", \"January\"]\n          }\n        ]\n      }\n    ],\n    \"fallback\": {\n      \"sendFallback\": true,\n      \"unicode\": false\n    }\n  }\n}\n","lang":"json"},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"WhatsApp Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/channels/whatsapp\n\n{\n  \"sender\": \"+27123456789\",\n  \"templateName\": \"invoice_delivery\",\n  \"templateId\": \"your-template-uuid\",\n  \"messageType\": \"NOTIFICATION\",\n  \"messages\": [\n    {\n      \"recipients\": [{ \"to\": \"+27987654321\" }],\n      \"components\": [\n        {\n          \"type\": \"header\",\n          \"format\": \"DOCUMENT\",\n          \"url\": \"https://example.com/invoice.pdf\",\n          \"filename\": \"invoice_jan.pdf\"\n        },\n        {\n          \"type\": \"body\",\n          \"parameters\": [\"John\", \"January\"]\n        }\n      ]\n    }\n  ],\n  \"fallback\": {\n    \"sendFallback\": true,\n    \"unicode\": false\n  }\n}\n","lang":"json"},"children":[]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Supported header formats:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DOCUMENT"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["IMAGE"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["VIDEO"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"call-to-action","__idx":7},"children":["Call to action"]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Unified Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/messages\n\n{\n  \"channel\": \"WHATSAPP\",\n  \"payload\": {\n    \"sender\": \"+27123456789\",\n    \"templateName\": \"feedback_cta\",\n    \"templateId\": \"your-template-uuid\",\n    \"messageType\": \"NOTIFICATION\",\n    \"messages\": [\n      {\n        \"recipients\": [{ \"to\": \"+27987654321\" }],\n        \"components\": [\n          {\n            \"type\": \"body\",\n            \"parameters\": [\"John\"]\n          },\n          {\n            \"type\": \"button\",\n            \"parameters\": [\"Yes\", \"No\"],\n            \"conversationParameters\": [\n              { \"payload\": \"Yes\", \"conversationState\": \"start\" },\n              { \"payload\": \"No\", \"conversationState\": \"end\" }\n            ]\n          }\n        ]\n      }\n    ]\n  }\n}\n","lang":"json"},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"WhatsApp Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/channels/whatsapp\n\n{\n  \"sender\": \"+27123456789\",\n  \"templateName\": \"feedback_cta\",\n  \"templateId\": \"your-template-uuid\",\n  \"messageType\": \"NOTIFICATION\",\n  \"messages\": [\n    {\n      \"recipients\": [{ \"to\": \"+27987654321\" }],\n      \"components\": [\n        {\n          \"type\": \"body\",\n          \"parameters\": [\"John\"]\n        },\n        {\n          \"type\": \"button\",\n          \"parameters\": [\"Yes\", \"No\"],\n          \"conversationParameters\": [\n            { \"payload\": \"Yes\", \"conversationState\": \"start\" },\n            { \"payload\": \"No\", \"conversationState\": \"end\" }\n          ]\n        }\n      ]\n    }\n  ]\n}\n","lang":"json"},"children":[]}]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["conversationState: \"start\""]}," — keeps the conversation open for follow-up"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["conversationState: \"end\""]}," — closes the conversation when this button is tapped"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"carousel","__idx":8},"children":["Carousel"]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Unified Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/messages\n\n{\n  \"channel\": \"WHATSAPP\",\n  \"payload\": {\n    \"sender\": \"+27123456789\",\n    \"templateName\": \"product_carousel_v1\",\n    \"templateId\": \"your-template-uuid\",\n    \"messageType\": \"NOTIFICATION\",\n    \"messages\": [\n      {\n        \"recipients\": [{ \"to\": \"+27987654321\" }],\n        \"components\": [\n          {\n            \"type\": \"body\",\n            \"parameters\": [\"John\"]\n          },\n          {\n            \"type\": \"carousel\",\n            \"cards\": [\n              {\n                \"components\": [\n                  { \"type\": \"header\", \"format\": \"IMAGE\", \"url\": \"https://example.com/product1.jpg\" },\n                  { \"type\": \"body\", \"parameters\": [\"Widget A\", \"$19.99\"] },\n                  { \"type\": \"button\", \"parameters\": [\"https://example.com/widget-a\"] }\n                ]\n              },\n              {\n                \"components\": [\n                  { \"type\": \"header\", \"format\": \"IMAGE\", \"url\": \"https://example.com/product2.jpg\" },\n                  { \"type\": \"body\", \"parameters\": [\"Widget B\", \"$29.99\"] },\n                  { \"type\": \"button\", \"parameters\": [\"https://example.com/widget-b\"] }\n                ]\n              }\n            ]\n          }\n        ]\n      }\n    ]\n  }\n}\n","lang":"json"},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"WhatsApp Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/channels/whatsapp\n\n{\n  \"sender\": \"+27123456789\",\n  \"templateName\": \"product_carousel_v1\",\n  \"templateId\": \"your-template-uuid\",\n  \"messageType\": \"NOTIFICATION\",\n  \"messages\": [\n    {\n      \"recipients\": [{ \"to\": \"+27987654321\" }],\n      \"components\": [\n        {\n          \"type\": \"body\",\n          \"parameters\": [\"John\"]\n        },\n        {\n          \"type\": \"carousel\",\n          \"cards\": [\n            {\n              \"components\": [\n                { \"type\": \"header\", \"format\": \"IMAGE\", \"url\": \"https://example.com/product1.jpg\" },\n                { \"type\": \"body\", \"parameters\": [\"Widget A\", \"$19.99\"] },\n                { \"type\": \"button\", \"parameters\": [\"https://example.com/widget-a\"] }\n              ]\n            },\n            {\n              \"components\": [\n                { \"type\": \"header\", \"format\": \"IMAGE\", \"url\": \"https://example.com/product2.jpg\" },\n                { \"type\": \"body\", \"parameters\": [\"Widget B\", \"$29.99\"] },\n                { \"type\": \"button\", \"parameters\": [\"https://example.com/widget-b\"] }\n              ]\n            }\n          ]\n        }\n      ]\n    }\n  ]\n}\n","lang":"json"},"children":[]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Each card can have its own header, body parameters, and button — allowing rich product showcases."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"chat-message","__idx":9},"children":["Chat message"]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Unified Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/messages\n\n{\n  \"channel\": \"WHATSAPP\",\n  \"payload\": {\n    \"sender\": \"+27123456789\",\n    \"messageType\": \"CHAT\",\n    \"messages\": [\n      {\n        \"recipients\": [{ \"to\": \"+27987654321\" }],\n        \"messageText\": \"Hello, this is a standard session message.\"\n      }\n    ]\n  }\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["With media attachment:"]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/messages\n\n{\n  \"channel\": \"WHATSAPP\",\n  \"payload\": {\n    \"sender\": \"+27123456789\",\n    \"messageType\": \"CHAT\",\n    \"messages\": [\n      {\n        \"recipients\": [{ \"to\": \"+27987654321\" }],\n        \"messageText\": \"Here is the document you requested.\",\n        \"media\": {\n          \"url\": \"https://example.com/document.pdf\",\n          \"caption\": \"Monthly Report\"\n        }\n      }\n    ]\n  }\n}\n","lang":"json"},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"WhatsApp Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/channels/whatsapp\n\n{\n  \"sender\": \"+27123456789\",\n  \"messageType\": \"CHAT\",\n  \"messages\": [\n    {\n      \"recipients\": [{ \"to\": \"+27987654321\" }],\n      \"messageText\": \"Hello, this is a standard session message.\"\n    }\n  ]\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["With media attachment:"]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/channels/whatsapp\n\n{\n  \"sender\": \"+27123456789\",\n  \"messageType\": \"CHAT\",\n  \"messages\": [\n    {\n      \"recipients\": [{ \"to\": \"+27987654321\" }],\n      \"messageText\": \"Here is the document you requested.\",\n      \"media\": {\n        \"url\": \"https://example.com/document.pdf\",\n        \"caption\": \"Monthly Report\"\n      }\n    }\n  ]\n}\n","lang":"json"},"children":[]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"sms-fallback","__idx":10},"children":["SMS fallback"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Automatically send an SMS when the WhatsApp recipient cannot be reached. Add the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fallback"]}," object to any WhatsApp message. There are two modes:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Auto fallback"]}," — uses the resolved WhatsApp template text as the SMS body"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Manual fallback"]}," — overrides with your own custom SMS text"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"auto-fallback","__idx":11},"children":["Auto fallback"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The system converts your WhatsApp template text into the SMS body automatically:"]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Unified Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/messages\n\n{\n  \"channel\": \"WHATSAPP\",\n  \"payload\": {\n    \"sender\": \"+27123456789\",\n    \"templateName\": \"seasonal_promo_text\",\n    \"templateId\": \"your-template-uuid\",\n    \"messageType\": \"NOTIFICATION\",\n    \"messages\": [\n      {\n        \"recipients\": [{ \"to\": \"+27987654321\" }],\n        \"components\": [\n          {\n            \"type\": \"body\",\n            \"parameters\": [\"John\"]\n          }\n        ]\n      }\n    ],\n    \"fallback\": {\n      \"sendFallback\": true,\n      \"unicode\": false\n    }\n  }\n}\n","lang":"json"},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"WhatsApp Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/channels/whatsapp\n\n{\n  \"sender\": \"+27123456789\",\n  \"templateName\": \"seasonal_promo_text\",\n  \"templateId\": \"your-template-uuid\",\n  \"messageType\": \"NOTIFICATION\",\n  \"messages\": [\n    {\n      \"recipients\": [{ \"to\": \"+27987654321\" }],\n      \"components\": [\n        {\n          \"type\": \"body\",\n          \"parameters\": [\"John\"]\n        }\n      ]\n    }\n  ],\n  \"fallback\": {\n    \"sendFallback\": true,\n    \"unicode\": false\n  }\n}\n","lang":"json"},"children":[]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"manual-fallback","__idx":12},"children":["Manual fallback"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Override the SMS text with a custom message using the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["text"]}," field:"]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Unified Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/messages\n\n{\n  \"channel\": \"WHATSAPP\",\n  \"payload\": {\n    \"sender\": \"+27123456789\",\n    \"templateName\": \"seasonal_promo_text\",\n    \"templateId\": \"your-template-uuid\",\n    \"messageType\": \"NOTIFICATION\",\n    \"messages\": [\n      {\n        \"recipients\": [{ \"to\": \"+27987654321\" }],\n        \"components\": [\n          {\n            \"type\": \"body\",\n            \"parameters\": [\"John\"]\n          }\n        ]\n      }\n    ],\n    \"fallback\": {\n      \"sendFallback\": true,\n      \"text\": \"Hi John, your order is ready. Check the app for details.\",\n      \"unicode\": true\n    }\n  }\n}\n","lang":"json"},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"WhatsApp Endpoint","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"POST /whatsapp-api-service/v2/channels/whatsapp\n\n{\n  \"sender\": \"+27123456789\",\n  \"templateName\": \"seasonal_promo_text\",\n  \"templateId\": \"your-template-uuid\",\n  \"messageType\": \"NOTIFICATION\",\n  \"messages\": [\n    {\n      \"recipients\": [{ \"to\": \"+27987654321\" }],\n      \"components\": [\n        {\n          \"type\": \"body\",\n          \"parameters\": [\"John\"]\n        }\n      ]\n    }\n  ],\n  \"fallback\": {\n    \"sendFallback\": true,\n    \"text\": \"Hi John, your order is ready. Check the app for details.\",\n    \"unicode\": true\n  }\n}\n","lang":"json"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"fallback-fields","__idx":13},"children":["Fallback fields"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Field"},"children":["Field"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sendFallback"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required."]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]}," to enable SMS fallback"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["text"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Custom SMS text. If omitted (auto mode), the resolved WhatsApp template text is used"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unicode"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]}," = GSM 7-bit (160 chars/part), ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]}," = Unicode (70 chars/part)"]}]}]}]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"When does fallback trigger?"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["SMS fallback activates when the recipient's number is ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["not registered on WhatsApp"]},". It does not trigger for messages that fail after being accepted by WhatsApp (e.g., template rejection, rate limits)."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"template-components-reference","__idx":14},"children":["Template components reference"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Component"},"children":["Component"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required when"},"children":["Required when"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Example"},"children":["Example"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["body"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Text parameters ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["[\"val1\", \"val2\"]"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Template has ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{{n}}"]}," placeholders"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{\"type\": \"body\", \"parameters\": [\"John\"]}"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["header"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Media with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["format"]}," + ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["url"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Template has a media header"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{\"type\": \"header\", \"format\": \"IMAGE\", \"url\": \"...\"}"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["button"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Button parameters"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Template has dynamic buttons"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{\"type\": \"button\", \"parameters\": [\"Yes\"]}"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["carousel"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Array of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cards"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Template is a carousel"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{\"type\": \"carousel\", \"cards\": [...]}"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"response","__idx":15},"children":["Response"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All messaging endpoints return ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["202 Accepted"]}," on success:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"response\": \"Request Accepted for Processing\",\n  \"batchId\": \"batch-uuid\",\n  \"reqObject\": { \"...\" : \"...\" }\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Track delivery"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["202"]}," means the message is queued — not yet delivered. Use ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/webhooks"},"children":["Webhooks"]}," or the Message Reports API to track the full delivery lifecycle: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ACCEPTED"]}," > ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SENT"]}," > ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELIVERED"]}," > ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["READ"]},"."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"production-tips","__idx":16},"children":["Production tips"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Always set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ctId"]}]}," on recipients for end-to-end message tracking through your system"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validate recipient identifiers"]}," — a phone number in international format (leading ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["+"]}," optional, never a leading ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["0"]},"), a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customerUserId"]}," (BSUID), or both. A recipient addressed by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customerUserId"]}," alone needs no phone number."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Use SMS fallback"]}," for critical notifications where delivery matters more than channel"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Batch recipients"]}," into a single API call (up to the batch limit) rather than making individual calls"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Monitor delivery rates"]}," via the Analytics API and investigate any drop in delivery percentages"]}]}]},"headings":[{"value":"WhatsApp Messaging","id":"whatsapp-messaging","depth":1},{"value":"Endpoints","id":"endpoints","depth":2},{"value":"Message types","id":"message-types","depth":2},{"value":"Template messaging rules","id":"template-messaging-rules","depth":2},{"value":"Message examples","id":"message-examples","depth":2},{"value":"Text template","id":"text-template","depth":3},{"value":"Media template","id":"media-template","depth":3},{"value":"Call to action","id":"call-to-action","depth":3},{"value":"Carousel","id":"carousel","depth":3},{"value":"Chat message","id":"chat-message","depth":3},{"value":"SMS fallback","id":"sms-fallback","depth":2},{"value":"Auto fallback","id":"auto-fallback","depth":3},{"value":"Manual fallback","id":"manual-fallback","depth":3},{"value":"Fallback fields","id":"fallback-fields","depth":3},{"value":"Template components reference","id":"template-components-reference","depth":2},{"value":"Response","id":"response","depth":2},{"value":"Production tips","id":"production-tips","depth":2}],"frontmatter":{"title":"WhatsApp Messaging","description":"Send WhatsApp templates, session messages, media, and configure SMS fallback via the eCommunicate API.","seo":{"title":"WhatsApp Messaging"}},"lastModified":"2026-07-16T09:46:36.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/guides/whatsapp-messaging","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}