Close mobile menu
HomeProgrammable SMSProgrammable VoiceText To SpeechVerifyConversationsBetaNumbersBetaLookupMMSHLRReportingBetaBalanceContactsGroups

WhatsApp Business API overview

Customers want to connect with businesses in the same way they chat with their friends and family: with fast, simple, and convenient messaging. The WhatsApp Business solution makes this possible by allowing companies to support, alert and notify their customers via WhatsApp.

The WhatsApp Business API can be used to provide customer support, send notifications and alerts (receipts, account updates, gate changes, confirmations, etc.), automate responses for frequently asked questions, send one-time passwords (OTP), track tickets and enrich customer data, and more.

Channel architecture

WhatsApp’s architecture differs from other messaging channels significantly because instead of directly exposing a public REST API, WhatsApp for Business requires deploying a WhatsApp API Client.

WhatsAppArchitecture

The WhatsApp API Client:

  • Is similar to the WhatsApp application that runs on smartphones; yet, it’s headless and runs in the cloud along with its media storage and database.
  • Connects to the WhatsApp server using their proprietary ChatP protocol and exposes a REST API and webhooks to both send and receive messages.
  • Enables end-to-end encryption, media storage, and permanent connection to the WhatsApp network.
  • Is provided by WhatsApp as a Docker image and to be functional requires a MySQL database and storage volume.
WhatsAppArchitecture2

Currently, the WhatsApp API Client components are updated every 45 days by WhatsApp and require an upgrade every 90 days. Don't worry, the MessageBird API automatically adapts to accommodate changes in the WhatsApp API client which shields your software from breaking.

WhatsApp API Client hosting

The WhatsApp API client and MessageBird are both client hosts for the WhatsApp Business API. Our hosting includes:

  • Multiconnect setup: Allows message delivery performance of up to 250 messages per second with burst traffic of up to 1000 messages per second.
  • Daily backups
  • 24h monitoring
  • High availability deployment
  • Rapid upgrade cycle: Quick follow of all WhatsApp updates - without any code changes needed from you.
Notification icon

Request early access to the MessageBird WhatsApp Business Solution. If you already have access, go to our getting started step-by-step guide.

Accounts

Access

Each business account accessing the WhatsApp Business API must apply to WhatsApp for approval before gaining access. Fill out this form to start your application process.

Business Profile

Your Business Profile allows you to display key business information that will be visible to your WhatsApp contacts. Head over to Channels in your MessageBird Dashboard to configure your:

  • Profile picture
  • Business address
  • Business description
  • Email address
  • Business industry
  • Business website
  • Status
BusinessProfile

Capabilities

WhatsApp supports a wide variety of capabilities as seen in the channel capabilities grid:

Capabilities

Message status events

Delivery events allow you to track deliveries of Smooch messages to WhatsApp by subscribing to the

message:delivery:channel
webhook. Smooch also tracks user deliveries on WhatsApp which let you confirm whether a message has reached the user by listening to the
message:delivery:user
webhook. Failures to deliver a message to WhatsApp or to a WhatsApp user can be detected by subscribing to the
message:delivery:failure
webhook.

The WhatsApp message IDs associated with each Smooch message are available in delivery event payloads in the

externalMessages
property.

MessageBird:

  • Pending: The message is being processed by MessageBird's services.
  • Sent: The message has been sent from MessageBird's services to WhatsApp's Business API Client and is currently being processed by WhatsApp.
  • Delivered: WhatsApp has delivered the message to the user's smart phone.
  • Read: The user has read the message on the WhatsApp, either on their smart phone or web browser.
  • Rejected: The message could not be sent because of a problem with the provided parameters. For example, the recipient number of the message is not registered to a WhatsApp account.
  • Failed: We attempted to send the message but it failed to deliver to the user during WhatsApp's processing. The most common example of a failed message is invalid Message Template parameters or trying to send a freeform (text or media) message outside of the 24h support window.

WhatsApp Message Templates

We have a full Quickstart about WhatsApp Message Templates.

Formatting

WhatsApp allows you to set some basic formatting in messages. You can use the formatting symbols:

Formatting

Questions?

We’re always happy to help with code or other questions you might have! Check out our API Reference, Developer tutorials or contact support.

Cookie Settings