гора.
AI-ассистент линии поддержки

WhatsApp и официальный API

Как линия работает в WhatsApp через свой шлюз и как её построить на WhatsApp Business Platform: окно 24 часа, шаблоны, люди.

~14 мин чтения · 2743 слов

TL;DR

AI-ассистент линии поддержки в WhatsApp — это обычный номер магазина на телефоне в офисе, к которому подключён свой шлюз мессенджера. Шлюз получает сообщения, отдаёт их боту и отправляет его ответы, а люди отвечают с того же телефона, и бот видит их ответы. WhatsApp Business Platform (Cloud API) — официальный путь под политикой Meta, со статусами доставки и прочтения, кнопками и формами. Взамен он требует проверки бизнеса, шаблонов для сообщений вне окна 24 часа и оплаты за сообщения. По журналу все 879 сообщений бота ушли внутри этого окна, у людей внутри окна 81% сообщений. На этой странице оба устройства описаны рядом. Факты о платформе Meta сверены с её документацией на 19 октября 2026 года.

Как устроено сейчас

Сейчас и с официальным API: сегодня телефон линии подключён к своему шлюзу мессенджера, а тот вызывает бота; с официальным API сообщения приходят подписанным вебхуком Meta, а люди отвечают из приложения WhatsApp Business в совместном режиме

Номер и телефон

Линия — один номер WhatsApp на телефоне в офисе магазина. Люди из команды отвечают клиентам с этого телефона, как с любого другого. Шлюз записывает линию с 23 февраля 2026 года, а бот подключён к ней с 31 июля. Отдельного номера для бота нет: бот и люди говорят с клиентом одним номером.

Шлюз

Свой шлюз мессенджера подключён к номеру линии и получает его сообщения. Он показывает их людям в ленте операторов в Telegram и расшифровывает голосовые, потом 20 секунд ждёт, не допишет ли клиент ещё (но не дольше минуты от первой реплики), и отдаёт сообщения боту вместе с последними десятью репликами чата. Бот решает, что ответить и отвечать ли вообще. Перед отправкой шлюз ещё раз проверяет, не написал ли за это время человек. Люди отвечают с телефона линии, бот видит их реплики в истории чата и молчит: на этом держится правило «человек в чате — бот молчит».

Чего шлюз не знает

Статусов доставки и прочтения у шлюза нет. Для ответов это почти неважно: бот отвечает тем, кто только что написал сам.

Уведомления платформы

Уведомления о заказе («подтверждён», «водитель забрал», «отменён») шлёт сама платформа магазина с других номеров того же шлюза. Последняя строка каждого — «не отвечайте на это сообщение»: ответы на эти номера никто не читает. Номер линии стоит только в сообщении об отмене. С 28 сентября, если номера нет в WhatsApp или отправка не удалась, клиент получает SMS того же смысла. Объём: 80–130 сообщений платформы в сутки.

Чат на сайте

Чат на сайте — свой канал. Он работает через WebSocket бэкенда бота и к WhatsApp не относится. Если клиент вошёл в аккаунт, у чата и у линии одна карточка памяти.

Как я построил бы эту линию на официальном API

Ниже по пунктам: что дала бы WhatsApp Business Platform, что пришлось бы переделать и как это выглядит на цифрах линии. Всё о платформе Meta сверено с её документацией для разработчиков и политиками на 19 октября 2026 года. Условия Meta меняются, цены — только в начале квартала.

Транспорт

Cloud API держит Meta: сообщения обрабатываются в её дата-центрах, а бизнес получает их вебхуком. Вебхук подписан: заголовок X-Hub-Signature-256 содержит SHA-256 от тела, посчитанный секретом приложения. Meta повторяет доставку вебхука до 7 дней и предупреждает, что возможны дубли. У бота на это уже есть идемпотентность по идентификатору сообщения. Собственный сервер API (On-Premises) Meta закрыла: с 23 октября 2025 года отправлять через него нельзя.

Что ушло бы: своё подключение к номеру и всё, что его обслуживает. Что осталось бы: шлюз как канал, то есть приём вебхука, очередь заданий, лента операторов и вызов бота.

Пропускная способность одного номера по умолчанию — 80 сообщений в секунду, в совместном режиме (о нём ниже) — 20. Одному человеку можно отправлять в среднем одно сообщение в 6 секунд, короткой пачкой до 45. Бот после текста отправляет не больше трёх картинок, в эти пределы он укладывается.

Окно 24 часа

