
Multi-Store Stock Sync для WooCommerce — спільні залишки кількох магазинів
Кілька магазинів WooCommerce, один склад: майстер тримає залишки, сателіти йдуть за ним за артикулом. Продаж на будь-якому сайті за секунди видно на всіх. Pro — ціни за роллю сайту, спільні відгуки й автозвірка; одна ліцензія на майстрі відкриває Pro для всієї мережі.
- Сумісність
- WordPress 6.2+ · WooCommerce 7.0+ (перевірено на WP 7.1 / Woo 11.1 і 10.7) · PHP 7.4+ · HPOS · класичний і блоковий чекаут
- Ліцензія
- один сайт, річна
- Тріал
- 7 днів, без картки, один на сайт
Що є в Free,
а що дає Pro
Безкоштовна версія працює без обмеження в часі. Pro додає решту функцій з таблиці.
Як це виглядає
Головне про модуль
Як це виглядає для покупця
Покупець бачить правильну наявність на будь-якому сайті мережі — і більше нічого.
Що отримує адмін
Сторінка WooCommerce → Multi-Store Sync з чотирма вкладками: підключення, журнал синхронізації, звіт за артикулами, налаштування.

Тріал стартує, коли ви попросите
Свіжий інстал — безкоштовна версія, нічого не вмикається само. Кнопка «Спробувати Pro 7 днів» → e-mail → ключ одразу у вікні і листом.

Один ключ — один сайт
Переносите магазин — відв’яжіть ліцензію на старому домені й активуйте на новому самі. Якщо наш сервер недоступний, Pro працює ще 14 днів. Для студій — ключі на 5, 25 сайтів або без обмежень.
Технічні вимоги
WooCommerce 7.0+ на кожному сайті мережі, сумісність з HPOS, класичний і блоковий чекаут.
WordPress 6.2+ · PHP 7.4+
Сайти мають бачити один одного по HTTPS: кожен приймає повідомлення на /wp-json/catcode-mss/v1/rpc. Якщо сайт закритий файрволом, цю адресу треба пропустити.
Однакові артикули (SKU) товарів на всіх сайтах — за ними плагін зіставляє товари.
Доставка йде одразу після запиту; якщо хостинг блокує запити сайту до самого себе, черга відправляється WP-Cron кожні 2 хвилини, коли сайт відвідують. Вимкнений WP-Cron без системного крону зупинить чергу.
Перевірено на WordPress 7.1 з WooCommerce 11.1 і 10.7, на MariaDB і SQLite.
Історія версій
Новий артикул на сателіті одразу отримує залишок майстра (у Pro і ціну); створення товару на сателіті більше не збільшує склад майстра; при збої обміну статус «помилка зв’язку», а не «підключено».
Перший випуск: ролі майстер / сателіт, підключення ключем з підписом HMAC-SHA256, залишки за артикулом для простих товарів і варіацій зі змінами «рівно один раз» і версіями значень, черга з…
Разом з Multi-Store Stock Sync для WooCommerce купують
4 модулі одним замовленням — на 40% дешевше, ніж окремо


Nova Poshta Premium — Нова Пошта для WooCommerce

Mono Acquiring — оплата карткою monobank для WooCommerce

