Что именно называем маржой
В этом разборе операционная маржа рейса — согласованная выручка минус прямые затраты, отнесённые к рейсу. Она не равна чистой прибыли компании: офисные зарплаты, аренда, проценты и другие общие расходы здесь не распределены. Для собственного транспорта состав затрат определяют отдельно: одна ставка перевозчика не описывает его экономику.
Маржа в рублях = выручка − прямые затраты. Маржа в процентах = маржа ÷ выручка × 100%. При нулевой выручке процент не рассчитывают; отрицательный результат не скрывают. Наценка считается от затрат, поэтому это другой показатель.
До использования формулы бухгалтер и руководитель согласуют сопоставимую базу сумм по НДС. Универсальное правило «убрать налог из всех строк» не подходит. В примерах суммы уже приведены к одной согласованной базе; налоговый расчёт в них не входит.
Дайте каждой сумме источник и статус
Минимальная карточка содержит идентификатор рейса, клиента, перевозчика, выручку, прямые расходы, источник каждой суммы и её статус. Различайте плановую ставку, подтверждённую сумму и корректировку. Ноль означает известное отсутствие расхода; пустое поле — отсутствие информации. Если пустое поле превращается в ноль, предварительный результат выглядит окончательным.
Платная дорога или перегрузка учитываются отдельной строкой только тогда, когда компания оплачивает их сверх ставки подрядчика. Если расход уже включён в ставку, повторное добавление ошибочно уменьшит маржу. У строки затрат должны быть документ или согласованное основание, ответственный и связь с рейсом либо прозрачное правило распределения.
Учебный пример: от 25% к 17,24% после уточнений
Условная выручка — 120 000 ₽. Перевозчику согласовали 90 000 ₽. По внесённым данным маржа равна 30 000 ₽, или 25%. Но дополнительная перегрузка ещё не подтверждена: карточка остаётся предварительной.
После рейса приходит подтверждённый расход на перегрузку 6 000 ₽, не включённый в ставку. Прямые затраты становятся 96 000 ₽, маржа — 24 000 ₽, или 20%. Затем стороны согласуют уменьшение выручки на 4 000 ₽. Новый итог: выручка 116 000 ₽, затраты 96 000 ₽, маржа 20 000 ₽ — примерно 17,24%.
Это разные состояния данных, а не противоречие. Ошибка — показывать предварительные 25% рядом с окончательными 17,24% без пояснения. Сохраняйте исходную сумму, изменение, основание, автора и дату. Спорную корректировку не подтверждают только потому, что AI нашёл похожее сообщение.
Начните проверку с дублей и принадлежности расходов
Один расход может прийти в письме, приложении к заявке и закрывающем документе. Это несколько источников подтверждения, а не несколько затрат. Номер документа не всегда уникален: смотрите контрагента, дату, сумму и связь с рейсом. Возможный дубль подтверждает сотрудник.
У клиента может быть несколько одинаковых маршрутов за день. Совпадения компании или направления недостаточно для автоматической связи счёта с рейсом. Если однозначного идентификатора нет, нужна очередь ручного выбора.
Неполные расходы и оплаты показывайте отдельно
Диспетчер знает о простое, но сумма ещё не согласована. Покажите предварительную маржу и причину: «ожидается решение по простою». Не подставляйте предполагаемую сумму как подтверждённую.
Клиент заплатил половину, перевозчику ещё не перечислили ничего. Это состояние расчётов, а не новая маржа. Выручка, затраты и остатки оплат нужны в отчёте отдельными колонками.
Не усредняйте проценты отдельных рейсов
При выручке 100 000 ₽ и марже 10 000 ₽ первый рейс даёт 10%; при выручке 10 000 ₽ и марже 5 000 ₽ второй — 50%. Вместе это 15 000 ₽ маржи на 110 000 ₽ выручки, около 13,64%, а не 30%. Сводный процент рассчитывают от общих сумм на одинаковой базе.
Спорные и поздние расходы требуют следующего действия
Отведите отдельную очередь для случаев без документа, несогласованных сумм, возможных дублей и неоднозначной связи с рейсом. У каждого — ответственный и следующее действие. «На проверке» без человека лишь переносит ручную проблему в новую систему.
Правило распределения расхода между рейсами согласуют заранее и сохраняют вместе с расчётом. Не делите сумму поровну только потому, что так проще. При позднем документе полезно видеть актуальный итог и ранее зафиксированный срез; порядок изменения закрытого периода определяет ваша учётная политика, а не AI-модуль.
Как проверить автоматизацию до расширения
Подготовьте контрольные примеры: обычный рейс, поздний расход, уменьшение выручки, повторный документ, неоднозначная связь и незаполненные затраты. Сотрудник вручную фиксирует ожидаемые суммы и статусы. Нулевую выручку и отрицательную маржу проверяют отдельно.
Проверка должна показать не только совпадение итоговой цифры. Новый расход пересчитывает результат; дубль не увеличивает затраты; отсутствие данных оставляет предупреждение. В карточке видно, откуда пришла каждая сумма и кто подтвердил исправление.
Можно начать с текущей таблицы
Первым шагом может быть сверка выгрузки из таблицы или действующей системы. Выберите, где остаются подтверждённые данные и кто отвечает за изменения. Дашборд не решает проблему, если сотрудники исправляют суммы в разных местах без согласования.
Для первого обсуждения достаточно описания методики и нескольких обезличенных примеров, включая спорный. Клиентские контакты и оригиналы документов не отправляйте через публичную форму. Ниже — ссылки на решение и собственный рабочий проект AILTE; они не доказывают заданный процент прибыли у любого клиента.