Когда клиент пишет или звонит, открывается окно обслуживания на 24 часа, и каждое новое сообщение клиента продлевает его. Внутри окна бизнес пишет что угодно. После окна можно отправлять только заранее одобренные шаблоны трёх категорий: marketing, utility, authentication. Проверка шаблона занимает до 24 часов. Utility-шаблон, который на деле оказался рекламой, Meta сама переводит в marketing.

На цифрах линии с 31 июля по 19 октября:

Кто писалСообщенийВнутри 24 ч после сообщения клиентаПозже 24 чБез сообщения клиента перед ним
Бот: ответы82582500
Бот: привезённые ответы водителя и диспетчера444400
Бот: «водитель пока не ответил»101000
Люди25 50520 589 (80,7%)3 350 (13,1%)1 566 (6,1%)

Боту окно не мешает по устройству: задание появляется только на входящее сообщение, нить вопроса водителю живёт не дольше 4 часов, а самое позднее сообщение бота ушло через 52 минуты после сообщения клиента. Напоминаний и сообщений «вернусь позже» бот не шлёт.

У людей 19,3% сообщений вне окна. Если бы люди писали через API, на них понадобились бы шаблоны. Одно уточнение: часть таких сообщений может быть ответом клиенту, который пишет с двух идентификаторов, и тогда настоящая доля меньше.

Уведомления и первое сообщение

Три уведомления платформы стали бы utility-шаблонами с переменными: номер заказа, машина, ссылка на страницу заказа. Первое сообщение новому клиенту — тоже шаблон. Для сообщений, которые начинает бизнес, политика Meta требует согласия клиента, и в согласии должно стоять имя бизнеса. Собирать его можно и на сайте, поэтому при оформлении заказа появилась бы галочка. Код входа в WhatsApp — отдельная категория шаблонов, authentication.

Если уведомления и линия работают на одном номере, ответ клиента на «водитель забрал заказ» попадает прямо в линию. Он открывает окно, и бот отвечает как на любое сообщение. Строка «не отвечайте на это сообщение» исчезает. SMS-замену можно включать по настоящему отказу доставки: сейчас «отправлено» не значит «доставлено».

Статусы доставки и прочтения

Cloud API присылает статус каждого сообщения: отправлено, доставлено, прочитано, прослушано (для голосового) и ошибка с кодом. Сейчас у шлюза есть только «отправлено». Есть и индикатор «печатает»: его включают вместе с отметкой о прочтении, и он гаснет с ответом или через 25 секунд. Он закрыл бы паузу, пока бот 20 секунд ждёт, не допишет ли клиент, и ещё несколько секунд пишет ответ.

Люди рядом с ботом

Сейчас люди отвечают с телефона линии, а бот видит их ответы и молчит, пока человек в чате. На официальном API есть два варианта.

Первый: номер уходит из приложения в API целиком. Тогда людям нужен свой интерфейс. Лента операторов в Telegram у линии уже есть, с черновиками и кнопкой отправки, но опыт этого проекта показывает, что люди отвечают с телефона, а в ленту почти не заглядывают. Кроме того, 19,3% сообщений людей ушли бы за окно и потребовали бы шаблонов.

Второй: совместный режим (coexistence), когда один номер работает и в приложении WhatsApp Business, и в Cloud API. Его я бы и выбрал. По документации Meta:

  • нужно приложение WhatsApp Business версии 2.24.17 или новее и подключение через партнёра Meta (Tech Provider или Solution Partner) по Embedded Signup;
  • переписка за 180 дней до подключения синхронизируется в API, если бизнес согласен, и сделать это надо в первые 24 часа;
  • каждое сообщение, отправленное из приложения, приходит в API отдельным вебхуком (smb_message_echoes). Это ровно то, на чём держится правило «человек в чате — бот молчит»;
  • сообщения из приложения остаются бесплатными, сообщения через API тарифицируются как в Cloud API;
  • групповые чаты не синхронизируются, списки рассылки выключаются, исчезающие сообщения, сообщения «на один просмотр» и трансляция геопозиции в личных чатах отключаются;
  • при подключении все связанные устройства отвязываются. Поддерживаемые можно привязать снова, кроме WhatsApp для Windows и WearOS. Сообщение, отправленное с неподдерживаемого устройства, в API не придёт, и бот не узнает, что человек в чате;
  • пропускная способность фиксирована, 20 сообщений в секунду;
  • если основной телефон неактивен около 14 дней, связь обрывается.

Кнопки, списки и формы

