Свести тридцать прайсов в одну таблицу — это не задача «написать макрос», а конвейер из пяти шагов: приём файла, распознавание шапки, нормализация единиц и валют, сопоставление с внутренней номенклатурой и загрузка с журналом изменений. На отлаженном конвейере через него без участия человека проходит около 81 % строк. Остальные 19 % достаются закупщику, и это не недоработка, а штатный режим: у поставщиков нет и не будет общего стандарта прайса.

Считать выгоду принято по сэкономленным часам, и здесь она невелика. Тридцать прайсов по 850 строк съедают у закупщика примерно 40 часов в месяц — рабочую неделю. По полной ставке 1 000 ₽ в час это 40 000 ₽ в месяц и 480 000 ₽ в год. Проект конвейера стоит дороже, поэтому на одних часах он не окупается никогда. Настоящие деньги лежат в двух других местах: в подорожаниях, которые проходят незамеченными, потому что сравнивать некогда, и в закупках у привычного поставщика вместо выгодного — по той же причине.

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

Сколько стоит ручное сведение прайсов

Модельная компания дальше по тексту одна и та же: оптовая торговля с производством, внутренняя номенклатура 12 000 позиций, из них реально закупается около 2 400, тридцать действующих поставщиков, годовой объём закупки 96 000 000 ₽ без НДС. Прайсы приходят на почту закупщика: часть раз в месяц, часть еженедельно, часть «когда поменяли». Средний прайс — 850 строк, суммарно 25 500 строк в месяц.

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

Полная стоимость часа закупщика, модельный расчёт
Оклад до налогов96 000 ₽/мес
Страховые взносы, 30 %28 800 ₽/мес
Рабочее место, лицензии 1С и почты, накладные20 200 ₽/мес
Итого затрат на сотрудника145 000 ₽/мес
Полезных рабочих часов в месяц за вычетом отпуска, больничных и обучения145 часов
Итого1 000 ₽ за час работы закупщика — эта ставка используется во всех расчётах статьи

Теперь время на один прайс. Замер по журналу выглядит примерно так: скачать вложение и понять, что это за файл, — 5 минут; привести шапку и убрать объединённые ячейки — 12 минут; найти новые и исчезнувшие позиции — 18 минут; сопоставить их с внутренними кодами — 25 минут; перенести изменившиеся цены и проверить единицы — 20 минут. Восемьдесят минут на прайс, и это при условии, что файл открылся и в нём ничего не сломано.

Ручное сведение прайсов, месяц
Прайсов в месяц30
Среднее время на один прайс80 минут
Итого времени40 часов
Полная ставка закупщика1 000 ₽/час
Стоимость в месяц40 000 ₽
Итого480 000 ₽ в год только за то, чтобы файлы поставщиков стали похожи друг на друга
Эти 40 часов — не главная потеря

Запомните цифру и не стройте на ней обоснование проекта. Конвейер стоит дороже 480 000 ₽ в год, и если считать только снятые часы, окупаемость уходит за одиннадцать месяцев. Проект окупается тем, что закупщик наконец успевает сравнивать: об этом разделы про подорожания и про переключение объёма.

Шесть форматов на входе и что делать с каждым

Поставщики не договорятся между собой о формате прайса, поэтому конвейер строится не под «правильный файл», а под шесть типов входа сразу. Ниже — распределение по тридцати поставщикам модельной компании и доля строк, которая проходит по каждому типу без ручного вмешательства.

Тип входаПоставщиковЧто ломаетсяКак решаетсяСтрок без ручной правки
Excel: xlsx и старый xls17Шапка не в первой строке, объединённые ячейки, три листа, итоговые строки внутри таблицыПоиск строки заголовков по набору ключевых слов, разбор объединённых ячеек, отсечение итогов по признаку пустого артикула94 %
CSV и текстовые выгрузки3Разделитель — точка с запятой, кодировка windows-1251, десятичная запятая, кавычки внутри названийАвтоопределение кодировки и разделителя по первым строкам, правила разбора чисел97 %
PDF-прайс4Два варианта: текстовый слой и скан. У скана — печати поверх таблицы и перенос строкРазбор таблицы из текстового слоя; для сканов — распознавание с обязательной проверкой итогов человеком88 % на текстовом слое, 74 % на скане
Таблица в теле письма2Вёрстка письма, слитые ячейки, цены рядом с текстом «плюс доставка»Разбор HTML-таблицы письма, отдельное правило на приписки к цене91 %
Ссылка на выгрузку: кабинет, FTP, HTTP3Ссылка меняется, требуется вход, файл выкладывается не по расписаниюРобот забирает файл по расписанию, при недоступности — уведомление закупщику на второй попытке99 %
XML или YML1Свои названия тегов, характеристики в свободной формеРазбор по схеме поставщика, характеристики — в отдельные поля99 %
сравнениеpraysy-postavshchikov-k-odnomu-vidu--01
Шесть типов входящих прайсов и доля строк, проходящих без ручной правки по каждому

