WhatsApp Business Step by Step Onboarding

Whatsapp counts more than 2 billion monthly active users in over 180 countries. WhatsApp offers simple, secure, reliable messaging and calling, available on phones all over the world. This means that you can take advantage of Whatsapp’s popularity to send effective, highly converting campaigns directly from our API using your account balance. This API is a new way for businesses to better manage such conversations with their customers and also reach new customers who will also value the fast, convenient and private messaging experience. WhatsApp provides businesses with a powerful set of opportunities for personalization. For example, you can send personalized welcome messages, special offers, birthday congratulations, and so on. Consumers today engage only with personalized marketing messages. Remember, WhatsApp supports sending and receiving a variety of media: text, photos, videos, documents, and location. Some of your most personal moments are shared with WhatsApp, which is why end-to-end encryption is built into the app. Communicate anywhere in the world without barriers.

This API helps you create and configure delivery of notification messages to your customers globally in real time. The main advantage of our API is its simplicity of implementation, easy and simple way to use!

WhatsApp Business step by step onboarding

This step-by-step quickstart will lead you through the WhatsApp Business onboarding process.

In order to use the Whatsapp Business API, you must first request an activation. We’ll qualify your application and send it to WhatsApp for approval. A representative will get back to you as soon as possible to give you all the necessary information about the activation process.

📘

NOTE

WhatsApp takes approximately 2 weeks to approve a WhatsApp Business Account.

Contact your account manager to give you all the necessary information about the activation process.

Step 1: Facebook Business Manager ID

During the flow, you’ll be asked for your Facebook Business Manager ID. If you don’t already have a Facebook Business account assigned yet, our support team will provide it.

Step 2: WhatsApp Business Account ID (WABA)

During the flow, you’ll be asked for your WhatsApp Business Account ID. If you don’t already have a WABA assigned yet, our support team will provide it.

📘

NOTE

The WABA Id field is optional.

Therefore, a business looking to send messages through the WhatsApp Business API must have the following assets configured:

AssetDescription
Facebook Business ManagerBusiness Manager is a Facebook tool that helps you organize and manage your business. Through your account, you have the ability to create message templates for sending notifications to customers at scale.
WhatsApp Account phone numberPhone number of a WhatsApp account to be used from now on as a Business Account. Or WABA id if you already had one.
Line of CreditTo secure a payment method, you must set up and attach a line of credit to your WhatsApp business account. You can set up multiple lines of credit per Business Manager account, but each legal entity can request only one line of credit.

Once the account is approved, the support team will provide you with a provider id and the WABA Id. The provider Id helps you to create a Sender.

The next step before sending WhatsApp notification messages is creating a Sender.

Creating Sender

Once you have requested the Facebook Business Manager ID, and the approval of the account is successful, our support team will provide you the WhatsApp Business Account ID (WABA) and the unique identifier (Id) of the provider "providerId".

The provider Id will allow you to create a Sender to be able to send messages. When creating a Sender, WhatsApp requires verifying each value of the request body parameters. Therefore, when executing the call, the value of the "state" parameter located in the response body will be "PENDING_IMPLEMENTATION". Once the account is approved, its status will change to "ACTIVE".

When you create a Sender, the request body contains the following data:

HTTP Request : POST /whatsapp/senders

{
  "providerId": "cTHXRWagvUiGmeoz",
  "name": "Eli Pack",
  "address": "1000000001",
  "accountTier": 1,
  "dailyQuota": 1000
}

The parameters presented in the request body example when creating the Sender are the following:

Parameter Required Description
providerId Yes Unique identifier of the provider. The support team provides this Id once the account has been approved.
name Yes

Account name.

Recommended to enter the name of the organization.

address Yes

Phone number of the sender.

Phone number provided during the WABA account setup will be used as the sender of the notification message.

accountTier Yes

