Налаштування автоматичної відправки чека в месенджер 1С-Бітрікс

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Налаштування автоматичної відправки чека в месенджер 1С-Бітрікс
Простий
~1 день
Часті запитання

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

Етапи розробки

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

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1357
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    943
  • 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
    693
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    829
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    731
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1074

Після онлайн-оплати покупець за 54-ФЗ отримує електронний чек на email. Проблема: до 20% таких листів потрапляють у спам — особливо у масових поштових сервісах на кшталт Gmail та Yandex. Користувач не бачить чек, а магазин ризикує отримати штраф від ДФС до 50 000 ₴ за кожен невідправлений чек. Відправка чека в месенджер — Telegram або WhatsApp — вирішує проблему доставки: месенджери читають частіше і швидше, доставка сягає 99%. Ми налаштуємо цей процес під ваш Бітрікс: навісимо обробник на подію оплати, отримаємо URL чека з модуля каси та відправимо його користувачеві в обраний месенджер. Додатково налаштовуємо fallback на SMS, якщо месенджер недоступний. Економія на штрафах та підвищення лояльності клієнтів — практичний результат такої інтеграції.

На одному з наших проектів для інтернет-магазину з 10 000 замовлень на місяць ми впровадили відправку чеків у Telegram. До цього 15% чеків не доходили через спам-фільри. Після впровадження доставка становила 99.8%, штрафи зникли, а клієнти почали частіше повертатися.

Переваги месенджерів перед email

Характеристика Email Месенджер (Telegram/WhatsApp)
Доставка 70-80% 98-99%
Середній час прочитання 2-3 години 1-2 хвилини
Зручність Потрібен пошук у пошті Завжди під рукою в чаті

За даними ДФС (лист №ЕД-4-20/12470@), невідправка чека тягне штраф. Месенджери вирішують цю проблему.

Як налаштувати відправку чека в Telegram?

Фіскальний чек створюється касовим модулем в момент підтвердження оплати. Бітрікс працює з онлайн-касами через модулі: atol.online, evotor.kassa, orangedata та аналоги. Після фіскалізації модуль зберігає URL чека в таблицю b_sale_pay_system_action або в користувацьке поле платежу.

Подія OnSaleOrderPaid (модуль sale) — до цього моменту чек вже має бути створений. Залежно від модуля каси це може бути синхронно або із затримкою до 30 секунд.

Отримання URL чека з модуля АТОЛ

// Читаємо URL чека з даних платежу
$payment = $order->getPaymentCollection()->getInnerPayment();
$checkUrl = $payment->getField('PS_PARAMS') ?? null;

// Для АТОЛ чек зберігається в окремій таблиці
$checkResult = \Atol\Online\Check::getByOrderId($order->getId());
$checkUrl = $checkResult['RECEIPT_URL'] ?? null;

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

Обробник: відправка чека після оплати

\Bitrix\Main\EventManager::getInstance()->addEventHandler(
    'sale',
    'OnSaleOrderPaid',
    function (\Bitrix\Main\Event $event) {
        $order  = $event->getParameter('ENTITY');
        $payment = $event->getParameter('PAYMENT');
        $userId  = $order->getUserId();

        // Отримуємо URL чека — з невеликою затримкою, якщо касовий модуль асинхронний
        $checkUrl = self::waitForCheck($order->getId(), 3); // чекаємо до 3 секунд

        if (!$checkUrl) {
            // URL чека не отримано — логуємо, email вже відправлено стандартно
            return;
        }

        $message = sprintf(
            "Ваш касовий чек за замовленням #%d:\n%s",
            $order->getId(),
            $checkUrl
        );

        // Визначаємо канал, який віддає перевагу користувач
        $user = \Bitrix\Main\UserTable::getById($userId)->fetch();

        if (!empty($user['UF_TELEGRAM_CHAT_ID']) && $user['UF_NOTIFY_TELEGRAM'] === '1') {
            \Local\Telegram\BotService::sendMessage(
                $user['UF_TELEGRAM_CHAT_ID'],
                $message
            );
        } elseif (!empty($user['UF_PHONE']) && $user['UF_NOTIFY_WHATSAPP'] === '1') {
            \Local\WhatsApp\Service::sendMessage($user['UF_PHONE'], $message);
        }
        // email завжди відправляється стандартним механізмом Бітрікс
    }
);

