Оптовая торговлямодель типового проекта

Оптовик стройматериалов: первичка без ручного ввода

4 500 входящих документов в месяц, два оператора на вводе и бухгалтер на сверках. За четыре месяца 92% документов стали проходить в учёт без прикосновения руками, а закрытие месяца сократилось на 6 дней.

620 000 ₽ внедрение+190 000 ₽/мес7 месяцев окупаемость
Оптовик стройматериалов: первичка без ручного ввода
Оптовая торговля · сценарий внедрения
4 500 входящих документов в месяц, два оператора на вводе и бухгалтер на сверках. За четыре месяца 92% документов стали проходить в учёт без прикосновения руками, а закрытие месяца сократилось на 6 дней.
620 000 ₽стоимость внедрения
+190 000 ₽денежный эффект в месяц
от 45 000 ₽/месподдержка после запуска
7 месяцевокупаемость внедрения
Заказчик и задача

С чем пришли

ПрофильМодельный проект: типовой для нашей практики региональный дистрибутор строительных материалов. Сухие смеси, крепёж, изоляция, инструмент, 180 действующих поставщиков. Отгружает розничным точкам и монтажным бригадам, держит три склада в одном регионе. Отдел закупок из шести человек, бухгалтерия из четырёх. Цифры и ход проекта — консервативная модель типового внедрения, а не отчёт по конкретному заказчику.
Масштаб210 сотрудников, 4 500 входящих первичных документов в месяц, закупки около 180 млн ₽ в месяц, номенклатурный справочник на 41 000 позиций
Системы в работе
1С:Управление торговлей 11 — основной контур закупок и складов1С:Бухгалтерия 3.0, обмен с УТ выгрузкойДиадок — по ЭДО приходит около 35% документовкорпоративная почта — главный канал первички, отдельный ящик на бухгалтериюфайловое хранилище со сканами и фотографиями накладных со складов

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

Показатели до проекта
Документов с ручным вводом4 500 из 4 500 — 100% потока
Трудозатраты на ввод330 часов в месяц — две полные ставки операторов, в сезон плюс подрядчик
Сверка заказ-поставка-актвыборочно, около 40% поступлений, 50 часов бухгалтера в месяц
Ошибки в реквизитах и суммах, дошедшие до учёта1,5% документов — всплывали при закрытии периода
Закрытие месяца17–18 рабочих дней после отчётного
Ход проекта

Что делали по неделям — включая сложности

В реальных проектах всегда есть грабли. Мы показываем их здесь честно — потому что умение их проходить и есть то, за что вы платите.

1–2-я недели

Замер потока и разбор форм

Две недели ничего не автоматизировали, только считали. Выгрузили месяц входящих документов и разложили по каналам: 35% через Диадок, 45% письмами в PDF, 20% — фотографии со складов. Провели хронометраж: 4,4 минуты на документ в среднем, 330 часов в месяц на двоих операторов. Собрали коллекцию форм и получили первую неприятную цифру — 34 разных макета накладных, причём шесть из них дают 70% объёма, а остальные 28 растянуты хвостом по мелким поставщикам. Отдельно посчитали дубли: 3% документов заводились в 1С дважды, потому что приходили и почтой, и бумагой с водителем.

3–6-я недели

Первый месяц на реальном потоке: 84%

Запустили распознавание в теневом режиме на живом потоке: система обрабатывает документ, оператор вводит его руками, результаты сравниваются построчно. Точность извлечения полей за первый месяц — 84%, при том что на подготовленных образцах было под 95%. Разбирали ошибки поштучно, и виноватыми оказались не редкие формы, а физика носителя: перспектива и тень на телефонных фото со складов, синяя печать поверх табличной части, многостраничные накладные, где шапка с реквизитами есть только на первом листе, а итоговая сумма — только на последнем. Сама модель тут была ни при чём.

7–9-я недели

Препроцессинг и дообучение до 97%

Перед распознаванием поставили обработку изображения: выравнивание, устранение перспективы, локальное повышение контраста, подавление печатей, детекция границ таблиц, сшивка разрозненных страниц в один документ по номеру и поставщику. Под шесть массовых форм сделали точные шаблоны, хвост из 28 форм оставили на общей модели. Дообучали порциями по 300 документов с ручной разметкой, три итерации: точность прошла 93% и вышла на 97% по полям. Параллельно проговорили с заказчиком неприятное — 97% по полям не равны 97% готовых документов, потому что документ уходит человеку целиком, если сомнителен хотя бы один реквизит.

8–11-я недели, параллельно

Сопоставление номенклатуры по истории проводок

Второе узкое место оказалось тяжелее распознавания. В справочнике 41 000 позиций с дублями и разнобоем написания: «профиль ПН 60х27 3 м» у одного поставщика, «профиль потолочный 60*27 L=3000» у другого, третий шлёт голый артикул без разделителей. Правила нормализации закрывали меньше половины строк. Решение нашли в истории: подняли три года проводок поступлений и построили индекс связок строка поставщика — позиция 1С, то есть зафиксировали то, как закупщики уже сопоставляли этих поставщиков руками. Поверх — нормализатор единиц и типоразмеров плюс нечёткое сравнение с оценкой уверенности. На старте автоматом сопоставлялось 88% строк, и каждое ручное сопоставление пополняет индекс.

12–13-я недели

Движок сверки заказ-поставка-акт

