До сих пор организатор совместных закупок в OrderGrow работал по одной модели: собрать заказы, закупить у поставщика, выдать. Всё, что не под предзаказ, требовало отдельного инструмента — таблицы, чата, стороннего сервиса.

Учёт остатков добавляет вторую модель прямо в тот же каталог: часть товаров живёт по прежней логике сборов, часть — по новой, со свободным остатком на складе. Одна и та же группа покупателей, один интерфейс. Настройка независимая: товары без указанного остатка работают как раньше, ничего перенастраивать не нужно.

Остаток и заказы в матрице

В разделе «Матрица» — там, где организатор ведёт весь ассортимент — появились две новые колонки: «Остаток» и «Заказы». «Остаток» показывает свободное количество, доступное для заказа. «Заказы» — сколько уже забронировано покупателями. Красная подсветка привлекает внимание к товарам с нулём или отрицательным значением.

Матрица товаров OrderGrow — новые колонки «Остаток» и «Заказы»
Матрица с новыми колонками «Остаток» и «Заказы»

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

Панель настройки колонок в матрице OrderGrow — управление видимостью и порядком
Панель настройки колонок — включение и перестановка

Изменить остаток можно прямо из матрицы. Клик по ячейке в колонке «Остаток» открывает всплывающее окно с полем ввода. Кнопка «Сохранить» — и значение обновляется во всей системе моментально.

Всплывающее окно «Изменить остаток» в OrderGrow — быстрое редактирование значения
Редактирование остатка кликом по ячейке в матрице
Пусто или 0 в поле остатка означает, что для этого товара учёт не ведётся — он работает как обычный товар под предзаказ. Так же, как до появления этой функции. Организатору не нужно ничего перенастраивать по существующим товарам.

Что видит покупатель

В карточке товара с указанным остатком появился отдельный блок «Остаток» с подсвеченным количеством. Рядом — привычный блок «Заказы группы» с общим объёмом уже сделанных заказов. Покупатель видит сразу оба показателя и понимает: этот товар можно забрать сейчас, а не ждать закрытия сбора.

Карточка товара в OrderGrow с указанным остатком 12 кг — блок «Остаток» подсвечен зелёным
Карточка товара с остатком — блок «Остаток» рядом с «Заказы группы»

Если остаток у товара не указан, блок «Остаток» в карточке не появляется. Товар работает как раньше — заказ формируется до закрытия сбора, покупатель ждёт закупки у поставщика.

Карточка товара под предзаказ в OrderGrow — без блока остатка
Карточка товара под предзаказ — без блока «Остаток»

В общих списках покупатель тоже отличает товары с наличием от товаров под сбор. В разделе «Хиты продаж» карточки с остатком выделены зелёной рамкой:

Раздел «Хиты продаж» в OrderGrow — карточки товаров с остатком выделены зелёной рамкой
Хиты продаж — карточки с остатком выделены зелёной рамкой

На уровне подкатегорий, до захода в карточку, у товаров с наличием отображается строка «Остаток: N кг». Покупатель ориентируется в ассортименте, не открывая каждый товар:

Список товаров подкатегории в OrderGrow — строка «Остаток» под названием товара
Список подкатегории — строка остатка сразу под названием товара

Заказ с проверкой остатка

Сам процесс оформления заказа для покупателя внешне не меняется — он выбирает количество и нажимает «Заказать». Изменилась внутренняя логика: система сверяет количество со свободным остатком до подтверждения заказа.

Если покупатель попробовал заказать больше, чем доступно, система оформляет заказ на реально доступное количество и показывает пояснение. Отказ не «жёсткий»: покупатель видит, сколько получил, и решает — оставить заказ или отменить.

Автокоррекция количества в OrderGrow — покупатель хотел 5.5 кг, доступно было 4
Автокоррекция: заказ оформлен на доступное количество, покупатель подтверждает или отменяет

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

Оформленный заказ в OrderGrow — статус «Заказано», указано количество и сумма
Подтверждённый заказ — количество и сумма зафиксированы

Работает принцип «кто первый заказал — того и товар». Если весь свободный остаток уже забронирован другими покупателями, а кто-то ещё открывает карточку такого товара — показывается сообщение «Товар закончился» с кнопкой возврата в каталог. Заказать нельзя даже одну единицу.

Всплывающее окно «Товар закончился» в OrderGrow — кнопка «Вернуться в каталог»
Товар закончился — карточка недоступна для заказа

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

Уведомления о проблемных товарах

Учёт остатков добавляет организатору три новые ситуации, которые нельзя удержать в голове или отследить вручную:

  • Скрыт, есть свободный остаток. Часть остатка не разобрана заказами, но карточка товара скрыта — покупатели физически не могут заказать, а остаток мог быть распродан.
  • Опубликован, но заказать нельзя. Весь свободный остаток забронирован. Покупатели видят карточку и получают отказ при попытке оформить — плохой опыт, который стоит закрыть скрытием товара.
  • Отрицательный остаток. Выдали больше, чем было на складе — нужна ручная сверка. Обычно случается при ручных правках количества у выданных заказов.

Для этих сценариев в разделе «Товары» появилась вкладка «Уведомления» с бейджем количества проблем. Внутри — три раскрывающихся списка по типам ситуаций с конкретными товарами:

Раздел «Уведомления» в OrderGrow — три типа проблем с раскрытыми списками товаров
Раздел «Уведомления» — три типа проблем, под каждым раскрыт список конкретных товаров с остатком и заказами

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

Матрица OrderGrow с применённым фильтром «Опубликован, но заказать нельзя»
Матрица с фильтром «Опубликован, но заказать нельзя» — три проблемных товара

Тумблер «В наличии» в заказах

В разделе «Заказы» появился тумблер «В наличии». Когда он выключен — организатор видит все заказы: и по товарам с остатком, и по товарам под предзаказ. Смешанный режим по умолчанию, привычный порядок работы.

Раздел «Заказы» в OrderGrow — тумблер «В наличии» выключен, видны все заказы
Тумблер выключен — все заказы, товары под сбор и с остатком

Когда тумблер включён — список ужимается до заказов на товары с остатком. Организатор фокусируется на быстрой части ассортимента: она проходит цикл «Заказан → Готов к выдаче» без этапа закупки у поставщика.

Раздел «Заказы» в OrderGrow — тумблер «В наличии» включён, только заказы товаров с остатком
Тумблер включён — только заказы товаров, у которых есть остаток

В разделе «Выдача заказов» тумблер не применяется — при первой попытке его использовать система показывает объяснение:

Уведомление в OrderGrow — на странице выдачи фильтр «В наличии» не применяется
Объяснение — почему на «Выдаче» фильтр не работает

Логика простая: при выдаче организатор подтверждает передачу заказа конкретному клиенту целиком. Клиент забирает и то, что было в наличии, и то, что закупили под его сбор. Разделять эти позиции на этапе выдачи бессмысленно.

Защита остатков в Telegram-боте

Учёт остатков работает и в Telegram-боте, но в упрощённом виде. Функционал бота исторически ограничен возможностями Telegram: сложные интерактивные попапы с кнопками «Отменить / Понятно», как в приложении, здесь недоступны. Поэтому логика упрощена — бот проверяет остаток и не даёт оформить заказ, если товара не хватает.

Если покупатель через бота указывает количество больше доступного, бот показывает всплывающее сообщение «Доступно только N — уменьшите количество». Заказ не оформляется, покупатель возвращается к вводу и меняет количество вручную.

Telegram-бот OrderGrow — сообщение «Доступно только 1 кг — уменьшите количество»
Бот показывает доступное количество и просит уменьшить объём заказа

Если весь свободный остаток забронирован, бот при попытке оформить заказ показывает сообщение «Товар закончился — весь остаток разобран заказами». Логика такая же, как в приложении: заказать нельзя, покупатель возвращается к списку.

Telegram-бот OrderGrow — сообщение «Товар закончился — весь остаток разобран заказами»
Уведомление о том, что товар закончился — в боте

Автокоррекции количества с выбором «оставить или отменить», как в приложении, в боте нет — это компромисс в пользу простоты работы через мессенджер. За полным опытом покупатель может перейти в PWA-приложение по ссылке, доступной в боте.

Что это меняет в работе

Главное следствие — у товаров с остатком пропадает этап закупки у поставщика. Заказ проходит цикл «Заказан → Готов к выдаче» без промежуточной стадии, покупатель может забрать товар сразу.

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

Читайте также