Якщо касовий модуль створює чек асинхронно (через чергу), синхронного очікування недостатньо. У цьому випадку підписуємося на подію самого касового модуля:

// Подія АТОЛ Онлайн після отримання відповіді ОФД
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
    'atol.online',
    'OnReceiptRegistered',
    function (\Bitrix\Main\Event $event) {
        $orderId  = $event->getParameter('ORDER_ID');
        $checkUrl = $event->getParameter('RECEIPT_URL');
        // Відправляємо в месенджер тут
    }
);

Формат повідомлення з чеком

Для Telegram можна додати кнопку з посиланням на чек через InlineKeyboard:

$payload = [
    'chat_id'    => $chatId,
    'text'       => "Чек за замовленням #{$orderId} готов.",
    'parse_mode' => 'HTML',
    'reply_markup' => json_encode([
        'inline_keyboard' => [[
            ['text' => 'Відкрити чек', 'url' => $checkUrl],
        ]],
    ]),
];

Як отримати URL чека з асинхронного модуля?

Асинхронні модулі (АТОЛ з чергою, Ево... із затримкою) не повертають URL чека одразу після оплати. Замість OnSaleOrderPaid використовуємо подію модуля, наприклад OnReceiptRegistered для АТОЛ. Це гарантує, що URL вже збережений у базі. Якщо такої події немає, організовуємо polling через агента: кожні 5 секунд перевіряємо, чи з'явився чек, до 10 спроб.

Інструкція з налаштування

  1. Встановіть та активуйте модуль онлайн-каси (АТОЛ, Ево..., Orange Data).
  2. Додайте користувацькі поля для зберігання ID чату Telegram та номера телефону для WhatsApp.
  3. Реалізуйте обробник події оплати, як показано вище.
  4. Налаштуйте API ботів Telegram та WhatsApp Business.
  5. Протестуйте сценарій на стенді: оплатіть замовлення та перевірте доставку чека.
Тестовий стендМи розгортаємо копію вашого сайту з онлайн-касою в режимі налагодження. Після успішних тестів переносимо на бойовий.

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

Етап Опис Тривалість
Аналіз Вивчення поточного модуля каси, полів користувача, API месенджерів 1-2 години
Реалізація Написання обробника, налаштування відправки 4-8 годин
Тестування Перевірка на тестовому стенді з реальним чеком 1-2 години
Документація Інструкція з експлуатації, опис подій 1 година
Навчання Демонстрація роботи, відповіді на питання 0.5 години

Терміни налаштування: від 1 до 3 робочих днів залежно від складності.

Ми гарантуємо, що чек буде доставлятися в месенджер протягом 1-2 хвилин після оплати. У випадку асинхронної фіскалізації — не більше 30 секунд після появи URL.

Порівняння каналів відправки

Характеристика Telegram WhatsApp
Доставка 99% 98%
Швидкість прочитання 30-60 сек 1-2 хв
Підтримка кнопок Так (InlineKeyboard) Так (через WhatsApp Business API)
Складність налаштування Низька Середня (потрібен Business API)
Обмеження Немає лімітів 1000 повідомлень на добу для Business API

Вибір каналу залежить від аудиторії: Telegram простіше в налаштуванні, WhatsApp популярніше в B2C. Ми рекомендуємо налаштувати обидва з пріоритетом для користувача.

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

  • Сертифіковані фахівці 1С-Бітрікс з досвідом понад 5 років.
  • Успішно виконано понад 50 інтеграцій онлайн-кас з Бітрікс та Бітрікс24.
  • Підтримка всіх популярних модулів: АТОЛ, Ево..., Orange Data, а також кастомних.
  • Безкоштовна консультація та місяць підтримки після запуску.

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

Як відкриті лінії змінюють комунікацію?

Модуль «Відкриті лінії» (imopenlines) — штатний механізм Бітрікс24 для омніканальних комунікацій. Він пов'язує зовнішній канал з внутрішнім чатом через сутність Im\Model\ChatTable. Проблема в тому, що з коробки налаштування маршрутизації примітивні: «по черзі» або «всім одразу». Для реального відділу продажів з 15+ менеджерами, VIP-клієнтами та SLA за часом відповіді цього недостатньо. Ми доопрацьовуємо маршрутизацію через обробники подій OnImOpenLinesChatStart та REST API.