Сравнительная схема из шести вертикальных колонок, слева направо: «Excel — 17 поставщиков — 94 %», «CSV — 3 — 97 %», «PDF — 4 — 88 % текстовый слой, 74 % скан», «Таблица в письме — 2 — 91 %», «Ссылка на выгрузку — 3 — 99 %», «XML/YML — 1 — 99 %». Высота каждой колонки пропорциональна доле строк без ручной правки, внутри колонки — одна короткая подпись главной проблемы формата. Внизу общая подпись «30 поставщиков, 25 500 строк в месяц». Чертёжный стиль, подписи по-русски.

Конвейер проектируется под шесть входов сразу, а не под «нормальный файл»

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

И ещё одно наблюдение из практики: самый дешёвый способ улучшить конвейер — не улучшать конвейер. Три-четыре поставщика из тридцати обычно готовы присылать выгрузку в согласованном формате или дать ссылку на файл, если их об этом попросить письменно один раз. Это переводит их из категории «88 %» в категорию «99 %» бесплатно.

Конвейер из пяти шагов

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

  1. 1
    Шаг 1. Приём: файл попадает в систему сам

    Отдельный почтовый ящик для прайсов, правило по отправителю и теме, забор вложений и файлов по ссылкам. Каждое письмо кладётся в журнал как есть: отправитель, дата, вложение, контрольная сумма файла. Без этого журнала невозможно потом ответить на вопрос «откуда взялась эта цена» — а он возникает в первый же месяц.

  2. 2
    Шаг 2. Разбор: где здесь шапка и где данные

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

  3. 3
    Шаг 3. Нормализация: приведение к своим единицам

    Единицы измерения (тонны в килограммы, упаковки в штуки, погонные метры в метры), валюта по курсу на дату прайса, цена с НДС и без НДС, кратность упаковки, десятичный разделитель. Здесь же отсекаются мусорные строки: разделители разделов, итоги, строки с нулевой ценой и пометкой «под заказ».

  4. 4
    Шаг 4. Сопоставление: чужая позиция становится вашей

    Три ключа по очереди — артикул поставщика из накопленного словаря, штрихкод, нормализованное название с характеристиками. Совпадения выше порога уверенности принимаются автоматически, пограничные показываются закупщику парами «предложено — подтвердить», остальные копятся в очереди новых позиций.

  5. 5
    Шаг 5. Загрузка и журнал: цена попадает в учёт с историей

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

схема процессаpraysy-postavshchikov-k-odnomu-vidu--02
Схема конвейера обработки прайсов из пяти шагов с ответвлением на ручную проверку

Горизонтальная схема из пяти прямоугольных блоков со стрелками: «Приём (почта, ссылка, FTP)» → «Разбор шапки» → «Нормализация: единицы, валюта, НДС, кратность» → «Сопоставление: артикул, штрихкод, название» → «Загрузка в учёт + журнал версий». От блоков «Разбор шапки» и «Сопоставление» вниз отходят стрелки в общий лоток «На проверку закупщику — 19 % строк». Над блоком «Сопоставление» подпись «81 % проходит автоматически». Слева на входе подпись «30 поставщиков, 25 500 строк в месяц», справа на выходе — «одна таблица сравнимых цен». Чертёжный стиль, подписи по-русски.

Пять шагов и одно ответвление: всё, что не прошло порог, уходит человеку
Загрузка без журнала версий — это потеря доказательств

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

Сопоставление позиций: почему по названию совпадает половина

Один и тот же товар у трёх поставщиков называется тремя разными строками, и ни одна из них не совпадает с вашей карточкой. «Кабель ВВГнг-LS 3х2.5», «ВВГнг(А)-LS 3*2,5 ГОСТ», «Кабель силовой ВВГ нг LS 3 x 2.5 мм2». Человек видит один товар мгновенно, а прямое сравнение строк не находит ничего.

Что это значитСловарь соответствий

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

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

