Зв'язатись
  • OpenCart
  • Імпорт і експорт
  • v1.0.0

Stock Reserve & Reorder для OpenCart — фізичний залишок, резерв замовлень і точка дозамовлення

Модуль для OpenCart 4, 3 і 2.3 показує для кожного товару й значення опції три числа: скільки фізично на полиці, скільки вже продано, але ще не відвантажено (резерв, із замовленнями, що його тримають), і скільки ще можна продати. Прихід додає «+N» до залишку, а не перезаписує його; списання й інвентаризація пишуться в журнал і скасовуються. Точка дозамовлення — за швидкістю продажів, строком постачання й страховим запасом. Pro — параметри на товар, рекомендована кількість, документи з таблиці, CSV і щоденний звіт на e-mail і в Telegram.

Завантажити Free
Pro · ліцензія назавжди Чим більше сайтів, тим дешевше кожен
Сумісність
OpenCart 4.0.2 – 4.1.x (перевірено на 4.1.0.3 і 4.0.2.3, зокрема з DB_DRIVER=pdo) · OpenCart 3.0.x (перевірено на 3.0.5.0) · OpenCart 2.3.0.2 (PHP 7.0) · PHP — як потребує ваша версія OpenCart (перевірено на 7.0 і 8.x) · MariaDB 10.11
Версія
v1.0.0 (OpenCart 4)
v1.0.0 (OpenCart 3.x)
v1.0.0 (OpenCart 2.3)
Ліцензія
один сайт, назавжди
Тріал
7 днів, без картки, один на сайт
Оновлено
9 жовтня 2026
Або всі 173 Pro-модулів з All Access — 4 990 ₴ / рік

Що є в Free,
а що дає Pro

Безкоштовна версія працює без обмеження в часі. Pro додає решту функцій з таблиці.

Функція Free Pro
Фізичний, зарезервований і доступний залишок для кожного товару й значення опції, де OpenCart віднімає зі складу ✔ ✔
Правило списання — як у ядрі OpenCart, зокрема варіанти OpenCart 4 і головний товар варіанта ✔ ✔
Клік по резерву — список замовлень, що його тримають: уже списані OpenCart чи ще ні ✔ ✔
Плитки «У резерві», «Фізично», «Час дозамовити», «Перепродано», фільтри, пошук за назвою, моделлю, SKU чи #ID, сортування ✔ ✔
Прихід «+N» поверх залишку (не перезапис), списання «−N», інвентаризація просто з рядка товару ✔ ✔
Журнал кожної зміни з лічильником до і після, скасування документа ✔ ✔
Свої резервні статуси, зокрема ті, де OpenCart залишок не списує ✔ ✔
Сторінка «Дозамовлення»: продажі за день, точка дозамовлення, на скільки днів вистачить ✔ ✔
Рядок «Фізично · резерв · доступно» під полем «Кількість» у формі товару ✔ ✔
Адмінка українською, російською, англійською й німецькою, збірки для OpenCart 4.x, 3.x і 2.3 ✔ ✔
Строк постачання, страховий запас, мінімальний залишок, кратність і постачальник на товар чи значення опції — ✔
Рекомендована кількість до замовлення з кратністю упаковки і «Прихід із рекомендацій» — ✔
Багаторядкові приходи, списання й інвентаризації з номером, постачальником і приміткою, вставлені з таблиці — ✔
Перевірка рядків перед проведенням: один некоректний рядок блокує весь документ — ✔
CSV залишків, списку закупівлі й усіх змін залишку — ✔
Щоденний звіт про дозамовлення на e-mail і в Telegram, cron OpenCart 4 або адреса для cron хостингу — ✔

Як це виглядає

Сторінка «Залишки» модуля Stock Reserve & Reorder в OpenCart 4.1: плитки, фільтри, фізичний, резерв і доступний залишок
Сторінка «Залишки» (OpenCart 4.1, демо-товари, Pro): у iPhone в OpenCart лишилось 6, але фізично на полиці 13 — 7 штук тримають два замовлення в обробці, їх видно по кліку на резерв. MacBook перепродано: резерву більше, ніж є на полиці. У кожному рядку — прихід, списання чи інвентаризація просто з таблиці.
Сторінка «Дозамовлення»: продажі за день, строк постачання, точка дозамовлення і рекомендована кількість
«Дозамовлення» (Pro): продажі за день, строк постачання + страховий запас, точка дозамовлення, на скільки днів вистачить і скільки замовити — з кратністю упаковки (iMac: упаковка по 4) і мінімальним залишком (Canon EOS 5D: мінімум 50). Кнопка «Параметри» відкриває налаштування конкретного товару.
Новий складський документ: прихід, рядки з таблиці і перевірка перед проведенням
Новий складський документ (Pro): тип, номер, постачальник, примітка, рядки «код;кількість», вставлені з таблиці. «Перевірити рядки» показує фізичний залишок до і після, «Провести документ» — лише коли всі рядки коректні.