Determines how many unique users your business can send messages to on a daily basis divided by levels.

  • 1: Allows your business to send messages to 1000 unique customers in a rolling 24-hour period.
  • 2: Allows your business to send messages to 10K unique customers in a rolling 24-hour period.
  • 3: Allows your business to send messages to 100K unique customers in a rolling 24-hour period.
  • 4: Allows your business to send messages to unlimited unique customers in a rolling 24-hour period.

Starting level is 1. For more information about Messaging Limits go to Capacity, Quality Rating, and Messaging Limits section.

dailyQuota No

Determines how many unique users your business can send messages to on a daily basis divided by levels.

  • 1: Allows your business to send messages to 1000 unique customers in a rolling 24-hour period.
  • 2: Allows your business to send messages to 10K unique customers in a rolling 24-hour period.
  • 3: Allows your business to send messages to 100K unique customers in a rolling 24-hour period.
  • 4: Allows your business to send messages to unlimited unique customers in a rolling 24-hour period.

Starting level is 1. For more information about Messaging Limits go to Capacity, Quality Rating, and Messaging Limits section.

When you create a Sender, the response body contains the following data:

{
  "meta": {
    "timestamp": 1645404587346,
    "transactionId": "39352a4"
  },
  "data": {
    "dailyQuota": 1000,
    "rateLimit": 15,
    "accountTier": 1,
    "id": "6212e1ab245",
    "providerId": "cTHXRWagvUiGmeoz",
    "name": "Eli Pack",
    "address": "1000000001",
    "state": "PENDING_IMPLEMENTATION",
    "created_date": "2022-02-21T00:49:47.3339065Z",
    "last_updated_date": "2022-02-21T00:49:47.3339065Z",
    "owner": "[email protected]",
    "operator": null
  }
}

The parameters presented in the response body example when creating the Sender are the following:

Parameter Description
data Data contained once the Sender has been created.
data.dailyQuota

Determines how many unique users your business can send messages to on a daily basis divided by levels.

  • 1: Allows your business to send messages to 1000 unique customers in a rolling 24-hour period.
  • 2: Allows your business to send messages to 10K unique customers in a rolling 24-hour period.
  • 3: Allows your business to send messages to 100K unique customers in a rolling 24-hour period.
  • 4: Allows your business to send messages to unlimited unique customers in a rolling 24-hour period.

Starting level is 1. For more information about Messaging Limits go to Capacity, Quality Rating, and Messaging Limits section.

data.rateLimit Maximum rate of delivery for this account in messages per second.
data.accountTier

Determines how many unique users your business can send messages to on a daily basis divided by levels.

  • 1: Allows your business to send messages to 1000 unique customers in a rolling 24-hour period.
  • 2: Allows your business to send messages to 10K unique customers in a rolling 24-hour period.
  • 3: Allows your business to send messages to 100K unique customers in a rolling 24-hour period.
  • 4: Allows your business to send messages to unlimited unique customers in a rolling 24-hour period.

Starting level is 1. For more information about Messaging Limits go to Capacity, Quality Rating, and Messaging Limits section.

data.id Unique identifier of the Sender.
data.providerId Unique identifier of the provider. The support team provides this Id once the account has been approved
data.name Account name.
data.address Phone number of the sender.
data.state

Determines how many unique users your business can send messages to on a daily basis divided by levels.

  • "PENDING_IMPLEMENTATION": WhatsApp requires verify each value of the request body parameters.
  • "ACTIVE": WhatsApp account has been approved.

An account is approved in ~48h.

data.created_date Date when Sender has been created.
data.last_update_date Date when the last update or status change.
data.owner Owner or creator of the Sender.
data.operator User who is a member of the owner or creator of Sender.

Once you have created a sender, the next step is creating and sending a Text Message Template or Media Message Template to your subscribers.

Getting Sender

You can get specific data from a Sender previously created.

To get the details of a Sender to verify if the Sender has been approved or not ("state"), to know the namespace identifier (Id) ("templateNamespace") in case you have created a message template, among other details, you need to provide the unique identifier of the Sender you want to retrieve the information.