КлючЧто сравниваетсяДаётНакопленный итогРиск ошибки
Точное названиеСтрока символ в символ23 %23 %Практически нет
Нормализованное названиеНижний регистр, единый разделитель размеров, развёрнутые сокращения, вынесенные в поля характеристики, порядок слов не важен+29 %52 %Средний: путает соседние типоразмеры
Артикул поставщика из словаряКод поставщика, подтверждённый человеком в прошлых загрузках+21 %73 %Низкий: связь подтверждена один раз и навсегда
Штрихкод EAN или GTINКод упаковки или единицы товара+8 %81 %Низкий, но штрихкод есть далеко не у всех
Остаётся закупщикуНовые позиции, спорные пары, разные комплектации под одним названием19 %100 %Здесь и должен работать человек
графикpraysy-postavshchikov-k-odnomu-vidu--03
Накопительная диаграмма долей сопоставления: 52 процента по названию, 81 процент тремя ключами

Накопительная горизонтальная полоса, разбитая на пять сегментов с подписями долей: «Точное название — 23 %», «Нормализованное название — +29 % (итого 52 %)», «Артикул из словаря — +21 % (итого 73 %)», «Штрихкод — +8 % (итого 81 %)», «Остаётся закупщику — 19 %». Последний сегмент выделен другой штриховкой и подписан «нормальный режим, а не брак системы». Под полосой шкала от 0 до 100 %. Чертёжный стиль, подписи по-русски.

Одно название закрывает половину строк, три ключа вместе — четыре пятых

Из этих девятнадцати процентов и складывается вся ручная работа после запуска — но не сразу вся. В первый прогон сопоставлять нужно не весь прайс, а только ту номенклатуру, которую вы реально закупаете. В модельной компании это 2 400 позиций из 12 000: остальные лежат в справочнике как история или как «может пригодиться». Автоматика закрывает 1 944 позиции, на человека остаётся 456. При скорости 2,5 минуты на пару это 19 часов работы — 19 000 ₽ разово, отдельной строкой в смете.

Дальше нагрузка резко падает, потому что словарь уже накоплен. В месяц в тридцати прайсах появляется примерно 260 действительно новых уникальных позиций; 19 % из них, то есть около 50 штук, требуют решения человека — это чуть больше двух часов. Именно поэтому обещание «мы сопоставим всю вашу номенклатуру автоматически» стоит воспринимать как признак неопытности: сопоставляется не номенклатура, а поток, и первый месяц всегда тяжелее следующих.

Автоматическое сопоставление без порога уверенности опаснее ручного

Позиции «Болт М10х40 оц.» и «Болт М10х45 оц.» отличаются одним символом, а на складе это два разных товара. Если система принимает совпадение при любой похожести, ошибки попадают в заказ и всплывают на приёмке. Рабочее правило: выше порога — принимаем, ниже — показываем пару человеку, ничего не додумываем. Доля пограничных пар в модельном конвейере — около 6 % строк, и они входят в те же 19 %.

Сравнимая цена за единицу: формула

Приведённые к одной строке позиции ещё не значат приведённые к одной цене. Цена в прайсе — это не то, во что вам обойдётся товар. Между ними стоят как минимум шесть поправок, и каждая измерима.

  • НДС. Если вы на общей системе, входящий НДС принимается к вычету, поэтому сравнивать нужно цены без НДС. Цена от плательщика НДС делится на единицу плюс ставку — по состоянию на сентябрь 2026 года это 22 %. Цена поставщика на упрощёнке уже сопоставима с ценой без НДС напрямую, и «дешёвый упрощенец» после приведения часто оказывается дороже.
  • Единица измерения. Тонны против килограммов, рулоны против квадратных метров, упаковка против штуки. Приводим всё к своей учётной единице, иначе сравниваются разные вещи.
  • Кратность упаковки. Если нужно 4 000 метров, а поставщик отгружает барабанами по 305 метров, вы купите 4 270 метров. Излишек — часть цены, если позиция неходовая; если ходовая, он уйдёт в следующий заказ и в расчёт не берётся.
  • Доставка. Приводится к единице делением на объём партии. Самовывоз — это тоже деньги: рейс своей машины стоит столько же, сколько наёмный, просто не выставляется счётом.
  • Стоимость денег. Предоплата и отсрочка — это кредит в одну или другую сторону. Пересчитывается через вашу стоимость денег в год: цена, умноженная на ставку, умноженная на число дней и делённая на 365.
  • Ожидаемый брак и возврат. Считается по фактической истории поставок конкретного поставщика, а не по обещаниям. Как собрать эту историю из своего же учёта, разобрано в материале о рейтинге поставщиков по фактам.

