Когда интернет-магазин получает заказы через WooCommerce, менеджеру не всегда удобно постоянно держать открытой админку или ждать email. Для оперативной работы события магазина можно отправлять в Telegram: например, сообщать о новом заказе, успешной оплате или изменении статуса.
Такую интеграцию можно реализовать готовым плагином или собственной логикой. Выбор зависит от того, какие именно события нужны, какие данные разрешено передавать и требуется ли двусторонняя автоматизация.
Какие события WooCommerce можно отправлять в Telegram
WooCommerce предоставляет систему hooks, через которую код может реагировать на события магазина. Поэтому уведомление не обязательно привязывать только к созданию заказа.
- новый заказ;
- переход заказа в нужный статус;
- успешная оплата;
- отмена или возврат;
- появление заказа, требующего ручной проверки;
- другие бизнес-события, которые можно определить в WordPress.
Конкретный набор лучше выбирать под процесс магазина. Если отправлять в чат каждое техническое изменение, полезные сообщения быстро потеряются в шуме.
Как WooCommerce отправляет сообщение в Telegram
Telegram Bot API позволяет приложению обращаться к Telegram по HTTPS. Для отправки сообщений используется бот, созданный через официальный BotFather, а серверная часть WordPress выполняет запрос к Bot API.
Типовая цепочка выглядит так: WooCommerce фиксирует событие → обработчик WordPress формирует сообщение → сервер отправляет запрос Telegram Bot API → нужный чат получает уведомление.
Что можно добавить в сообщение
Формат зависит от задачи. Менеджеру обычно полезны номер заказа, сумма, способ оплаты, состав заказа и ссылка в административную часть. Но передавать все данные клиента только потому, что они доступны в WooCommerce, не стоит.
Лучше оставить в Telegram минимум информации, необходимой для оперативной реакции, а полную карточку заказа открывать в защищённой админке WordPress.
Уведомление о новом заказе
Самый простой сценарий — отправить сообщение после появления нового заказа. Но даже здесь важно решить, что именно считать новым заказом. Заказ может быть создан до завершения оплаты, поэтому уведомление «деньги получены» нельзя привязывать только к факту создания записи.
Если магазину важно различать заказ и оплату, эти события лучше обрабатывать отдельно.
Уведомления об оплате
Платёжные плагины WooCommerce могут менять состояние заказа после ответа платёжной системы. Для уведомлений нужно опираться на фактическую логику конкретной интеграции и WooCommerce, а не угадывать оплату по открытию страницы благодарности.
Страница браузера может быть закрыта, перезагружена или открыта повторно. Серверное событие надёжнее пользовательского перехода.
Как избежать повторных сообщений
В реальной автоматизации стоит учитывать повторную обработку событий. Webhook может быть доставлен повторно, статус может измениться несколько раз, а задача — перезапуститься после ошибки.
Для критичных уведомлений полезно хранить признак уже обработанного события или использовать собственный idempotency key. Тогда повторный запрос не создаст второе одинаковое сообщение.
Ошибки Telegram не должны ломать заказ
Отправка сообщения — вспомогательная операция. Если Telegram временно недоступен, покупатель всё равно должен иметь возможность оформить заказ.
Поэтому интеграцию лучше строить так, чтобы ошибка внешнего API логировалась и могла быть повторена отдельно, а не превращала checkout в ошибку 500.
Безопасность токена бота
Токен Telegram-бота является секретом. Его нельзя размещать в публичном JavaScript, HTML страницы или открытом GitHub-репозитории. Запросы к Bot API должны выполняться на серверной стороне.
Также полезно ограничить круг чатов, куда может отправлять сообщения конкретная автоматизация, и не выводить секреты в диагностические логи.
Готовый плагин или собственная интеграция
Если нужно одно простое уведомление с фиксированным форматом, готового решения может быть достаточно. Собственная разработка оправдана, когда нужны несколько типов событий, разные чаты, собственные условия, интеграция с CRM или действия из Telegram.
Например, магазин может отправлять новые оплаченные заказы в рабочую группу, ошибки интеграций — в технический чат, а отдельные дорогие заказы — ответственному менеджеру.
Что проверить после запуска
- новый заказ без онлайн-оплаты;
- успешную онлайн-оплату;
- неуспешную или отменённую оплату;
- повторную доставку одного события;
- смену статуса вручную;
- недоступность Telegram API;
- корректность ссылок и форматирования;
- отсутствие секретов и лишних персональных данных в сообщении.
Интеграция WooCommerce с Telegram в A.S Groups
A.S Groups занимается доработкой WordPress и WooCommerce, интеграциями API и автоматизацией рабочих процессов. Telegram можно использовать как канал оперативных уведомлений или как часть более крупной схемы с CRM и другими сервисами.
Если нужно настроить собственный сценарий, отправьте через форму контактов список событий и пример сообщения, которое должна получать команда. Подробнее — на страницах WooCommerce и автоматизации.
Обсуждение
Вопросы и комментарии
Можно уточнить детали статьи или поделиться своим опытом. Первый комментарий проходит проверку.