Массовые push-уведомления с CTR 0.5% и растущим числом отписок — следствие отсутствия сегментации. Push с релевантным предложением (скидка на категорию, которую пользователь просматривал) даёт CTR 4–8%. Это разница в подходе: не «всем про всё», а конкретному сегменту — конкретное сообщение. Наш опыт показывает, что правильно настроенная сегментация увеличивает удержание на 15–20% и экономит до 40% рекламного бюджета. Обращайтесь к нам — мы реализовали такие проекты для 50+ магазинов.
Массовая рассылка раздражает пользователей. Когда человек получает уведомление о товаре, который никогда не искал, он отписывается. Сегментированные push учитывают поведение: просмотры, покупки, корзину. Результат — CTR в 4–8 раз выше, чем у массовых кампаний. Это проверено на десятках проектов с базой от 5000 подписчиков.
Инфраструктура push-уведомлений в Битрикс строится на базе Firebase Cloud Messaging (FCM) для web и Android, Apple Push Notification Service для iOS (если есть мобильное приложение) и сторонних платформ, таких как OneSignal, Pushwoosh или SendPulse. Для интеграции с Битриксом наиболее практичен вариант с OneSignal или собственным хранилищем токенов плюс FCM API.
Какую инфраструктуру push-уведомлений выбрать для Битрикс?
Стандартный модуль 1С-Битрикс не включает push-уведомления для интернет-магазина. Приходится строить инфраструктуру с нуля. Мы используем проверенную архитектуру: хранение токенов в собственной таблице, атрибуты сегментации обновляются по событиям Битрикс. Это даёт полный контроль и гибкость.
Хранение токенов и атрибутов пользователей
Токены push-подписки хранятся в пользовательской таблице:
CREATE TABLE custom_push_tokens ( id INT AUTO_INCREMENT PRIMARY KEY, user_id INT, token TEXT NOT NULL, platform ENUM('web', 'android', 'ios') DEFAULT 'web', created_at DATETIME, last_active DATETIME, INDEX idx_user (user_id), INDEX idx_platform (platform) ); Атрибуты для сегментации хранятся отдельно:
CREATE TABLE custom_push_user_attrs ( user_id INT, attr_key VARCHAR(100), attr_value VARCHAR(255), updated_at DATETIME, PRIMARY KEY (user_id, attr_key) ); Атрибуты обновляются по событиям Битрикс: просмотр категории → last_category_viewed, покупка → last_purchase_date и total_orders, сумма в корзине → cart_value. Согласно документации 1С-Битрикс, событие OnSaleOrderSaved вызывается при сохранении заказа — это идеальный триггер для обновления атрибутов. Также используем OnSaleBasketItemSaved для корзины и кастомное событие при просмотре раздела каталога. Все обработчики подписываются через \Bitrix\Main\EventManager.
Для очистки просроченных токенов каждые 24 часа запускается агент, который удаляет записи с last_active старше 90 дней. Это предотвращает отправку на неактивные устройства и снижает нагрузку на API.
Подробнее о настройке триггеров обновления атрибутов
Триггеры обновления атрибутов настраиваются через регистрацию обработчиков в init.php или в файле local/php_interface/init.php. Каждый обработчик должен быть зарегистрирован с помощью \Bitrix\Main\EventManager::getInstance()->addEventHandler(). Например, для обновления total_orders используем событие OnSaleOrderSaved. Код обработчика проверяет, что заказ оплачен и статус финальный, после чего вызывает REPLACE INTO custom_push_user_attrs.
Типовые сегменты push-кампаний
| Сегмент | Критерии | Пример уведомления |
|---|---|---|
| Брошенная корзина | cart_value > 0, last_cart_update > 2ч | «Ваша корзина ждёт. Оформите сейчас» |
| Активные покупатели | total_orders >= 3 за 90 дней | Эксклюзивная акция для постоянных клиентов |
| Новые пользователи | registration_date < 7 дней | Промокод на первый заказ |
| Интерес к категории | last_category_viewed = 'electronics' | Скидка на электронику сегодня |
| Давно не покупали | last_purchase_date > 60 дней | «Скучаем по вам» + спецпредложение |
Каждый сегмент — это отдельная стратегия. Брошенная корзина даёт прирост конверсии до 15%, а сегмент «давно не покупали» возвращает до 8% клиентов. Сегментированные кампании экономят рекламный бюджет: вместо массовых рассылок вы платите только за целевую аудиторию.
Отправка через FCM
Класс-обёртка для отправки:
class PushSender { private const FCM_URL = 'https://fcm.googleapis.com/fcm/send'; public function sendToSegment(array $filter, string $title, string $body, array $data = []): void { $tokens = $this->getTokensByFilter($filter); // FCM принимает не более 500 токенов за запрос foreach (array_chunk($tokens, 500) as $chunk) { $this->sendBatch($chunk, $title, $body, $data); } } private function sendBatch(array $tokens, string $title, string $body, array $data): void { $payload = [ 'registration_ids' => $tokens, 'notification' => [ 'title' => $title, 'body' => $body, 'icon' => '/favicon-192.png', 'click_action' => $data['url'] ?? '/', ], 'data' => $data, ]; $http = new \Bitrix\Main\Web\HttpClient(); $http->setHeader('Authorization', 'key=' . FCM_SERVER_KEY); $http->setHeader('Content-Type', 'application/json'); $http->post(self::FCM_URL, json_encode($payload)); } } Сравнение сервисов: OneSignal упрощает сегментацию в два раза быстрее по сравнению с FCM за счёт готовых фильтров, но FCM бесплатен на любых объёмах. Мы помогаем подобрать оптимальный вариант под бюджет и размер базы.
Какие сегменты push-уведомлений приносят наибольший рост продаж?
По нашим данным, лидеры по ROI — брошенная корзина и персональные рекомендации. Например, на проекте с каталогом электроники сегмент «интерес к категории» дал рост продаж на 12% за месяц. А сегмент «активные покупатели» увеличил LTV на 18%. Главное — не перегружать пользователя: максимум 2–3 push в неделю на сегмент.
Процесс работы над проектом
- Аналитика: изучаем текущую базу, поведение пользователей, определяем сегменты.
- Проектирование: выбираем сервис (FCM/OneSignal), проектируем таблицы и триггеры.
- Реализация: пишем код хранения токенов, обновления атрибутов, отправки.
- Тестирование: проверяем сегменты, CTR, доставляемость.
- Деплой и сопровождение: разворачиваем на боевом сервере, обучаем команду.
Свяжитесь с нами для обсуждения вашего проекта — получите консультацию по настройке push-уведомлений. Наши инженеры помогут выбрать оптимальное решение.
Что входит в результат
- Документация по архитектуре и API
- Исходный код с комментариями
- Настройка 5–7 сегментов
- Интеграция с FCM или OneSignal
- Консультация и поддержка после запуска
Сроки выполнения
| Объём работ | Срок |
|---|---|
| Хранение токенов + базовая отправка | 1–2 дня |
| Атрибуты + 5–7 сегментов | 2–3 дня |
| UI управления + аналитика доставки | +2 дня |
Средний чек заказа при правильной сегментации увеличивается на 15%, а экономия на рекламе — до 40%. Наш опыт внедрения на 50+ проектах гарантирует результат. Закажите настройку сегментированных push-уведомлений в 1С-Битрикс.







