Лучшую цену тоже помогает выбирать

Привет, я Даниил Румянцев, основатель компании «Программы 93». Внедряем, разрабатываем и дорабатываем программы 1С — от бюджетных решений до ERP-систем для крупных предприятий.

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

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

Исходная точка: закупки в Excel, месяц работы на заказ

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

У нашего клиента 7–8 поставщиков из Китая, каждый присылает прайс в Excel. Менеджер вручную открывал каждый файл, искал нужные позиции, сравнивал цены, формировал заказ. По сути — собирал вручную таблицу для анализа цен, а потом и сам заказ. Очень трудоёмко, так как в прайсах около 10 000 позиций. На такой процесс уходило до месяца.

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

Глобально, задача клиента — автоматизировать закупки:

  • не тратить месяц на подготовку одного заказа;

  • учитывать скорость продаж;

  • не перегружать основную 1С-базу лишней номенклатурой;

  • видеть рекомендации — что, у кого и в каком количестве заказать.

Почему не подошли типовые решения 1С

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

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

Находим лучшую цену: как работает помощник закупок

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

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

Система сделана на базе 1С: Управление торговлей, но легко адаптируется под любые конфигурации, например, 1С: Комплексная автоматизация или ERP. Просто будет еще одна база с прайсами поставщиков только для закупок.

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

  • скорость и сумму продаж каждой позиции;

  • количество дней, которое товар проводит на складе;

  • срок доставки от поставщика;

  • остатки на складе.

По этим данным система рассчитывает рекомендованное количество товара к заказу.

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

Про создание самой формулы еще отдельно расскажу чуть ниже.

В конце менеджер просматривает уже сформированный заказ и нажимает кнопку «Создать заказ». Дальше 1С автоматически готовит типовой документ «Заказ поставщику».

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

Сделали формулу вместе с экономистом

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

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

Чтобы прийти к конечному варианту формулы, понадобилось полгода. Мы постоянно тесно взаимодействовали с экономистом. Он предлагал варианты расчетов, показатели и объяснял, как их нужно распределить. Мы реализовывали идеи, а потом экономист проверял результат и анализировал. Если что-то не сходилось, снова обсуждали и дорабатывали.

Система сразу тестировалась на реальной базе клиента. Разработка была внешней, работы не затрагивали основную конфигурацию, поэтому отдельный стенд для тестирования не понадобился. Это ускорило внедрение и проверку гипотез.

Менеджер больше не тратит время на ручное сопоставление Excel-файлов

После внедрения помощника закупок для компании процесс стал намного проще:

  • Система сама сравнивает прайсы и предлагает оптимальные заказы.

  • В интерфейсе наиболее выгодная цена выделена цветом и жирным шрифтом — чтобы быстрее ориентироваться.

  • Менеджер может вручную проверить или скорректировать заказ, но основную работу делает система.

  • После того, как заказ создали, в 1С формируются готовые документы.

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

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

В системе есть вкладки с прайсами по странам. Если будут другие поставщики, значит и вкладок будет больше
В системе есть вкладки с прайсами по странам. Если будут другие поставщики, значит и вкладок будет больше

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

Для кого подойдет

Скажу отдельно про универсальность помощника закупок из Китая. Его можно адаптировать под любые товарные бизнесы, не только автозапчасти. А география закупок не ограничена — можно подключить поставщиков любой страны.

Система будет полезна любой компании, где есть регулярные закупки у поставщиков:

  • с большим ассортиментом (десятки тысяч позиций);

  • с закупками за рубежом, где важен срок поставки;

  • где нужно снижать складские остатки, но при этом не терять продажи.

Как я уже писал выше, прайсы можно загружать не только вручную, а настроить автоматическую загрузку с почты или даже по API.

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

