# Неликвид: как составить список товаров для проверки
Товар, который почти не продается, лежит на складе маркетплейса, занимает место и деньги продавца. Но по одной строке в отчете решать, что это неликвид, нельзя. Возможно, товар поступил на прошлой неделе. Может быть, половину периода его не было в наличии. Или он лежит на одном складе, а заказы идут с другого.
Поэтому цель этой статьи скромнее и полезнее: собрать список товаров для проверки. Это не приговор и не план распродажи, а короткий перечень SKU, по которым человек дальше примет решение: снизить цену, перераспределить запас, вывезти товар или ничего не делать.
Коротко
- Список строится по SKU (артикул продавца + размер) в штуках, на одну дату наблюдения, за один период и по одному периметру складов.
- В расчет идет только доступный к продаже остаток. Резерв и товары в пути показываются отдельными колонками.
- Расход берется один и тот же на всем периметре, например заказанные штуки. Заказы, выкупы и отгрузки не смешиваются.
- Если расхода за период нет, дни запаса не считаются: в ячейке пишется «не определено», а товар попадает в отдельную группу.
- Новые товары и SKU с неполными данными выделяются в свои группы и в кандидаты на неликвид не попадают.
- Себестоимость для такого списка не нужна. Она понадобится позже, если будете считать замороженные деньги или экономику распродажи.
Что считаем в этой задаче
Сначала договоритесь о терминах. Иначе две таблицы с одинаковым названием будут считать разные вещи.
Единица. SKU — артикул продавца с размером или баркод. Количество — в штуках. Деньги в этом списке не нужны.
Дата наблюдения. День, на который снят остаток. Все остальное считается относительно нее.
Период. Окно, за которое считается расход, например 60 календарных дней до даты наблюдения. Дата наблюдения и период указываются в шапке таблицы.
Периметр складов. Один выбранный набор складов: например, все склады маркетплейса по схеме FBO на одной площадке. Остаток и расход берутся строго по этому периметру. Свой склад и склады маркетплейса, а также Wildberries и Ozon в одну строку не складываются.
Доступный остаток. Штуки, которые можно продать прямо сейчас. Не входят:
- резерв — штуки под уже оформленные заказы;
- товары в пути — к складу, между складами, возвраты от покупателей, еще не принятые на склад.
Расход. Одна мера выбытия запаса за период на том же периметре. Для списка проверки удобно брать заказанные штуки: это ранний сигнал спроса. Выкупы и отгрузки — другие события с другими датами. Если берете их, то только их, и на всем периметре.
Дни запаса = доступный остаток / средний дневной расход. Если расход равен нулю или данных о нем нет, показатель не определен.
Метод по шагам
Шаг 1. Зафиксируйте дату и период
Запишите в шапку: дата наблюдения, начало и конец периода. Для товаров с ровным спросом обычно хватает 30–90 дней. Сезонным товарам нужен период, который не захватывает только «мертвый» сезон, иначе в список попадет вся зимняя коллекция в июле.
Шаг 2. Выберите один периметр
Например: «Ozon, склады маркетплейса, FBO». Если нужен второй маркетплейс, сделайте второй список. Сравнивать их можно потом, а склеивать в одну строку нельзя.
Шаг 3. Соберите остаток по SKU
По каждому SKU на дату наблюдения нужны три колонки: доступно, резерв, в пути. В расчет дней запаса идет только «доступно».
Возвраты, принятые на склад, увеличивают доступный остаток. Это не новый спрос и не отрицательный расход: из расхода их не вычитают. Если по SKU заметный поток возвратов, отметьте это в комментарии — дни запаса могут вырасти без изменений в заказах.
Шаг 4. Посчитайте расход
Сумма заказанных штук за период по тому же периметру. В этом разборе исключаем отмененные заказы по состоянию на дату получения отчета. Правило записывается в шапку и одинаково применяется ко всем SKU. Это выбранная мера для списка проверки, а не утверждение о точном физическом выбытии: при большом потоке возвратов оценку проверяют отдельно.
Если есть данные о днях, когда товар был в наличии, делите расход на эти дни, а не на весь период. Иначе SKU, которого не было три недели из восьми, получит заниженный спрос и завышенные дни запаса.
Шаг 5. Посчитайте дни запаса
Средний дневной расход = расход / число дней (всего периода или дней в наличии). Дни запаса = доступный остаток / средний дневной расход.
При нулевом расходе формулу не применяйте. Пишите «не определено» и отправляйте SKU в группу «нет расхода».
Шаг 6. Разложите SKU по группам
Каждый SKU попадает ровно в одну группу. Проверяйте по порядку и останавливайтесь на первом совпадении:
- Неполные данные — нет остатка, расхода или даты первого поступления.
- Новый товар — первое поступление позже вашего порога, например 30 дней назад. Его еще рано оценивать.
- Нет доступного остатка — проверять как неликвид нечего.
- Нет расхода, товар был в наличии весь период — кандидат первой очереди.
- Нет расхода, но наличие было не весь период или история наличия неизвестна — нужна ручная проверка.
- Дни запаса выше порога — кандидат второй очереди. Порог задаете вы.
- Остальные — в список не входят.
Шаг 7. Добавьте колонки для проверки
Дата последнего заказа, количество в пути, пустая колонка «решение» и колонка «комментарий». Список нужен человеку, который пойдет смотреть карточки, а не только для красивого отчета.
Учебный пример
Данные ниже выдуманы для иллюстрации расчета. Период — 60 дней, порог дней запаса — 180, новый товар — поступил менее 30 дней назад.
| SKU | Доступно, шт | В пути, шт | Заказано за период, шт | Дни запаса | Группа |
|---|---|---|---|---|---|
| Учебный-А | 40 | 0 | 0 | не определено | 4. Нет расхода, был в наличии весь период |
| Учебный-Б | 120 | 0 | 12 | 600 | 6. Выше порога |
| Учебный-В | 15 | 30 | 45 | 20 | 7. Остальные |
| Учебный-Г | 25 | 0 | 0 | не определено | 2. Новый товар |
У Учебного-Б средний дневной расход 12 / 60 = 0,2 шт, дни запаса 120 / 0,2 = 600. У Учебного-В расход 0,75 шт в день, дни запаса 20. Товары в пути в расчет не входят, но их полезно видеть: если по Учебному-Б едет еще партия, проблема станет больше.
Ручная альтернатива: CSV и отчеты
Список можно собрать без ИИ, в обычной таблице.
- Выгрузите из личного кабинета продавца отчет по остаткам на складах на дату наблюдения. Названия разделов в кабинетах меняются, ориентируйтесь на текущий интерфейс.
- Выгрузите отчет по заказам за тот же период и по той же схеме работы.
- Приведите ключ к одному виду: артикул продавца + размер или баркод. Проверьте, что одна и та же вещь не записана двумя ключами.
- Оставьте только склады выбранного периметра в обоих файлах.
- Сверните заказы по SKU (сводная таблица или СУММЕСЛИ) и подтяните к остаткам (ВПР или XLOOKUP).
- Отдельной колонкой подтяните дату первого поступления, если она есть в выгрузке поставок.
- Посчитайте дни запаса формулой с проверкой: если расход равен нулю, выводите «не определено», а не ошибку деления.
- Присвойте группу по порядку из шага 6.
Минус ручного варианта — время и риск склеить файлы за разные даты. Плюс — каждую цифру видно в исходной строке.
Какие данные нужны
Обязательные:
- остаток по SKU на дату наблюдения: доступно, резерв, в пути;
- заказанные штуки по SKU за период;
- список складов, чтобы задать периметр;
- дата первого поступления SKU или первой поставки.
Желательные:
- дни, когда SKU был в наличии в течение периода;
- дата последнего заказа;
- принятые на склад возвраты за период.
Не нужны для этой задачи: себестоимость, выручка, комиссии, расходы на логистику. Они понадобятся, если следующим шагом будете считать, сколько денег заморожено в запасе или во что обойдется распродажа. Себестоимость продавец берет из своего учета: подключение к маркетплейсу ее не создает.
Где помогает Артель
Расчет простой, сложно собрать свежие данные без ручных выгрузок. Артель — это решение для подключения ИИ-ассистента к поддерживаемым данным и инструментам Wildberries и Ozon. Ассистент может запросить остатки и заказы и разложить их по правилам из промта ниже.
Какие отчеты и поля доступны в вашей связке, проверьте в самом подключенном ассистенте: попросите его перечислить инструменты, которые он видит. Настройку и совместимость сверяйте по актуальной инструкции подключения. Другие сценарии разбора описаны на странице /product/workflows.html.
Решения по товарам остаются за вами. Ассистент собирает список, а не управляет магазином.
Готовый промт
Подставьте значения в квадратных скобках.
Задача: составить список товаров для проверки на неликвид. Это список кандидатов, а не решение о распродаже.
Параметры:
- Маркетплейс: [вставить Wildberries или Ozon]
- Периметр складов: [вставить схему и склады, например все склады маркетплейса FBO]
- Дата наблюдения остатков: [вставить дату]
- Период расхода: [вставить дату начала] — [вставить дату окончания]
- Порог дней запаса: [вставить число дней]
- Новый товар: первое поступление позже чем [вставить число дней] до даты наблюдения
Правила:
1. Единица — SKU (артикул продавца + размер или баркод), количество в штуках.
2. Остаток и расход бери только по указанному периметру. Не объединяй маркетплейсы и схемы работы.
3. В расчет идет только доступный к продаже остаток. Резерв и товары в пути выведи отдельными колонками и в дни запаса не включай.
4. Расход — заказанные штуки за период на том же периметре за вычетом отмен по состоянию на дату получения отчета. Применяй одно правило ко всем SKU и укажи его в шапке. Не заменяй заказы выкупами или отгрузками. Если заказов или данных об отменах нет, сообщи об этом и не рассчитывай итог без согласования метода.
5. Принятые возвраты не вычитай из расхода.
6. Если есть данные о днях в наличии, считай средний дневной расход по ним, иначе по всем дням периода и отметь это.
7. Дни запаса = доступный остаток / средний дневной расход. При нулевом или отсутствующем расходе пиши «не определено», не подставляй 0 и не делай условных оценок.
8. Каждому SKU присвой ровно одну группу, проверяя по порядку: неполные данные; новый товар; нет доступного остатка; нет расхода и был в наличии весь период; нет расхода, но наличие было не весь период или неизвестно; дни запаса выше порога; остальные.
9. Не делай выводов о причинах. Нулевые продажи могут объясняться отсутствием товара, сезоном или ошибкой данных.
10. Ничего не придумывай. Если поля нет, напиши, какого поля не хватает.
Ответ:
- Шапка: маркетплейс, периметр, дата наблюдения, период, мера расхода, дата получения данных.
- Полная диагностическая таблица по всем SKU: SKU, доступно, резерв, в пути, заказано за вычетом отмен, дней в наличии (если есть), дни запаса, дата последнего заказа, группа.
- Отдельная выборка кандидатов только из групп 4 и 6. Группа 5 — отдельная ручная проверка, не подтвержденный неликвид.
- Сводка: сколько SKU в каждой группе, сумма по группам равна общему числу SKU.
- Отдельный список SKU с неполными данными и перечень недостающих полей.
Как сверить результат
Требование в промте не гарантирует, что ассистент его выполнил. Перед тем как раздавать список, проверьте:
- Шапку. Дата наблюдения, период и периметр совпадают с заданными. Мера расхода — заказы, а не выкупы.
- Сумму групп. Число SKU по всем группам равно общему числу SKU в периметре. Если нет — какой-то товар потерялся или попал в две группы.
- Остаток. Сумма доступного остатка в полной диагностической таблице по всем группам сходится с отчетом из кабинета на ту же дату и по тем же складам. Отобранные кандидаты — только часть ассортимента, их сумму нельзя сравнивать с общим остатком магазина.
- Выборку. Возьмите 3–5 SKU из группы «нет расхода» и проверьте их в кабинете: были ли заказы, был ли товар в наличии, не новый ли он.
- Арифметику. Пересчитайте дни запаса для двух строк вручную.
- Нули. Ни у одного SKU с нулевым расходом не должно быть числа в колонке дней запаса.
Если расхождения есть, задайте ассистенту уточняющий вопрос по конкретной строке, а не просите «пересчитать все».
Ограничения
- Отчеты бывают неполными и запаздывают. Подключение не устраняет пробелы в данных маркетплейса. Свежие заказы и возвраты могут появиться позже.
- Себестоимости в списке нет. Если она понадобится для следующего шага, ее нужно взять из своего учета: коннектор отсутствующую себестоимость не дает.
- Совпадение не доказывает причину. Если продажи упали одновременно с изменением цены или пропажей остатков, это не значит, что причина найдена. Отсутствие товара и падение спроса могут быть одновременно.
- Сезонность. Короткий период вне сезона сделает почти любой сезонный товар кандидатом.
- Порог — ваше решение. Универсального числа дней, после которого товар становится неликвидом, нет. Оно зависит от категории, сроков годности и оборота.
- Список — не действие. Цены, вывоз и уценку вы меняете сами после проверки.
Частые вопросы
Какой период брать для списка?
Для товаров с ровным спросом обычно хватает 30–90 дней: короткий период сильнее реагирует на случайные колебания, длинный медленнее замечает изменения. Сезонным товарам нужен период, который захватывает их сезон, или отдельный список с другим порогом. Главное — один и тот же период для всех SKU в списке и явная запись его границ в шапке.
Нужна ли себестоимость, чтобы составить список?
Нет. Список строится по штукам: остаток, расход, дни запаса. Себестоимость понадобится, если следующим шагом вы захотите оценить, сколько денег заморожено в запасе, или посчитать экономику распродажи. Ее берут из своего учета: подключение к маркетплейсу ее не создает.
Что делать с товаром, которого не было в наличии часть периода?
Если есть данные о днях в наличии, делите расход на эти дни, а не на весь период. Если таких данных нет и расход нулевой, SKU попадает в группу «нет расхода, наличие было не весь период или неизвестно» и проверяется вручную. Записывать его в первую очередь кандидатов нельзя: нулевые продажи могли быть просто потому, что продавать было нечего.
Можно ли считать дни запаса по выкупам, а не по заказам?
Это будет другая методика, а не прямая замена заказов в приведенном расчете. Выкуп происходит позже заказа и не равен моменту резервирования или отгрузки. Если доступны только выкупы, явно согласуйте другую метрику и ее ограничения; не представляйте результат как дни запаса по заказам. Нельзя смешивать заказы для одних SKU и выкупы для других.
Что делать, если ассистент не видит нужные данные?
Попросите его перечислить доступные инструменты и поля, а затем сверьте настройку по актуальной инструкции подключения. Если какого-то поля, например дней в наличии, нет в поддерживаемых данных, оставьте его пустым и обработайте затронутые SKU вручную по отчетам из кабинета. Подставлять оценки вместо недостающих данных не нужно.
Вывод
Список кандидатов в неликвид — это таблица на одну дату, за один период и по одному периметру складов. В ней доступный остаток отделен от резерва и товаров в пути, расход измерен одной мерой, а нулевой расход честно помечен как «не определено». Новые товары и SKU с неполными данными стоят отдельно, поэтому проверять приходится только тех, кто действительно залежался.
Следующий шаг: подключите ассистента по актуальной инструкции подключения, запустите промт для одного маркетплейса и одного периметра складов и вручную сверьте пять SKU из группы «нет расхода» с отчетами кабинета.