Как это выглядит на одной позиции. Нужно 4 000 метров кабеля ВВГнг-LS 3×2,5. Стоимость денег компании — 24 % годовых: это ставка, по которой компания реально занимает или на которую теряет доход, оставляя деньги в обороте поставщика.

Поставщик А: 84,00 ₽/м с НДС, оплата по факту поставки
Цена без НДС: 84,00 ÷ 1,2268,85 ₽/м
Кратность: бухта 100 м, 4 000 делится нацело — излишка нет0,00 ₽/м
Доставка 6 500 ₽ на партию: 6 500 ÷ 4 0001,63 ₽/м
Стоимость денег: оплата в день поставки0,00 ₽/м
ИтогоСравнимая цена — 70,48 ₽ за метр, срок поставки 12 дней
Поставщик Б: 68,90 ₽/м без НДС (упрощёнка), предоплата за 7 дней
Цена без НДС — приводить не нужно, поставщик не плательщик НДС68,90 ₽/м
Кратность: барабан 305 м, 14 барабанов = 4 270 м, излишек 270 м на 18 603 ₽4,65 ₽/м
Самовывоз: 2 рейса своей машины по 3 200 ₽1,60 ₽/м
Стоимость денег: 68,90 × 24 % × 7 ÷ 3650,32 ₽/м
ИтогоСравнимая цена — 75,47 ₽ за метр, срок поставки 5 дней

В прайсе поставщик Б выглядит дешевле на 18 % — 68,90 ₽ против 84,00 ₽. После приведения он оказывается дороже на 7,1 %: 75,47 ₽ против 70,48 ₽. На партии в 4 000 метров разница — 19 960 ₽ не в ту сторону, в которую показывал прайс. Это одна позиция из сорока в обычной закупке.

сравнениеpraysy-postavshchikov-k-odnomu-vidu--04
Разложение цены двух поставщиков от прайса к сравнимой цене за метр кабеля

Две вертикальные столбчатые диаграммы рядом, каждая набрана из сегментов снизу вверх. Левый столбец «Поставщик А»: «цена без НДС 68,85» + «доставка 1,63» = итог 70,48 ₽/м. Правый столбец «Поставщик Б»: «цена 68,90» + «излишек кратности 4,65» + «самовывоз 1,60» + «стоимость денег 0,32» = итог 75,47 ₽/м. Над столбцами серые пунктирные метки прайсовых цен: 84,00 и 68,90 со стрелкой и подписью «в прайсе Б дешевле на 18 %». Внизу подпись «на партии 4 000 м разница 19 960 ₽ в пользу А». Ось — рубли за метр, чертёжный стиль, подписи по-русски.

Разница 18 % в прайсе превращается в 7,1 % в обратную сторону

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

Версии прайса и сигнал о подорожании

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

  1. 1Каждая загрузка пишется новой версией с датой, отправителем и исходным файлом. Старые версии не затираются.
  2. 2Считается разница с предыдущей версией по каждой позиции: цена выросла, упала, позиция исчезла, появилась новая.
  3. 3Срабатывает порог: рост выше заданного процента по позиции или выше заданной суммы по закупаемому объёму.
  4. 4Закупщик получает не «пришёл новый прайс», а список из пяти-двадцати строк: что подорожало, на сколько, сколько вы этого берёте в месяц и что есть у других поставщиков.
  5. 5Решение остаётся человеку: переторговать, переключиться, закупить впрок или согласиться.
разбор экранаpraysy-postavshchikov-k-odnomu-vidu--05
Абстрактный экран уведомления о подорожании со списком позиций и альтернативами

Нарисованный абстрактный экран, не скриншот реального продукта. Заголовок «Подорожание выше порога 3 %, поставщик №7, версия от 03.09». Таблица из пяти строк с колонками: «Позиция», «Было», «Стало», «Рост», «Берём в месяц», «Есть дешевле». Значения роста в диапазоне от 3,4 % до 11,2 %, в колонке «Есть дешевле» у двух строк подписи с номерами альтернативных поставщиков. Внизу три кнопки-плашки: «Переторговать», «Переключить», «Согласиться». Сбоку мелкая подпись «25 срабатываний в месяц, 3 минуты на разбор». Чертёжный стиль, подписи по-русски.