Головне про модуль

Як це виглядає для покупця

Покупець модуля не бачить: на вітрині й в оформленні замовлення нічого не змінюється, скриптів і запитів на сторінках магазину модуль не додає, а OpenCart продає далі з того самого поля «Кількість».

Що отримує адмін

Пункт меню Каталог → «Залишки й дозамовлення» і сторінки «Залишки», «Дозамовлення», «Складські документи», «Налаштування».

Тріал стартує, коли ви попросите

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

Один ключ — один сайт

Переносите магазин — відв’яжіть ліцензію на старому домені й активуйте на новому самі. Для студій — ключі на 5, 25 сайтів або без обмежень.

Технічні вимоги

  • OpenCart 4.0.2 – 4.1.x (перевірено на 4.1.0.3 і 4.0.2.3, з драйвером бази mysqli і pdo), 3.0.x (перевірено на 3.0.5.0) або 2.3.0.2.
  • PHP — той, що потрібен вашій версії OpenCart: збірку для 2.3 перевірено на PHP 7.0, решту — на PHP 8.x.
  • База: перевірено на MariaDB 10.11. Право CREATE TEMPORARY TABLES прискорює сторінки на великих каталогах; без нього модуль рахує прямими запитами з тими самими цифрами.
  • PHP-розширення cURL — для ліцензії й Telegram.
  • Для щоденного звіту в OpenCart 3 і 2.3 — cron хостингу, що раз на день відкриває адресу з налаштувань.

Історія версій

v1.0.0 Поточна 9 жовтня 2026

Для OpenCart 4.x, 3.x і 2.3: фізичний, зарезервований і доступний залишок із замовлень за правилом списання ядра (варіанти OpenCart 4, значення опцій), замовлення резерву, прихід «+N»,…

Разом з Stock Reserve & Reorder для OpenCart купують

4 модулі одним замовленням — на 40% дешевше, ніж окремо

Набір «Старт магазину» Stock Reserve & Reorder Nova Poshta Premium LiqPay Telegram-сповіщення і Viber/SMS покупцям Потрібно більше — усі 173 модулі в All Access за 4 990 ₴.
3 790 ₴ назавжди замість 6 260 ₴ поштучно
Купити набір →

Повний опис модуля

Stock Reserve & Reorder для OpenCart — модуль для магазинів, які тримають товар на власному складі. OpenCart зберігає для товару одне число — «Кількість» — і віднімає з нього замовлення, щойно воно переходить у статус обробки, задовго до того, як посилку забрали з полиці. Тому після кількох днів продажів число в адмінці не збігається з тим, що лежить на складі, а інвентаризація починається з питання «а куди поділось 7 штук?».

Модуль читає замовлення й показує для кожного товару та кожного значення опції три числа: фізичний залишок (що лежить на полиці), резерв (продано, але ще не відвантажено — з переліком замовлень) і доступний (що ще можна продати). Прихід додає «+N» поверх залишку, а не перезаписує його; списання й інвентаризація пишуться в журнал і скасовуються. Точка дозамовлення рахується за швидкістю продажів, строком постачання й страховим запасом.

Для WooCommerce є окрема версія — Stock Reserve & Reorder для WooCommerce.

Як це виглядає для покупця

Покупець модуля не бачить: на вітрині й в оформленні замовлення нічого не змінюється, скриптів і запитів на сторінках магазину модуль не додає, а OpenCart продає далі з того самого поля «Кількість». Покупець помічає тільки наслідок: товар дозамовили вчасно, а не тоді, коли останню одиницю вже продали двічі.

Що отримує адмін

