Сессия инвентаризации: считать склад без остановки
Вместо субботней остановки склада — сессия: что фиксирует ведомость, как отделить реальную недостачу от движения внутри сессии и считать во время отгрузок.
Суббота, 7:30 утра. Начальник склада стоит в начале второго прохода с распечаткой на 312 строк. В девять приедет курьерская машина, в одиннадцать закрывается сборка заказов с маркетплейсов. Указание руководства однозначное: пока инвентаризация не закончится, ничего не двигается. К полудню отмечена едва половина листа, двое сотрудников дважды пересчитали один и тот же стеллаж, бригада сборки простояла у ворот, три заказа уехали на понедельник. А список из тридцати расхождений, который появляется в шесть вечера, никому не говорит, где реальная недостача, где ошибка счёта, а где просто перемещение, прошедшее по складу в тот же день.
Эта статья о том, как больше никогда не проводить такую субботу: считать не «днём», а сессией. Сначала разберём, почему остановка склада — самый дорогой вариант, затем что именно сессия инвентаризации фиксирует, а что сознательно оставляет в движении. Дальше — как делить ведомость, почему считающий не должен утверждать корректировку и в каком порядке разбирать расхождение. В последних разделах вы найдёте, как расхождение попадает в учёт, каким одним показателем измерять точность и как выстроить регулярность за первые девяносто дней.
Почему считать без остановки склада вообще возможно?
Полная инвентаризация с остановкой — привычка, унаследованная от бумаги: распечатанная ведомость, замороженный момент и цифры, вводимые один раз в конце дня. В такой схеме остановка обязательна, потому что после печати ведомости система не знает ничего о происходящем на складе. Как только учёт становится электронным, это ограничение исчезает. Если система помнит количество на момент открытия ведомости и отдельно фиксирует каждый приход, расход и перемещение после него, разрыв между посчитанным и учётным раскладывается на две части: настоящее расхождение и законное движение внутри сессии.
Практический вывод простой: считать можно, не останавливая отгрузки. Главный выигрыш — не спасённая суббота, а превращение инвентаризации из ежегодного испытания в еженедельную привычку. Компания, считающая раз в год, одиннадцать месяцев обещает клиентам на основании неверных цифр. Компания, считающая раз в неделю, ловит ошибку в среднем за несколько дней. Управление запасами без замороженных денег и без дефицита держится на постоянной корректировке данных, а разовый большой пересчёт этого не даёт.
Что именно фиксирует сессия инвентаризации?
Сессия фиксирует не остаток, а точку отсчёта. Для каждой строки в области действия она сохраняет то количество, которое система считала фактическим в момент формирования ведомости. Товар на складе продолжает двигаться, доступное количество в системе продолжает меняться. Неизменной остаётся только база, с которой будет сравниваться посчитанная цифра.
Экран «Детали сессии инвентаризации» в Rocketly делает это разделение видимым: ведомость формируется по складу и классу ABC, посчитанное количество вводится построчно, расхождения видны прямо в сессии. Если после открытия сессии по строке прошло законное движение товара, корректировка, которая будет применена при завершении, показывается отдельно. То есть экран даёт вам две цифры: разницу между вашим пересчётом и зафиксированной базой и сумму движений после открытия ведомости. Смешанные вместе, они лишают инвентаризацию доверия; разделённые — превращают её в доказательство.
Портит ли движение после открытия ведомости результат?
Нет, если это движение зафиксировано. Это единственное настоящее условие непрерывной инвентаризации: всё, что происходит на складе во время сессии, должно попадать в систему. Если сборщик забрал товар с полки, а накладную планирует оформить вечером, количество одновременно исчезло с полки и числится в системе — и обязательно всплывёт как расхождение. Поэтому перед переходом на непрерывный счёт отвечать нужно не на вопрос «в какой день считаем», а на вопрос «с каким опозданием у нас фиксируются движения».
Самый дешёвый способ свести опоздание к нулю — сканирование. Работа склада по штрихкоду ради быстрой инвентаризации без ошибок ускоряет не только счёт: она сближает момент записи с моментом события. В Rocketly наличие SKU и штрихкода у каждой позиции сводит и поиск через «Штрихкод и SKU», и попадание в нужную строку ведомости к одному сканированию. Сотрудник, ищущий строку глазами, ошибётся строкой; сканирующий — не сможет.
Как часто нужно считать каждую позицию?
Считать всё с одинаковой частотой — значит тратить лишние силы и упускать настоящий риск. Частота должна зависеть от двух свойств: стоимости позиции и скорости оборота. На дорогой быстрооборачиваемой позиции ошибка даже в одну единицу означает и деньги, и риск обещания клиенту; на дешёвой позиции с двумя движениями в год та же ошибка почти безразлична. Периодичность циклической инвентаризации определяется на пересечении этих двух осей.
Пороги ниже — стартовая рамка, а не правило: увидев собственную статистику расхождений, вы будете их ужесточать или ослаблять. Для сезонных позиций ритм задаёт не календарь, а спрос: до сезона и в сезоне частота должна отличаться. Компании, которые сводят прогнозирование спроса с данными о запасах и продажах, знают критичные позиции до пика, а не после него.
| Класс позиции | Типичный профиль | Рекомендуемый интервал | Допустимое расхождение |
|---|---|---|---|
| A — высокая стоимость, быстрый оборот | Большая доля выручки, движение еженедельно | Раз в 4 недели | Менее 0,5% в штуках |
| B — средняя стоимость или средний оборот | Регулярное движение раз в месяц | Раз в 12 недель | Менее 1% в штуках |
| C — низкая стоимость, медленный оборот | Несколько движений в год | 1–2 раза в год | Менее 2% в штуках |
| Партионный / серийный учёт | Позиции со сроком годности | Раз в 4 недели, по партиям | Нулевой допуск |
| Новая SKU | Первые 90 дней | Дважды в первый месяц | Нулевой допуск |
Делить ведомость по проходам или по классам?
Работают оба подхода, но решают разные задачи. Деление по проходам сокращает маршрут и ускоряет счёт, но чтобы закрыть целый класс, придётся дождаться нескольких ведомостей. Деление по классу делает точность управляемой: закрыв сессию, вы можете сказать, что весь класс A пересчитан. На практике эффективнее сочетать — выбрать класс, а внутри него идти по порядку проходов.
Значит, классификация должна существовать до ведомости. Приоритизация запасов по стоимости через ABC-анализ — это вход в план инвентаризации, а не его результат. В Rocketly «ABC-анализ» уже делит запас на стоимостные классы, поэтому ведомость формируется прямо по классу, а при смене распределения следующая ведомость отражает его автоматически.
Второй критерий деления — неподвижность. Позиция, к которой месяцами никто не прикасался, менее срочна, чем быстрый оборот, но даёт больше сюрпризов: ошибка копилась годами. Анализ оборачиваемости и старения запасов помечает такие строки, а вы гарантируете, что каждая из них попадёт в ведомость хотя бы раз в год.
Зачем разделять того, кто считает, и того, кто утверждает?
Инвентаризация по своей природе — процесс, наиболее склонный прикрывать собственные ошибки. Если один и тот же человек считает и утверждает расхождение, соблазн посмотреть на учётное количество и переписать его становится неизбежным. Простейшая мера — не показывать учётное количество в ведомости считающего. Вторая — отдать утверждение корректировки отдельной роли.
Чтобы разделение имело смысл, записи не должны редактироваться задним числом. В Rocketly приход, расход, перемещение и резервирование хранятся как неизменяемые движения: при необходимости исправления старая строка не удаляется, к ней добавляется корректирующее движение. Сессия инвентаризации работает так же — расхождение проводится отдельной корректировкой в момент завершения. Через три месяца вопрос «куда делись эти 40 единиц» по-прежнему имеет ответ с датой и именем пользователя.
Сначала разбираться или сразу корректировать?
Сначала пересчёт. Заметная часть расхождений — это ошибки счёта: запись не в ту строку, незнание вложенности в коробе, невнимание к тому, что та же позиция лежит и во втором месте. Отсюда рабочее правило: расхождение выше порога не превращается в корректировку, пока другой сотрудник не пересчитал строку. Если второй счёт подтверждает первый, расхождение реальное и причину стоит искать.
Эффективный порядок поиска такой: сначала движения внутри сессии, затем неоформленные расходы (образцы, брак, внутреннее потребление), затем недополученное количество на приёмке и в самом конце путаница в единицах измерения. Ошибки единиц самые коварные: когда смешиваются короба и штуки, расхождение всегда кратно одному и тому же коэффициенту. В Rocketly запас хранится в одной базовой единице, а альтернативные единицы задаются через «Конвертацию единиц измерения», поэтому путаница всплывает на вводе, а не в ведомости.
После корректировки работа не заканчивается. Если одна и та же SKU даёт расхождение три сессии подряд, проблема не в счёте, а в потоке этой позиции. Здесь помогают оповещения по порогам, которые предупреждают до исчерпания запаса: поднятый порог по хронически «плавающей» позиции не устранит причину, но снизит риск дефицита, пока вы её ищете.
Как расхождение отражается в учёте?
Расхождение — это движение товара, и, как любое движение, оно имеет стоимостный эффект. Недостача умножается на текущую себестоимость единицы и уходит в расходы; излишек тем же способом увеличивает стоимость запаса. Поэтому то, по какой себестоимости вы проводите корректировку, важно не меньше самого пересчёта. Выбор между FIFO и средневзвешенной себестоимостью даёт разную сумму для одного и того же расхождения.
Более серьёзная практическая проблема — тихое расхождение складского и бухгалтерского учёта. Счёт выставлен, а запас не списан; или наоборот, товар уехал, а документ оформлен позже. Экран «Сверка склада и учёта» в Rocketly показывает записи, по которым выставлен счёт, но не прошло списание. Очистка этого списка перед открытием сессии — то, что делает ваши расхождения действительно физическими. Иначе вы примете учётный разрыв за складскую недостачу, скорректируете его и позволите двум ошибкам скрыть друг друга.
Каким показателем измерять точность инвентаризации?
Достаточно одного: точность по строкам. Число строк, расхождение по которым осталось ниже порога, делённое на число посчитанных строк. Измерять в общем количестве штук обманчиво: одно крупное отклонение либо теряется среди сотен верных строк, либо в одиночку рушит картину. По строкам вы получаете ответ на нужный вопрос: скольким строкам из ста я могу доверять.
Второй показатель — срок закрытия расхождения: дни от обнаружения до утверждения корректировки. Если он растёт, инвентаризация идёт, но результата не даёт. Третий — количество повторяющихся SKU, строк, дающих расхождение раз за разом. Отслеживание этих трёх цифр в разрезе склада, смены и класса показывает не то, кто менее внимателен, а то, какой поток сломан. Это самый конкретный пример сравнения с собственными данными: вместо поиска среднего по отрасли вы сравниваете два своих склада по одной мерке.
Панель «Здоровье запасов» в Rocketly делает такое наблюдение дешёвым: доступный остаток, зарезервированное количество, потребление и сигналы неподвижности собраны в одной таблице, а ушедший в минус доступный остаток помечается отдельно. Ушедшая в минус строка — это строка, которую нужно пересчитать сегодня, и сессию можно запустить прямо из неё.
Как выстроить регулярность за девяносто дней?
Первый месяц — подготовка: каждой позиции присваиваются SKU и штрихкод, описываются склады и адреса хранения, начальные остатки проводятся как приход. В этом месяце не ставьте цели по точности; цель — фиксировать движения без опоздания. Второй месяц — пилот: только класс A, один склад, одна сессия в неделю, при этом роли формирующего ведомость, считающего и утверждающего разделены с первого дня. Третий месяц — расширение: в календарь входит класс B, подключается второй склад, точность по строкам отчитывается еженедельно.
Завершение большой ведомости может занять несколько минут. В Rocketly массовые обновления, выгрузки и завершение крупных инвентаризаций выполняет «Отслеживание фоновых задач»: статус «в очереди», «выполняется», «завершено» или «ошибка» виден с процентом прогресса, а закрытие браузера не прерывает работу. Никому не нужно сидеть у экрана в день пересчёта.
И наконец, не считайте инвентаризацию делом одного склада. Когда заказы, производство и продажи читают одни и те же данные, результат пересчёта сразу превращается в способность обещать сроки; схема, которая собирает запасы, заказы и производство на одном экране с продажами, избавляет отдел продаж от привычки звонить на склад с вопросом «есть в наличии?».
Если хотите попробовать первую сессию на своём складе, откройте аккаунт Rocketly и начните с одного склада и позиций класса A.
Частые вопросы
Действительно ли безопасно отгружать во время инвентаризации?
Да, при одном условии: отгрузка фиксируется в системе сразу. Сессия хранит базу на момент открытия ведомости, поэтому более поздние движения показываются отдельно и применяются как корректировка при завершении. Если фиксация запаздывает, безопасности нет — и дело не в инвентаризации, а в опоздании записи.
Обязательно ли проводить полную годовую инвентаризацию?
Требования законодательства и аудита отличаются у разных компаний, этот вопрос решайте с вашим бухгалтером. Операционно же на складе с регулярным циклическим счётом годовая инвентаризация становится проверкой: список расхождений короткий, закрытие проходит быстрее.
Как выбрать порог расхождения?
Задавайте его по классам и отталкивайтесь от собственной истории. Посмотрите распределение расхождений по первым трём сессиям, возьмите уровень, ниже которого остаются примерно три четверти строк, и ужесточайте его шагами по мере роста точности.
Не слишком ли тяжело вводить сессии на маленьком складе?
Наоборот, маленький склад — самое удобное место для старта. При сотне SKU пересчёт двадцати строк в неделю занимает двадцать минут и означает пять полных охватов в год. Тяжёлый вариант — трёхдневная годовая инвентаризация, останавливающая бизнес.