Начало работы: информация для партнеров по решениям

В этом руководстве описаны действия, которые должны выполнить партнеры по решениям, чтобы предлагать облачный API своим клиентам. Предусмотрено 4 основных этапа:

  1. Подготовка и планирование.
  2. Настройка ресурсов.
  3. Подписание контрактов.
  4. Создание интеграции.

По завершении рекомендуем следить за ежемесячными обновлениями.

Подготовка и планирование

Ознакомьтесь с документацией

Перед началом работы рекомендуем ознакомиться с нашей документацией для разработчиков и подборкой Postman. Это поможет понять принципы работы облачного API, в том числе с чего начать и как перенести номера телефонов.

Запланируйте подключение и перенос

Вы должны использовать регистрацию на сайте поставщика, чтобы подключить новых клиентов к облачному API. Если вы ещё этого не сделали, интегрируйте и активируйте регистрацию на сайте поставщика. Регистрация на сайте поставщика — это самый быстрый и простой способ зарегистрировать клиентов, который позволит им начать отправку сообщений менее чем через 5 минут.

Затем подумайте, кого из клиентов вы хотите перенести в облачный API в первую очередь. Как правило, мы рекомендуем переносить всех клиентов из локального в облачный API, но потребности каждого из них могут быть разными. Решая, кого из клиентов перенести, задайте себе следующие вопросы:

ВопросДополнительный контекст

Поддерживает ли облачный API пропускную способность и объемы сообщений, которые имеются у моего клиента?

Для большинства компаний облачный API поддерживает совокупную пиковую пропускную способность 250 сообщений в секунду, в том числе текстовых и сообщений с медиафайлами, а также входящие и исходящие сообщения.

Отвечает ли облачный API потребностям моего клиента в области соответствия требованиям?

Облачный API соответствует требованиям Общего регламента по защите данных и имеет сертификат SOC 2. Серверы находятся в Северной Америке и Европе.

Поддерживает ли облачный API используемые моими клиентами функции?

Большинство важных функций поддерживаются. Полный список см. здесь.

Решив, кого именно необходимо перенести, вы можете разработать план и график переноса клиентов.

При создании такого плана запрограммируйте свою систему для использования двух сценариев: подключение новых клиентов и перенос уже имеющихся клиентов из локального API в облачный. В сценарий переноса добавьте создание резервной копии экземпляра своего текущего локального API и перенос этих номеров в облачный API.

Запланируйте общение с клиентами

В первую очередь вам необходимо решить, следует ли уведомлять уже имеющихся клиентов о переносе. Затем вам следует определить, нужно ли разрабатывать или обновлять документацию с информацией о настройке облачного API.

Подумайте о расценках

Поскольку стоимость размещения облачного API покрывает компания Meta, решите, необходимо ли вам обновлять свои расценки.

Настройка объектов

Чтобы использовать облачный API, партнерам по решениям необходимо иметь следующие объекты:

ОбъектСпециальные инструкции

Business Manager

Вы можете использовать уже существующий или настроить новый экземпляр. Сохраните ID Business Manager.

Аккаунт WhatsApp Business

Информацию см. в разделе Создание аккаунта WhatsApp Business для API WhatsApp Business.

Приложение Meta

Если у вас нет приложения, вам необходимо создать его с типом "Бизнес". Обязательно укажите отображаемое имя и контактный электронный адрес для своего приложения.


Если вы являетесь партнером по решениям, ваше приложение должно пройти проверку и запросить расширенный доступ к следующим разрешениям:

  • whatsapp_business_management — используется для управления номерами телефонов, шаблонами сообщений, регистрацией и профилем компании в аккаунте WhatsApp Business. Чтобы получить это разрешение, ваше приложение должно пройти проверку приложения.
  • whatsapp_business_messaging — используется для отправки или получения сообщений от пользователей WhatsApp, а также для загрузки или скачивания медиафайлов с аккаунтом WhatsApp Business. Чтобы получить это разрешение, ваше приложение должно пройти проверку.

См. пример отправки приложения на проверку.


