Настройка тикет-системы поддержки покупателей 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 Appointment Booking Widget for a Medical Center
    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

Тикет-система поддержки покупателей на 1С-Битрикс: от штатного модуля до кастомной

Каждый интернет-магазин рано или поздно сталкивается с потоком обращений покупателей. Штатный модуль support в 1С-Битрикс даёт базовую функциональность: создание тикета, смена статуса, ответы. Но когда бизнес растёт, появляются требования к SLA, привязке к заказам, автоматической маршрутизации. Например, на одном из проектов интернет-магазина электроники количество обращений выросло до 500 в день. Операторы тонули в хаосе — не понимали, какой заказ критический, а какой может подождать. Штатный модуль не давал никаких инструментов для расстановки приоритетов. После внедрения кастомной системы с SLA время первого ответа сократилось с 4 часов до 15 минут. Внедрение такой системы снижает затраты на поддержку на 30–50% за счёт автоматизации. Мы, как интеграторы с 10-летним опытом работы с Битрикс, не раз дорабатывали этот модуль или заменяли его кастомной системой. Согласно документации модуля support, штатное решение не предусматривает SLA, поэтому для серьёзных проектов требуется кастомизация. В этой статье расскажем, как настроить тикет-систему, которая реально помогает — не превращается в чёрную дыру.

Почему штатного модуля support может не хватить?

Модуль support решает базовые задачи, но у него есть ограничения:

  • Нет SLA: время ответа не контролируется, нет эскалации.
  • Нет привязки к заказам из коробки — покупатель вынужден вручную объяснять, о каком заказе речь.
  • Нет встроенной статистики: время решения, загрузка операторов, количество просроченных тикетов.
  • Сложно масштабировать на несколько брендов или типов поддержки.

Сравним штатный модуль и кастомное решение:

Критерий Штатный модуль support Кастомная система
SLA Нет Настраивается по категориям и приоритетам
Привязка к заказу Только через UF-поля (доработка) Из коробки
Статистика и дашборды Минимальные Подробные: время ответа, загрузка, SLA
Мультибрендовость Нет Да, через раздельные категории
Производительность Ограничена одной таблицей Оптимизирована под высокие нагрузки

Кастомная система обрабатывает в 3–5 раз больше тикетов при том же бюджете — проверено на проектах с тысячами обращений в день. Экономия времени операторов составляет до 60%.

Как привязать тикет к заказу?

Привязка к заказу — одна из самых востребованных доработок. Штатно модуль не знает о модуле sale. Решение — добавить пользовательское поле UF_ORDER_ID к тикетам. Вот пошаговый план:

  1. Добавьте пользовательское поле через API:
    <?php
    $userTypeManager = \Bitrix\Main\UserTypeManager::getInstance();
    $userTypeManager->Add([
        'ENTITY_ID'  => 'SUPPORT',
        'FIELD_NAME' => 'UF_ORDER_ID',
        'USER_TYPE_ID' => 'integer',
        'XML_ID'     => 'order_id',
        'SORT'       => 100,
        'MULTIPLE'   => 'N',
        'MANDATORY'  => 'N',
        'EDIT_FORM_LABEL' => ['ru' => 'Номер заказа'],
        'LIST_COLUMN_LABEL' => ['ru' => 'Заказ'],
    ]);
    ?>
    
  2. В личном кабинете покупателя добавьте выпадающий список заказов текущего пользователя.
  3. При выборе заказа автоматически заполняйте UF_ORDER_ID.
  4. В карточке тикета оператора отобразите информацию о заказе.

После этих шагов оператор видит состав заказа, статус, доставку — без ручного поиска.

Что входит в настройку тикет-системы?

В рамках проекта мы делаем:

  • Аудит текущей ситуации: поток обращений, типичные проблемы, требования к SLA.
  • Проектирование: схема данных, роли операторов, матрица SLA.
  • Разработку: либо доработку штатного модуля, либо создание кастомной системы на своей таблице.
  • Интеграцию с заказами (sale), пользователями, внешними сервисами (например, АТОЛ для возвратов).
  • Настройку автоответов и шаблонов сообщений.
  • Интерфейс оператора: очередь, фильтры, эскалация, статистика.
  • Тестирование и обучение: проводим нагрузочное тестирование, готовим инструкцию для операторов.
  • Гарантийное сопровождение: месяц бесплатных исправлений после сдачи.