Сейчас бот разбирает текст клиента. Изменение заказа он делает только после «да», которое отвечает на его последний вопрос, а «да» рядом с «нет» для отмены не засчитывает. Это несколько правил и тестов вокруг одного слова. В Cloud API это делается кнопками:

  • кнопки ответа: до трёх, подпись до 20 символов. «Да» и «нет» для изменения заказа приходят как нажатие с известным значением;
  • список: до 10 строк. Подходит для выбора нового времени доставки;
  • кнопка со ссылкой: страница заказа открывается кнопкой вместо ссылки в тексте;
  • запрос геопозиции: кнопка «отправить место», полезна водителю;
  • формы (WhatsApp Flows): смена адреса формой вместо разбора текста. Для форм нужна проверка бизнеса и высокое качество номера.

Нативные адресные сообщения Meta пока поддерживает не во всех странах. Кнопки и списки — это сообщения внутри окна, вне окна форму можно отправить только шаблоном.

Голос и фото

Сейчас шлюз получает файл вместе с сообщением. В Cloud API вебхук приносит идентификатор файла и ссылку. Ссылка действует 5 минут и открывается только с токеном, а идентификатор входящего файла живёт 7 дней. Пределы: аудио 16 МБ, изображения 5 МБ (JPEG или PNG), видео 16 МБ, документы 100 МБ. Расшифровка голосового и описание фотографии в боте остались бы прежними, поменялся бы только способ достать файл.

Лимиты и качество номера

Лимит касается сообщений вне окна: скольким разным людям бизнес может написать первым за скользящие 24 часа. Уровни: 250, 2 000, 10 000, 100 000 и без ограничения. С 7 октября 2025 года лимит считается на весь бизнес-аккаунт сразу, на все его номера. Выше 2 000 уровень растёт сам, если качество высокое и за последние 7 дней использовано не меньше половины лимита. Качество номера и каждого шаблона оценивается по отзывам получателей: зелёное, жёлтое, красное. Шаблон в красной зоне Meta ставит на паузу на 3 часа, потом на 6, на третий раз отключает. Лимит при падении качества больше не снижается.

Платформа сейчас шлёт 80–130 сообщений в сутки, то есть начального уровня в 250 разных получателей хватило бы с запасом. Ответы бота в лимит не входят: они все внутри окна.

Деньги, без сумм

  • С 1 июля 2025 года Meta берёт плату за каждое доставленное сообщение, до этого платили за разговор. Цена зависит от категории и от страны получателя.
  • Шаблоны marketing, utility и authentication платные в любое время. С 1 октября 2026 года платные и utility-шаблоны внутри окна.
  • Свободные сообщения внутри окна (service) с 1 октября 2026 года тоже платные, но первые 1 000 в месяц на номер бесплатны. За 19 дней октября бот сам отправил 672 ответа, то есть его объём близок к этому порогу.
  • Ответы, которые пишет сторонний ИИ, считаются обычными service-сообщениями.
  • Сообщения из приложения в совместном режиме бесплатны.
  • На utility и authentication есть скидки за объём, считаются по месяцу.

Допуск

  • Проверка бизнеса в Meta. Начать можно и без неё, но она открывает лимит 2 000, до 20 номеров, формы и статус официального бизнес-аккаунта с синей галочкой.
  • Имя отправителя, которое проходит проверку.
  • Номер, уже работающий в WhatsApp, нельзя зарегистрировать в API, пока его не удалят из приложения, а при удалении теряется переписка. Альтернатива — совместный режим.
  • Автоматизация внутри окна разрешена, если у клиента есть ясный путь к человеку. У линии он есть: на просьбу позвать человека бот даёт телефон офиса, жалобы и юридические вопросы уходят людям ещё до модели, а люди отвечают с того же номера.
  • Условия платформы в редакции 23 сентября 2026 года запрещают её компаниям, у которых ИИ — основной продукт. Бот поддержки магазина, как я читаю текст условий, под это не попадает, но решает Meta.

Идентификатор клиента

С 2026 года у пользователей WhatsApp появляются имена пользователей, а в вебхуках — идентификатор клиента внутри бизнеса, который не зависит от телефона. Если у клиента есть имя пользователя, номер телефона в вебхук может не прийти. Бот сейчас узнаёт клиента по телефону: по нему спрашивает платформу, кто это и какие у него заказы. На API для таких клиентов понадобился бы другой ключ: идентификатор WhatsApp, связанный с аккаунтом магазина, или номер заказа, который бот и сейчас умеет спросить.

