Налаштування тригерних push-сповіщень 1С-Бітрікс

Клієнт втрачає 70% покинутих кошиків через затримку push-сповіщень у 1С-Бітрікс. А некоректні сценарії зниження ціни призводять до відправки повідомлень про товари, яких немає в наявності. Тригерні push-сповіщення 1С-Бітрікс — це не просто «відправити листа», а складна подійна архітектура, де кожен
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Налаштування тригерних push-сповіщень 1С-Бітрікс
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1458
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    1019
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    761
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    882
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    805
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1163

Клієнт втрачає 70% покинутих кошиків через затримку push-сповіщень у 1С-Бітрікс. А некоректні сценарії зниження ціни призводять до відправки повідомлень про товари, яких немає в наявності. Тригерні push-сповіщення 1С-Бітрікс — це не просто «відправити листа», а складна подійна архітектура, де кожен баг у логіці веде до втрати конверсії. Ми налаштовуємо таку архітектуру під ключ, гарантуючи коректну роботу кожного сценарію за 2–5 днів. За нашими даними, впровадження сценарію покинутого кошика приносить додатковий дохід від $900–1.3kів на місяць для інтернет-магазину із середнім чеком $27–39ів.

Тригерні push-сповіщення 1С-Бітрікс відрізняються від сегментованих розсилок одним: вони відправляються автоматично у відповідь на конкретну дію користувача, а не за розкладом. Покинутий кошик через 2 години, зниження ціни на переглянутий товар, надходження у продаж позиції з вішліста — це і є тригерні сценарії. Правильно налаштовані, вони дають ROI 500–1500%, що втричі вище за звичайні email-розсилки.

Подійна архітектура в Бітрікс

Тригерні push будуються на подійній моделі Бітрікс. Кожна подія в системі — потенційний тригер. Схема роботи:

  1. Відбувається подія (додавання в кошик, перегляд товару, зміна статусу замовлення)
  2. Обробник події перевіряє умови сценарію
  3. Якщо умови виконані — завдання на відправку push відкладається в чергу із затримкою
  4. Агент Бітрікс обробляє чергу та відправляє сповіщення

Черга завдань зберігається в таблиці:

Приклад таблиці черги
CREATE TABLE custom_push_queue ( id INT AUTO_INCREMENT PRIMARY KEY, user_id INT NOT NULL, scenario VARCHAR(50) NOT NULL, payload JSON, send_at DATETIME NOT NULL, status ENUM('pending', 'sent', 'cancelled') DEFAULT 'pending', created_at DATETIME, INDEX idx_send_at (send_at, status), INDEX idx_user_scenario (user_id, scenario) ); 

Джерело: офіційна документація 1С-Бітрікс

Ключові сценарії

Покинутий кошик

Найцінніший сценарій. Логіка:

// Обробник OnSaleBasketItemSaved AddEventHandler('sale', 'OnSaleBasketItemSaved', function($basketItem) { $userId = (int)$basketItem->getField('USER_ID'); if (!$userId) return; // Тільки авторизовані // Скасовуємо попереднє завдання для цього користувача PushQueueTable::cancelByUserAndScenario($userId, 'abandoned_cart'); // Ставимо нове — через 2 години PushQueueTable::add([ 'USER_ID' => $userId, 'SCENARIO' => 'abandoned_cart', 'PAYLOAD' => json_encode(['cart_url' => '/cart/']), 'SEND_AT' => new \Bitrix\Main\Type\DateTime(date('Y-m-d H:i:s', time() + 7200)), 'STATUS' => 'pending', 'CREATED_AT' => new \Bitrix\Main\Type\DateTime(), ]); }); 

Після оформлення замовлення завдання скасовується. Якщо користувач не оформив — через 2 години приходить push.

Зниження ціни

Вимагає зберігання історії переглядів та моніторингу зміни цін:

// При зміні ціни торгової пропозиції (OnBeforeIBlockElementUpdate) AddEventHandler('iblock', 'OnAfterIBlockElementUpdate', function(&$fields) { $elementId = (int)$fields['ID']; $newPrice = getElementPrice($elementId); // Знаходимо користувачів, які переглядали цей товар $viewers = ProductViewHistoryTable::getUsersByProduct($elementId, 30); // за 30 днів foreach ($viewers as $viewer) { $oldPrice = ProductPriceHistoryTable::getLastPrice($elementId, $viewer['USER_ID']); if ($newPrice < $oldPrice * 0.9) { // Знижка 10%+ PushQueueTable::add([ 'USER_ID' => $viewer['USER_ID'], 'SCENARIO' => 'price_drop', 'PAYLOAD' => json_encode(['product_id' => $elementId, 'new_price' => $newPrice]), 'SEND_AT' => new \Bitrix\Main\Type\DateTime(), // Негайно 'STATUS' => 'pending', ]); } } }); 

