Как известно, WhatsApp не так давно начал предоставлять доступ к своему официальному бизнес API, который так необходим для создания чат-ботов для этого мессенджера «белыми» методами.
Но сделать это напрямую большинству компаний по прежнему не под силу, а только через крупных партнеров Facebook, которые в данном случае выступают в роли посредников.
Одним из таких доступных партнеров является американская компания Twilio. Самое основное их преимущество на мой взгляд, это невысокая стоимость использования WhatsApp Business API.
Я подключил через Twilio официальный бизнес API WhatsApp и сейчас подробно расскажу, как это сделать.

Основным условием Facebook является наличие зарегистрированного юридического л��ца, например ООО или ИП, на физическое лицо доступ получить не получится.
Итак, начнем двигаться по шагам.
Войдем в свой личный аккаунт в Facebook и создадим аккаунт Business Manager, для чего перейдем по ссылке business.facebook.com/overview и нажмем кнопку «СОЗДАТЬ АККАУНТ», откроется окно для ввода данных компании.

Согласно подсказкам над полями, вводим название компании, имя и фамилию, e-mail и нажимаем кнопку «Отправить».
В следующем окне введем информацию о компании и нажмем кнопку «Отправить».

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

Зайдем в почту и нажмем на кнопку «Подтвердить» из письма.

Зарегистрируем аккаунт в Twilio по ссылке twilio.com/try-twilio. Сделать это совсем не сложно, регистрация бесплатная и не требует данных банковской карты, нужно только ввести имя, фамилию, e-mail и придумать пароль.

Подтверждаем e-mail.

Подтверждаем номер телефона.

Подготовим и отправим запрос в Twilio на активацию возможности добавления WhatsApp отправителей, для чего перейдем в раздел «WhatsApp Senders» по ссылке www.twilio.com/console/sms/whatsapp/senders и нажмем кнопку «Sign Up to Receive Updates».

Откроется форма запроса на активацию возможности добавления WhatsApp отправителей в Twilio. Заполняем поля формы данными, которые указывались выше, при создании аккаунта в Facebook Business Manager:
First Name — Имя (латиницей);
Last Name — Фамилия (латиницей);
Phone Number — Номер телефона компании (указанный в Facebook Business Manager);
Email Address — Адрес электронной почты компании (указанный в Facebook Business Manager);
Company Name — Название компании (латиницей, указанное в Facebook Business Manager);
Company Website — Веб-сайт компании (указанный в Facebook Business Manager);
Company HQ Country — Страна регистрации компании (указанная в Facebook Business Manager);
Twilio Account SID — Идентификатор аккаунта Twilio скопировать из п��ля ACCOUNT SID на странице www.twilio.com/console;

Facebook Business Manager ID — Идентификатор созданного аккаунта в Facebook Business Manager скопировать из поля «Идентификатор Бизнес-менеджера:» на странице business.facebook.com/settings/info (Facebook Business Manager -> Настройки компании -> Информация о компании);

I've completed Facebook Business Verification — ставим «No», если в Facebook Business Manager -> Настройки компании -> Информация о компании -> Статус подтверждения компании -> указано «Не подтверждена» или «Yes», если «Подтверждена»;
Company Vertical — выбираем из списка направление деятельности компании;
What is your use case? — выбираем из списка, для чего будет использоваться WhatsApp: Notifications (Оповещения), Customer Support (Поддержка клиентов), 2FA or User Verification (Двухфакторная аутентификация или верификация пользователей);
Which regions are you sending messages to? — В какие регионы будут отправляться сообщения (выбираем из списка Global);
How many messages are you sending per month during the first year? — Сколько сообщений будет отправляться в месяц в течение первого года (выбираем из списка нужный диапазон);
I wish to provision this account with a third party vendor — Будет ли предоставляться эта учетная запись стороннему поставщику (выбираем «No»);
Assign approval to alternate Account SID (Optional) — Назначить утверждение альтернативному SID учетной записи (необязательно) (ничего не вводим, оставляем поле пустым);
I understand Twilio can modify my SMS/Voice URL and that approval is only for the brand submitted. — Я понимаю, что Twilio может изменять мой URL-адрес SMS / голосового сообщения, и это одобрение предназначено только для отправленного бренда (соглашаемся и выбираем «Yes»).

