Перейти к содержимому
WhatsApp API

Уведомления о доставке в WhatsApp: интеграция с Shopify и WooCommerce

Архитектура отправки уведомлений о доставке в WhatsApp для Shopify и WooCommerce

Уведомления о доставке в WhatsApp позволяют интернет-магазинам отправлять трек-номера, статусы перемещения посылок и подтверждения вручения прямо в мессенджер покупателя в момент наступления события. Чтобы запустить такую систему с максимальной отказоустойчивостью и минимальной себестоимостью, архитектура магазина подключается к шлюзу Wagate через Meta Cloud API. Такая схема исключает сторонних посредников и наценки на исходящие сообщения, сохраняя прямую тарификацию от Meta.

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

—

Прямая архитектура взаимодействия с Meta Cloud API

Надежная отправка транзакционных оповещений требует строгого разделения между уровнем электронной коммерции, маршрутизатором запросов и инфраструктурой Meta. Meta Cloud API представляет собой официальный облачный REST API корпорации Meta, который обеспечивает прием и отправку сообщений WhatsApp без необходимости развертывания и администрирования локальных серверов ядра (on-premises).

Классические провайдеры нередко взимают ежемесячную абонентскую плату и добавляют скрытую наценку к каждому отправленному шаблону. Платформа Wagate выступает прозрачным шлюзом (Gateway) между серверами интернет-магазина и облачной инфраструктурой Meta. Списания за служебные диалоги происходят напрямую с банковской карты, привязанной к вашему Meta Business Manager, по официальным тарифам вендора без комиссий за трафик.

Для ознакомления с первичным процессом верификации телефонного номера изучите документацию по WhatsApp Cloud API и критериям подключения выделенных линий.

—

Настройка сервисных шаблонов сообщений категории Utility

Каждое исходящее сервисное сообщение, инициированное бизнесом, требует предварительно утвержденного шаблона (Message Template). Meta разделяет шаблоны на три строгие категории: маркетинг (Marketing), аутентификация (Authentication) и сервисные транзакции (Utility). Все статусы выполнения заказов и перемещения отправлений относятся к категории Utility.

Использование шаблонов категории Utility обеспечивает два ключевых преимущества:

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

Стандартная структура сервисного шаблона использует динамические позиционные переменные ({{1}}, {{2}}), которые подставляются в реальном времени. Ниже приведен пример типового JSON-пейлоуда для отправки через Wagate:

“json { "messaging_product": "whatsapp", "recipient_type": "individual", "to": "79991234567", "type": "template", "template": { "name": "order_shipping_update_v1", "language": { "code": "ru" }, "components": [ { "type": "body", "parameters": [ { "type": "text", "text": "Иван Иванов" }, { "type": "text", "text": "10892" }, { "type": "text", "text": "СДЭК" }, { "type": "text", "text": "1489201923" } ] }, { "type": "button", "sub_type": "url", "index": "0", "parameters": [ { "type": "text", "text": "1489201923" } ] } ] } } “

Критическое правило модерации: в шаблонах категории Utility запрещено размещать промокоды, ссылки на сопутствующие товары или призывы вступить в программу лояльности. Любой рекламный контекст приведет к реклассификации шаблона в Marketing либо к полной блокировке. Полный перечень требований изложен в официальной документации Meta Business Documentation.

—

Автоматические уведомления о доставке в WhatsApp для магазинов на Shopify

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

Реализовать интеграцию можно двумя инженерными путями:

Вариант 1: Использование готового шлюза

Наиболее быстрый путь — подключить модуль WhatsApp для Shopify. Интеграция подписывается на события магазина и самостоятельно считывает смену статусов заказов без необходимости писать инфраструктурный код.

Вариант 2: Прямая настройка Webhooks

Инженеры, которым требуется полный контроль над трансформацией данных, могут настроить отправку событий напрямую из панели администратора Shopify:

  1. Перейдите в раздел Settings, затем откройте пункт меню Notifications.
  2. Найдите блок Webhooks и создайте новую точку подключения.
  3. Выберите системное событие Fulfillment creation или Fulfillment update.
  4. Укажите персональный URL-эндпоинт на сервере Wagate и задайте формат JSON.

Когда логистический оператор прикрепляет к заказу трек-код, Shopify формирует Payload с номером покупки, именем клиента, названием курьерской службы и ссылкой на отслеживание. Обработчик мгновенно генерирует вызов шаблона на номер, указанный покупателем при оформлении чекаута.

Спецификация структуры входящих данных доступна в официальном руководстве Shopify Webhooks Guide.

—

Интеграция статусов доставки с платформой WooCommerce

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

Если учет трек-номеров ведется через специализированные плагины (например, WooCommerce Shipment Tracking или модули транспортных компаний), идентификатор отправления сохраняется в таблице wp_postmeta конкретного заказа.

