WhatsApp Business API

The official channel for integration with WhatsApp. Zero setup fee, blocking protection, no need to keep your phone on.

Sign up for WhatsApp API now

Developer friendly API for integration with CRM, Bot, Data, etc

Official mailings and bots
Service mailings without the risk of being blocked.
‘Branded Messaging’ possible
Buttons in messages
Add interactive buttons to the message.
Rich Messaging (images, files, location, videos, links, etc)
Maximum delivery speed
Direct integration with WhatsApp IT infrastructure for instant message delivery.
100% messages delivered

Price

Monthly
$39/month
Quick Onboarding
Safe mass mailing *
*
Each conversation is charged according to
Chat API Conversations Pricing
Up to 100,000 messages / day
Caring support
No hidden fees
Free 1,000 conversations per month
choose this plan
Annual
$30/month
Quick Onboarding
Safe mass mailing *
*
Each conversation is charged according to
Chat API Conversations Pricing
Up to 100,000 messages / day
Caring support
No hidden fees
Free 1,000 conversations per month
choose this plan
Best price

Fast & automated self-service account activation

Send a template (initiate a dialog)

WhatsApp limits the content of text messages with which you can start a conversation with a customer or continue a conversation 24 hours after the customer's last message. This message must be a pre-approved template. There is a charge for sending the template, as it initiates the conversation. If the client responds to you, you can communicate with them for free for 24 hours from the time you receive the response. Read more.

$data = [
    'phone' => '79995253422', // Receivers phone
    'template' => 'template_name', // Template name
    'namespace' => 'namespace_of_template', // Namespace of template
    'language' =>  ['code' => 'en', 'policy' => 'deterministic'], // Language parameters
];
$json = json_encode($data); // Encode data to JSON
// URL for request POST /message
$token = '83763g87x';
$instanceId = '777';
$url = "https://api.chat-api.com/instance{$instanceId}/sendTemplate?token={$token}";
// Make a POST request
$options = stream_context_create(['http' => [
        'method'  => 'POST',
        'header'  => 'Content-type: application/json',
        'content' => $json
    ]
]);
// Send a request
$result = file_get_contents($url, false, $options);
var request = require('request'); //bash: npm install request
// URL for request POST /message
const token = '83763g87x';
const instanceId = '777';
const url = `https://api.chat-api.com/instance${instanceId}/sendTemplate?token=${token}`;
var data = {
    phone: '79995253422', // Receivers phone
    template: "template_name",
    namespace : "namespace_of_template",
    language: {
        code: "en",
        policy: "deterministic"}
};
// Send a request
request({
    url: url,
    method: "POST",
    json: data
});
// URL for request POST /message
const token = '83763g87x';
const instanceId = '777';
const url = `https://api.chat-api.com/instance${instanceId}/sendTemplate?token=${token}`;
let data = {
    phone: '79995253422', // Receivers phone
    template: "template_name",
    namespace : "namespace_of_template",
    language: {
        code: "en",
        policy: "deterministic"}
};
// Send a request
$.ajax(url, {
    data : JSON.stringify(data),
    contentType : 'application/json',
    type : 'POST'
});
curl \
-d '{"phone": "79995253422","template": "template_name", "namespace" : "namespace_of_template", "language": { "code": "en", "policy": "deterministic"}}' \ # Phone and template parameters
-H "Content-Type: application/json" \ # Headers
-X POST \ # Type = POST
"https://api.chat-api.com/sendTemplate?token=83763g87x" # URL for request POST /message

Send message

If the dialog was initiated by the client, you can reply with a normal message. This dialog is also paid, if you responded to the client. You can communicate with him for free for 24 hours from the moment of the answer. Read more about the Dialogue billing model.

$data = [
    'phone' => '79995253422', // Receivers phone
    'body' => 'Hello, Andrew!', // Message
];
$json = json_encode($data); // Encode data to JSON
// URL for request POST /message
$url = 'https://api.chat-api.com/message?token=83763g87x';
// Make a POST request
$options = stream_context_create(['http' => [
        'method'  => 'POST',
        'header'  => 'Content-type: application/json',
        'content' => $json
    ]
]);
// Send a request
$result = file_get_contents($url, false, $options);
var request = require('request'); //bash: npm install request
// URL for request POST /message
var url = 'https://api.chat-api.com/message?token=83763g87x';
var data = {
    phone: '79995253422', // Receivers phone
    body: 'Hello, Andrew!', // Сообщение
};
// Send a request
request({
    url: url,
    method: "POST",
    json: data
});
// URL for request POST /message
var url = 'https://api.chat-api.com/message?token=83763g87x';
var data = {
    phone: '79995253422', // Receivers phone
    body: 'Hello, Andrew!', // Message
};
// Send a request
$.ajax(url, {
    data : JSON.stringify(data),
    contentType : 'application/json',
    type : 'POST'
});
curl \
-d '{"phone": "79995253422","body": "Hello, Andrew!"}' \ # Phone and message
-H "Content-Type: application/json" \ # Headers
-X POST \ # Type = POST
"https://api.chat-api.com/message?token=83763g87x" # URL for request POST /message

