AURA

Allegro и свой магазин: как не продать один и тот же товар дважды

Узнай, как построить единый источник правды о складе и синхронизировать продажи между Allegro и своим магазином. Познакомься с событиями API Allegro и статусами заказов.

Опубликовано
10 мин чтения1931 слов

AURA — виртуальный управленец бизнеса. Управление по фактам, а не по ощущениям. Кто мы

Главные выводы

  • OFFER_STOCK_CHANGED в API Allegro — событие об изменении количества, появляется также после покупки
  • Статус READY_FOR_PROCESSING означает, что клиент оплатил заказ или выбрал оплату при получении либо самовывоз — можно начинать выполнение
  • Единый источник правды об остатках устраняет риск продажи одного товара дважды
  • Статус Processing в WooCommerce — сигнал к списанию, оплата уже получена
  • Обновление остатков раз в сутки недостаточно для товаров с низким остатком
  • Буфер безопасности (дополнительный запас) защищает от отмены заказов

Несколько слов, которые встретятся в тексте

Объясняем обычным языком — знать отрасль, чтобы читать дальше, не нужно.

CRM
База клиентов и заявок в одном месте: кто спрашивал, о чём и что было дальше.
API
Способ, которым две программы передают друг другу данные без человека.
SaaS
Готовая программа по подписке, работающая у поставщика, а не у вас.

Ты продаёшь на Allegro и одновременно ведёшь собственный интернет-магазин? Ты рискуешь ситуацией, когда один и тот же товар приобретается дважды — на обеих платформах практически в одну минуту. Результат — отменённый заказ, недовольный клиент и потенциальное снижение твоей оценки продавца. В этой статье ты узнаешь, как построить единый источник правды о состоянии склада и синхронизировать продажи между каналами.

Полки склада с коричневыми стеклянными бутылками, одна полка с двумя последними бутылками
Последние товары на складе — здесь риск двойной продажи выше всего

Рискованная минута: когда один и тот же товар приобретают в двух каналах одновременно

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

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

Стоимость отсутствия синхронизации

Каждая отменённая транзакция — это не только потерянная продажа. Это ещё время на обработку жалоб, негативный отзыв на Allegro, потенциальная потеря позиции в результатах поиска и доверия будущих клиентов. За месяц, при десятках таких ситуаций, затраты растут многократно.

Единая правда о складе — центральный источник остатков

Решение начинается с архитектуры данных. Вместо того чтобы поддерживать отдельные остатки на Allegro, в интернет-магазине и в таблице, тебе нужно единое хранилище правды. Все каналы продаж должны читать остаток из одного места и только сообщать о событиях — продажа, возврат, корректировка.

Где это место может находиться? Зависит от твоей инфраструктуры:

  • CRM или ERP-система — если ты уже её используешь, склад должен быть там, а Allegro и магазин только читают и сообщают об изменениях.
  • База данных — простое решение, где одна таблица хранит текущие остатки, а API или автоматизация обновляет платформы.
  • Таблица — для малого масштаба, но требует ручной обработки и не подходит для тысяч товаров.

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

Что предлагает Allegro: журнал событий и массовое изменение остатков

Allegro предоставляет мощное API, которое позволяет не только читать и изменять предложения, но и отслеживать все изменения в них. Через endpoint GET /sale/offer-events ты можешь получить историю событий, касающихся твоих предложений. Система возвращает, среди прочего:

  • OFFER_STOCK_CHANGED — изменение количества единиц в предложении, возвращается также после покупки. Это ключевое событие позволяет определить, что кто-то купил товар.
  • OFFER_PRICE_CHANGED — изменение цены, полезно для отслеживания скидок и акций.
  • OFFER_ENDED — завершение предложения, например когда товар был продан вручную.

События можно фильтровать по типу и дате. Благодаря этому твоя система может реагировать на каждое изменение практически в реальном времени, а не ждать периодической проверки.

Allegro также предлагает возможность массового изменения цены и количества во многих предложениях одновременно. Если у тебя сотни товаров и ты хочешь обновить их остатки после инвентаризации или импорта от поставщика, тебе не нужно делать это по одному.

Как это работает на практике

Настраиваешь автоматизацию, которая с регулярными интервалами (или в реальном времени через веб-хуки, если Allegro их предоставляет) получает события типа OFFER_STOCK_CHANGED. Когда система обнаруживает, что остаток уменьшился, она отправляет эту информацию в твой центральный склад. Тот, в свою очередь, обновляет остатки в интернет-магазине и других каналах.

Заказы Allegro: когда товара действительно нет

Одно изменение остатка в предложении — это не конец истории. Не менее важно отслеживать заказы и их статусы. Endpoint GET /order/events возвращает все события, связанные с заказами: покупка, заполнение формы доставки, отмена оплаты и многое другое.