Для отправки запроса, нажимаем кнопку «Request Now». После успешной отправки появится соответствующее уведомление: «Спасибо за Ваш интерес. Мы будем держать Вас в курсе по мере открытия доступа.».

На почту получаем вот такое письмо:

Переводим сообщение на русский:

Теперь ждем 3-4 недели ответ от Twilio, как указано в письме.
Через 4 недели получаем ответ от Twilio, что теперь можно добавить WhatsApp отправителя и продолжить процесс регистрации:

Переводим сообщение на русский:

Для продолжения, обязательно нужно перевести проект Twilio из пробного (Trial) в рабочий (Upgrade), для чего потребуется пополнить баланс. На пробном аккаунте Twilio не получится зарегистрировать WhatsApp отправителя. Минимальная сумма пополнения 20$ (двадцать долларов). Потом эти деньги можно будет тратить на аренду телефонных номеров для WhatsApp отправителей и оплату входящих и исходящих сообщений в WhatsApp. Аренда телефонного номера стоит от 1$ (один доллар) в месяц. Входящие и исходящие сообщения в WhatsApp — 0.005$ (пол цента) за 1 сообщение.
Для апгрейда аккаунта перейдем по ссылке www.twilio.com/console/billing/upgrade.
Заполним латиницей поля в разделе «Add Company Address».

Нажмем кнопку «Validate Address» для подтверждения адреса. В открывшемся окне нажмем кнопку «Use This Address».

Аналогично, заполним поля в разделе «Add Billing Address» такими же данными.

И так же подтвердим адрес.

В разделе «Add Payment Information and Funds» введем данные банковской карты и нажмем кнопку «Upgrade Account» для проведения оплаты.

После успешной оплаты увидим соответствующее уведомление.

Российских номеров в Twilio к сожалению нет, но на практике это оказалось не так и важно. Зачастую пользователи даже и не смотрят на номер, когда пишут в WhatsApp.
Для покупки телефонного номера Twilio перейдем по ссылке www.twilio.com/console/phone-numbers/search, выберем страну в поле «COUNTRY», по желанию можно выставить и другие дополнительные параметры поиска, и нажмем кнопку «Search».


Выберем нужный телефонный номер и нажмем кнопку «Buy».
В следующем окне подтвердим покупку.

Для регистрации WhatsApp отправителя в Twilio перейдем в раздел «WhatsApp Senders» по ссылке www.twilio.com/console/sms/whatsapp/senders и нажмем иконку «плюс».

Пока создадим WhatsApp отправителя только для ответов на сообщения пользователей, то есть сами первыми писать не будем. Создание шаблонов для возможности написать пользователю первым будем рассматривать в следующих публикациях.
Заполним открывшуюся форму:
Select a Number (Required) — Выберем номер телефона, который мы купили в Twilio выше.
Business Display Name (Required) — Отображаемое имя, которое должно соотносится с вашей компанией в соответствии с требованиями Facebook. Можно указать просто название компании, которое мы вводили при регистрации аккаунта в Facebook Business Manager.
Company Address (Optional) — Адрес компании (можно не указывать).
Company Email (Optional) — Электронный адрес компании (можно не указывать).
Website (Optional) — Веб-сайт компании (можно не указывать).
Link to Logo (Optional) — Ссылка на логотип компании (можно не указывать). Минимальный размер изображения 640x640 px в форматах PNG или JPG (JPG рекомендуется), фон не должен быть прозрачным.
Check if profile is for a client. I've read the third party guidelines — Эту галочку не ставим.

Для отправки нажмем кнопку «Submit Request», которая станет активной после после заполнения обязательных полей формы.
В списке отправителей появится запись со статусом «Waiting for Approval from WhatsApp», означающая что теперь нужно подождать подтверждения со стороны WhatsApp.

И получаем письмо от Twilio, что они рассматривают наш запрос, и свяжутся с нами в ближайшее время.