Полезное уведомление — это не «пришёл прайс», а список решений на сегодня

Во что это превращается в деньгах. В модельной компании за год «тихо» дорожает примерно 14 % закупочного объёма — это позиции, где поставщик поднял цену на несколько процентов, а закупщик увидел изменение только в счёте. Средний рост по этим позициям — 6,2 %.

Пойманные подорожания, год
Годовой объём закупки96 000 000 ₽
Доля объёма, дорожающая незаметно14 % → 13 440 000 ₽
Средний рост цены по этим позициям6,2 % → 833 280 ₽
Доля случаев, где удаётся переторговать или переключиться33 %
Итого275 000 ₽ в год, или примерно 22 900 ₽ в месяц

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

Что реально даёт конвейер: цифры после запуска

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

Что делает закупщикДо конвейераПосле конвейера
Приведение файлов и шапок12 часов в месяц0
Поиск новых и исчезнувших позиций9 часов в месяц0
Сопоставление позиций12,5 часа в месяц125 минут — около 50 новых пар по 2,5 минуты
Перенос цен и проверка единиц6,5 часа в месяц0
Разбор сломавшихся файловвходит в общее время60 минут — 3 файла по 20 минут
Разбор сигналов о подорожаниине делается вовсе75 минут — 25 срабатываний по 3 минуты
Итого40 часов260 минут, то есть 4,3 часа
Модельный эффект конвейера, месяц
Снятая ручная работа: 40 − 4,3 = 35,7 часа × 1 000 ₽35 700 ₽
Пойманные подорожания: 275 000 ₽ в год ÷ 1222 900 ₽
Переключение 8 % объёма на предложение дешевле в среднем на 4,5 %28 800 ₽
Итого эффект87 400 ₽
Эксплуатация: поддержка 18 000 ₽ + распознавание и обработка 4 000 ₽−22 000 ₽
Итого65 400 ₽ чистого эффекта в месяц, 784 800 ₽ в год

Третья строка требует пояснения, потому что именно её чаще всего раздувают в коммерческих предложениях. Восемь процентов — это доля объёма, по которой в сведённой таблице обнаруживается реально доступная альтернатива: не «где-то дешевле», а тот же товар у поставщика, с которым вы уже работаете, с приемлемым сроком и без потери отсрочки. 4,5 % — средняя разница по этим позициям после приведения к сравнимой цене. Считайте по своей номенклатуре: у дистрибьютора с жёсткой привязкой к вендору эта доля близка к нулю, у торговли расходными материалами доходит до 15 %.

графикpraysy-postavshchikov-k-odnomu-vidu--06
Структура месячного эффекта: 35 700, 22 900 и 28 800 рублей против 22 000 рублей расходов

Диаграмма-водопад слева направо. Три положительных столбца: «Снятые часы — 35 700 ₽», «Пойманные подорожания — 22 900 ₽», «Переключение объёма — 28 800 ₽», затем накопленный итог «Эффект — 87 400 ₽», затем отрицательный столбец «Эксплуатация — −22 000 ₽» и финальный «Чистый эффект — 65 400 ₽/мес». Под первым столбцом мелкая подпись «сам по себе, за вычетом эксплуатации, окупает проект только за 35 месяцев». Ось — рубли в месяц, чертёжный стиль, подписи по-русски.

Экономия часов — меньшая часть эффекта, и на ней одной проект не окупается

Смета и сроки

Смета ниже — для модельной компании: тридцать поставщиков, шесть форматов, 2 400 закупаемых позиций, учётная система 1С:Управление торговлей. Это середина вилки, а не нижняя граница.

Разовые расходы на конвейер прайсов
Приём и разбор шести форматов, шаблоны шапок на 30 поставщиков120 000 ₽
Нормализация: единицы, валюты, НДС, кратность, отсечение мусорных строк70 000 ₽
Сопоставление: три ключа, словарь соответствий, экран подтверждения пар150 000 ₽
Первичное сопоставление 2 400 позиций: 456 пар вручную, 19 часов19 000 ₽
Загрузка в 1С:УТ, журнал версий, история цен по позициям90 000 ₽
Пороги и уведомления о подорожании, отчёт по движению цен35 000 ₽
Итого484 000 ₽ разово плюс 22 000 ₽ в месяц на эксплуатацию