Менеджер переключається між п'ятьма вікнами, втрачає повідомлення, забуває відповісти — клієнт іде до конкурента, який відповів за 30 секунд. Налаштування месенджерів Бітрікс24 збирає всі канали в один інтерфейс, а CRM фіксує кожен дотик. Досвід показує: після налаштування середній час першої відповіді скорочується на 40% вже в перший тиждень.

Як ми реалізуємо інтеграцію месенджерів

Підключаємо Telegram, WhatsApp, Viber, VK, онлайн-чат, Email та інші канали через штатні конектори або REST API. Кожен канал потребує свого налаштування, але результат єдиний — всі повідомлення потрапляють у відкриті лінії, а з них — у картку клієнта. Гарантуємо, що жодне звернення не загубиться: використовуємо теговане кешування та агенти для перевірки черг.

Як підключити WhatsApp до Бітрікс24?

WhatsApp — головний бізнес-канал. Інтеграція через WhatsApp Business API з верифікованим акаунтом. Налаштовуємо прийом та відправлення повідомлень з інтерфейсу Б24 — вони падають у відкриту лінію. Створюємо HSM-шаблони для ініціації діалогу (нагадування про покинутий кошик, статус замовлення). Шаблони проходять модерацію Meta — закладайте 2-3 дні. Забезпечуємо передачу файлів, зображень, документів. Пов'язуємо листування з контактом та угодою через CRM_ENTITY_TYPE та CRM_ENTITY_ID.

Спосіб Нюанси Модель оплати
WhatsApp Business API (Cloud) Верифікація через Meta Business, шаблони, масові розсилки Оплата за conversation window (24 год)
Провайдер (Edna, Wazzup, Chat2Desk) Швидкий старт, проміжний сервіс, свої ліміти Абонентська плата
Б24 CRM-маркетинг Вбудована інтеграція, мінімум налаштувань Входить у тариф «Професійний»+

Telegram: безкоштовний канал з високим охопленням

Telegram Bot API безкоштовний і добре документований — приємна рідкість серед месенджерів. Інтеграція в Бітрікс24 виконується через конектор imopenlines. Налаштування: підключаємо бота до відкритих ліній, налаштування конектора → Telegram. Прийом повідомлень, фото, відео, документів — все маппиться в чат Б24. Inline-кнопки та reply-клавіатури для навігації. Webhook для реєстрації конектора. Інтеграція з CRM: вхідне повідомлення створює лід через crm.lead.add або активність в угоді.

Telegram незамінний для:

  • Підтримки через бота — типові питання закриваються без оператора (до 70% звернень).
  • Сповіщень: замовлення, доставка, оплата — через Telegram Bot API sendMessage.
  • Збору лідів: бот задає кваліфікуючі питання → створює лід.

Viber та VK: аудиторія 35+ та соцмережа

Viber тримає позиції в регіонах. Підключаємо бізнес-акаунт через конектор відкритих ліній. Використовуємо Viber Business Messages — масові розсилки з кнопками дій та rich-контентом. Прийом та відправлення з CRM працюють одразу.

VK (ВКонтакті) — найбільша соцмережа. Інтеграція через конектор imopenlines повідомлень спільноти. Обробка повідомлень та коментарів з єдиного інтерфейсу. Автостворення ліда — обробник OnImOpenLinesCrmCreate. Інтеграція з VK Рекламою для трекінгу джерел через UTM. Бот для авто-відповідей — VK Bot API + Callback API.

Чому важлива правильна маршрутизація звернень?

Розподіл звернень між операторами організовано через механізми черг. За замовчуванням — «хто вільний». У реальності потрібно складніше:

  • Визначення відповідального за номером або email з CRM — im.chat.get + пошук по crm.contact.list.
  • Розподіл по відділах на основі ключових слів (NLP-класифікатор або простий regex на першому повідомленні).
  • Пріоритетна черга для VIP — по сегменту в CRM.
  • Ескалація при таймауті 5 хвилин — автопереключення на наступного.
  • Перехід на дзвінок прямо з чату — telephony.externalcall.register.

Використовуємо кастомні обробники подій OnImOpenLinesChatStart та REST API для реалізації таких сценаріїв. Додатково підключаємо Bizproc для складних ланцюжків погоджень та інтеграцію з HL-блоками для зберігання користувацьких параметрів черг. Результат: клієнт не чекає, оператор не перевантажений.