Ждем ответа от Twilio.
Примерно через полтора часа получаем от Twilio еще одно письмо, что в Facebook Business Manager необходимо принять запрос от Twilio, чтобы предоставить им разрешение на создание учетной записи WhatsApp Business. Для этого переходим по ссылке business.facebook.com/settings/requests/received_requests (Facebook Business Manager -> Настройки компании -> Запросы -> Полученные) и нажать кнопку «Одобрить».

После принятия запроса от Twilio, необходимо подтвердить компанию в Facebook Business Manager. Для этого переходим по ссылке business.facebook.com/settings/security (Facebook Business Manager -> Настройки компании -> Центр безопасности) и в разделе «Подтверждение компании» нажимаем кнопку «Начать подтверждение», которая станет активной после принятия запроса от Twilio.

С официальной информацией от Facebook о подтверждении компании можно ознакомиться по ссылке: www.facebook.com/business/help/2058515294227817?id=180505742745347.
На первом шаге подтверждения введем данные нашей компании:
Юридическое название компании — название компании, как в указано в документах на регистрацию компании.
Страна — страна регистрации компании.
Адрес (улица, № дома) — улица и номер дома юридического адреса компании, как в указано в документах на регистрацию компании.
Адрес 2/Населенный пункт — вводим, если имеется.
Город — город юридического адреса компании, как в указано в документах на регистрацию компании.
Штат/провинция/регион — регион юридического адреса компании, как в указано в документах на регистрацию компании.
Почтовый индекс — почтовый индекс юридического адреса компании, как в указано в документах на регистрацию компании.
Номер телефона компании — номер телефона, который принадлежит данному юридическому лицу (должны быть подтверждающие документы: договор, счета на оплату за телефон и т.п.).
Сайт — адрес веб-сайта компании (домен сайта должен совпадать с доменом электронного адреса компании).

На втором шаге подтверждения компании необходимо подтвердить юридическое название компании.
Для этого нужно загрузить документы из списка:
Я загрузил сканы ОГРН и ИНН компании.

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

На четвертом шаге необходимо получить и ввести код подтверждения.
Для этого нужно в разделе «Выберите, как с вами связаться» выбрать телефон и нажать кнопку «Позвоните мне». Поле «Мой рабочий электронный адрес» оставляем пустым. Позвонит робот и продиктует цифры, которые нужно ввести в поле ввода кода подтверждения.
Вводим цифры кода подтверждения и нажимаем кнопку «Отправить».
Ждем подтверждения от Facebook, как нам пишут в письме Twilio, это может занять 4-7 рабочих дней.
Мы получили подтверждение компании от Facebook в течении 1-го рабочего дня.




Ждем завершения регистрации WhatsApp отправителя от Twilio.
Через 4 часа получаем письмо от Twilio, что они проверили наш бизнес-профиль в WhatsApp и отправили на рассмотрение отображаемое название нашей компании. Срок выполнения проверки отображаемого имени обычно составляет 24–48 часов.

Переводим сообщение на русский:

Ждем ответа от Twilio 24-48 часов, как указано в письме.
Примерно через 30 часов получаем письмо от Twilio, что наш профиль отправителя WhatsApp с выбранным номером телефона успешно зарегистрирован.

Переводим сообщение на русский:

Заходим в аккаунт Twilio, в раздел WhatsApp Senders по ссылке www.twilio.com/console/sms/whatsapp/senders и видим, что у записи сменился статус на «Approved» («Одобрено»).

На этом подключение официального бизнес API WhatsApp через Twilio успешно завершено. По времени, со всеми ожиданиями, у меня это заняло примерно один месяц. Теперь его можно использовать для интеграции с различными сервисами для коммуникации с пользователями и для создания чат-ботов.
Но сделать это напрямую большинству компаний по прежнему не под силу, а только через крупных партнеров Facebook, которые в данном случае выступают в роли посредников.
Одним из таких доступных партнеров является американская компания Twilio. Самое основное их преимущество на мой взгляд, это невысокая стоимость использования WhatsApp Business API.
Я подключил через Twilio официальный бизнес API WhatsApp и сейчас подробно расскажу, как это сделать.