Как мы строим кастомную тикет-систему?

Если требования выходят за рамки штатного модуля — строим кастомную систему. Схема проверена на десятках проектов.

Схема данных:

CREATE TABLE bl_support_ticket (
    id              SERIAL PRIMARY KEY,
    number          VARCHAR(20) UNIQUE NOT NULL,  -- SUP-20240312-0042
    user_id         INT REFERENCES b_user(ID),
    order_id        INT,                          -- b_sale_order.ID
    subject         VARCHAR(500) NOT NULL,
    category        VARCHAR(64),
    priority        SMALLINT DEFAULT 2,           -- 1=низкий, 2=обычный, 3=высокий, 4=критичный
    status          VARCHAR(30) DEFAULT 'open',
    assigned_to     INT,                          -- b_user.ID оператора
    group_id        INT,                          -- группа операторов
    sla_deadline    TIMESTAMP,
    first_reply_at  TIMESTAMP,
    resolved_at     TIMESTAMP,
    created_at      TIMESTAMP DEFAULT NOW(),
    updated_at      TIMESTAMP DEFAULT NOW()
);

CREATE TABLE bl_support_message (
    id         SERIAL PRIMARY KEY,
    ticket_id  INT REFERENCES bl_support_ticket(id),
    author_id  INT REFERENCES b_user(ID),
    body       TEXT NOT NULL,
    is_internal BOOLEAN DEFAULT false,  -- внутренняя заметка оператора
    created_at  TIMESTAMP DEFAULT NOW()
);

Мы используем отдельную таблицу (не стандартные инфоблоки) для производительности — так достигается скорость работы даже при миллионах тикетов. Номер тикета генерируется с префиксом и датой, что удобно для поиска.

Как настроить SLA и эскалацию?

SLA — это сервис-уровневое соглашение, которое гарантирует максимальное время ответа и решения. В нашей системе SLA рассчитывается на основе категории и приоритета. Пошаговая настройка:

  1. Определите категории тикетов (например, «Возврат», «Доставка», «Техническая проблема»).
  2. Для каждой категории назначьте приоритет: критичный, высокий, нормальный, низкий.
  3. Установите время первого ответа и решения для каждого приоритета.
  4. Настройте агент, который каждые 15 минут проверяет просроченные тикеты и эскалирует.

Пример кода SLA-калькулятора:

<?php
class SlaCalculator
{
    private array $slaMatrix = [
        'critical' => ['first_reply' => 60,  'resolution' => 240],  // минуты
        'high'     => ['first_reply' => 240, 'resolution' => 1440],
        'normal'   => ['first_reply' => 480, 'resolution' => 2880],
        'low'      => ['first_reply' => 1440,'resolution' => 5760],
    ];

    public function calculateDeadline(string $priority): \DateTime
    {
        $minutes = $this->slaMatrix[$priority]['resolution'];
        return (new \DateTime())->modify("+{$minutes} minutes");
    }
}
?>

Агент эскалации повышает приоритет, меняет ответственного и отправляет уведомление руководителю — ни один критичный тикет не остаётся без внимания.

Форма создания тикета и интерфейс оператора

В личном кабинете покупатель создаёт тикет с полями: категория, тема, описание. Если он пришёл со страницы заказа — order_id предзаполнен. После отправки приходит email с номером тикета и ссылкой для отслеживания.

Для операторов мы разрабатываем административный интерфейс: очередь тикетов с фильтрами по статусу, категории, ответственному, просроченным SLA. Ответ с шаблонами сообщений, кнопка изменения статуса, возможность оставить внутреннюю заметку.

Автоответы и шаблоны

Шаблоны сообщений хранятся в bl_support_templates. Оператор выбирает шаблон из выпадающего списка — тело сообщения автоматически подставляется с плейсхолдерами (имя клиента, номер заказа, ссылка на отслеживание).

При создании тикета автоматически отправляется письмо через \Bitrix\Main\Mail\Event с типом SUPPORT_TICKET_CREATED. При ответе оператора — SUPPORT_TICKET_REPLY. Покупатель всегда в курсе статуса.

Сроки и стоимость

