Когда менеджер закрывает сделку в CRM, а логисты вручную переносят данные в TMS, теряется до 30 минут на каждую заявку — а в месяц это сотни часов операционного времени?
Ошибки ручного ввода (неправильный адрес, неверный вес) приводят к пересорту и повторной доставке, что стоит в среднем $14–20. за инцидент. Мы разрабатываем интеграцию Битрикс24 с вашей логистической системой — от создания заявки до трекинга и уведомлений. Заявка формируется автоматически при смене стадии сделки, данные получателя подтягиваются из контакта, товары — из сделки. Время на обработку сокращается с часов до секунд, а количество ошибок — до нуля. Под ключ, с гарантией стабильной работы и экономией до 60% времени отдела доставки. Средняя экономия от внедрения — до $2.7k–3.9k. в год на операционных расходах. При интеграции с несколькими перевозчиками экономия может достигать $4.5k–6.5k. Наше решение автоматизации доставки охватывает все ключевые процессы: от заявки до возврата.
Какие логистические системы и API мы интегрируем?
1С:TMS Логистика. HTTP-сервисы 1С, формат данных — JSON или XML. Основные операции: создание заявки на перевозку, получение статуса, привязка документов.
МойСклад. REST API с OAuth 2.0. Богатая документация, sandbox. Поддерживает управление заказами, отгрузками, остатками, возвратами.
СДЭК API v2. REST API, JWT-аутентификация. Расчёт стоимости, создание заказа, трекинг, список ПВЗ.
Яндекс.Доставка / DPD / Boxberry / ПЭК. У каждого свой REST API, различающийся по структуре данных и механизмам аутентификации. Для универсальной интеграции с несколькими перевозчиками используем паттерн «адаптер»: единый интерфейс внутри приложения, под каждого перевозчика — своя реализация.
WMS-системы (Manhattan, SAP Extended Warehouse Management, 1С:WMS). Как правило, SOAP или проприетарный API. Интеграция сложнее из-за устаревших протоколов.
По данным документации СДЭК API, версия v2 обрабатывает до 100 запросов в минуту со средним временем ответа 1.5 секунды.
Почему асинхронная обработка критична для интеграции?
Логистические API нестабильны: лимиты запросов, таймауты, недоступность. Поэтому мы строим асинхронную очередь (Redis + встроенные агенты Битрикс). Webhook от Битрикс24 принимается мгновенно, а вызов логистического API и обновление статусов выполняются асинхронно. Это в 2-3 раза надёжнее синхронного подхода и не блокирует работу менеджеров. Например, при таймауте в 30 секунд синхронный запрос заблокирует интерфейс, а асинхронный — просто попробует снова через 30 секунд.
Сценарии интеграции
Сделка → заявка на доставку. Сделка в Битрикс24 переходит на стадию «Передано на отгрузку» — срабатывает webhook, адаптер создаёт заявку в логистической системе. В карточку сделки записывается номер заявки (UF_LOGISTICS_ORDER_ID) и трек-номер.
Статусы доставки в CRM. Логистическая система отправляет webhook при изменении статуса: «Принято на склад», «В пути», «Доставлено», «Возврат». Адаптер обновляет стадию сделки через crm.deal.update и добавляет комментарий в timeline через crm.timeline.comment.add.
Расчёт стоимости доставки. На этапе оформления заказа (в сделке или в интернет-магазине) — запрос к API перевозчика для расчёта стоимости по весу, габаритам и адресу. Результат — в поле сделки или счёта.
Выбор ПВЗ. Для интеграций с СДЭК, Boxberry, Почтой России — виджет выбора ПВЗ на карте внутри карточки сделки. Реализуется как встроенное приложение Битрикс24 с картой (Leaflet + данные ПВЗ из API перевозчика).
Возвраты. Покупатель инициирует возврат — в CRM создаётся смарт-процесс «Возврат», который запускает процедуру в логистической системе: забор от покупателя, приёмка на склад, статус проверки товара.
Архитектура адаптера
Строим PHP-приложение, которое:
- Слушает webhook Битрикс24 (событие смены стадии сделки)
- Маппит данные сделки в формат логистической системы
- Вызывает API логистики
- Записывает ответ обратно в Битрикс24
Битрикс24 (stale change webhook) ↓ Адаптер (валидация, трансформация данных) ↓ Логистическая система API ↓ (async — через callback или polling) Адаптер (обработка статуса) ↓ Битрикс24 REST API (crm.deal.update, crm.timeline.comment.add) Пример обработки webhook на PHP:
function handleBitrixWebhook($event) { $dealId = $event['data']['FIELDS']['ID']; $deal = CRest::call('crm.deal.get', ['id' => $dealId]); $address = $deal['UF_DELIVERY_ADDRESS']; $phone = $deal['UF_DELIVERY_PHONE']; // Call CDEK API $cdek = new CdekApiClient(); $order = $cdek->createOrder([ 'recipient' => ['name' => $deal['CONTACT_NAME'], 'phone' => $phone], 'address' => $address, 'items' => $deal['PRODUCTS'] ]); CRest::call('crm.deal.update', [ 'id' => $dealId, 'fields' => ['UF_CDEK_ORDER_ID' => $order['uuid']] ]); } Подробнее об обработке ошибок
В случае недоступности API перевозчика адаптер помещает задачу в очередь Redis и повторяет запрос до 5 раз с экспоненциальной задержкой: 1, 2, 4, 8, 16 минут. Если после всех попыток API не ответил, создаётся задача в Битрикс24 для оператора с полным контекстом ошибки.Маппинг полей
Типичный набор полей, который нужно передать в логистику:
| Поле Битрикс24 | Поле логистики | Комментарий |
|---|---|---|
CONTACT.NAME + CONTACT.LAST_NAME |
recipient.name |
ФИО получателя |
UF_DELIVERY_ADDRESS |
recipient.address |
Структурированный адрес или строка |
UF_DELIVERY_PHONE |
recipient.phone |
Телефон получателя |
Товары сделки (crm.deal.productrows.get) |
cargo.items[] |
Список позиций, вес, габариты |
UF_DELIVERY_TYPE |
service_code |
Тип доставки (курьер/ПВЗ) |
UF_PVZ_CODE |
to_location.code |
Код ПВЗ, если выбрана доставка в ПВЗ |
Вес и габариты — отдельная сложность. В Битрикс24 они хранятся в карточке товара (каталог), но в CRM-сделке они берутся из crm.product.list по PRODUCT_ID. Если интеграция со складом или 1С не настроена, весовые характеристики могут отсутствовать — нужен fallback (дефолтные значения по категории товара или ручной ввод). Для обмена с 1С через CommerceML мы дополнительно настраиваем синхронизацию номенклатуры.
Трекинг и уведомления покупателям
После получения трек-номера выстраиваем цепочку уведомлений. Робот Битрикс24 отправляет SMS или email покупателю (через интеграцию с сервисом рассылок): «Ваш заказ передан в доставку, трек-номер: XXX». При каждом изменении статуса — аналогично. Это снижает нагрузку на колл-центр в 4 раза и повышает удовлетворённость клиентов. Агент проверки статусов запускается каждые 15 минут, уведомления отправляются в течение 5 минут после смены статуса.
Для автоматического получения статусов доставки используем два подхода:
- Webhook от перевозчика — перевозчик сам уведомляет при изменении статуса. Лучший вариант, но поддерживается не всеми.
- Polling — агент Битрикс запрашивает статус каждые N минут по трек-номеру. Работает с любым перевозчиком, создаёт нагрузку на API.
Что делать при сбоях логистического API?
Логистические API нестабильны и имеют специфические ограничения:
- Лимиты запросов (rate limiting) — выдерживаем паузы между запросами, кешируем справочные данные (список ПВЗ, тарифы). Например, СДЭК ограничивает 100 запросов в минуту.
- Ошибки адреса — перевозчик не может определить зону доставки по адресу. Нужен UI для ручной корректировки с уведомлением менеджера.
- Заблокированные заявки — если логистика заблокировала заявку (некорректные данные), менеджер должен видеть это в CRM, а не узнавать от покупателя.
Для обработки исключений используем очередь с повторными попытками (экспоненциальная задержка до 5 раз: 1, 2, 4, 8, 16 минут) и уведомления в CRM. Если после всех ретраев API недоступен, создаётся задача оператору с полным контекстом ошибки.
Что входит в работу
- Анализ API ваших логистических систем и выбор сценариев
- Разработка адаптера с асинхронной очередью и повторными попытками
- Настройка полей сделки, смарт-процессов и бизнес-процессов (Bizproc) Битрикс24 для автоматической логистики
- Создание виджета выбора ПВЗ (если требуется)
- Автоматические уведомления покупателей по статусам через SMS и email
- Тестирование на реальных заявках в тестовой среде
- Техническая документация и обучение сотрудников
- Гарантия на интеграцию — 6 месяцев после сдачи
Этапы разработки
| Этап | Содержание | Срок |
|---|---|---|
| Аналитика | Выбор перевозчиков, сценарии, ТЗ | 3–5 дней |
| Разработка адаптера | Основные API-коннекторы | 1–2 недели |
| Интеграция в CRM | Поля, смарт-процессы, автоматизации | 1 неделя |
| Виджет ПВЗ | Карта с выбором пункта выдачи | 3–5 дней |
| Уведомления | SMS/email по статусам | 3–5 дней |
| Тестирование | Реальные заявки в тестовой среде | 1 неделя |
Готовая интеграция сокращает время от оформления сделки до создания заявки на доставку с нескольких часов до секунд — и убирает ошибки ручного ввода данных получателя. Закажите интеграцию — получите работающее решение с гарантией 6 месяцев. Свяжитесь с нами для оценки вашего проекта: мы подберём оптимальное решение под ключ.