Set a Webhook

Receive notifications about personal messages through incoming http requests to your server. This is the main function for creating a chatbot. All you have to do is change the token and the instance number.

// First of all - set a webhook to URL like http://your_website.com/my_webhook_url.php

// Parse a webhook data
$data = json_decode(file_get_contents('php://input'), true);
foreach($data['messages'] as $message){ // Echo every message
    // Handle every message here
    // Add to the database or generate a response
}
// First of all - set a webhook to URL like http://your_website.com/my_webhook_url

// Require Express JS и Body Parser for JSON POST acceptance
var app = require('express')();
var bodyParser = require('body-parser');
app.use(bodyParser.json());

// Handle POST request
app.post('/my_webhook_url', function (req, res) {
    var data = req.body; // New messages in the "body" variable
    for (var i = 0; i < data.messages.length; i++) { // For each message
        var message = data.messages[i];
        console.log(message.author + ': ' + message.body); //Send it to console
    }
    res.send('Ok'); //Response does not matter
});

app.listen(80);

Profile Management

You can view and edit your Whatsapp profile. However, if you want to change your display name, there are a few rules.

$data = [
    'address' => '79995253422', // Recipient's phone
    'description' => 'Best Company', // Message
    'email' => '', // Email of the organization
    'vertical' => '' // The industry
];
$json = json_encode($data); // Let's encode the data in JSON
// URL for POST request /message
$token = '8376213g87x';
$instanceId = '777';
$url = 'https://api.chat-api.com/instance'.$instanceId.'/me?token='.$token;
// Let's form the context of an ordinary POST request
$options = stream_context_create(['http' => [
    'method'  => 'POST',
    'header'  => 'Content-type: application/json',
    'content' => $json
]
]);
// Let's send a request
$result = file_get_contents($url, false, $options);

FAQ

What is WhatsApp Business API (WABA)?

To connect your business with customers in WhatsApp, you need an API gateway or interface that will mediate between your solution (CRM system, chat bot, chat platform, or something else) and messenger users. This interface is the official solution from Meta - WhatsApp Business API.
Learn more about the official WhatsApp Business API from Chat API in this article.

WhatsApp Business API benefits

- Free mailing of messages. Without the risk of being banned, without having to keep your phone on;
- Fast connection. No need to verify the business, start working with the number immediately;
- Up to 100,000 messages per day from one number;
- 1000 free conversations per month;
- Interactive buttons in messages for quick customer response;
- WhatsApp number as a business card of your company;
- A green check mark and the company name in the WhatsApp profile after agreeing with Meta.

Chat API provides the official WhatsApp Business API?

We have been successfully helping to establish communication with customers in WhatsApp since 2015, providing access to the functional API, chat bots, chat platforms.
Starting in 2020, we started connecting users to the WhatsApp Business API through the official Meta partner WhatsApp API 360Dialog. Our solution is one of the most affordable and functional in operation. Try it and evaluate for yourself.

How to connect?
Chat API connects to WhatsApp Business API through the official Meta provider. The connection takes place instantly with the help of a new approach to registration with deferred verification.

After registration, you can immediately start testing the operation of the number and configure integration, and the verification of the company, the approval of the display name and coordination with the Meta policy runs parallel to active access to the API.

Connection procedure:

Detailed instructions for connecting the number are provided in this article. Below is the general procedure and approach to registering a WABA number.

- Create a new WABA project in the Chat API personal account;
- Fill out the registration form;
- Link the card and subscribe;
- Generate an API KEY. Specify the API KEY in your personal account Chat API;
- At this stage, you will already be able to work with the number, send and receive messages, but with some restrictions. To expand the number's capabilities, you need to verify your business. More about verification in this article;
- Enjoy the work of the official WhatsApp Business API.

How long does it take to connect?