🚧

WARNING

From the response body when getting the Sender information, if you created a message template (text or media) and the value of the parameter "templateNamespace" is null contact our support team.

HTTP Request : GET /whatsapp/senders/{id}

Required Parameter Description
id Unique identifier of the Sender.

WhatsApp Message Template

Once the approval of the account is successful. That is, the value of the "data.state" parameter is "ACTIVE" when you created a Sender, the next step is creating a Message Template.

A WhatsApp message template is a message format that you can use over and over again to message users once they have opted-in and given their consent to receive messages. That is, a message template is required to start a business-initiated conversation. These conversations can be customer care messages or appointment reminders, payment or shipping updates, alerts, and more.

In order to send messages using a template, it must be pre-approved by Whatsapp. WhatsApp reviews and approves each message template, typically in 48 hours or less, to maintain high-quality content and avoid spam. Once WhatsApp has approved the message template, our support team will provide you the namespace identifier (Id) of the Message Template "templateNamespace" in case you create the template via UI. If you create the template via WhatsApp Templates API, the response body will provide you the namespace identifier (Id).

Contact your account manager to request new templates.

📘

NOTE

Before requesting new templates message, we recommend you read the following information to learn how to set the requirements to create the Message Template:

  • Placeholders
  • Categories
  • Template Name

Message Templates are parameterized messages. They use placeholder values that can be replaced with dynamic content inside double curly braces ({{...}}) when a message is sent.

Example of a sent message using the following template:


  • Hi! {{NAME}}, your purchase code is {{CODE}}
  • Hi! Katerina, your purchase code is 242527

Think of your template message as a conversation starter; the goal is to convert this initial message into a two-way conversation when the user replies. Two-way conversations are considered higher value because you are engaging with your end-user. In addition, they reduce your spend because WhatsApp does not charge for outbound messages within a 24-hour session.

Your WhatsApp message template must fall into one of the following categories. Templates that do not align clearly with these template types are more likely to be rejected by WhatsApp in the approval process.


  • Appointment Update: Send confirmations, reminders, or other updates to customers about their appointments.

  • Auto Reply: Send auto-replies to customers when your business isn’t online or available to respond right away.

  • Alert Updates: Send important updates or news to customers.

  • Account Update: Let customers know about updates or changes to their accounts.

  • Issue Resolution: Respond to questions, concerns, or feedback from customers about your business.

  • Payment Update: Send a message to customers about their payment.

  • Shipping Update: Send shipping updates to customers about their orders.

  • Ticket Update: Send ticketing information or updates to customers.

  • Reservation Update: Send confirmations, reminders, or other updates to customers about their reservations.

  • Personal Finance Update: Send a message to customers about their personal finances.

  • Transportation Update: Send transportation information or updates to customers.

WhatsApp’s team uses the following information to approve or reject your message template.


  • Template name: Send confirmations, reminders, or other updates to customers about their appointments.

  • Template Category: Send auto-replies to customers when your business isn’t online or available to respond right away.

  • Language(s): When sending a text or media message template, you need to specify the language.

  • Body: The text of the message that you want to send. Up to 1024 characters.

All templates must be approved by WhatsApp before you can use them for messaging users.

There are three types of WhatsApp message notifications you can send to your subscribers through WhatsApp Business API:

The first step before sending a whatsapp message is creating the whatsapp message template.

📘

NOTE

Both message templates (Text & Media) can be created via UI or API.

Listing WhatsApp Templates

You can list all existing whatsapp message templates previously created from a specific WABA and/or Sender ID.

If you want to retrieve all message templates, you need to provide the the WhatsApp Business Account ID (WABA) or the unique identifier of the sender.

HTTP Request : GET /whatsapp/templates/

Required Parameter Description
wabaId

WhatsApp Business Account ID (WABA).

In case you don't have a WABA Id, our support team will provide it to you.

senderId Unique identifier of the Sender.