Партнеры по решениям также могут свободно использовать одно и то же приложение Meta для разных клиентов и с разными аккаунтами WhatsApp Business. Однако имейте в виду, что каждое приложение может иметь только одну конечную точку Webhooks и каждое приложение должно пройти проверку.

Системный пользователь

См. информацию в разделе Добавление системных пользователей в Business Manager.


В настоящий момент приложение Meta с разрешениями whatsapp_business_messaging, whatsapp_business_management и business_messaging может использовать не более:

  • 1 системного пользователя с правами администратора и
  • 1 системного пользователя с правами сотрудника

Для развертывания в своей рабочей среде рекомендуем вам использовать системного пользователя с правами администратора. Дополнительные сведения см. в статье о ролях и разрешениях Business Manager.

Номер телефона компании

Это номер телефона, который компания будет использовать для отправки сообщений. Номера телефонов необходимо подтвердить с помощью SMS или аудиозвонка.


Для партнеров по решениям и прямых компаний: если вы хотите использовать свой собственный номер, добавьте его в WhatsApp Manager и подтвердите через Graph API с помощью конечной точки подтверждения.


Для компаний, которые пользуются услугами партнеров по решениям: если вы хотите использовать свой собственный номер, добавьте и подтвердите его с помощью регистрации, на сайте партнера по решениям.


Статус подтверждения номера телефона не влияет на процесс миграции между локальным и облачным API. Если у вас нет доступа к регистрации на сайте поставщика, чтобы подтвердить номера телефонов, рекомендуем подтвердить их с использованием локального решения, а затем перенести эти номера в облачный API.

Количество номеров телефонов компаний, которые можно подключить к облачному API, не ограничено.


На одной платформе может одновременно использоваться только один номер телефона: один номер для облачного API и другой номер для локального API. Это означает, что вы не можете использовать рабочий номер телефона одновременно с локальными и с облачными API. Рекомендуем для всех проверок использовать тестовый номер (будь то уже имеющийся или новый), а затем зарегистрировать свой личный номер телефона с облачным API, когда вы поймете, что готовы перейти к его рабочему использованию.

Номер телефона потребителя

Это номер телефона, который в настоящее время используется приложением WhatsApp для потребителей. На этот номер будут поступать сообщения, отправленные с вашего номера телефона компании.

Подписание контрактов

Принятие Пользовательского соглашения

Для доступа к облачному API для обмена сообщениями в WhatsApp Business вам необходимо сначала принять условия Пользовательского соглашения для платформы WhatsApp Business от имени вашей компании.

Чтобы сделать это, откройте WhatsApp Manager и примите условия пользовательского соглашения на информационном баннере.

Если вы являетесь действующим партнером по бета-тестированию, использующим облачный API, вам предоставляется 90-дневный льготный период. Это означает, что вам необходимо принять условия соглашения до 5 июля 2022 года, иначе доступ для вас будет закрыт.

Все новые компании, использующие облачный API (в том числе и те, которые переходят с локального API), должны принять условия Пользовательского соглашения до начала работы с облачным API. Пока вы не примете условия Пользовательского соглашения, вызовы для регистрации будут невозможны.

Вам как разработчику необходимо принять условия пользовательского соглашения. Клиенты партнеров по решениям не должны принимать эти условия.

Создание интеграции

Шаг 1. Получите маркер доступа системного пользователя

Вызовы API Graph используют маркеры доступа для аутентификации. Подробную информацию см. в разделе Маркеры доступа. Чтобы создать маркер, рекомендуем вам задействовать своего системного пользователя.

