Учет закупочных цен в малом и среднем опте обычно устроен так: последний инвойс лежит где-то в почте, позапрошлый — в папке «Поставщики», сводная таблица — в Excel у закупщика, а самая свежая версия — у него же в голове. Пока поставщиков пять и позиций сотня, это работает. Но когда брендов десятки, а позиций тысячи, маржа начинает считаться на глаз: «вроде бы мы брали это по восемь евро». Разберем, как выглядит учет закупочных цен, при котором цены извлекаются из реальных документов, история сохраняется по каждому поставщику, а аномальный скачок цены виден в день получения инвойса, а не через месяц в отчете.
Где на самом деле живут закупочные цены
Спросите закупщика, где посмотреть цену конкретной позиции, — ответ почти всегда будет составным. Часть цен лежит в последних инвойсах в почте. Часть — в прайс-листах, которые поставщик присылает раз в квартал, и не факт, что последний вообще дошел. Часть — в Excel-файле, который однажды свели вручную и с тех пор обновляют по настроению. Остальное хранится в памяти конкретного человека.
У такой схемы три системных изъяна:
- Версии расходятся. В таблице одна цена, в последнем инвойсе другая, и никто не помнит, какая из них актуальна.
- История не накапливается. Новый прайс перезаписывает старый, и динамика теряется: через год невозможно ответить, как менялась закупка по позиции.
- Знание не передается. Уходит закупщик — вместе с ним уходит и «база цен».
Заметим: сами данные никуда не пропадали. Каждая цена зафиксирована в документе, который лежит в почте или на диске. Проблема не в отсутствии данных, а в том, что никто не собирает их в один ряд.
Чем опасен учет закупочных цен «на глаз»
Контроль маржи в торговле упирается ровно в этот разрыв: продажная цена известна точно, закупочная — «примерно». Дальше начинаются типовые сценарии потерь.
- Продажа по старой закупке. Поставщик поднял цены в новом инвойсе, а клиентский прайс пересчитали через месяц-два. Все это время часть позиций уходила с меньшей наценкой, чем планировалось, а какие-то — в минус.
- Незамеченное снижение. Обратный случай реже, но тоже стоит денег: поставщик дал скидку или сезонные условия, а себестоимость продолжают считать по старой цене — и проигрывают тем, кто пересчитал.
- Спор без аргументов. Поставщик выставил цену выше согласованной. Без истории спорить нечем: «нам казалось, было дешевле» — не аргумент. С инвойсом трехмесячной давности и конкретной ценой разговор выходит другим.
Общее у этих сценариев одно: потери не выглядят как событие. Никто не «потерял» деньги в конкретный день — маржа тихо разъехалась по десяткам позиций, и в отчетности это видно только задним числом. Именно поэтому контроль маржи начинается не с отчета о продажах, а с достоверной закупочной цены на каждую позицию.
История цен поставщиков: как она выглядит на практике
История цен поставщиков — это не еще одна таблица, которую нужно заполнять. Это ряд значений по каждой позиции каждого бренда: дата, цена, валюта — и ссылка на документ, из которого цена взята. Последний пункт принципиален. Цена без документа — мнение. Цена со ссылкой на инвойс от конкретной даты — факт, который можно предъявить и поставщику, и самому себе, когда разбираешься, почему просела маржа по группе.
Когда такой ряд существует, привычные вопросы закупки превращаются из маленького расследования в один взгляд:
- как менялась цена позиции за последний год;
- когда было последнее повышение и на сколько процентов;
- сколько мы платили за позицию до того, как поставщик «обновил условия»;
- в какой валюте шли поставки и не маскирует ли курс реальную динамику цены.
Вести такое вручную по тысячам позиций нереально — именно поэтому Excel-сводки и умирают. Смысл появляется тогда, когда история собирается автоматически, из документов, которые бизнес и так получает каждый день.
Откуда берутся цены: из документов, а не из ручного ввода
HORUVIA заходит в задачу со стороны почтового ящика. Система по IMAP разбирает входящую почту поставщиков: раскладывает письма по брендам и типам документов — инвойсы, прайсы, подтверждения заказов, сертификаты. Из инвойсов и прайсов извлекаются позиции с ценами и складываются в память по поставщику. Сканы проходят OCR; для файлов, которые лежат не в почте, а в папках на компьютере, есть агент на ПК — он передает документы на сервер. Как устроен сам разбор входящих документов, мы подробно описали в статье про разбор входящих счетов.
Во флагманском кейсе — импорт грузовых автозапчастей и ВЭД в Казахстане, живой документооборот по десяткам брендов — таким способом накоплены цены по сотням тысяч позиций. Никто не вбивал их руками: каждая цена уже была в инвойсе или прайсе, оставалось достать ее оттуда и привязать к дате и исходному документу.
Что попадает в память по поставщику
Память — это не только цены. По каждому поставщику накапливается связанный набор данных:
- сами документы — инвойсы, прайсы, подтверждения заказов — с датами и типами;
- извлеченные позиции с ценами и валютой;
- сертификаты со сроками действия.
Принципиально, что каждая цифра остается привязанной к исходнику: открыв позицию, видно, из какого инвойса и от какой даты взято значение. Проверка занимает минуту — не нужно поднимать переписку за полгода.
Практичный тест: цена выросла вдвое — что это?
Вот проверка, которая отличает живой учет от мертвой таблицы. В новом инвойсе знакомая позиция стоит вдвое дороже, чем в прошлом. Возможные объяснения:
- реальное подорожание — поставщик действительно поднял цены;
- другая фасовка или единица измерения — цена за упаковку вместо цены за штуку;
- ошибка в документе — опечатка, съехавшая строка, перепутанный артикул;
- другая валюта или изменившиеся условия поставки.
Без истории вопрос чаще всего даже не возникает: инвойс оплачивают, потому что «поставщик прислал — значит, так и есть». С историей аномалия видна сразу: новая цена сравнивается с прошлыми значениями по той же позиции, резкое отклонение бросается в глаза уже при разборе документа, а о самом инвойсе приходит алерт в Telegram. Дальше решает человек: открывает исходник, привязанный к цене, смотрит соседние строки и при необходимости пишет поставщику — до оплаты, а не после.
Тот же механизм работает и на менее драматичных случаях. Постепенный рост в несколько шагов по целой группе позиций заметить глазами еще труднее, чем разовое удвоение, — а на фоне истории он читается как тренд, с которым можно идти к поставщику на переговоры.
Здесь проходит важная граница ответственности. HORUVIA не «исправляет» цену сама и не проводит платежи: из инвойса детерминированный код формирует черновик платежа — без генеративных вольностей в цифрах, — а подтверждает его человек. Задача системы в том, чтобы вопрос «почему вдвое?» был задан вовремя.
Сравнение цен поставщиков без ручной сводки
Отдельная задача — сравнение цен поставщиков, когда одну и ту же позицию или взаимозаменяемые позиции возят от разных производителей. Обычно такую сводку собирают по случаю: перед крупным заказом кто-то выгружает прайсы, сводит их в таблицу — и через месяц она уже устарела.
Когда ряды цен накапливаются по каждому поставщику непрерывно, сравнение перестает быть проектом на вечер. Из истории видно:
- кто из поставщиков за год поднимал цены и на сколько;
- у кого закупка по конкретной группе стабильнее;
- где расхождение по одной и той же позиции такое, что стоит перепроверить условия или запросить объяснение.
Честная оговорка: система не выбирает поставщика за вас. Цена — не единственный фактор: есть валюта расчетов, предоплата, сроки, надежность, история отношений. Но выбор, который опирается на фактические ряды цен, а не на впечатления, — это качественно другой выбор.
Что меняется в заказах и планировании
Накопленная история работает не только на контроль. Она подпирает рекомендацию заказа: HORUVIA считает предложение с учетом сезонности, ABC-классификации и текущего наличия — как это устроено, разбирали в статье про сезонный заказ и ABC-анализ. Когда известно, по какой цене позиция закупалась фактически, наценка и оборачиваемость считаются от реальной закупки, а не от «средней по ощущениям».
Вокруг той же памяти по поставщикам работают остальные контуры: дедлайн-движок заранее напоминает об истекающих сертификатах и договорах, «Пульс компании» показывает грузы по этапам, канбан-доска держит задачи по поставщикам в одном месте. Сюда же встроены Telegram-алерты: оферта поставщика с дедлайном не утонет в общей папке, а письмо, оставшееся без ответа, всплывет напоминанием. Как эти части складываются в общий контур оптовой компании — в обзоре про автоматизацию оптовой торговли.
С чего начать
Начинать стоит не с «проекта внедрения», а с одного почтового ящика и нескольких ключевых поставщиков. Подключите почту по IMAP — и система начнет раскладывать письма и вытаскивать цены из свежих инвойсов; историю можно углубить, передав ей архив прошлых документов. Менять учетную систему при этом не нужно: почта остается почтой, привычный Excel никто не отбирает — просто рядом появляется слой, который помнит все цены и документы. Для старта есть онбординг-пресеты под сегменты — импорт и ВЭД, розница, услуги, HoReCa, логистика, — а для тех, кто работает в 1С, предусмотрен базовый обмен.
Первые недели дают простой критерий успеха: на очередном инвойсе система должна сама показать, что изменилось по ценам относительно прошлых поставок. Если показала — учет живой.
Посмотреть, как память по поставщикам работает на ваших документах, можно на демо — запросите его на главной странице. Прикинуть, сколько времени команда тратит на ручную сводку цен и что освободится после автоматизации, поможет калькулятор, а ответы на типовые вопросы о подключении почты и безопасности данных собраны в FAQ.