Зниження ціни на переглянутий товар дає додатковий дохід близько $1.8k–2.6kів на місяць.

Надходження в наявність

Через обробник зміни кількості в b_catalog_store_product або при синхронізації з 1С.

Статус замовлення

Обробник події OnSaleStatusOrderChange. Push відправляється негайно при кожній зміні статусу.

Чому покинутий кошик — найприбутковіший сценарій?

Тому що користувач уже виявив намір купити. Push з нагадуванням через 2 години повертає до 15% забутих кошиків. Це вище, ніж у email-розсилок (5–10%), і значно швидше. Ми впроваджуємо цей сценарій в першу чергу, оскільки окупність настає в перший тиждень. При ROI 500–1500% витрати на розробку окупаються за 1-2 місяці.

Як налаштувати тригерні push і не прогоріти на трафіку?

Головна помилка — ігнорувати дедуплікацію та часові пояси. Без дедуплікації користувач може отримати три push за годину. Правила, які ми закладаємо:

  • Один сценарій — не частіше разу на 24 години на користувача
  • Не відправляти push з 23:00 до 9:00 (за таймзоною користувача)
  • Якщо користувач вже купив після події — скасувати завдання

Таймзона користувача береться з його профілю або геолокації при реєстрації.

Агент обробки черги

Агент Бітрікс запускається щохвилини:

Приклад реалізації агента
function ProcessPushQueue(): string { $now = new \Bitrix\Main\Type\DateTime(); $records = PushQueueTable::getList([ 'filter' => ['=STATUS' => 'pending', '<=SEND_AT' => $now], 'limit' => 100, ]); while ($record = $records->fetch()) { $tokens = PushTokenTable::getByUserId($record['USER_ID']); if (!empty($tokens)) { $message = PushScenario::buildMessage($record['SCENARIO'], json_decode($record['PAYLOAD'], true)); PushSender::send($tokens, $message); } PushQueueTable::update($record['ID'], ['STATUS' => 'sent']); } return __FUNCTION__ . '();'; } 

Порівняння сценаріїв за складністю та ROI

Сценарій Складність Середній ROI Час впровадження
Покинутий кошик Середня 500–1500% 2–3 дні
Зниження ціни Висока 300–800% +2 дні
Надходження в наявність Середня 200–600% +2 дні
Статус замовлення Низька 100–300% 1 день

Строки виконання

Обсяг робіт Строк
Покинутий кошик + зміна статусу 2–3 дні
Зниження ціни + надходження в наявність +2 дні
Дедуплікація + таймзони + аналітика +1–2 дні

Кожен робочий тригерний сценарій — це автоматизований продавець, який не бере зарплату.

Перед початком розробки ми аналізуємо поточну подійну модель, виявляємо неефективні сценарії та проектуємо нові. Для кожного тригера визначаємо точні умови та затримки, а також налаштовуємо дедуплікацію та таймзони.

Що входить у роботу

  • Аналіз поточної подійної моделі та торгового каталогу
  • Проектування схеми сценаріїв з урахуванням бізнес-логіки
  • Реалізація обробників, черг та агентів
  • Налаштування дедуплікації та часових поясів
  • Інтеграція з push-сервісами (Firebase, Bitrix Push)
  • Навантажувальне тестування: перевіряємо 1000+ одночасних подій
  • Документація за сценаріями та інструкція для оператора
  • Гарантія на кожен сценарій — 30 днів безлімітної підтримки

Наш досвід — 5+ років у Бітрікс-розробці, понад 50 проектів з тригерними push. За даними власних проектів, ROI тригерних push-кампаній досягає 1500% при правильному налаштуванні. Замовте налаштування тригерних push-сповіщень 1С-Бітрікс — отримайте перших клієнтів вже завтра. Зв'яжіться з нами для аудиту вашого проекту — ми оцінимо потенціал тригерних push за один день.