Логистика ломается не на дороге, а в стыках: заказы в одной системе, машины в голове у логиста, водители в мессенджере, клиенты звонят менеджеру, менеджер звонит водителю. Каждый звонок — минута, каждая минута — деньги.

Приложение здесь решает не задачу «показать точку на карте», а задачу убрать ручную координацию. Разберём, из каких частей это собирается и что из них нужно именно вам.

01 · Четыре роли в одной системе

Полноценная логистическая система — это не одно приложение, а несколько интерфейсов над общей базой:

  • Водитель. Список задач на день, маршрут, подтверждение доставки, фото и подпись получателя, отметка о проблеме («не дозвонился», «отказ»).
  • Диспетчер или логист. Панель со всеми машинами и заказами: назначить, переназначить, увидеть отставание, вмешаться руками.
  • Клиент. Статус заказа и окно доставки, уведомления, история. Иногда — своё приложение, иногда достаточно ссылки-страницы.
  • Склад. Комплектация, отгрузка, сверка того, что реально уехало.
Главная ошибка — делать эти части по очереди у разных подрядчиков. Логистика живёт на стыках: если водительское приложение не знает про склад, вы получите две правды об одном заказе.

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

02 · Статусы против «где машина»

Самый дорогой процесс в доставке — звонки. Клиент звонит менеджеру, менеджер водителю, водитель за рулём. Схлопывается это статусами и уведомлениями:

  1. Заказ собран → клиенту push «завтра, окно 10:00–14:00».
  2. Водитель выехал → «в пути, третий по очереди».
  3. Подъезжает → «через 20 минут».
  4. Доставлено → фото и подтверждение в истории.

Нужен ли живой трекинг на карте? Реже, чем кажется. Точка на карте нужна там, где ожидание короткое и человек стоит у двери — еда, курьер в течение часа. Для доставки на завтра хватает статусов и окна: это дешевле, не сажает батарею водителя и не превращает опоздание в скандал на глазах у клиента. Как выстроить уведомления, чтобы их не отключили, — в гайде по пушам.

03 · Раскладка заказов по машинам

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

Раньше это делал логист в голове и в таблице — час-полтора каждое утро, с ошибками, из-за которых машина уезжала недогруженной или наоборот не вмещала заказ. Теперь алгоритм считает раскладку за секунды, а логист видит готовый вариант и правит его мышью, если знает про машину что-то, чего не знает система.

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

04 · Маршруты: считать или нет

Оптимизация маршрута — красивая функция, которая нужна не всем. Ориентир простой:

  • До 10–15 точек на машину — водитель и логист справляются сами, автоматика даёт мало.
  • 20+ точек, окна доставки, разные тарифы — считать стоит: экономия на пробеге и переработках заметна.
  • Межгород и сборные грузы — важнее не маршрут, а загрузка и стыковка рейсов.

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

05 · Связка с учётом

Заказы, номенклатура и остатки живут в учётной системе, чаще всего в 1С. Приложение не должно ходить в неё напрямую: у типовой 1С нет готового API, а любое её обновление уронило бы доставку.

Рабочая схема — промежуточный бэкенд: 1С отдаёт заказы файлами по расписанию, сервис забирает их, раздаёт водителям и диспетчеру, а обратно возвращает статусы и факт доставки. Приложение живёт на своей быстрой базе и продолжает работать, даже если учётная система прилегла. Подробно механика разобрана в статье про интеграцию с 1С.

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

06 · Сколько стоит и с чего начать

  • Приложение водителя + панель диспетчера: 700–950 тыс ₽, 5–7 недель. Задачи на день, статусы, подтверждение доставки, назначение машин.
  • Система с клиентской частью и трекингом, связкой с учётом: 1,3–2 млн ₽, 8–12 недель.
  • Автоматическая раскладка по машинам — отдельный модуль, от 400 тыс ₽: сложность зависит от правил упаковки и разнообразия номенклатуры.

С чего начинать: почти всегда с водителя и диспетчера. Это часть, которая сразу убирает звонки и даёт данные — сколько реально занимает доставка, где отстают, кто возит быстрее. Клиентское приложение и трекинг добавляются вторым шагом, уже на фактах. Как выглядит такой первый этап по неделям — в разборе «MVP за 6 недель», прикинуть свою вилку можно в калькуляторе.

Опишите, сколько у вас машин и точек в день и что за учётная система — на бесплатном разборе скажем, какая часть окупится первой.

07 · Частые вопросы

Сколько стоит приложение для доставки?
700–950 тыс ₽ за водителя и диспетчера, 1,3–2 млн ₽ за систему с клиентской частью и трекингом, от 400 тыс ₽ за модуль раскладки по машинам.

Нужен ли трекинг в реальном времени?
Не всегда. Для доставки на завтра хватает статусов и окна прибытия — дешевле и не сажает батарею. Живая точка нужна там, где клиент ждёт здесь и сейчас.

Можно ли автоматически распределять заказы по машинам?
Да: алгоритм учитывает вес, объём, габариты и правила укладки, логист правит результат руками. Так сделано у дистрибьютора автомасел.

Как связать с 1С?
Через промежуточный бэкенд с файловым обменом: 1С отдаёт заказы, сервис раздаёт их приложениям и возвращает статусы. Доставка не останавливается, если 1С недоступна.