Пункт меню Каталог → «Залишки й дозамовлення» і сторінки «Залишки», «Дозамовлення», «Складські документи», «Налаштування».

  • Плитки: скільки одиниць у резерві і в скількох позиціях, скільки фізично на полиці, скільки позицій час дозамовити і скільки перепродано.
  • Таблиця для кожного товару й значення опції, де OpenCart віднімає зі складу: кількість в OpenCart, фізичний, резерв, доступний, продано за період, точка дозамовлення і стан — «Норма», «Дозамовити», «Перепродано», «Нічого доступного», «Не відстежується».
  • Клік по резерву відкриває замовлення, що його тримають: номер, дата, статус, покупець, кількість і позначка, чи OpenCart уже списав товар.
  • Фільтри: пошук за назвою, моделлю, SKU чи #ID, категорія, «з резервом», «дозамовити + перепродано», «нічого доступного», значення опцій, вимкнені товари; сортування за резервом, доступним залишком, днями запасу чи терміновістю.
  • Зміна залишку з рядка: прихід «+N», списання «−N» або інвентаризація — пораховане на полиці стає фізичним залишком. Кожна зміна — документ у журналі з лічильником до і після, його можна скасувати.
  • Рядок у картці товару: «Фізично · резерв · доступно» під полем «Кількість» і посилання на сторінку залишків.

Дозамовлення

  • Точка дозамовлення = продажі за день × (строк постачання + страховий запас). Позиція потрапляє в «Дозамовити», коли доступний залишок на цій точці або нижче, і в «Перепродано», коли резерв більший за фізичний залишок.
  • «На скільки вистачить» — днів продажів на доступному залишку за поточної швидкості.
  • Pro: строк постачання, страховий запас, мінімальний залишок, кратність упаковки й постачальник для конкретного товару чи значення опції; колонка «Замовити» з рекомендованою кількістю; кнопки «CSV для закупівлі» і «Прихід із рекомендацій».

Pro: складські документи, CSV і щоденний звіт

  • Багаторядкові документи — прихід, списання чи інвентаризація з номером, постачальником і приміткою. Рядки вставляються просто з таблиці: SKU, модель, #product_id або #product_id/option_value_id і кількість. «Перевірити рядки» показує залишок до і після; невідомий код, неоднозначна модель чи нульова кількість блокують увесь документ, поки рядок не виправлено.
  • CSV залишків, списку закупівлі й усіх змін залишку: UTF-8 з BOM, розділювач «;», назви, що починаються з «=», не виконуються в Excel як формули.
  • Щоденний звіт — позиції на точці дозамовлення або нижче з рекомендованою кількістю і, за бажанням, перепродані. Якщо нічого не треба — нічого не надсилається.
  • Канали: до 5 e-mail через поштові налаштування магазину і Telegram (токен бота й ID чату). В OpenCart 4 звіт запускає планувальник OpenCart, у 3 і 2.3 — адреса з секретним ключем для cron хостингу.

Як це працює — крок за кроком

  1. Модуль бере замовлення в резервних статусах — за замовчуванням це статуси обробки вашого магазину без статусів виконання, тобто «продано, але не відвантажено».
  2. Для кожного товару й значення опції він рахує, скільки з цих замовлень OpenCart уже списав із «Кількості» — за тим самим правилом, що й ядро (OpenCart 4.1 об’єднує списки статусів обробки й виконання, варіант OpenCart 4 списує ще й головний товар).
  3. Фізичний = кількість в OpenCart + уже списані товари резервних замовлень. Резерв = усі товари резервних замовлень. Доступний = фізичний − резерв.
  4. Продажі за день = продано за період (за замовчуванням 30 днів) ÷ дні. Точка дозамовлення = продажі за день × (строк постачання + страховий запас); у Pro — не менше мінімального залишку.
  5. Прихід, списання чи інвентаризація змінюють «Кількість» одним атомарним запитом «кількість + N», тож продаж, що прийшов у ту саму секунду, не губиться. Кожна зміна — у журналі, скасування повертає її назад.

