Настройка автоматического распределения лидов в Битрикс24

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Настройка автоматического распределения лидов в Битрикс24
Простая
~1 рабочий день
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1177
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • 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 Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    747
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Настройка автоматического распределения лидов в Битрикс24

Ручное распределение лидов — узкое место в большинстве отделов продаж. Руководитель тратит время на назначения, новые лиды лежат без ответа, пока он занят. Автоматическое распределение убирает человека из этой цепочки: лид появился → назначен нужному менеджеру → менеджер получил уведомление.

Встроенные инструменты распределения

Очередь распределения — самый простой вариант. Битрикс24 назначает лиды менеджерам по круговой схеме (round-robin). Настройка: CRM → Настройки → Распределение лидов → Очередь.

Параметры очереди:

  • Список менеджеров в очереди и их порядок
  • Рабочее время (лиды в нерабочее время назначаются дежурному или ставятся в накопитель)
  • Исключения: лид не назначается менеджеру, если он в отпуске/командировке (интеграция с Отсутствиями)

Правила маршрутизации — более гибкий инструмент. Позволяет назначать лиды по условиям:

Условие Действие
Источник = «Сайт Москва» Назначить менеджеру Иванову
Источник = «Холодный звонок» В очередь «Холодные звонки»
Сумма > 500 000 ₽ Назначить старшему менеджеру
Регион = «Краснодарский край» Менеджеру Сидорову (региональный)
UTM_campaign = «vk_retarget» В воронку «Ретаргетинг»

Настройка: CRM → Настройки → Правила маршрутизации → Создать правило.

Распределение через роботов

Роботы в воронке лидов дают более тонкую настройку с условной логикой. Пример схемы:

Новый лид
  └─► [Робот: Проверить поле "Регион"]
        ├─► Москва → [Робот: Назначить ответственного = Иванов]
        ├─► СПб   → [Робот: Назначить ответственного = Петров]
        └─► Другое → [Робот: Добавить в очередь "Регионы"]

Настройка роботов: CRM → Лиды → Стадия "Новый" → Автоматизация → Добавить робота → "Изменить ответственного".

Программное распределение через REST API

Для сложной логики — распределение по загрузке менеджера, по специализации, с учётом географии — используют REST API и вебхуки:

// Вебхук на создание лида
// URL: /local/rest/lead_routing.php

$leadData = json_decode(file_get_contents('php://input'), true);
$leadId = $leadData['data']['FIELDS_AFTER']['ID'];

// Получаем данные лида
$b24 = initBitrix24Client();
$lead = $b24->call('crm.lead.get', ['id' => $leadId]);

// Определяем ответственного по логике
$responsibleId = determineResponsible($lead['result']);

// Назначаем
$b24->call('crm.lead.update', [
    'id' => $leadId,
    'fields' => ['ASSIGNED_BY_ID' => $responsibleId],
]);

// Уведомляем менеджера
$b24->call('im.notify.personal.add', [
    'USER_ID' => $responsibleId,
    'MESSAGE' => 'Вам назначен новый лид: ' . $lead['result']['TITLE'],
]);

function determineResponsible(array $lead): int
{
    // По источнику
    if ($lead['SOURCE_ID'] === 'SITE_MOSCOW') {
        return MOSCOW_MANAGER_ID;
    }

    // По загрузке (берём менеджера с наименьшим числом открытых лидов)
    global $b24;
    $managers = [MANAGER_1_ID, MANAGER_2_ID, MANAGER_3_ID];
    $loads = [];

    foreach ($managers as $managerId) {
        $count = $b24->call('crm.lead.list', [
            'filter' => ['ASSIGNED_BY_ID' => $managerId, 'STATUS_ID' => 'NEW'],
            'select' => ['ID'],
        ])['total'];
        $loads[$managerId] = $count;
    }

    asort($loads);
    return array_key_first($loads);
}

Учёт рабочего времени

При распределении важно учитывать доступность менеджера. Битрикс24 предоставляет API для проверки рабочего времени и отсутствий:

// Проверяем, на месте ли менеджер
BX24.callMethod('timeman.timecontrol.report.list', {
    filter: { USER_ID: managerId, STATUS: 'OPENED' },
}, result => {
    const isOnline = result.total() > 0;
    // Если не на месте — перенаправляем на дежурного
});

Сроки

Конфигурация Срок
Очередь round-robin + рабочее время 0,5–1 день
Правила маршрутизации + роботы 1–2 дня
Кастомная логика через REST + вебхуки 3–6 дней