Для создания маркера доступа системного пользователя выполните следующие действия.

  1. Перейдите в раздел Business Manager > Настройки компании > Пользователи > Системные пользователи, чтобы просмотреть созданного вами системного пользователя.
  2. Щелкните этого пользователя и выберите Добавить объекты. После этого откроется новое окно.
  3. В разделе Выбрать тип объекта на панели слева выберите Приложения. В разделе Выбрать объекты выберите приложение Meta, которое хотите использовать (у вашего разрешения должны быть соответствующие разрешения). Активируйте Разработать приложение для этого приложения.
  4. Выберите Сохранить изменения, чтобы сохранить настройки и вернуться на главный экран системного пользователя.
  5. Теперь всё готово к созданию вашего маркера доступа. На главном экране системного пользователя нажмите Сгенерировать маркер и выберите свое приложение Meta. После выбора приложения отобразится список доступных разрешений. Выберите whatsapp_business_management и whatsapp_business_messaging. Нажмите Сгенерировать маркер.
  6. Откроется новое окно с указанием вашего системного пользователя, назначенного приложения и маркера доступа. Сохраните свой маркер.
  7. Дополнительно вы можете выбрать маркер и отобразить отладчик маркеров доступа. В отладчике вы должны увидеть два выбранные вами разрешения. Вы также можете скопировать и вставить свой маркер напрямую в отладчик маркеров доступа.

Шаг 2. Настройте Webhooks

После настройки Webhooks вы сможете в реальном времени получать уведомления HTTP от платформы WhatsApp Business. Это означает, что вы будете уведомлены, если, к примеру, получите сообщение от клиента или появятся какие-то изменения для вашего аккаунта WhatsApp Business.

Чтобы настроить Webhook, вам необходимо создать подключенный к Интернету веб-сервер, URL которого отвечает требованиям компании Meta и приложения WhatsApp. См. раздел Создание конечной точки, чтобы узнать, как это сделать. Если для тестирования вам понадобится конечная точка, вы можете создать тестовую конечную точку Webhooks.

Настройка приложения

Когда конечная точка будет готова, настройте ее для использования вашим приложением Meta.

На Панели приложений найдите продукт WhatsApp и нажмите Конфигурация. Найдите раздел Webhooks и нажмите Настроить Webhook. Откроется окно с запросом на ввод двух параметров:

  • URL обратного вызова: это URL, на который Meta будет отправлять события. Информацию о создании этого URL см. в руководстве по началу работы с Webhooks.
  • Маркер подтверждения: эта строка указывается вами при создании конечной точки Webhooks.

После добавления информации нажмите Подтвердить и сохранить.

Снова перейдите на Панель приложений и нажмите WhatsApp > Конфигурация на панели слева. В разделе Webhooks нажмите Настроить. Отобразится окно со всеми объектами, о которых можно получать уведомления. Чтобы получать сообщения от своих пользователей, нажмите Подписаться для сообщений.

Webhooks необходимо настраивать только один раз для каждого имеющегося у вас приложения. Вы можете использовать один и тот же объект Webhooks для получения нескольких типов событий из нескольких аккаунтов WhatsApp Business. Подробнее см. в разделе с информацией о Webhooks.

Для каждого приложения Meta может быть одновременно настроена только одна конечная точка. Если вам нужно отправлять обновления Webhooks на разные конечные точки, создайте несколько приложений Meta.

Шаг 3. Подпишитесь на свой аккаунт WhatsApp Business

Чтобы получать уведомления для соответствующего аккаунта, оформите подписку для своего приложения.

curl -X POST \
'https://graph.facebook.com/v19.0/WHATSAPP_BUSINESS_ACCOUNT_ID/subscribed_apps' \
-H 'Authorization: Bearer ACCESS_TOKEN'

Если вы получаете показанный ниже ответ, все события Webhooks для номеров телефонов в этом аккаунте будут отправляться на указанную вами конечную точку Webhooks.

{
  "success": true
}

Шаг 4. Получите ID номера телефона

Чтобы отправлять сообщения, вам необходимо зарегистрировать используемый номер телефона — это номер телефона компании, о котором говорилось в разделе Прежде чем начать.

Перед регистрацией необходимо узнать ID этого номера. Чтобы получить ID своего номера телефона, выполните следующий вызов API:

curl -X GET \
'https://graph.facebook.com/v19.0/WHATSAPP_BUSINESS_ACCOUNT_ID/phone_numbers' \
-H 'Authorization: Bearer ACCESS_TOKEN'

Если этот вызов выполнен успешно, он включает в себя все номера телефонов, связанных с вашим аккаунтом WhatsApp Business:

{
  "data": [
    {
      "verified_name": "Jasper's Market",
      "display_phone_number": "+1 631-555-5555",
      "id": "1906385232743451",
      "quality_rating": "GREEN"
    },
    {
      "verified_name": "Jasper's Ice Cream",
      "display_phone_number": "+1 631-555-5556",
      "id": "1913623884432103",
      "quality_rating": "NA"
    }
  ]
}

Сохраните ID для номера телефона, который хотите зарегистрировать. Дополнительную информацию об этой конечной точке см. в статье Получение номеров телефонов.

Исключения при переводе номера

Если вы переводите номер телефона из локального API в облачный, вам потребуется выполнить дополнительные шаги перед его регистрацией. Полный процесс см. в статье Перевод из локального API в облачный.

Шаг 5. Зарегистрируйте номер телефона

После получения ID номера телефона вы можете его зарегистрировать. Во время вызова API для регистрации вам необходимо одновременно выполнить две операции:

  1. Зарегистрируйте телефон.
  2. Включите двухшаговую проверку, установив 6-значный код регистрации — вы должны настроить этот код на своей стороне. Сохраните и запомните этот код: он может понадобиться позже.

Настройка двухфакторной аутентификации — обязательное требование для использования облачного API. Если его не выполнить, при подключении вы получите сообщение об ошибке:

Пример запроса:

curl -X POST \
'https://graph.facebook.com/v19.0/FROM_PHONE_NUMBER_ID/register' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"messaging_product": "whatsapp","pin": "6_DIGIT_PIN"}'

Пример ответа:

{
  "success": true
}

Пользователи с регистрацией на сайте поставщика

Номер телефона должен быть зарегистрирован в течение 14 дней после прохождения процесса встроенной регистрации на сайте поставщика. Если в течение этого периода времени номер не будет зарегистрирован, то перед регистрацией этого номера телефона для него необходимо будет снова выполнить процедуру встроенной регистрации на сайте поставщика.

Шаг 6. Получите сообщение из приложения потребителя

Как только участвующие клиенты отправят сообщение вашей компании, вы получите 24 часа бесплатного обмена сообщения с ними — это временное окно называется периодом обслуживания клиента. Для тестирования мы хотим активировать этот период, поэтому вы можете отправлять неограниченное количество сообщений.

Из личного приложения WhatsApp для iOS или Android отправьте сообщение на номер телефона, который вы только что зарегистрировали. После отправки сообщения вы должны получить входящее сообщение к вашему объекту Webhooks с уведомлением в следующем формате.

{
  "object": "whatsapp_business_account",
  "entry": [
    {
      "id": "WHATSAPP_BUSINESS_ACCOUNT_ID",
      "changes": [
        {
          "value": {
            "messaging_product": "whatsapp",
            "metadata": {
              "display_phone_number": "16315551234",
              "phone_number_id": "PHONE_NUMBER_ID"
            },
            "contacts": [
              {
                "profile": {
                  "name": "Kerry Fisher"
                },
                "wa_id": "16315555555"
              }
            ],
            "messages": [
              {
                "from": "16315555555",
                "id": "wamid.ABGGFlA5FpafAgo6tHcNmNjXmuSf",
                "timestamp": "1602139392",
                "text": {
                  "body": "Hello!"
                },
                "type": "text"
                }
            ]
          },
        "field": "messages"
        }
      ]
    }
  ]
}

Шаг 7. Отправьте тестовое сообщение

После активации периода обслуживания клиента вы сможете отправить тестовое сообщение на номер клиента, использованный вами в предыдущем шаге. Для этого выполните следующий вызов API:

curl -X  POST \
'https://graph.facebook.com/v19.0/FROM_PHONE_NUMBER_ID/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"messaging_product": "whatsapp", "to": "16315555555","text": {"body" : "hello world!"}}'

В случае успеха этого вызова вы получите ответ с ID сообщения. Используйте ID для отслеживания прогресса своих сообщений через Webhooks. Максимальная длина ID: 128 символов.

Пример ответа:

{
  "id":"wamid.gBGGFlaCGg0xcvAdgmZ9plHrf2Mh-o"
}