Основным условием Facebook является наличие зарегистрированного юридического л��ца, например ООО или ИП, на физическое лицо доступ получить не получится.
Итак, начнем двигаться по шагам.
1. Создание аккаунта в Facebook Business Manager
Войдем в свой личный аккаунт в Facebook и создадим аккаунт Business Manager, для чего перейдем по ссылке business.facebook.com/overview и нажмем кнопку «СОЗДАТЬ АККАУНТ», откроется окно для ввода данных компании.

Согласно подсказкам над полями, вводим название компании, имя и фамилию, e-mail и нажимаем кнопку «Отправить».
В следующем окне введем информацию о компании и нажмем кнопку «Отправить».

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

Зайдем в почту и нажмем на кнопку «Подтвердить» из письма.

2. Регистрация аккаунта в Twilio
Зарегистрируем аккаунт в Twilio по ссылке twilio.com/try-twilio. Сделать это совсем не сложно, регистрация бесплатная и не требует данных банковской карты, нужно только ввести имя, фамилию, e-mail и придумать пароль.

Подтверждаем e-mail.

Подтверждаем номер телефона.

3. Запрос в Twilio на активацию возможности добавления WhatsApp отправителей
Подготовим и отправим запрос в Twilio на активацию возможности добавления WhatsApp отправителей, для чего перейдем в раздел «WhatsApp Senders» по ссылке www.twilio.com/console/sms/whatsapp/senders и нажмем кнопку «Sign Up to Receive Updates».

Откроется форма запроса на активацию возможности добавления WhatsApp отправителей в Twilio. Заполняем поля формы данными, которые указывались выше, при создании аккаунта в Facebook Business Manager:
First Name — Имя (латиницей);
Last Name — Фамилия (латиницей);
Phone Number — Номер телефона компании (указанный в Facebook Business Manager);
Email Address — Адрес электронной почты компании (указанный в Facebook Business Manager);
Company Name — Название компании (латиницей, указанное в Facebook Business Manager);
Company Website — Веб-сайт компании (указанный в Facebook Business Manager);
Company HQ Country — Страна регистрации компании (указанная в Facebook Business Manager);
Twilio Account SID — Идентификатор аккаунта Twilio скопировать из п��ля ACCOUNT SID на странице www.twilio.com/console;

Facebook Business Manager ID — Идентификатор созданного аккаунта в Facebook Business Manager скопировать из поля «Идентификатор Бизнес-менеджера:» на странице business.facebook.com/settings/info (Facebook Business Manager -> Настройки компании -> Информация о компании);

I've completed Facebook Business Verification — ставим «No», если в Facebook Business Manager -> Настройки компании -> Информация о компании -> Статус подтверждения компании -> указано «Не подтверждена» или «Yes», если «Подтверждена»;
Company Vertical — выбираем из списка направление деятельности компании;
What is your use case? — выбираем из списка, для чего будет использоваться WhatsApp: Notifications (Оповещения), Customer Support (Поддержка клиентов), 2FA or User Verification (Двухфакторная аутентификация или верификация пользователей);
Which regions are you sending messages to? — В какие регионы будут отправляться сообщения (выбираем из списка Global);
How many messages are you sending per month during the first year? — Сколько сообщений будет отправляться в месяц в течение первого года (выбираем из списка нужный диапазон);
I wish to provision this account with a third party vendor — Будет ли предоставляться эта учетная запись стороннему поставщику (выбираем «No»);
Assign approval to alternate Account SID (Optional) — Назначить утверждение альтернативному SID учетной записи (необязательно) (ничего не вводим, оставляем поле пустым);
I understand Twilio can modify my SMS/Voice URL and that approval is only for the brand submitted. — Я понимаю, что Twilio может изменять мой URL-адрес SMS / голосового сообщения, и это одобрение предназначено только для отправленного бренда (соглашаемся и выбираем «Yes»).

Для отправки запроса, нажимаем кнопку «Request Now». После успешной отправки появится соответствующее уведомление: «Спасибо за Ваш интерес. Мы будем держать Вас в курсе по мере открытия доступа.».

На почту получаем вот такое письмо:

Переводим сообщение на русский:

Теперь ждем 3-4 недели ответ от Twilio, как указано в письме.
Через 4 недели получаем ответ от Twilio, что теперь можно добавить WhatsApp отправителя и продолжить процесс регистрации:

Переводим сообщение на русский:

4. Upgrade аккаунта в Twilio
Для продолжения, обязательно нужно перевести проект Twilio из пробного (Trial) в рабочий (Upgrade), для чего потребуется пополнить баланс. На пробном аккаунте Twilio не получится зарегистрировать WhatsApp отправителя. Минимальная сумма пополнения 20$ (двадцать долларов). Потом эти деньги можно будет тратить на аренду телефонных номеров для WhatsApp отправителей и оплату входящих и исходящих сообщений в WhatsApp. Аренда телефонного номера стоит от 1$ (один доллар) в месяц. Входящие и исходящие сообщения в WhatsApp — 0.005$ (пол цента) за 1 сообщение.
Для апгрейда аккаунта перейдем по ссылке www.twilio.com/console/billing/upgrade.
Заполним латиницей поля в разделе «Add Company Address».

Нажмем кнопку «Validate Address» для подтверждения адреса. В открывшемся окне нажмем кнопку «Use This Address».

Аналогично, заполним поля в разделе «Add Billing Address» такими же данными.

И так же подтвердим адрес.

В разделе «Add Payment Information and Funds» введем данные банковской карты и нажмем кнопку «Upgrade Account» для проведения оплаты.

После успешной оплаты увидим соответствующее уведомление.

5. Покупка телефонного номера в Twilio для создания WhatsApp отправителя
Российских номеров в Twilio к сожалению нет, но на практике это оказалось не так и важно. Зачастую пользователи даже и не смотрят на номер, когда пишут в WhatsApp.
Для покупки телефонного номера Twilio перейдем по ссылке www.twilio.com/console/phone-numbers/search, выберем страну в поле «COUNTRY», по желанию можно выставить и другие дополнительные параметры поиска, и нажмем кнопку «Search».


Выберем нужный телефонный номер и нажмем кнопку «Buy».
В следующем окне подтвердим покупку.

6. Регистрация WhatsApp отправителя в Twilio
Для регистрации WhatsApp отправителя в Twilio перейдем в раздел «WhatsApp Senders» по ссылке www.twilio.com/console/sms/whatsapp/senders и нажмем иконку «плюс».

Пока создадим WhatsApp отправителя только для ответов на сообщения пользователей, то есть сами первыми писать не будем. Создание шаблонов для возможности написать пользователю первым будем рассматривать в следующих публикациях.
Заполним открывшуюся форму:
Select a Number (Required) — Выберем номер телефона, который мы купили в Twilio выше.
Business Display Name (Required) — Отображаемое имя, которое должно соотносится с вашей компанией в соответствии с требованиями Facebook. Можно указать просто название компании, которое мы вводили при регистрации аккаунта в Facebook Business Manager.
Company Address (Optional) — Адрес компании (можно не указывать).
Company Email (Optional) — Электронный адрес компании (можно не указывать).
Website (Optional) — Веб-сайт компании (можно не указывать).
Link to Logo (Optional) — Ссылка на логотип компании (можно не указывать). Минимальный размер изображения 640x640 px в форматах PNG или JPG (JPG рекомендуется), фон не должен быть прозрачным.
Check if profile is for a client. I've read the third party guidelines — Эту галочку не ставим.

Для отправки нажмем кнопку «Submit Request», которая станет активной после после заполнения обязательных полей формы.
В списке отправителей появится запись со статусом «Waiting for Approval from WhatsApp», означающая что теперь нужно подождать подтверждения со стороны WhatsApp.

И получаем письмо от Twilio, что они рассматривают наш запрос, и свяжутся с нами в ближайшее время.

Ждем ответа от Twilio.
7. Подтверждение компании в Facebook Business Manager
Примерно через полтора часа получаем от Twilio еще одно письмо, что в Facebook Business Manager необходимо принять запрос от Twilio, чтобы предоставить им разрешение на создание учетной записи WhatsApp Business. Для этого переходим по ссылке business.facebook.com/settings/requests/received_requests (Facebook Business Manager -> Настройки компании -> Запросы -> Полученные) и нажать кнопку «Одобрить».