With the help of a new approach to registration (through registration with deferred verification), you get access to the WhatsApp Business API almost instantly.Registration takes no more than 5 minutes.

What numbers will work for the WhatsApp Business API?

Any numbers are suitable for working with the WhatsApp Business API, as long as they are at the same time:

1 - Had the opportunity to receive messages\ calls for verification;

2 - Have not been blocked in WhatsApp.

You can also use a landline number, but you need IP telephony to work with it. If you have an IVR system installed, then you need to disable it when going through the number verification procedure.

If the number is already connected to the WhatsApp Business API through another API provider, then such a number can also be transferred to the Chat API using the number migration procedure.

You can learn more about the features of choosing a number for WhatsApp Business API in this article.

Important! A number connected to the WhatsApp Business API cannot function in WhatsApp applications. Before you start connecting the number, you need to delete your WhatsApp account. Read more here.

Can a non-legal entity connect a WhatsApp Business API number?

Facebook Business Manager is a tool for working with businesses, so to get an FBID (the necessary parameter for connecting WABA), you need to have a legal entity or the status of an individual entrepreneur. You must be an organization and have documents that will confirm this, everything else depends on the forms of legal organization in your country.

How do I get a green check mark in WhatsApp?

The provision of a green mark and the status of an “Official Business Partner” is determined by Meta itself and sets the following criteria:

- Verification in Facebook Business Manager;
- Access to WhatsApp Business API and compliance with Meta policies;
- Two-factor authentication in Facebook Business Manager;
- The second and higher level of trust in the WABA number;
- A well-known and recognizable brand.

Tips, instructions and pitfalls are described in detail in this article. We help all our clients to get a green check mark for free.

How much does it cost to connect WhatsApp Business API?

The cost of working with the WABA number is divided into two segments:

1 - monthly payment for hosting the number - 39$ per month or 30$ if the subscription is issued for a year.

2 - payment for open dialogues with the client, more about this here.

Every month you start with 1000 free dialogues.

We wrote more about price formation and payment procedure in this article.

Cancellation of subscription. The reserve month rule.

Pay attention to, perhaps not the fairest, but mandatory rule of mutual settlements, which is declared by the API provider. For simplicity, we called this rule "Reserve Month".

If you decide to abandon the WhatsApp Business API and delete the number, the payment procedure will be as follows:
- Firstly, the funds for the month in which the number was deleted will be debited in full, even if you delete the number in the first days of the month.
- Secondly, for the month following the month in which the number was deleted, money will also be debited, as for a fully working WhatsApp Business API period.

We also believe that this is not entirely fair, now this procedure is being discussed and, we hope, it may be changed soon, we will definitely notify you about it.

If you cancel your subscription or there are not enough funds on the card, the number is blocked until the circumstances are clarified.

Message Templates

These are the Meta-approved form and content of messages that are used to open a dialogue with the client. Read more about it in this article

Dialog “Window” in 24 hours

This is a time interval that begins from the moment of initiation of communication and ends 24 hours after the first delivered client message in the dialog. All messages inside the 24-hour window are free and free from the use of templates.

WhatsApp Business App and WhatsApp Business API

These concepts are often confused. WhatsApp Business App is a business application that has advanced functionality for working with the WhatsApp application itself. WhatsApp Business API is an interface or gateway that will allow you to automate and optimize communication with users using bots or operators connected to WhatsApp via CRM systems or other platforms.

Display name

These is the user or company name displayed on WhatsApp. Read more about this in this article.

Registration with deferred verification

A new approach to customer registration at WABA. Characterized by the fact that you immediately get an active number. Read more about this in this article.

What our customers say

Trusted by thousands of developers

Ribhu Omni-channel for hotels

Good UI and self serviceable (can create an instance from scratch and pay from my card and get running with WhatsApp. No need to email anyone and all the steps are automated. This is great!)

Gonzalo Chatbot developer

It’s good. The API works fast, whatsapp’s messages arrive in seconds.

João Ignácio Software Architect and Development Manager

My consensus is that the service is great, always on the air and the support meets whenever we need it. Something very good is that several of my requests for both problems and improvements have been taken into account and implemented where possible.

Jeff Internet Technology University

It is good and stable! There could be more opportunities for collaboration. Currently it is one-side API, but it has potential for more.

Price and sign up

Monthly cost from $30/month for a WhatsApp account.
From 5 numbers the price will be lower. If you connect more numbers, individual conditions can be agreed upon.
The price includes technical support, first 1000 dialogues per month and all the features of the official API.

Get official WhatsApp Business API