Самый важный статус — READY_FOR_PROCESSING. Он означает, что клиент заполнил форму вариантов доставки и завершил оплату (или выбрал оплату при получении либо самовывоз). Только в этот момент заказ переходит в обработку, и ты можешь физически зарезервировать товар. Более ранние статусы, такие как FILLED_IN (клиент заполнил данные, но ещё не оплатил), не должны вызывать резервирование на складе.

Почему READY_FOR_PROCESSING так важен

Многие продавцы ошибочно реагируют на первый сигнал покупки — событие BUY. Однако клиент может заполнить форму, а потом отменить оплату или просто не завершить транзакцию. Только статус READY_FOR_PROCESSING означает, что транзакция действительно подтверждена и товар должен быть списан со склада.

Помни также, что для одного заказа может появиться несколько событий. Ты можешь получить несколько сообщений READY_FOR_PROCESSING, если клиент совершил несколько покупок. Поэтому всегда строй свою логику на идентификаторе заказа в объекте checkoutForm.

Сторона магазина: статус Processing как сигнал к списанию

В WooCommerce и большинстве популярных платформ магазинов статус заказа «Processing» означает, что оплата получена, а остаток на складе уже уменьшен — об этом говорится в документации WooCommerce. Это сигнал для владельца или склада подготовить и отправить заказ.

Статусы заказов WooCommerce работают так:

  • Pending payment — заказ оформлен, но ещё не оплачен.
  • Processing — оплата получена, остаток уменьшен, заказ ожидает выполнения.
  • Completed — заказ выполнен и отправлен.
  • Refunded — полностью возвращён администратором.

Когда заказ переходит в статус Processing, твоя система должна создать событие списания в центральном складе. Это событие автоматически обновляет остатки в Allegro и других каналах. Благодаря этому каждый следующий клиент, независимо от того, приобретает он через Allegro или через твой магазин, видит актуальный остаток.

Соединение каналов: событие — общий язык

Принцип простой: независимо от того, где произошла продажа, создаётся одно событие списания остатка со склада. Когда клиент приобретает на Allegro, система фиксирует покупку через OFFER_STOCK_CHANGED и уменьшает остаток в центральном складе. Когда клиент оплачивает в интернет-магазине, статус Processing в WooCommerce генерирует то же событие списания. Оба пути ведут к одному центру управления остатками и обновляют второй канал в течение секунд.

Частота обновления: почему раз в сутки недостаточно

Многие владельцы магазинов думают: «буду обновлять остатки раз в день, утром, перед работой». Этот подход работает, пока у тебя большие запасы и редкие транзакции. Проблема появляется при последних единицах товара, которые приобретаются часто и быстро.

Представь товар, которого осталось всего пять штук. В течение часа может произойти шесть транзакций на Allegro и в магазине. Если ты обновляешь остатки раз в день, последняя из этих транзакций закончится отменой. Клиент получит информацию «извините, товар недоступен» после того, как уже оплатил.

Решения этой проблемы два:

  • Обновление практически в реальном времени — каждый раз, когда появляется новое событие, ты мгновенно обновляешь остатки во всех каналах.
  • Буфер безопасности — для популярных товаров ты поддерживаешь дополнительный запас (например, 2-3 единицы), который не виден в продаже. Когда видимый остаток достигает нуля, товар автоматически исчезает из продажи во всех каналах.

Буфер — это бизнес-решение, которое ты принимаешь сам: сколько ты готов потерять потенциальных клиентов из-за недоступности, versus сколько можешь потерять из-за отменённых заказов.

Два ручных сканера штрих-кодов на упаковочном столе с коробкой между ними
Система регистрирует каждое событие со всех каналов продаж

Таблица событий: от источника к месту назначения

Следующая таблица показывает типичные события и поток информации между системами:

СобытиеИсточникЧто меняетсяКуда отправлять
OFFER_STOCK_CHANGEDAllegro APIОстаток уменьшен после покупкиЦентральный склад → магазин
Заказ оплачен (Processing)Интернет-магазинОстаток уменьшенЦентральный склад → Allegro
ВозвратЛюбой каналОстаток увеличенЦентральный склад → все каналы
Корректировка инвентаризацииВручную / таблицаОстаток изменёнЦентральный склад → все каналы
OFFER_ENDEDAllegro APIПредложение завершеноОпционально: уведомление

Таблица помогает увидеть, что независимо от источника события, поток всегда одинаковый: источник генерирует событие, центральный склад обрабатывает его, все каналы получают обновлённый остаток.

Сделай сам: ручной контроль и простые защиты

Если у тебя ещё нет интегрированной системы, ты можешь ввести простые защиты, которые уменьшат риск двойной продажи:

  1. Определи товары с низким остатком — раз или дважды в день проверяй товары, которых осталось 1-3 штуки. Если ты видишь, что такой товар недавно приобретался, временно отключи его в одном из каналов.
  2. Отключи дубликаты предложений — на Allegro выставляй только одно предложение на товар. Не создавай много вариантов с одним и тем же товаром, потому что это затрудняет отслеживание остатков.
  3. Веди журнал отмен — записывай каждую ситуацию, когда тебе пришлось отменить заказ из-за отсутствия товара. Через месяц ты увидишь масштаб проблемы и легче оценишь, насколько автоматизация важна для твоего бизнеса.
  4. Установи уведомления — проверь, можно ли в твоей платформе магазина включить уведомления о низком остатке, и поставь порог 1–3 штуки.