Что не изменилось бы

  • Бот решает, что, когда и кому отвечать. Шлюз остаётся каналом: передаёт факты и исполняет решения.
  • Стык с платформой магазина: заказы, статусы, ссылки на страницу заказа.
  • Передача вопросов водителю и диспетчерам и возврат их ответов.
  • Изменения заказа после «да», только «да» стало бы кнопкой.
  • Память о клиенте, сторож, волны и рубильники, документ с правилами, тесты и приборы.

Что потребовал бы переход

Шаг 1. Решить, где работают люди

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

Шаг 2. Партнёр Meta и проверка бизнеса

Подключение идёт через Embedded Signup: либо самому стать Tech Provider, либо работать через Solution Partner. Версии Embedded Signup v2 и v3 Meta объявила устаревшими с 15 октября 2026 года, интегрироваться надо на v4. Параллельно — проверка бизнеса, имя отправителя, PIN двухшаговой проверки.

Шаг 3. Шаблоны и согласие

Три уведомления, первое сообщение новому клиенту и код входа подаются как шаблоны, на проверку уходит до суток. Галочку согласия получать сообщения добавляют в оформление заказа.

Шаг 4. Код

  • Шлюз — основная работа. Своя часть подключения к номеру уходит, обработчик переписывается под вебхук Meta: сообщения, статусы, эхо из приложения, синхронизация истории. Появляется клиент Graph API для отправки. Очередь, вызов бота и лента операторов остаются.
  • Бот — немного. Признак «человек в чате» шлюз собирает из эха приложения в ту же историю, и для бота ничего не меняется. Новое: нажатие кнопки вместо текста «да», запись статусов доставки в журнал, ключ клиента без телефона.
  • Платформа — шаблоны вместо текстов уведомлений, SMS по статусу «не доставлено», галочка согласия.

Шаг 5. Переключение без простоя

При подключении совместного режима старое подключение перестаёт работать, поэтому новый путь должен быть готов заранее:

  1. Поднять приём вебхуков Meta рядом со старым путём и проверить его на тестовом номере в Cloud API.
  2. Прогнать бота на тестовом номере с выключенной отправкой: черновики вместо ответов.
  3. Подключить номер линии в тихий час. Старое подключение отвязывается, вебхуки Meta начинают приходить, люди продолжают работать в приложении. Переписка за 180 дней синхронизируется в первые сутки.
  4. Включить отправку бота по одному классу ответов, как это делалось с волнами.
  5. Путь назад: отключить номер от платформы в приложении (настройки бизнес-платформы) и вернуть старое подключение.

Сейчас и с официальным API

СейчасОфициальный API
Транспортсвой шлюзвебхук Meta, Cloud API
Статусытолько «отправлено»отправлено, доставлено, прочитано, ошибка
Сообщения ботавсё внутри 24 ч, без ограниченийвсё внутри окна, свободным текстом
Сообщения людей вне 24 ч19,3%, без ограниченийтолько шаблоны, если писать через API
Людиотвечают с телефона, бот видит эхосовместный режим: то же через вебхук
«Да» на изменение заказаразбор текстакнопка
Адресразбор текстаформа (WhatsApp Flows)
Уведомлениядругие номера, «не отвечайте»utility-шаблоны, можно с номера линии
Деньгиплаты Meta нетза доставленные шаблоны; service — после 1 000 в месяц
Допускне нуженпроверка бизнеса, имя, политика

Вопросы, которые задают чаще всего

Нужен ли магазину официальный API?

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

Что станет проще, а что сложнее?

Проще: своё подключение к номеру больше не нужно обслуживать, есть статусы, кнопки и формы. Сложнее: каждое сообщение вне окна — одобренный шаблон, уведомления — шаблоны с согласием, а деньги и качество номера надо считать. Бот почти не меняется: он и сейчас пишет только в ответ клиенту.

Что будет с людьми на линии?

В совместном режиме ничего нового: они отвечают с телефона в приложении WhatsApp Business, а бот видит их ответы через вебхук и молчит, пока человек в чате. Без совместного режима людям понадобился бы свой интерфейс, а их сообщения вне окна стали бы шаблонами.

Чего эта страница не утверждает

  • Что магазин переходит на официальный API и что у перехода есть дата.
  • Что условия Meta останутся такими: всё сверено на 19 октября 2026 года.
  • Сколько стоит переход и сообщения: цен здесь нет намеренно.

Ссылки