Розробка калькулятора зі збереженням результату в CRM Бітрікс24

Розробка калькулятора зі збереженням результату в CRM Бітрікс24 Уявіть: на сайт заходить 50 відвідувачів на годину, кожен запускає розрахунок — і 5 заявок безслідно зникають. Знайома ситуація? Причина — жорсткі ліміти REST API Бітрікс24. Хмарний тариф допускає 2 запити в секунду і 5000 на добу. П
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Розробка калькулятора зі збереженням результату в CRM Бітрікс24
Середній
~1-2 тижні

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

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

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

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

Розробка калькулятора зі збереженням результату в CRM Бітрікс24

Уявіть: на сайт заходить 50 відвідувачів на годину, кожен запускає розрахунок — і 5 заявок безслідно зникають. Знайома ситуація? Причина — жорсткі ліміти REST API Бітрікс24. Хмарний тариф допускає 2 запити в секунду і 5000 на добу. При перевищенні повертається помилка QUERY_LIMIT_EXCEEDED. Наприклад, у клієнта — мережі авторитейлерів — калькулятор вартості доставки генерував до 50 звернень на хвилину. Пряма відправка призводила до втрати 10% заявок. За 10+ років розробки на Бітріксі ми виробили надійну схему з чергою та автоматичними повторами. Нижче — повний розбір реалізації. Зв'яжіться з нами для консультації — ми оцінимо ваш проект.

Передача даних з калькулятора в CRM через REST API

Сайт на 1С-Бітрікс і Бітрікс24 — два продукти з різними API. Для передачі даних з форми в CRM використовується REST API Бітрікс24:

  • crm.lead.add — створення ліда
  • crm.deal.add — створення угоди без ліда
  • crm.contact.add + crm.deal.add — контакт + угода

Авторизація: вхідний вебхук (простий) або OAuth-додаток (для кількох порталів). Згідно з документацією https://dev.1c-bitrix.ru/rest_help/, ліміти становлять 2 запити в секунду та 5000 на добу для хмарних тарифів. Приклад створення ліда:

$webhookUrl = 'https://your-portal.bitrix24.ru/rest/1/WEBHOOK_TOKEN/'; $fields = [ 'TITLE' => 'Заявка з калькулятора: ' . $calculatorName, 'NAME' => $clientName, 'PHONE' => [['VALUE' => $clientPhone, 'VALUE_TYPE' => 'WORK']], 'EMAIL' => [['VALUE' => $clientEmail, 'VALUE_TYPE' => 'WORK']], 'COMMENTS' => $calcResultText, 'SOURCE_ID' => 'WEB', 'UF_CRM_CALCULATOR_PARAMS' => json_encode($calcParams), 'UF_CRM_TOTAL_PRICE' => $totalPrice, ]; $response = file_get_contents( $webhookUrl . 'crm.lead.add.json?' . http_build_query(['fields' => $fields]) ); $result = json_decode($response, true); 

Створення користувацьких полів для параметрів розрахунку

Користувацькі поля UF_CRM_* зберігають всі деталі розрахунку — вибрані опції, підсумкову суму, конфігурацію. Менеджер відкриває лід і одразу бачить контекст. Поля створюються заздалегідь: CRM → Ліди → Налаштування полів → Додати поле. Тип залежить від даних.

Тип даних Приклад поля Призначення
Рядок UF_CRM_TYPE Товар або послуга
Число UF_CRM_QUANTITY Кількість одиниць
Список UF_CRM_COLOR Опція вибору
Рядок (JSON) UF_CRM_PARAMS_JSON Повна конфігурація розрахунку

Як обробляти ліміти та помилки API?

Хмарний Бітрікс24 обмежує REST-запити: 2 запити в секунду, 5000 на добу (залежить від тарифу). При перевищенні — відповідь {error: "QUERY_LIMIT_EXCEEDED"}. Типова реалізація без черги втрачає 5–10% заявок при навантаженні 50 запитів/хв.

Правильне рішення:

  1. Збереження даних калькулятора в таблицю черги (highload-блок або окрема таблиця)
  2. Агент Бітрікс, кожні 30 секунд що відправляє записи пачками з урахуванням лімітів
  3. Повторна відправка при помилці з експоненційним бек-оффом (1с, 2с, 4с, 8с)
  4. Флаг is_synced для контролю статусу
function sendPendingLeadsToCRM(): string { $pendingLeads = getUnsentLeads(limit: 10); foreach ($pendingLeads as $lead) { $result = sendLeadToB24($lead); if ($result['result']) { markLeadAsSent($lead['id'], $result['result']); } else { incrementRetryCount($lead['id']); } usleep(600000); // 0.6 сек між запитами } return __FUNCTION__ . '();'; } 
Деталі конфігурації агента Агент реєструється в `/bitrix/php_interface/init.php`:
\CAgent::AddAgent( 'sendPendingLeadsToCRM();', '', 'N', 30, '', 'Y', '', 100 ); 

Параметри: період 30 секунд, модуль порожній (глобальний), активний з моменту встановлення.

Чому черга — найкращий варіант?

Пряма відправка в момент розрахунку падає при піковому навантаженні. Черга гарантує доставку: 0% втрат при коректному налаштуванні. Порівняння:

Параметр Без черги З чергою
Втрати лідів при піку 50/хв 5–10% 0%
Час створення ліда в CRM <1 сек до 30 сек
Навантаження на API пікове рівномірне

Черга в 10 разів надійніша за пряму відправку і не потребує ручного контролю.

Як не втратити жодного звернення?

Наш клієнт — небанківська фінансова організація — зіткнувся з втратою заявок при піковому навантаженні 50 звернень на хвилину. Калькулятор кредиту: сума, термін, тип забезпечення → ставка та платіж. Прямий REST-запит неможливий через ліміти.

Рішення: черга в PostgreSQL (сайт на нестандартному стеку), агент відправки кожні 15 секунд по 5 лідів, логування всіх відповідей Бітрікс24. Паралельно — негайний лист клієнту з результатами. Менеджер бачить лід в CRM максимум через 15 секунд після відправки форми. Додатково налаштовано бізнес-процес «Первинна обробка заявки»: автоматичне призначення відповідального та дедлайн першого контакту — 30 хвилин. Втрати лідів — нуль за весь період експлуатації.

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

  • Клієнтська та серверна частини калькулятора
  • Створення користувацьких полів ліда/угоди
  • Обробник з чергою та повторними спробами
  • Налаштування вхідного вебхука Бітрікс24
  • Логування всіх запитів та відповідей API
  • Моніторинг з алертом при накопиченні необробленої черги більше N записів

Строки розробки

Складність Термін Склад
Базова від 2 до 3 робочих днів Проста формула, лід з 5–10 полями, без черги
Середня від 4 до 6 робочих днів З чергою та повторними спробами
Повна від 5 до 8 робочих днів Повний моніторинг і логування

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

Ми більше 10 років розробляємо на Бітрікс, виконали 50+ інтеграцій з CRM. Гарантуємо надійність і прозорий супровід. Замовте розробку калькулятора зі збереженням результатів в CRM — зв'яжіться з нами.