Остатки в WooCommerce: где вести учёт
Остаток в WooCommerce — это не одно число в карточке товара, а результат договорённости о том, какая система владеет запасом и кто создаёт резерв. Пока эта договорённость не зафиксирована, магазин рано или поздно продаёт товар, которого нет: он ушёл в рознице, зарезервирован менеджером или списан на складе, а сайт об этом не узнал.
Первое решение: учёт на сайте или вне его
Заголовок раздела «Первое решение: учёт на сайте или вне его»Выбор схемы начинается не с плагина, а с вопроса «где живёт остаток». Два взаимоисключающих варианта:
- Учёт внутри WooCommerce. Сайт — единственное место, где ведутся количества, закупки и движения. Подходит, когда продажи идут только через сайт, а складские операции просты.
- Учёт во внешней системе. Остатки и товарные документы ведутся в товароучётной системе, WooCommerce получает данные для витрины и передаёт заказы. Подходит, когда есть закупки, приёмки, перемещения, несколько складов или общий запас с розницей и маркетплейсами.
Смешанная схема — ручные правки остатка на сайте при включённом обмене — не является третьим вариантом: следующая синхронизация перезапишет ручные числа, и никто не поймёт, почему доступность «сама» изменилась.
Решение не зависит от размера каталога. Небольшой магазин с розницей и маркетплейсом нуждается в отдельном учёте раньше, чем крупный каталог с единственным каналом: важны процессы, а не 500 или 10 000 позиций.
Два числа, которые нельзя путать
Заголовок раздела «Два числа, которые нельзя путать»При любом варианте — на сайте или во внешней системе — нужно различать физический остаток, резерв и доступность к продаже:
- Физический остаток — сколько единиц лежит на складе по данным учёта.
- Резерв — сколько удержано оформленными, но ещё не отгруженными заказами.
- Доступность к продаже — что видит покупатель:
доступно = остаток − резервы − страховой буфер.
Страховой буфер компенсирует задержку обмена: пока заказ едет в учёт, буфер не даёт продать ту же единицу второму покупателю. «Обновление раз в 15 минут» и «сразу после продажи» — разные условия для магазина, торгующего последними единицами через несколько каналов. Формула и правила резервирования подробно разобраны в «Заказах и остатках» — этот раздел описывает конкретные реализации на WooCommerce и не дублирует модель.
Варианты учёта
Заголовок раздела «Варианты учёта»Каждый вариант — отдельная статья с составом функций, способом подключения и ограничениями.
- Учёт на сайте: встроенные средства и плагины — базовые настройки WooCommerce, ATUM, Smart Manager, мультисклад. Стартовый вариант: сначала убедиться, что внешняя система действительно нужна.
- МойСклад: облачный товарный учёт — WooMS, интеграция amgroup через API, MsWoo и что проверять в обмене.
- 1С: учёт в выбранной конфигурации — УТ, УНФ, «Розница», CommerceML, EDI и ITGALAXY; почему «интеграция с 1С» — не характеристика решения.
- retailCRM: заказы и связь со складом — модуль WooCommerce, получение остатков из CRM, задержки и WP-Cron.
- Битрикс24: CRM и режим учёта — собственный склад или данные из 1С, компоненты Flamix, границы применимости.
- Другие товароучётные системы — Saby, СБИС и прочие: как оценить заявленную интеграцию до внедрения.
- Каналы продаж и WMS — розница и POS, маркетплейсы, уведомления о поступлении, управление физическим складом.
CRM в этой схеме не заменяет учёт: retailCRM и Битрикс24 подключают ради процессов продаж, а не ради передачи количества. Обмен остатками может идти напрямую между сайтом и учётной системой, и это обычно надёжнее, чем цепочка из трёх звеньев.
Как собрать связку
Заголовок раздела «Как собрать связку»Порядок выбора — последовательный, а не по списку популярных плагинов.
- Определите, где ведётся учёт. Если он уже работает в МойСклад, 1С или другой системе — начинайте с подключения сайта к ней, а не с переноса процессов в WordPress.
- Назначьте владельца для каждого типа данных. Остатки и цены могут приходить из учёта, а названия, описания и фотографии оставаться на сайте. Направления обмена задаются отдельно для каждого типа данных.
- Определите роль CRM. Если отдельных процессов работы с клиентами нет, обмен идёт напрямую. Если менеджеры работают в retailCRM или Битрикс24 — пропишите маршрут заказа через CRM и убедитесь, что заказ не создаётся в учёте дважды: напрямую с сайта и повторно из CRM.
- Добавьте недостающие функции. Закупки и поставщики — инструменты управления запасами; количества по точкам — мультисклад; продажи в магазине — касса и связь с общим учётом; сложные операции на складе — WMS.
- Посчитайте полную стоимость. В бюджет входят подготовка каталога, настройка, дополнительные модули, тестирование и поддержка. Бесплатный плагин требует работы специалиста, платный — проверки на ваших данных.
Что проверить перед запуском
Заголовок раздела «Что проверить перед запуском»Пять проверок, без которых интеграция остатков не считается рабочей.
- Товары сопоставляются без дублей. У каждой позиции и вариации есть устойчивый идентификатор (SKU или внешний ID), а не совпадение названий.
- Сайт получает правильное количество. Физический остаток, резерв и доступный запас различаются; ожидаемая поставка не становится доступной к немедленной отгрузке.
- Заказы меняют запас один раз. Проверены продажа последней единицы, отмена, возврат и изменение состава заказа.
- Обмен восстанавливается после сбоя. Повторная передача не создаёт дублей, а ошибка подключения не читается как нулевой остаток — иначе витрина обнулит весь каталог при недоступном API.
- Есть ответственный за интеграцию. Видно время последнего успешного обновления, сохраняются ошибки, определён порядок их устранения.
Надёжность схемы зависит не от количества подключённых сервисов, а от ответов на четыре вопроса: где хранится остаток, кто создаёт резерв, куда передаётся заказ и что происходит при ошибке.
Связанные страницы
Заголовок раздела «Связанные страницы»- WooCommerce: полное руководство — остальные темы магазина: товары, оплата, доставка, налоги.
- Заказы и остатки: состояния, резерв и склад — модель состояний заказа и формула доступности, общая для любой платформы.
- Системы и потоки данных — обмен с 1С, ERP и CRM на уровне контура данных.
- Управление заказами — статусы и возвраты внутри WooCommerce.