Собрали сверку трёх сущностей с настраиваемыми допусками: отклонение цены от заказа больше 0,5%, любое расхождение по количеству, нарушение срока поставки, несоответствие ставки НДС условиям договора. Совпало в допусках — документ уходит на проведение без человека. Не совпало — система формирует акт расхождений с указанием конкретной строки и отдаёт его тому закупщику, который вёл заказ, а не в общую папку. Заодно закрыли историю с дублями: дедупликация по хешу файла и по паре номер-дата документа.

14–15-я недели

Очередь исключений в 1С

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

16–17-я недели

Параллельный прогон и переключение

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

Из чего состояло решение
  • Единая входная очередь: почтовый ящик первички, папка сканов со складов, выгрузка из Диадок. Дедупликация по хешу файла и по паре номер-дата документа, контроль версий исправленных накладных.
  • Препроцессинг изображений: выравнивание, устранение перспективы телефонных снимков, локальный контраст, подавление печатей, детекция границ таблиц, сшивка многостраничных документов по реквизитам.
  • Классификация и извлечение полей: точные шаблоны под шесть массовых форм поставщиков плюс общая модель на остальные 28. Уверенность считается по каждому полю отдельно, порог вынесен в настройку.
  • Сопоставление номенклатуры: индекс по трём годам проводок поступлений, нормализатор единиц и типоразмеров, нечёткое сравнение. Каждое сопоставление хранится с оценкой и с объяснением.
  • Движок сверки заказ-поставка-акт с допусками по цене, количеству, срокам и НДС. Расхождение превращается в акт и адресуется закупщику, который вёл заказ.
  • Очередь исключений во внешней обработке 1С: рабочее место оператора с подсветкой неуверенных полей, журнал всех автоматических решений, возврат каждой правки в обучающую выборку.
Результат

Цифры до и после

До проекта
Документов с ручным вводом4 500 из 4 500 — 100% потока
Трудозатраты на ввод330 часов в месяц — две полные ставки операторов, в сезон плюс подрядчик
Сверка заказ-поставка-актвыборочно, около 40% поступлений, 50 часов бухгалтера в месяц
Ошибки в реквизитах и суммах, дошедшие до учёта1,5% документов — всплывали при закрытии периода
Закрытие месяца17–18 рабочих дней после отчётного
После запуска
Документов с ручным вводом360 из 4 500 — 8% потока
Трудозатраты на ввод58 часов в месяц — около трети ставки, сезонный подрядчик не нужен
Сверка заказ-поставка-акт100% поступлений автоматически, 10 часов бухгалтера на разбор актов расхождений
Ошибки в реквизитах и суммах, дошедшие до учёта0,3% документов — остальное ловится на приёмке
Закрытие месяца11–12 рабочих дней после отчётного
Выводы проекта
  • Точность на образцах и точность на живом потоке — два разных числа, и разница в 11 пунктов не была ошибкой модели. Первый месяц дал 84% вместо 95% на подготовленных документах, а вытянула их обработка изображения до распознавания: фотографии со склада испорчены перспективой, тенью и печатью поверх таблицы. Мы теперь закладываем в план 4–6 недель дообучения на документах заказчика, показываем цифру теневого месяца как есть и считаем экономику проекта по 90% автоматизации, даже когда рассчитываем выйти на 97%.
  • Настоящим узким местом был не OCR, а справочник номенклатуры, и правилами это не чинится. Нормализация закрыла меньше половины строк, а история проводок за три года — 88% сразу и 99% через два месяца накопления: то, как этот закупщик уже сопоставлял этого поставщика, точнее любой придуманной логики. Побочный эффект — первые два месяца очередь исключений была вдвое толще плановой. Теперь мы предупреждаем об этом до старта, иначе заказчик решает, что система не работает, ровно тогда, когда она учится.
  • Очередь исключений мы делали дольше, чем саму модель, и это была верная пропорция. Если 8% документов некуда положить, бесполезны и остальные 92%: бухгалтерия не примет систему, у которой есть состояние «застряло непонятно где». Там же всплыло то, чего не показал ни один пилот, — часть поставщиков шлёт исправленную накладную под прежним номером и датой. Нашли это на месяце параллельной работы, и с тех пор месяц двойного ввода стоит в каждом проекте по первичке отдельной строкой, которую мы не даём вычеркнуть ради срока.
  • Экономику считаем брутто и нетто раздельно, иначе она врёт. Брутто 190 000 ₽ в месяц складывается из высвобожденных 272 часов операторов (112 000 ₽ по ставке 412 ₽/час с налогами), 40 часов бухгалтера на сверках (22 000 ₽), отказа от сезонного подрядчика на ввод в пик (24 000 ₽ в среднем по году) и половины найденных расхождений с поставщиками (32 000 ₽ — вторую половину списываем как спорную). Из этого вычитаем 45 000 ₽ поддержки и 45 000 ₽ эксплуатации: распознавание 6 750 страниц, языковая модель на нетиповых формах, сервер. Чистыми остаётся 100 000 ₽ в месяц, внедрение возвращается за 7 месяцев. Часы засчитаны только те, что реально перераспределены: операторов не сокращали, их перевели на претензии по недопоставкам, возврат брака и контроль сроков — работу, до которой раньше не доходили руки.
Первый шаг — диагностика

Похожая ситуация в вашем бизнесе?

Расскажите о ней — сравним с этим сценарием, найдём отличия и посчитаем вашу экономику. Диагностика бесплатна.

Голосовое описание задачи превращается в карту процесса и план внедрения
Можно голосом: запишите сообщение прямо в форме — расшифруем и разберём сами
NDA по запросу до передачи любых данных
Смета и план этапов — до договора, оплата только по принятым этапам
Ответ живого инженера, а не менеджера по продажам