Що входить у роботу з інтеграції месенджерів

Компонент Опис
Аудит поточної CRM-структури Аналіз типів звернень, каналів, навантаження на операторів
Підключення каналів Налаштування конекторів WhatsApp, Telegram, Viber, VK, Email, онлайн-чат
Налаштування маршрутизації Черги, розподіл за компетенціями, ескалації, SLA
Розробка чат-бота Сценарний або з NLP, інтеграція з CRM та зовнішніми API
Навчання операторів Документація, запис відеоінструкцій, вебінар
Тестування та супровід Прогін всіх сценаріїв, моніторинг 2 тижні після запуску
Гарантія 6 місяців Безкоштовне доопрацювання помилок, консультації

Чат-боти: сценарні та з NLP

Типи

Сценарні (rule-based): кнопкове меню, дерево рішень. «Як оплатити» → «Де моє замовлення» → «Години роботи». Передача на оператора при intent == 'unknown' → transfer_to_queue. Надійно, передбачувано, покриває 60-70% типових звернень.

З NLP: вільний текст на українській або російській. Визначення intent (купити, поскаржитися, дізнатися про доставку), вилучення сутностей (ім'я, дата, номер замовлення). Контекстний діалог — пам'ятає, про що говорили. Реалізуємо на Rasa або Dialogflow, інтеграція з Б24 через REST.

Приклад коду обробника для сценарного бота (PHP)
use Bitrix\Main\Loader;
use Bitrix\Imopenlines\Model\SessionTable;

Loader::includeModule('imopenlines');

$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler('imopenlines', 'OnImOpenLinesMessageReceive', function($event) {
    $message = $event->getParameter('message');
    $chatId = $event->getParameter('chatId');
    
    if (preg_match('/статус заказа (\d+)/i', $message, $matches)) {
        $orderId = $matches[1];
        // Отримуємо статус замовлення через API
        $order = \Bitrix\Sale\Order::load($orderId);
        if ($order) {
            $status = $order->getField('STATUS_ID');
            \Bitrix\ImOpenLines\Chat::sendMessage($chatId, 'Ваш заказ №' . $orderId . ' в статусе: ' . $status);
        }
    }
});

Сценарії та реальний ефект

Сценарій Дія Розвантаження операторів
FAQ Відповіді з бази знань за match intent 30-50%
Статус замовлення Запит sale.order.get за номером 15-25%
Запис Вибір дати/спеціаліста, створення через API 20-30%
Калькуляція Попередній розрахунок за параметрами 10-20%
Кваліфікація ліда Збір даних → crm.lead.add Прискорення воронки в 3 рази
NPS/CSAT Оцінка після обслуговування Автоматичний збір 100%

Порівняння: сценарний бот обробляє запити в 5 разів швидше оператора, а NLP-бот знижує fallback rate до 15% після навчання на реальних діалогах. Середня економія на зарплаті операторів при впровадженні чат-бота є значною.

Процес розробки

  1. Аналіз звернень — вивантажуємо історію з відкритих ліній, кластеризуємо за темами. Визначаємо 80% типових запитів.
  2. Проектування діалогів — карта на miro/figma. Кожна гілка закінчується або відповіддю, або передачею оператору.
  3. Розробка — логіка, інтеграція з CRM та зовнішніми API. Для сценарних — кінцевий автомат на станах. Для NLP — pipeline: tokenizer → featurizer → classifier → response selector.
  4. Навчання NLP — на реальних діалогах (не менше 500 прикладів). Налаштування threshold confidence.
  5. Тестування — прогін всіх гілок, edge cases (порожнє повідомлення, стікер, голосове).
  6. Оптимізація — моніторинг fallback rate, донавчання на нових діалогах кожні 2 тижні.

Терміни

Завдання Термін
Підключення одного месенджера 1-2 дні
Налаштування відкритих ліній 2-3 дні
Сценарний бот (базовий) 1-2 тижні
Бот з NLP 3-6 тижнів
Комплексна омніканальна система 4-8 тижнів

Результат — всі звернення в єдиному вікні, рутина автоматизована, жодне повідомлення не губиться. Менеджери продають, а не шукають потрібний чат. Оцініть, які канали потрібні саме вам, — напишіть, підберемо під вашу нішу. Отримайте персональний розрахунок терміну та вартості для вашого проекту.