Расчёт всегда идёт в 5 шагов: маршрут → вес груза → расчётное время → базовая стоимость → скидка (для физлица) или альтернатива «сборный груз». Ни один шаг не считается в изоляции — каждый следующий использует результат предыдущего.
| Параметр | Где редактируется | Что делает |
|---|---|---|
base_point_enabledБазовая точка транспорта | Транспорт → Свой транспорт | Включает/выключает кольцевой маршрут через базу (гараж/склад). |
base_point_addressАдрес базовой точки | Транспорт → Свой транспорт | Откуда/куда идёт транспорт до и после рейса к клиенту. |
Если базовая точка выключена — маршрут для расчёта стоимости: точка загрузки → клиент → точка загрузки (то есть километраж считается как «в одну сторону» × 2).
Если базовая точка включена — маршрут кольцевой: база → точка загрузки → клиент → база. В стоимость входят все три участка, а не только рейс к клиенту.
| Параметр | Где редактируется | Что делает |
|---|---|---|
kg_per_m2Коэффициент кг/м² | Транспорт → Свой транспорт | Вес = Площадь металлочерепицы (м²) × этот коэффициент. |
| Матрица «вес/длина» | Транспорт → Свой транспорт | Список допустимых сочетаний максимального веса и максимальной длины листа для каждой единицы собственного транспорта. Манипулятор и наёмная машина сюда не добавляются — у них отдельные тарифы на подвкладке Транспорт → Наёмный транспорт (раздел 9 ниже). |
Расчётный вес и введённая менеджером максимальная длина листа проверяются по матрице транспорта. Если груз (по весу и длине одновременно) не влезает ни в одно из сочетаний (основное или «облегчённое» — легче, но длиннее) — менеджер видит предупреждение о необходимости отдельно согласовать транспорт. На саму формулу цены это не влияет напрямую, но сигнализирует, что доставку нужно организовывать нестандартно.
| Параметр | Смысл |
|---|---|
load_time_min — Норматив загрузки, мин | Сколько машина стоит под загрузкой на базе/складе. |
unload_time_min — Норматив разгрузки, мин | Сколько уходит на разгрузку у клиента. |
reserve_time_min — Резерв времени, мин | Запас на пробки, поиск адреса и т.п. |
Расчётное время переводится в часы и используется только в формуле стоимости (шаг 5) — на маршрут или вес не влияет.
| Параметр | Влияние |
|---|---|
fixed_fee — Фиксированная часть, руб. | Прибавляется всегда, независимо от расстояния. |
rate_per_km — Ставка за км, руб. | Умножается на полный километраж маршрута из шага 2 (не «в одну сторону»). |
driver_hour_rate — Ставка часа водителя, руб. | Умножается на расчётные часы из шага 4. |
margin_percent — Коммерческая наценка, % | Применяется к сумме всех трёх составляющих выше — то есть увеличивает и фиксированную часть, и километраж, и время сразу. |
rounding_step — Шаг округления, руб. | Финальное округление базовой стоимости (и итоговой цены после скидки) до ближайшего кратного этому шагу. При 1 руб. — округление до целых рублей. |
| Параметр | Где редактируется | Что делает |
|---|---|---|
| Матрица скидок | Вкладка «Скидки» | Процент скидки по паре (Комплектность × Диапазон суммы заказа). |
Скидка применяется только если тип клиента — «Физлицо». Для «Строителя» скидка всегда 0% — это жёстко зашитое правило системы (доставка для строителя всегда платная), а не настройка, изменить его через интерфейс нельзя.
Комплектность определяет, что уже входит в заказ клиента (влияет только на выбор строки скидки, не на вес и не на маршрут):
| Параметр | Что делает |
|---|---|
consolidated_enabled | Включает/выключает саму возможность сборного груза. |
consolidated_max_weight_kg, consolidated_max_length_m | Лимиты, при превышении которых сборный груз недоступен для конкретного заказа. |
consolidated_percent | Процент от базовой (ещё без скидки) стоимости. |
consolidated_min_price | Минимальная цена сборного груза — если процент даёт меньше, берётся этот минимум. |
Сборный груз показывается менеджеру как отдельная строка рядом с основной ценой — это альтернатива («дешевле, но дата согласовывается с логистом»), а не скидка поверх скидки физлица.
Что от чего зависит, по порядку расчёта: