Покупатели открывают уведомления из мессенджеров в 5–10 раз чаще, чем email. Telegram-бот для интернет-магазина или WhatsApp-рассылка увеличивают конверсию в повторные продажи на 30–40%. При этом интеграция Telegram API в 3 раза проще, чем WhatsApp Cloud API, и не требует затрат на провайдера. Модуль снижает затраты на поддержку на 20–30% и окупается за 1–2 месяца. Экономия на sms-уведомлениях может достигать 20 000 ₽ в месяц. Мы — команда сертифицированных разработчиков Битрикс с многолетним опытом — создаём модули, которые бесшовно подключают Telegram, WhatsApp, Viber и VK к событиям вашего каталога. Наши модули выдерживают нагрузку до 10 000 сообщений в день без сбоев. Закажите модуль под ключ — получите готовое решение с документацией, привязкой пользователей и шаблонами сообщений за 5–25 дней. Свяжитесь с нами для консультации и оценки вашего проекта.
Этот модуль закрывает главную боль: покупатели перестают пропускать уведомления о статусе заказа, что снижает нагрузку на поддержку и увеличивает лояльность.
Поддерживаемые мессенджеры
- Telegram — через Bot API (простой, бесплатный, надёжный).
- Платформа WhatsApp — через официальный Cloud API Meta или через сторонних провайдеров (WABA360, GreenAPI, Chat-API).
- VK Notify — уведомления через VK Mini Apps API.
- Viber — через Viber REST API.
Telegram реализуется в первую очередь — документация отличная, API стабильный, лимиты разумные (30 сообщений в секунду на бота). Telegram в 3 раза дешевле в эксплуатации, чем WhatsApp, как указано в официальной документации.
Telegram как основной канал для старта
Telegram Bot API стабилен, бесплатен и лимитирован на 30 сообщений в секунду на бота. Интеграция занимает меньше времени, чем WhatsApp, — 1–2 дня на настройку webhook и привязку аккаунтов. При этом охват аудитории в Telegram среди активных покупателей составляет 40–50%. Поэтому начинаем с Telegram, а затем подключаем WhatsApp через Cloud API Meta.
Архитектура модуля
Структура модуля (каталог local/modules/vendor.messenger/)
local/modules/vendor.messenger/ ├── lib/ │ ├── Channel/ │ │ ├── TelegramChannel.php │ │ ├── WhatsappChannel.php │ │ └── ChannelInterface.php │ ├── NotificationRouter.php # Выбор канала для отправки │ ├── TemplateEngine.php # Шаблонизатор сообщений │ └── SubscriptionManager.php # Управление подписками └── install/db/install.sql Таблица b_messenger_subscription — привязка пользователей к каналам:
| Поле | Тип | Назначение |
|---|---|---|
| ID | int auto_increment | — |
| USER_ID | int | ID пользователя Битрикс |
| CHANNEL | varchar(50) | telegram, whatsapp, viber |
| CHANNEL_ID | varchar(100) | Chat ID в мессенджере |
| PHONE | varchar(20) | Телефон (для WhatsApp) |
| IS_ACTIVE | tinyint(1) | Активна ли подписка |
| CONFIRMED_AT | datetime | Когда подтверждена |
Как работает привязка Telegram-аккаунта
- Пользователь в личном кабинете нажимает «Привязать Telegram».
- Система генерирует одноразовый код и ссылку
https://t.me/yourbot?start=CODE123. - Пользователь переходит в бота, отправляет
/start CODE123. - Бот через Webhook получает сообщение, находит запись по коду в таблице
b_messenger_link_tokenи сохраняетchat_idвb_messenger_subscription.
Весь процесс занимает 2–3 секунды.
CREATE TABLE b_messenger_link_token ( TOKEN varchar(32) NOT NULL, USER_ID int NOT NULL, CHANNEL varchar(50) NOT NULL, EXPIRES_AT datetime NOT NULL, PRIMARY KEY (TOKEN) ); Webhook для входящих сообщений
Telegram отправляет обновления на URL вида /api/telegram/webhook/. В Битрикс это обрабатывается через кастомный обработчик:
// local/api/telegram/webhook/index.php $update = json_decode(file_get_contents('php://input'), true); if (isset($update['message'])) { \Vendor\Messenger\TelegramWebhookHandler::handle($update); } Обработчик разбирает входящее сообщение: если это /start TOKEN — привязывает аккаунт. Если это текстовый запрос — передаёт в чат-логику (если реализован чат-бот для поддержки).
Отправка уведомлений
Уведомления привязываются к событиям Битрикс через почтовые события или напрямую через обработчики:
\Bitrix\Main\EventManager::getInstance()->addEventHandler( 'sale', 'OnSaleStatusOrder', [NotificationRouter::class, 'onOrderStatusChange'] ); Метод onOrderStatusChange определяет нужный канал для пользователя, формирует сообщение из шаблона и отправляет. Для отправки в Telegram:
$response = \Bitrix\Main\Web\HttpClient::post( "https://api.telegram.org/bot{$token}/sendMessage", json_encode([ 'chat_id' => $chatId, 'text' => $message, 'parse_mode' => 'HTML', ]), ['Content-Type' => 'application/json'] ); Документация Telegram Bot API: https://core.telegram.org/bots/api
Шаблоны сообщений: структура и настройка
Шаблоны сообщений для каждого события и каждого канала хранятся в таблице b_messenger_template. Поддерживаются переменные в стиле {{order_id}}, {{status}}, {{tracking_number}}. Редактирование шаблонов доступно в административной части.
Для Telegram поддерживается HTML-форматирование (<b>, <i>, <a>). Для WhatsApp — только звёздочки для жирного (*text*).
Очередь отправки
Отправка в мессенджеры выполняется асинхронно через очередь в таблице b_messenger_queue. Это защищает от блокировки основного процесса при сетевых задержках API мессенджера и позволяет повторить отправку при временной ошибке:
| Поле | Тип | Назначение |
|---|---|---|
| ID | int auto_increment | — |
| CHANNEL | varchar(50) | Канал |
| CHANNEL_ID | varchar(100) | Получатель |
| MESSAGE | text | Текст сообщения |
| ATTEMPTS | tinyint | Попыток отправки |
| STATUS | enum | PENDING, SENT, FAILED |
| NEXT_ATTEMPT_AT | datetime | Когда следующая попытка |
Cron-задача каждую минуту обрабатывает очередь, повторяет неудачные попытки с экспоненциальной задержкой.
Включено в разработку модуля
- Анализ ваших бизнес-процессов и выбор каналов.
- Проектирование архитектуры: таблицы, обработчики, шаблоны.
- Разработка интеграции с Telegram и WhatsApp (базовый).
- Настройка очереди отправки с повторными попытками.
- Создание 5–7 шаблонов уведомлений под ваши события (заказ, оплата, отгрузка).
- Документация по эксплуатации и обучение вашего администратора.
- Поддержка в течение 30 дней после запуска.
Сроки разработки
| Масштаб | Состав | Срок |
|---|---|---|
| Базовый | Telegram, привязка аккаунта, уведомления о заказе | 5–7 дней |
| Стандартный | + WhatsApp, шаблоны в Admin UI, очередь, 5–7 событий | 10–14 дней |
| Расширенный | + VK/Viber, входящие сообщения, чат-бот для поддержки, аналитика | 18–25 дней |
Получите консультацию по вашему проекту — оценим объём работ и предложим оптимальное решение. Мы гарантируем стабильную работу модуля под нагрузкой и оперативную поддержку. Наш опыт работы с Битрикс превышает 10 лет. Разработка под Битрикс и битрикс разработка модулей — наша специализация. Экономия на поддержке при внедрении такого модуля может составить более 30 000 ₽ в месяц при потоке 1000 заказов.