Комментарии (3)


  1. Byaka8kaka
    21.07.2025 08:26

    Вы тут какой-то сюр описываете. Сам работал руководителем закупок, покупал и у Китая, и у РФ дистров -50к артикулов в общей базе.,

    Сделали формулу вместе с экономистом

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

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

    Просто - УВОЛЕН. По другому это не описать.
    Кто покупает товар когда он уже закончился? Особенно с Китая откуда товар месяц едет...

    Менеджер больше не тратит время на ручное сопоставление Excel-файлов

    Какое время? 2 минуты прописать формулу ВПР? Или у вас менеджер в excel ничего кроме =A1+B1 не знает?
    У всех Китайцев в базе на каждый товар есть свой артикул(ну разве что кроме тех кто прям совсем на рынке торгуют). Так-же у закупщика есть база своих артикулов. Связать 2 эти базы в ексель не тривиальная задача.


    Ну к самой ERP никаких претензий, молодцы помогли ребятам. А вообще всё что до API - адекватный закупщик сам должен делать. подготавливаются файлы для Power Query, вносятся в БД и через Power Pivot создаются связи между всеми поставщиками. В итоге получаем общую БД со всеми ценами и расчетами. В такой системе можно спокойно рассчитывать продажи с учетом наличия товара на складе и получать чистую достаточность и оборачиваемость товара.


    1. Byaka8kaka
      21.07.2025 08:26

      Немного дополню, для тех кто не в теме закупок. А их тут думаю большинство.
      Когда ты покупаешь у РУ Дистрибьютора товар - ты его покупаешь обычно раз в неделю те товары которые у тебя на постоянном обороте. Если у Дистра какая-то акция, то желательно день в день - иначе не купишь вообще ничего. Дистрибьюторов по факту не так много, а вот покупателей сотни - и кто купил быстрее товар по адекватной цене тот и будет его продавать. Очень часто происходит такое что манагер Дистра присылает с утра в ПН тебе прайс, ты через 3-4 часа присылаешь ему предзаказ и тебе отвечают что 20-30% товарного ассортимента уже нету - ты опоздал. И дело тут не в том что товара мало, а в том что купить больше можно значительно дешевле, и многие выкупают товар у Дистра стоками с хорошей скидкой что-бы просто потом перепродать так-же оптом(Т.е. есть Дистры 1го порядка - кто везет с заводов/Китая, а есть 2го и т.д. которые уже перепродают со своей наценкой подороже). Дальше все просто, нет товара - нет продаж - нет прибыли. В идеале когда работаешь с Дистром то ты вообще не покупаешь со стока, ты делаешь предзаказ через Вендоров вместе с Дистрибьютором - что-бы всё что приехало с заводов/Китая было именно под тебя(хотя даже так иногда товар уводят). С Вендорами напрямую работают только супер крупные компании типо МВидео/ДНС, либо Дистрибьюторы.
      С Китаем все еще веселее, если товар берется у Дистра то в принципе все так-же, только надо учитывать еще Китайские праздники - в которые тебе никто ничего не отгрузит + логистику(В лучшем случае месяц закладывают, оптимистичная доставка без косяков)
      Плюсом сюда проблемы с переводами в Китай. И Китайцы не будут ждать пока ваши деньги дойдут, они просто продадут товар тому кто уже оплатил. А при покупках с заводов сроки от оплаты до получения товара - 3 месяца и более, ну и заказы там должны быть тоже огромных размеров, 100-200 штучек одного артикула под вас никто делать не будет(Не рентабельно для завода)

      По этому подготовка и обработка прайса в месяц, это какая-то фантастика. Даже если не учитывать проблему перевода финансов в Китай, вдруг они там за нал покупают. За месяц всё устаревает -цены, стоки, курс валют. Если ты Китайцу ответишь через месяц с заказом по старому прайсу, он тебе в лучше случае отгрузим половину из твоего заказа + еще и по другим ценам и другому курсу - а это уже не закупки а гадание на кофейной гуще какое-то.


    1. asatost
      21.07.2025 08:26

      Кто покупает товар когда он уже закончился? Особенно с Китая откуда товар месяц едет...

      Однозначно.

      Связать 2 эти базы в ексель не тривиальная задача

      Ещё в 2005 году я видел книгу в Excel, куда подтягивались Excel'евские же прайс-листы поставщиков, был функционал, аналогичный "Номенклатура поставщиков" в современной 1С (т.е. если не найдено совпадение по артикулу, модели и т.д. можно вручную указать какой товар какого поставщика соответствует локальному), рассчитывался объём закупа и раскидывался по поставщикам по критерию минимизации стоимости закупа с учётом скидок за объёмы, ставки кредита в банке и ещё кучи параметров.

      подготавливаются файлы для Power Query, вносятся в БД и через Power Pivot создаются связи между всеми поставщиками

      Это всё давным-давно есть в 1С. И при желании она вообще закупаться может чисто автоматически, при достижении порогового значения остатков.