При использовании облачного API больше нет способа четко проверить, имеет ли тот или иной номер телефона ID WhatsApp. Чтобы отправить сообщение с использованием облачного API, просто отправьте его напрямую на номер телефона клиента — после того, как он согласился их принимать. Примеры см. в статье Справка, Сообщения.

Следите за ежемесячными обновлениями

Мы выпускаем обновления облачного API в первый вторник каждого месяца. Они содержат новые функции и улучшения. Вам не нужно специально задействовать эти новые возможности, поскольку облачный API обновляется автоматически.

Часто задаваемые вопросы

Общие часто задаваемые вопросы

WhatsApp develops and operates the WhatsApp Business API, which enables businesses to communicate with WhatsApp consumer users on the WhatsApp network. When using the Cloud API, Meta will host the WhatsApp Business API for you and provide an endpoint for the WhatsApp service for your incoming and outgoing WhatsApp communications.

No, there is no difference in messaging prices between the Cloud API and the On-Premises API. Access to Cloud API is free, and we expect it to generate additional cost savings for developers. The two types of cost savings for the Cloud API are 1) set up cost (including server or external cloud provider cost), 2) ongoing cost of maintenance (including engineering time for API upgrades).

A Solution Partner can select which setup a given client should use. We recommend that the majority of clients use the Cloud API for ease of implementation and maintenance. Solution Partners can also continue to maintain integration with the On-Premises API.

We want to make it clear what it means to message with a business on WhatsApp. Some businesses may choose to use Meta or another company to help them manage and store their messages. When a business chooses to manage their messages with another company, we will let consumers know by showing a different system message. Learn more.

We expect Cloud API to provide the same key features as the On-Premises API soon, including user change notifications and sticker pack management. Our goal is for the Cloud API to become the preferred platform for new features.

We will release updates monthly with new features and improvements. There is no work required to access these features - the Cloud API updates automatically.

Часто задаваемые вопросы о технической реализации

The Cloud API architecture significantly simplifies the Solution Partner's operational and infrastructure requirements to integrate with WhatsApp Business Platform. First, it removes the infrastructure requirements to run Business API docker containers (CAPEX savings). Second, it obviates the need of operational responsibilities to manage the deployment (OPEX savings). For details, refer to the architecture diagram comparing the On-Premises and Cloud API deployments.

Solution Partners and direct clients do not need the WebApp and CoreApp containers that are used in the On-Premises API. Meta will manage all database data and media data on behalf of the Solution Partner or direct client.

We will have disaster recovery and data replication across multiple regions. The expected downtime would be within our SLA and usually in the order of less than a minute to less than five minutes.

As your on-premises performance depends heavily on your hardware, software, and connectivity to WhatsApp servers, if you wish to understand these differences, you can perform your own load tests on Cloud API as you might have done for your own on-premises installation. You can also refer to our performance comparison to understand more details around how the on-premise and Cloud APIs compare.

Часто задаваемые вопросы о конфиденциальности и безопасности данных

Cloud API работает в дата-центрах Meta, если компания не выбрала использование Cloud API Local Storage. У Meta есть дата-центры в Северной Америке и ЕС.

Хранящиеся сообщения шифруются. Они автоматически удаляются через 30 дней.

Подобно всем другим партнерам по решениям WhatsApp Business API, Meta управляет ключами шифрования и дешифрования от лица компании. Чтобы отправлять и получать сообщения через Cloud API, Cloud API управляет ключами шифрования/дешифрования от лица компании. Meta обеспечивает работу Cloud API.Согласно условиям компании, она может использовать этот сервис только для доставки сообщений. WhatsApp не имеет доступа к ключам или сообщениям.

Часто задаваемые вопросы о соблюдении нормативных требований

Meta крайне серьезно относится к вопросам защиты данных и конфиденциальности людей, поэтому стремится выполнять все требования законов в сфере защиты данных. Cloud API позволяет нашим клиентам продолжать выполнять свои обязательства согласно Общему регламенту по защите данных. Meta соблюдает все применимые юридические, отраслевые и нормативные требования, а также следует лучшим отраслевым практикам. Подробнее.