Що під капотом

  • Без правок ядра. Без OCMOD-патчів; пункт меню й рядок у формі товару додаються подіями OpenCart. Одна бібліотека класів однакова в трьох збірках, код сумісний з PHP 7.0.
  • Власні таблиці oc_cc_stockres_doc (документи), oc_cc_stockres_move (рядки змін із лічильником до і після), oc_cc_stockres_item (параметри товару). Таблиці ядра не змінюються.
  • Розрахунок на льоту, раз на запит у тимчасовій таблиці; без кешу, тож цифри завжди свіжі.
  • Адреса крона index.php?route=extension/cc_stockres/cron.cron&key=… (у 3.x і 2.3 — extension/module/cc_stockres_cron/cron): без ключа — «403», звіт іде не частіше разу на день, при збої відправки повторюється.
  • Ліцензія живе в окремій групі налаштувань: «Зберегти» її не чіпає.
  • Деінсталяція знімає події й (OpenCart 4) завдання cron, а документи й параметри товарів лишає — повторне встановлення їх бачить. Налаштування модуля OpenCart при деінсталяції видаляє, ліцензія в окремій групі лишається. Для повного видалення видаліть таблиці oc_cc_stockres_* вручну.

Як встановити

  1. OpenCart 4: Розширення → Інсталятор → завантажте cc_stockres.ocmod.zip (ім’я архіву не змінюйте) і натисніть «Встановити». OpenCart 3: Розширення → Інсталятор → cc_stockres-oc3.ocmod.zip, потім Розширення → Модифікації → «Оновити». OpenCart 2.3: залийте вміст папки upload/ з cc_stockres-oc2.ocmod.zip у корінь магазину (FTP або файловий менеджер хостингу) — Інсталятор 2.3 без налаштованого FTP файлів не копіює.
  2. Розширення → Розширення → Модулі → CatCode Stock Reserve & Reorder → «Встановити». Модуль одразу увімкнений.
  3. Каталог → «Залишки й дозамовлення». У «Налаштуваннях» перевірте резервні статуси, період продажів, строк постачання і страховий запас.
  4. Для Pro: вставте ліцензійний ключ із листа після оплати або натисніть «Спробувати Pro 7 днів» у вкладці «Ліцензія».

Питання
про модуль

Не знайшли відповідь? Напишіть у Telegram — відповімо протягом робочого дня.

@catcode_support Налаштування, сумісність, активація
Чим «фізичний» залишок відрізняється від кількості в OpenCart?

OpenCart віднімає товар із поля «Кількість», щойно замовлення переходить у статус обробки, — задовго до того, як посилку забрали з полиці. Модуль додає назад товари таких замовлень, які ще не відвантажені: це фізичний залишок. Резерв — ті самі товари, доступний — фізичний мінус резерв.

Модуль змінює кількість товарів сам?

Ні. Цифри рахуються із замовлень, у каталозі нічого не перезаписується. Кількість змінюється лише вашим приходом, списанням чи інвентаризацією: одним атомарним «кількість + N», із записом у журнал і можливістю скасувати.

Які статуси вважаються резервом?

За замовчуванням — статуси обробки вашого магазину без статусів виконання, тобто «продано, але не відвантажено». У налаштуваннях можна обрати свої, зокрема статуси, у яких OpenCart залишок не списує: такі замовлення позначаються «ще не списано» і зменшують доступний залишок.

Як рахується точка дозамовлення?

Продажі за день за останні N днів × (строк постачання + страхові дні), округлено вгору. У Pro — для кожного товару окремо і не менше мінімального залишку; рекомендована кількість покриває точку дозамовлення плюс задану кількість днів продажів і округлюється до кратності упаковки.

Telegram-звіт працює?

Звіт надсилається методом sendMessage Bot API за документацією Telegram; у тесті його перевіряли на моку сервера Telegram, живим ботом — ні. E-mail-звіт перевірено через поштові налаштування магазину. Перевірте обидва канали кнопкою «Надіслати тестовий звіт зараз» у 7-денному тріалі.

Ліцензія на рік?

Ні. Для OpenCart це одна оплата, ліцензія назавжди, одна на всі три збірки: 4.x, 3.x і 2.3. Тріал Pro стартує лише за вашою кнопкою. Після тріалу документи, журнал і параметри лишаються, а розрахунок переходить на глобальні налаштування.

Модуль змінює файли OpenCart чи вітрину?

Ні. Без правок ядра й OCMOD-патчів; пункт меню і рядок у формі товару додаються подіями. Вітрини й оформлення замовлення модуль не торкається, таблиці ядра не змінює — лише власні.

Не той варіант, що шукаєте?

Робимо кастомні модулі під WordPress, WooCommerce, OpenCart і Shopify. Розкажіть про задачу — підготуємо оцінку.

Замовити кастомний модуль