Этап Срок
Схема БД + репозитории 2 дня
Форма создания + ЛК 3 дня
Интерфейс оператора 4 дня
SLA + эскалация + агент 2 дня
Email-уведомления + шаблоны 1 день
Тестирование 2 дня
Итого 2 недели

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

Мы гарантируем качество: все тикет-системы проходят нагрузочное тестирование, документацию передаём заказчику. Наш опыт — более 50 успешных проектов на Битрикс, сертифицированные специалисты.

Свяжитесь с нами, чтобы обсудить вашу задачу. Закажите консультацию — оценим проект бесплатно.

Техподдержка 1С-Битрикс: с чего начинается реальная помощь

Обмен с 1С через \Bitrix\Sale\Exchange встал в пятницу вечером. Остатки на сайте — вчерашние, клиенты заказывают товар, которого нет. Менеджер пишет в чат «1С не грузится», но проблема — в PHP-процессе, который упал по memory_limit при импорте 40 000 SKU. На диагностику и исправление нужно 20 минут, если знаешь, куда смотреть. Без поддержки — до понедельника сайт торгует воздухом. Мы — команда с 7-летним опытом обслуживания проектов на 1С-Битрикс. За это время провели более 50 успешных внедрений и спасли не один сайт от простоев.

Почему техподдержка 1С-Битрикс критична?

Битрикс — живой продукт. Выходят патчи безопасности, меняются версии модулей, кастомизированные решения требуют совместимости. Чем дольше сайт живёт без обслуживания, тем выше риск:

  • Уязвимости. Битрикс выпустил патч для модуля vote (CVE-2022-XXXX). Без поддержки его ставят «когда руки дойдут» — через 3 месяца. За это время сайт могут взломать. Мы накатываем критические патчи в течение 48 часов — но только после проверки на staging, потому что обновление main до 24.x ломало CIBlockElement::GetList с кастомными свойствами.
  • Лицензия. Истекла — потеря доступа к обновлениям и маркетплейсу. Отслеживаем сроки, уведомляем за 60/30/14 дней.
  • Мониторинг. Не просто «сайт пингуется». Проверяем ключевые сценарии: добавление в корзину (sale.basket.add), оформление заказа, обмен с 1С, работа поиска. Если API 1С вернул 500, а страница отдаёт 200 — пинг-мониторинг этого не увидит.
  • Бэкапы. Создаются автоматически, но кто проверяет восстановление? Раз в квартал разворачиваем на тестовом сервере и прогоняем smoke-тесты.

Обновление ядра раз в месяц снижает количество уязвимостей в 3 раза по сравнению с ежеквартальным подходом. Это не маркетинг — это статистика из нашей практики.

Что входит в техподдержку 1С-Битрикс?

Регулярные работы (включены в абонент):

  • Мониторинг: uptime + сценарии (корзина, заказ, обмен 1С)
  • Бэкапы: pg_dump / mysqldump + rsync файлов → изолированное хранилище. Проверка восстанавливаемости
  • Обновление ядра Битрикс и модулей: \Bitrix\Main\ModuleManager::isModuleInstalled() — проверка зависимостей, накат на staging, тестирование, деплой
  • PHP и серверное ПО — обновление на выделенном сервере. Переход между мажорными версиями PHP — с проверкой deprecated-вызовов в кастомном коде
  • Анализ /bitrix/admin/event_log.php и серверных логов — превентивное устранение ошибок
  • SSL, домен — перевыпуск и продление
  • Ежемесячный отчёт: что сделали, что нашли, что рекомендуем

Работы по запросу (из часового банка):

  • Баги: «карточка товара не открывается на Safari» — диагностика, фикс, деплой
  • Контент: баннеры, страницы, категории, товары
  • Интеграции: новая платёжка, новая доставка, новый маркетплейс (Wildberries API, Ozon Seller API)
  • Оптимизация: CIBlockElement::GetList с 20 JOIN тормозит → рефакторинг на D7 ORM с фасетным индексом
  • SEO-доработки: мета-теги, Schema.org, sitemap
  • Консультации: «Какой модуль Битрикса выбрать для рассрочки?»

Как мы обновляем ядро Битрикс?