Telegram-сповіщення і Viber/SMS покупцям для WooCommerce
Повний опис модуля
Multi-Store Stock Sync для WooCommerce — плагін для тих, хто продає ті самі товари на двох і більше сайтах WooCommerce: роздрібний і оптовий домен, магазини різними мовами, другий бренд, окремий сайт під маркетплейс. Склад один, отже й залишок має бути один. Без синхронізації менеджер вручну переписує цифри між адмінками, а покупець оплачує товар, якого вже немає.
Плагін робить один сайт майстром: його залишки — правда. Решта сайтів — сателіти, вони йдуть за майстром за артикулом (SKU). Продаж, скасування, повернення на склад чи ручна правка на будь-якому сайті за кілька секунд з’являються на всіх інших.
Як це виглядає для покупця
Покупець бачить правильну наявність на будь-якому сайті мережі — і більше нічого. Купили останні дві пари на оптовому сайті — через кілька секунд роздрібний сайт показує «Немає в наявності». Замовлення скасували — одиниці повернулись на всі сайти.
- Оформлення не гальмує. Під час чекауту плагін нічого не відправляє: зміна лягає в чергу, а доставка йде у фоні одразу після запиту.
- Варіації теж. Розмір і колір синхронізуються окремо, як і товари, у яких склад ведеться на батьківському товарі.
- Товари без обліку запасів отримують статус наявності: «Немає в наявності» на майстрі — те саме на сателітах.
Що отримує адмін
Сторінка WooCommerce → Multi-Store Sync з чотирма вкладками: підключення, журнал синхронізації, звіт за артикулами, налаштування.
- Підключення за хвилину. На майстрі — «Додати сателіт», скопіювати ключ; на сателіті — вставити ключ і «Підключитися». Одразу після підключення сателіт звіряє каталог і бере залишки майстра для кожного збіглого артикула.
- Стан кожного сайту: остання успішна відповідь, остання помилка, скільки змін чекає в черзі. Кнопки «Перевірити з’єднання», «Надіслати всі залишки», «Призупинити», «Видалити».
- Журнал пише, що, куди й з яким результатом пішло: продаж −2 із замовлення №1078, залишок тепер 19. Фільтр за рівнем, сайтом і артикулом; строк зберігання задаєте ви (30 днів за замовчуванням).
- Звіт за артикулами показує товари, які є лише з одного боку, — зазвичай це помилка в артикулі, яку інакше шукали б тижнями.
Pro: ціни, відгуки, автозвірка, сповіщення
- Ціни за роллю сайту. Для кожного сателіта — джерело ціни (звичайна ціна майстра або окремий прайс, наприклад «Опт»), коефіцієнт (1.2 = +20%, 0.9 = −10% або курс валюти), кількість знаків після коми. Прайс — це поле в картці товару й варіації на майстрі.
- Акції. Або сателіт отримує акційні ціни майстра з датами, або лишає власні акції — на ваш вибір для кожного сайту. Якщо нова ціна від майстра не вища за власну акцію сателіта, її не застосовано, а обидва журнали пишуть чому — акція мовчки не зникне.
- Межі: ціни лише для обраних категорій, а окремий товар можна виключити галочкою «Не надсилати ціну» в його картці.
- Відгуки про товар ходять між усіма сайтами за артикулом: з оцінкою й позначкою «перевірений покупець», без e-mail та IP автора, без дублів і без відлуння. Середній рейтинг перераховується.
- Щогодинна автозвірка сама виправляє розбіжності, які могли виникнути через збої, — без кнопки.
- Лист на пошту, коли сайт мережі перестав відповідати, і ще один — коли знову працює.
Як це працює — крок за кроком
- На сателіті сталася зміна: продаж, скасування, повернення на склад або ручна правка. Плагін записує її як точну різницю (−2, +1) з унікальним номером події.
- Одразу після запиту фоновий обробник відправляє зміну майстру підписаним повідомленням.
- Майстер застосовує різницю атомарним оновленням залишку WooCommerce. Повторна доставка тієї самої події нічого не змінить — вона списується рівно один раз.
- Майстер розсилає всім сателітам нове число з версією. Старіша версія ніколи не перезапише новішу.
- Значення, що прийшли з мережі, не відправляються назад — два сайти не можуть «перекидатися» тією самою зміною.
- Якщо майстер недоступний, зміни чекають у черзі й повторюються з паузою від 30 секунд до години. Сателіт тим часом показує «залишок майстра плюс свої ще не відправлені зміни».
Що під капотом
- Зміни, а не числа. Сателіт шле майстру різницю з унікальним номером події, а не «тепер тут 17». Так два одночасні продажі на різних сайтах не перетирають один одного.
- Рівно один раз. Номер події зберігається на майстрі; повтор тієї самої події через збій мережі повертає «вже враховано», а не списує товар удруге.
- Версії значень. Кожне число від майстра має мітку часу читання; сателіт відкидає застаріле значення, навіть якщо воно прийшло пізніше.
- Безпека. Кожне повідомлення підписане HMAC-SHA256, має мітку часу й одноразовий nonce; чужий підпис, старе повідомлення чи повтор відхиляються. Секрети в базі зашифровані. Ключ підключення видно лише в адмінці тим, хто керує WooCommerce.
- Нічого зайвого назовні. Між сайтами ходять лише артикули, залишки, статуси наявності (у Pro — ціни й відгуки без e-mail). Дані покупців нікуди не передаються, CatCode нічого не отримує.
- Серія продажів — одна відправка. Майстер позначає артикул «брудним» і читає залишок у момент відправки, тож десять продажів поспіль дають одне оновлення, пакетами до 100 артикулів.
- Прибирає за собою. Видалення плагіна прибирає його таблиці, опції й крон; залишки товарів лишаються як є.
Як встановити
- На кожному сайті мережі: Плагіни → Додати новий → Завантажити плагін, оберіть
catcode-multistore-sync-for-woocommerce-1.0.1.zip(Pro) або безкоштовну збірку й активуйте. - На сайті, де залишки сьогодні правильні, відкрийте WooCommerce → Multi-Store Sync → Налаштування і оберіть роль «Майстер (склад)».
- На вкладці «Підключення» введіть назву сателіта, натисніть «Додати сателіт» і скопіюйте його ключ підключення.
- На іншому сайті оберіть роль «Сателіт», вставте ключ і натисніть «Підключитися». Сателіт звірить каталог і візьме залишки майстра.
- Перевірте «Звіт за артикулами» — там будуть товари, у яких не збігся артикул.
- Для Pro: на майстрі вставте ліцензійний ключ з листа після оплати або запустіть 7-денний тріал. Сателіти отримають Pro від майстра автоматично.
Питання
про модуль
Не знайшли відповідь? Напишіть у Telegram — відповімо протягом робочого дня.
Що буде, якщо два сайти продадуть останню одиницю в ту саму секунду?
Обидва продажі дійдуть до майстра окремими змінами й обидва будуть зараховані, тож залишок майстра піде в мінус, а всі сайти покажуть «Немає в наявності». Синхронізація тримає числа правильними, але не може зупинити два оформлення, які завершились раніше, ніж перший продаж дійшов до майстра (зазвичай це кілька секунд).
Плагін копіює товари чи замовлення між сайтами?
Ні. Кожен магазин має власні картки товарів і власні замовлення. Спільні лише залишки (а в Pro — ще ціни й відгуки), а товари зіставляються за артикулом.
Товар є лише на одному сайті. Що з ним?
Його залишок лишається локальним. Звірка показує такі артикули з обох боків, щоб ви вирішили, чи додати товар або виправити артикул.
Чи треба купувати ліцензію для кожного сайту?
Ні. Ліцензія ставиться тільки на майстрі. На сателіти встановлюється та сама Pro-збірка без ключа — вони дізнаються від майстра, що Pro увімкнено, і одразу вмикають ціни, відгуки й автозвірку.
Що буде, коли майстер недоступний?
Продажі на сателітах не зупиняються. Зміни лягають у чергу й відправляються з повторами, а сателіт тим часом показує «залишок майстра плюс свої ще не відправлені зміни». Коли майстер повертається, черга доходить рівно один раз.
Чи важливий час на серверах?
Трохи: повідомлення, старші за 5 хвилин, відхиляються як захист від повтору. Час на серверах синхронізується автоматично на будь-якому нормальному хостингу.
Поки що жодного відгуку. Будьте першим.
Поки питань немає. Запитай — ми відповімо протягом 24 годин.
Не той варіант, що шукаєте?
Робимо кастомні модулі під WordPress, WooCommerce, OpenCart і Shopify. Розкажіть про задачу — підготуємо оцінку.
Замовити кастомний модуль
Купівля модуля
—