Этап обработкиТехнический компонентВыполняемое действие
Изменение статусаwoocommerce_order_status_completedХук перехода заказа в выполненное состояние
Чтение метаданныхget_post_meta($order_id, '_tracking_number')Извлечение трек-номера и имени перевозчика
Передача в шлюзwp_remote_post()Асинхронный POST-запрос к API Wagate с параметрами
Логирование событияwc_get_order()->add_order_note()Фиксация ID транзакции Meta в примечаниях к заказу

Пример реализации отправки через хук в файле functions.php рабочей темы:

“`php add_action('woocommerce_order_status_completed', 'wagate_send_shipping_notification', 10, 1); function wagate_send_shipping_notification($order_id) { $order = wc_get_order($order_id); $phone = $order->get_billing_phone(); $tracking_number = get_post_meta($order_id, '_aftership_tracking_number', true);

if (!$phone || !$tracking_number) { return; }

// Нормализация телефонного номера к международному стандарту E.164 $normalized_phone = preg_replace('/[^0-9]/', '', $phone); if (substr($normalized_phone, 0, 1) === '8') { $normalized_phone = '7' . substr($normalized_phone, 1); }

// Отправка запроса в шлюз Wagate wp_remote_post('https://api.wagate.app/v1/messages/send', [ 'headers' => [ 'Authorization' => 'Bearer YOUR_WAGATE_API_KEY', 'Content-Type' => 'application/json', ], 'body' => wp_json_encode([ 'to' => $normalized_phone, 'template' => 'order_shipping_update_v1', 'variables' => [ $order->get_billing_first_name(), $order->get_order_number(), $tracking_number, ], ]), ]); } “`

Полный список сигнатур методов и доступных параметров вызовов представлен в разделе Documentation.

—

Валидация номеров, обработка ошибок и Quality Rating

Ошибки на этапе передачи номеров телефонов могут нарушить доставку служебных уведомлений. Надежный пайплайн должен изолировать три распространенные проблемы:

1. Форматирование номеров телефонов по стандарту E.164

Пользователи вводят контактные данные с пробелами, дефисами, внутренними префиксами («8» вместо «+7») или без указания кода страны. Meta Cloud API строго требует международный формат E.164 (только цифры с префиксом страны, например 79991234567). Препроцессинг номеров на стороне бэкенда до отправки в шлюз исключает отказ в обработке вызова со стороны API.

2. Рейтинг качества телефонного номера (Quality Rating)

Алгоритмы Meta непрерывно оценивают долю жалоб на спам и блокировок вашего бизнес-аккаунта. Отправка исключительно служебных сообщений по согласованным шаблонам гарантирует сохранение высокого статуса качества (Green/High). Попытка маскировки маркетинговых предложений под транзакционные уведомления снижает уровень до критического (Red) и влечет урезание суточных лимитов диалогов (Tier limits).

3. Обработка входящих статусов доставки (Delivery Receipts)

Сервер приложения должен принимать обратные вебхуки с событиями sent, delivered, read и failed. Если телефон не зарегистрирован в мессенджере или отправка завершилась ошибкой таймаута, бэкенд должен мгновенно задействовать резервный канал (Fallback) — отправку классического SMS-сообщения, гарантируя своевременное информирование покупателя.

—

Свяжитесь с инженерной командой Wagate или разверните тестовую среду, чтобы настроить прямое подключение транзакционных уведомлений для вашего интернет-магазина уже сегодня.

—

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

Требуется ли подтвержденный Meta Business Manager для отправки трек-номеров?

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

Что произойдет, если у клиента нет установленного приложения WhatsApp?

В случае отправки на номер без зарегистрированного аккаунта WhatsApp шлюз Meta возвращает статус ошибки через Webhook. Платформа Wagate фиксирует сбой доставки, что дает возможность настроить автоматический резервный сценарий — например, мгновенную отправку SMS-сообщения с аналогичным текстом через резервного оператора связи.

Какова разница в тарификации между шаблонами Utility и Marketing?

Стоимость шаблонных диалогов Meta напрямую зависит от их категории. Сообщения категории Utility тарифицируются существенно дешевле маркетинговых рассылок. При прямом подключении через Wagate вы оплачиваете себестоимость сообщений непосредственно в Meta без скрытых посреднических наценок за факт отправки.

Может ли покупатель ответить на статусное уведомление о доставке?

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

Автор Команда WAGate

Новости продукта и инструкции от команды WAGate — платформы WhatsApp Cloud API для магазинов, CRM и приложений.

Попробуйте на своём номере.

WhatsApp, Messenger, Instagram и ИИ-чат-бот — 7 дней бесплатно, без банковской карты.

Начните 7-дневный бесплатный период