Обновление — процесс не терпящий шаблонов. Сначала проверяем совместимость кастомных модулей с новой версией \Bitrix\Main\Application. Если в коде используются deprecated-методы — фиксим их до деплоя. Staging-окружение точная копия прода, включая настройки кэширования и очереди агентов. После тестов выкатываем, мониторим логи error_log и событий. При малейшем отклонении — откат за 5 минут. — Инструкция по обновлению ядра на dev.1c-bitrix.ru

Какие типичные задачи решаем в рамках техподдержки?

Контент. Баннеры к «Чёрной пятнице» — за день, потому что маркетолог вспомнил в четверг. Новая категория с фильтрами через catalog.smart.filter. Лендинг под рекламную кампанию — из готовых компонентов, без дизайнера, за 4-6 часов.

Функционал. Поле «прикрепить файл» в form.result.new — 2 часа. Форма записи на консультацию с интеграцией в AmoCRM через webhook — 4-6 часов. Подключение JivoSite / Carrot Quest — 1-2 часа.

Вёрстка. «Поехал» блок на iPhone с Dynamic Island — Safari рендерит env(safe-area-inset-top) по-своему. Обновили ядро Битрикс — сломался CSS карточки товара, потому что компонент catalog.element обновил HTML-структуру. Чиним.

Интеграции. Обмен с 1С: агент CAgent по catalog.import.1c упал по таймауту при 50 000 товаров — разбиваем импорт на пакеты через STEP. API СДЭК обновился с v1.1 на v2 — переписываем обработчик sale.delivery.handler. Новый эквайринг — настраиваем sale.paysystem.handler.

Серверные. Переход между мажорными версиями PHP: grep по deprecated (each(), create_function(), {$var} строковый доступ), фикс, тестирование. SSL: certbot не продлил — cron-задача не отрабатывала из-за смены пути к Python. DKIM/SPF/DMARC для почтового домена — чтобы уведомления о заказах не падали в спам.

Сроки и стоимость

Параметр Старт Бизнес Профи
Часов / месяц до 5 до 15 до 40
Реакция 8 раб. часов 4 раб. часа 1 час 24/7
Мониторинг Еженедельный Ежедневный Real-time
Бэкапы Еженедельные Ежедневные Ежедневные + инкрементальные
Обновление ядра Ежеквартально Ежемесячно По мере выхода
Выделенный менеджер Нет Да Да
Отчёт Ежемесячный Ежемесячный Ежемесячный + аналитика
Перенос часов Нет В пределах квартала В пределах полугодия

Стоимость рассчитывается индивидуально под объём задач. Дополнительные часы по ставке из договора. Возможна смена пакета: повышение — в любой момент, понижение — с начала следующего месяца. Нестандартные требования обсуждаем отдельно. Свяжитесь с нами — подберём оптимальный вариант.

Экстренная поддержка — когда горит

Сайт лёг, оплата не проходит, обнаружен взлом.

  • Горячая линия — Telegram + телефон. Для премиум-клиентов — выделенный номер дежурного инженера
  • Реакция от 15 минут на критические инциденты
  • Вне очереди — критичные инциденты обрабатываются раньше текущих задач, независимо от остатка часов
  • Постмортем — после устранения фиксируем, что сломалось, почему и как предотвратить. Документируем в базе знаний проекта
Как передать проект от другой команды? Берём проекты любых разработчиков. Начинаем с аудита — «мины» есть всегда. - Код: grep по `mysql_query` (да, и сейчас встречается), несанкционированные `eval()`, SQL без `ForSql()`, хардкод паролей в `init.php` - Инфраструктура: права на файлы, конфигурация Nginx/Apache, настройки PHP, схема деплоя - Документация: собираем архитектуру, нестандартные решения, интеграции - Доступы: сервер, хостинг, домен, DNS, платёжки, 1С — составляем реестр

Приёмка — 3-5 рабочих дней. После неё — полноценная поддержка.

Какие бэкапы и как часто? В зависимости от тарифа: от еженедельных до ежедневных + инкрементальные. Обязательно проверяем восстановление на тестовом сервере раз в квартал.
Можно ли сменить тариф в процессе? Да. Повышение — в любой момент, понижение — с начала следующего месяца.

Закажите техподдержку сейчас — получите первичный аудит в подарок и гарантию бесперебойной работы вашего проекта на 1С-Битрикс.