Реалистичная вилка по рынку — 250 000–900 000 ₽. Нижняя граница получается, когда поставщиков меньше десяти, все присылают Excel, а номенклатура уже приведена в порядок. Верхняя — когда прайсов больше сотни, среди них есть сканы, номенклатура ведётся в двух системах одновременно и требуется двусторонний обмен с учётом. Дороже всего обходится не разработка, а беспорядок в справочнике номенклатуры: дубли карточек и позиции без единиц измерения превращают шаг сопоставления в отдельный проект. Про то, какие данные нужно привести в порядок до начала внедрения, у нас есть отдельный разбор.

Окупаемость при таких вводных — 484 000 ₽ разово против 65 400 ₽ чистого эффекта в месяц, то есть 7,4 месяца. Теперь уберите из эффекта пойманные подорожания и переключение объёма. Останется 35 700 ₽ снятых часов против 22 000 ₽ эксплуатации, чистыми 13 700 ₽ в месяц и окупаемость 35 месяцев — то есть не окупается вовсе. Это ровно та причина, по которой проект «давайте просто автоматизируем загрузку прайсов» разочаровывает: автоматизируется не загрузка, а сравнение.

этапыpraysy-postavshchikov-k-odnomu-vidu--07
Лента внедрения конвейера прайсов на шесть недель с результатом каждого этапа

Горизонтальная лента времени на шесть недель с шестью отметками. «Неделя 1: инвентаризация — список 30 поставщиков, форматов и объёмов» → «Неделя 2: приём и разбор — прайсы падают в систему сами» → «Неделя 3: нормализация — единицы, валюта, НДС, кратность» → «Неделя 4: сопоставление — словарь и 456 пар вручную, 19 часов» → «Неделя 5: загрузка в 1С:УТ и журнал версий» → «Неделя 6: пороги подорожания и опытная эксплуатация на живом потоке». Под каждой отметкой подпись, что заказчик принимает на этом шаге. Чертёжный стиль, подписи по-русски.

Шесть недель, и первый живой результат — уже на второй
Посчитайте окупаемость на своих числах

Подставьте свою стоимость проекта и эксплуатации и свою оценку месячного эффекта по методике выше: снятые часы × полная ставка, плюс пойманные подорожания, плюс переключение объёма. Стартовые значения — модельные: конвейер 484 000 ₽ и 22 000 ₽ в месяц на поддержку и обработку.

Калькулятор рутины

Сколько стоит ручная работа в вашем процессе

4
2.5 ч
700
70%
484 000
22 000
Ручная работа сейчас обходится в
147 000 ₽/мес
Чистая экономия с системой
+80 900 ₽/мес
Окупаемость внедрения≈ 6 мес.
Эффект за первый год (за вычетом внедрения)+486 800 ₽

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

Когда конвейер прайсов не нужен

Проект окупается не всегда, и это стоит проверить до подписания договора. Есть пять ситуаций, в которых мы сами советуем не начинать.

  • Меньше восьми поставщиков и один формат. Если все присылают Excel с одинаковой шапкой, задача решается регламентом и парой формул в самой же таблице. Конвейер за 484 000 ₽ здесь заменяется договорённостью на полстраницы.
  • Годовой объём закупки ниже 25 000 000 ₽. Эффект от пойманных подорожаний и переключения объёма пропорционален обороту: 51 700 ₽ в месяц на объёме 96 000 000 ₽ превращаются в 13 500 ₽ на объёме 25 000 000 ₽. Вместе со снятыми часами чистого эффекта остаётся 27 200 ₽ в месяц, и окупаемость уходит почти к полутора годам.
  • Номенклатура не пересекается. Если у каждого поставщика уникальный товар и сравнивать не с чем, сопоставление теряет смысл — остаётся только загрузка цен, а это в разы более дешёвая задача.
  • Справочник номенклатуры в беспорядке. Дубли карточек, товары без единиц измерения, цены внутри названия. Сопоставлять поток с таким справочником — значит закрепить беспорядок навсегда. Сначала чистка справочника, потом конвейер.
  • Цены и так фиксируются договором на год. У производств с рамочными контрактами прайс меняется дважды в год по согласованию — весь сюжет с версиями и порогами просто не возникает.

И честная оговорка про 81 %. Эта доля достигается не на первой неделе, а на втором-третьем месяце, когда словарь соответствий наполнился. В первый месяц она держится в районе 55–65 %, и это нормально: подрядчик, который обещает целевой показатель со дня запуска, либо не работал с реальными прайсами, либо считает долю не по строкам, а по файлам. Уточняйте, что именно измеряется, — формулировка «точность 95 %» без указания базы не значит ничего.

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