Эти действия не решат проблему на сто процентов, но дадут тебе время и информацию, необходимые для принятия решения о полной автоматизации.

Как это выглядит с системой — автоматическая синхронизация

Когда ты соединишь каналы продаж с центральной системой управления складом, весь процесс выглядит так:

  1. Заказ в канале
  2. событие
  3. центральный склад
  4. обновление в других каналах
  5. работа
  6. отчёт
Схема показывает тот же процесс шаг за шагом — от первого звена до последнего.

Это означает, что когда клиент приобретает товар на Allegro, твой интернет-магазин в течение секунд увидит уменьшенный остаток и покажет «последняя штука» или «недоступен». И наоборот: покупка в магазине мгновенно обновит остаток на Allegro.

Система не даёт гарантии нуля отмен — всё ещё могут случаться пограничные ситуации, например когда клиент приобретает в ту же миллисекунду в двух каналах. Но она значительно уменьшает риск и устраняет подавляющее большинство таких случаев.

Узнай, как Aura обрабатывает интеграцию Allegro с интернет-магазином и автоматическую синхронизацию остатков: Интеграции, Интернет-магазины, API, Админ-панели, Дашборды.

Прочитай также, почему стоит думать об автоматизации процессов в компании и когда готовое решение SaaS работает лучше, чем собственная интеграция: Автоматизация процессов в компании, Собственная автоматизация или готовый SaaS, n8n или Make: стоимость сценария, CRM или ERP: какой слой добавить, Онлайн-заказы для ресторана.

Проверь, какие звонки и заявки теряются у тебя: /ocena.

Частые вопросы

Нужно ли мне использовать API Allegro для синхронизации остатков?

Не обязательно, но без API ты ограничен ручными методами. Ты можешь экспортировать остатки в таблицу и вручную обновлять предложения, но это трудоёмко и подвержено ошибкам. API позволяет автоматизировать этот процесс и реагировать на изменения практически в реальном времени.

Что делать, если клиент купил на Allegro, но не оплатил?

В таком случае статус заказа остаётся на этапе FILLED_IN и не переходит в READY_FOR_PROCESSING. Пока оплата не будет завершена, система не должна резервировать товар на складе. Именно поэтому твоя логика должна основываться на статусе READY_FOR_PROCESSING, а не только на факте покупки.

Можно ли использовать одно решение для нескольких аккаунтов Allegro?

Да, при условии, что каждый аккаунт имеет свои данные доступа к API. Твоя центральная система должна поддерживать несколько подключений и различать, из какого аккаунта пришло событие. На практике это означает, что каждый аккаунт Allegro будет иметь свой токен OAuth.

Что делать, если товар имеет варианты (размер, цвет)?

Варианты в Allegro — это отдельные предложения с собственными остатками. Тебе нужно сопоставить их с соответствующими вариантами в твоей системе склада. Если ты ведёшь продажу с множеством вариантов, убедись, что твоя интеграция обрабатывает эту логику — иначе ты можешь продать размер M, когда на складе остался только L.

Как часто я должен получать события от Allegro?

Оптимально — каждые несколько минут, а лучше всего в реальном времени через веб-хуки (если Allegro их предоставляет). При большом количестве транзакций частота раз в час может быть недостаточной для товаров с низким остатком. Для товаров с высоким остатком достаточно реже.

Могу ли я синхронизировать остатки без программиста?

Частично. Некоторые платформы магазинов предлагают плагины для интеграции с Allegro, которые работают без написания кода. Однако продвинутые сценарии, как обработка нескольких аккаунтов, нестандартные правила буфера или продвинутая отчётность, обычно требуют индивидуального решения.

Кто это пишет

Посмотрите на свой бизнес как на систему.

Aura — виртуальный управленец бизнеса: управление по фактам, а не по ощущениям. Для компании, которой процессами должна управлять система, а не память владельца.

Сайт, CRM, панель и автоматизации — модули одной системы. Мы не веб-студия.

Посмотреть мой бизнес

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

Чем мы занимаемся

Связанные услуги

Читать дальше Пролистайте, чтобы увидеть больше

Посмотрим на ваших цифрах

Расскажите, как сейчас устроена обработка заявок: сколько их, кто принимает, где теряются. Aura пройдёт процесс вместе с вами и покажет, что можно снять с человека, а что трогать не стоит.

Поговорить с Aura

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

Удобнее написать? marketing@auraglobal-merchants.com

Следующий шаг

Посмотрим, подходит ли Aura вашему заведению

Берёмся не за всех: сначала смотрим процессы, продажи и текущие системы и честно говорим, есть ли смысл нам заходить. Несколько вопросов, минут пять.

Пройти отбор →