После принятия запроса от Twilio, необходимо подтвердить компанию в Facebook Business Manager. Для этого переходим по ссылке business.facebook.com/settings/security (Facebook Business Manager -> Настройки компании -> Центр безопасности) и в разделе «Подтверждение компании» нажимаем кнопку «Начать подтверждение», которая станет активной после принятия запроса от Twilio.

С официальной информацией от Facebook о подтверждении компании можно ознакомиться по ссылке: www.facebook.com/business/help/2058515294227817?id=180505742745347.
На первом шаге подтверждения введем данные нашей компании:
Юридическое название компании — название компании, как в указано в документах на регистрацию компании.
Страна — страна регистрации компании.
Адрес (улица, № дома) — улица и номер дома юридического адреса компании, как в указано в документах на регистрацию компании.
Адрес 2/Населенный пункт — вводим, если имеется.
Город — город юридического адреса компании, как в указано в документах на регистрацию компании.
Штат/провинция/регион — регион юридического адреса компании, как в указано в документах на регистрацию компании.
Почтовый индекс — почтовый индекс юридического адреса компании, как в указано в документах на регистрацию компании.
Номер телефона компании — номер телефона, который принадлежит данному юридическому лицу (должны быть подтверждающие документы: договор, счета на оплату за телефон и т.п.).
Сайт — адрес веб-сайта компании (домен сайта должен совпадать с доменом электронного адреса компании).

На втором шаге подтверждения компании необходимо подтвердить юридическое название компании.
Для этого нужно загрузить документы из списка:
- Лицензия на ведение коммерческой деятельности (если имеется);
- Свидетельства о регистрации или учредительные договоры (ОГРН или учредительный договор);
- Свидетельство о регистрации налогоплательщика (ИНН).
Я загрузил сканы ОГРН и ИНН компании.

На третьем шаге подтверждения компании необходимо подтвердить юридический адрес и номер телефона компании.
Для этого нужно загрузить документы из списка:
- Счет за коммунальные услуги, например электроэнергию или телефон;
- Справка из банка, на которой указан адрес;
- Лицензия на ведение коммерческой деятельности с адресом или телефоном компании (если имеется).
Я загрузил сканы: договора на аренду офисного помещения по юридическому адресу, информационного письма об учете в Статрегистре Росстата, счета на оплату за телефонный номер от оператора связи.

На четвертом шаге необходимо получить и ввести код подтверждения.
Для этого нужно в разделе «Выберите, как с вами связаться» выбрать телефон и нажать кнопку «Позвоните мне». Поле «Мой рабочий электронный адрес» оставляем пустым. Позвонит робот и продиктует цифры, которые нужно ввести в поле ввода кода подтверждения.
Вводим цифры кода подтверждения и нажимаем кнопку «Отправить».
Ждем подтверждения от Facebook, как нам пишут в письме Twilio, это может занять 4-7 рабочих дней.
Мы получили подтверждение компании от Facebook в течении 1-го рабочего дня.




Ждем завершения регистрации WhatsApp отправителя от Twilio.
8. Завершение регистрации WhatsApp отправителя в Twilio
Через 4 часа получаем письмо от Twilio, что они проверили наш бизнес-профиль в WhatsApp и отправили на рассмотрение отображаемое название нашей компании. Срок выполнения проверки отображаемого имени обычно составляет 24–48 часов.

Переводим сообщение на русский:

Ждем ответа от Twilio 24-48 часов, как указано в письме.
Примерно через 30 часов получаем письмо от Twilio, что наш профиль отправителя WhatsApp с выбранным номером телефона успешно зарегистрирован.

Переводим сообщение на русский:

Заходим в аккаунт Twilio, в раздел WhatsApp Senders по ссылке www.twilio.com/console/sms/whatsapp/senders и видим, что у записи сменился статус на «Approved» («Одобрено»).

Итог
На этом подключение официального бизнес API WhatsApp через Twilio успешно завершено. По времени, со всеми ожиданиями, у меня это заняло примерно один месяц. Теперь его можно использовать для интеграции с различными сервисами для коммуникации с пользователями и для создания чат-ботов.