
Marketplace Returns Control для OpenCart — контроль повернень і незабраних посилок
Модуль для OpenCart 4, 3 і 2.3, який звіряє ТТН ваших замовлень з Новою Поштою, Укрпоштою й Meest і показує посилки, де потрібна людина: повернення «прибуло», а товару на полиці немає; зберігання у відділенні закінчується; посилка зависла; статус замовлення суперечить посилці; гроші повернуто раніше за товар. Pro звіряє ще й замовлення Rozetka, Prom і Епіцентру, перевіряє щогодини, шле зведення на пошту й у Telegram.
- Сумісність
- 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.1, 8.2, 8.3)
- Версія
-
v1.0.2 (OpenCart 4)
v1.0.2 (OpenCart 3.x)
v1.0.2 (OpenCart 2.3) - Ліцензія
- один сайт, назавжди
- Тріал
- 7 днів, без картки, один на сайт
- Оновлено
- 24 вересня 2026
Що є в Free,
а що дає Pro
Безкоштовна версія працює без обмеження в часі. Pro додає решту функцій з таблиці.
Як це виглядає
Головне про модуль
Як це виглядає для покупця
Покупець модуля не бачить: на вітрині й в оформленні замовлення нічого не змінюється, зайвих запитів чи скриптів на сторінках магазину немає.
Що отримує адмін
У меню «Продажі» зʼявляється пункт «Контроль повернень» з кількістю проблемних посилок.

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

Один ключ — один сайт
Переносите магазин — відв’яжіть ліцензію на старому домені й активуйте на новому самі. Якщо наш сервер недоступний, Pro працює ще 14 днів. Для студій — ключі на 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.1, 8.2 і 8.3.
Вихідні HTTPS-запити з сервера до API перевізників (і кабінетів маркетплейсів у Pro).
Для щогодинної перевірки в Pro — планувальник OpenCart 4 або cron хостингу, що раз на годину відкриває адресу з налаштувань.
Для зворотних ТТН Нової Пошти — ключ відправника або телефон відправника; без них модуль відстежує основну ТТН.
Ключ Rozetka з модуля «ТТН у маркетплейси» розшифровується, лише якщо в PHP є розширення sodium; без нього введіть логін і пароль Rozetka в цьому модулі.
Статуси замовлень «Виконано», «Скасовано», «Кошти повернуто» за замовчуванням — стандартні ID OpenCart (5, 7, 11); якщо у вас інші, оберіть їх у налаштуваннях.
Історія версій
Статус замовлення Prom.ua показується так, як його називає Prom («Скасовано»), без дописаного англійського коду доставки («Скасовано / delivered»).
OpenCart 4 з драйвером бази pdo: список посилок, пошук, CSV, зведення й перевірка з крону більше не падають з помилкою SQL.
Для OpenCart 4.x, 3.x і 2.3: ТТН з модулів Нова Пошта, Укрпошта, Meest, з іншої таблиці й з замовлення, відстеження трьох перевізників, зворотні ТТН Нової Пошти, висновки, підтвердження…
Разом з Marketplace Returns Control для OpenCart купують
4 модулі одним замовленням — на 40% дешевше, ніж окремо


Nova Poshta Premium — модуль Нова Пошта для OpenCart 2.3, 3.x і 4.x

LiqPay — оплата карткою для OpenCart 2.3, 3.x і 4.x

Telegram-сповіщення і Viber/SMS покупцям для OpenCart
Повний опис модуля
Marketplace Returns Control для OpenCart — модуль для магазинів, які відправляють Новою Поштою, Укрпоштою чи Meest і продають на Rozetka, Prom або в Епіцентрі. Посилка, яку покупець не забрав, коштує двічі: доставка туди й назад плюс товар, що «десь у дорозі». Гірше, коли перевізник або маркетплейс закриває таку посилку як «вручено» чи «повернуто», а вона досі лежить у відділенні. Через тиждень ніхто вже не памʼятає, що її треба було забрати.
Модуль звіряє кожну ТТН ваших замовлень з перевізником (кнопкою «Перевірити зараз», у Pro ще й щогодини) і показує тільки ті посилки, де потрібна людина. Повернення закривається не статусом перевізника, а вашим «Повернення отримано», тобто коли товар справді на полиці. ТТН і ключі модуль бере з наших модулів Нова Пошта Premium, Укрпошта й Meest, тож після встановлення зазвичай нічого не треба заповнювати.
Як це виглядає для покупця
Покупець модуля не бачить: на вітрині й в оформленні замовлення нічого не змінюється, зайвих запитів чи скриптів на сторінках магазину немає. Працює він в адмінці. Покупець помічає тільки наслідки: вам телефонують, поки посилка ще у відділенні, а не коли вона вже поїхала назад; гроші за повернення повертаються тоді, коли товар справді прийшов; статус замовлення відповідає тому, що сталося з посилкою.
Що отримує адмін
У меню «Продажі» зʼявляється пункт «Контроль повернень» з кількістю проблемних посилок. Налаштування — Розширення → Розширення → Модулі → Marketplace Returns Control.
- Один висновок на посилку. Кожна ТТН отримує рівно один висновок, і список ділиться на вкладки: «Потребують уваги», «Повернення», «У дорозі», «Завершені», «Усі». Поруч — статус перевізника з кодом, дата зміни, дата кінця зберігання, звʼязане замовлення OpenCart і маркетплейс.
- Дії. «Повернення отримано» з коментарем, «Позначити вирішеним» (посилка зникає з «Потребують уваги» і повертається, якщо стан знову зміниться), видалити, історія.
- Фільтри й пошук. За джерелом (OpenCart, Rozetka, Prom, Епіцентр), перевізником, ТТН, зворотною ТТН чи номером замовлення.
- Ручне додавання. «Додати ТТН вручну» — для посилки, якої немає серед замовлень OpenCart, наприклад замовлення маркетплейсу, відправленого вручну.
Блок на сторінці замовлення показує посилки цього замовлення, висновок, кнопки «Повернення отримано» / «Скасувати підтвердження» / «Позначити вирішеним» та історію: хто, коли й що підтвердив. Якщо ТТН не записав жоден модуль доставки, її можна ввести тут разом зі зворотною ТТН — кнопкою «Зберегти й перевірити».
- Що відстежувати. ТТН з таблиць наших модулів Нова Пошта Premium, Укрпошта й Meest (модуль сам показує «знайдено»), з таблиці іншого модуля доставки або введені в замовленні. За скільки днів брати замовлення, які статуси пропускати, після скількох днів без руху посилка «зависла», за скільки днів до кінця зберігання попереджати.
- Статуси «Виконано», «Скасовано», «Кошти повернуто». Модуль порівнює з ними стан посилки. За замовчуванням — стандартні Complete, Canceled і Refunded; якщо у вашому магазині інші, оберіть свої.
- Перевізники. Ключі беруться з наших модулів доставки. Власні поля потрібні, лише якщо тих модулів немає або тут потрібен інший ключ. Для кожного перевізника є «Зберегти й перевірити».
- Історія замовлення. Рядок в історії без сповіщення покупця, коли знайдено проблему чи підтверджено повернення (вимикається).
Pro: маркетплейси, автоматизація, Telegram
- Rozetka, Prom.ua, Епіцентр. Замовлення кабінету з ТТН звіряються з перевізником і з вашим замовленням. Модуль ловить три ситуації: маркетплейс закрив замовлення як отримане, а перевізник не вручив посилку; маркетплейс і перевізник кажуть різне; гроші повернуто покупцю раніше, ніж товар прийшов назад. Реквізити з наших модулів «ТТН у маркетплейси», «Епіцентр: ціни й наявність» і Prom Model Guard підхоплюються самі.
- Звʼязок із замовленням OpenCart модуль бере з «ТТН у маркетплейси». Замовлення маркетплейсу без замовлення в OpenCart теж потрапляють у список.
- Щогодинна перевірка перевізників і маркетплейсів без кнопки. В OpenCart 4 — через вбудований планувальник (Розширення → Cron Jobs); якщо хостинг його не запускає, або в OpenCart 3 і 2.3 — через cron-адресу з налаштувань, раз на годину.
- Ранкове зведення на пошту: список посилок, що потребують уваги.
- Telegram: термінові випадки (маркетплейс закрив як отримане, маркетплейс і перевізник кажуть різне, гроші повернуто раніше товару, «повернуто» без вашого підтвердження, посилку загублено) одразу, зведення зранку.
- Статус замовлення змінюється сам: після підтвердженого повернення і після відмови, з рядком в історії без сповіщення покупця.
- CSV зі списку з урахуванням фільтрів, з крапкою з комою й BOM — відкривається в Excel без танців з кодуванням.
Як це працює — крок за кроком
- «Перевірити зараз» (у Pro ще й щогодини) спершу підхоплює нові ТТН: з таблиць модулів доставки, з іншої таблиці й з блоку замовлення. Беруться замовлення за вікно спостереження (60 днів за замовчуванням); замовлення без статусу й у статусах, які ви пропускаєте, — ні.
- Потім модуль опитує перевізників: Нову Пошту й Укрпошту пачками до 100 ТТН, Meest по одній. Спершу йдуть посилки, які ще не перевірялись, потім найдавніші.
- Відповідь кожного перевізника зводиться до одного стану: у дорозі, у відділенні, вручено, відмова, повертається, повернуто відправнику, загублено. Для Нової Пошти модуль бере зворотну ТТН (крім переадресації) і дату, коли закінчується зберігання.
- У Pro модуль читає замовлення Rozetka, Prom і Епіцентру з ТТН і додає до посилки стан маркетплейсу й повернення коштів.
- З усього цього й статусу вашого замовлення виходить один висновок, від найважливішого до звичайного: маркетплейс закрив як отримане, розбіжність, гроші раніше товару, «повернуто» без підтвердження, загублено, статус замовлення суперечить, закінчується зберігання, зависла.
- Кожна зміна потрапляє в історію посилки, у Pro — ще й у Telegram чи ранкове зведення. Повернення закривається лише вашим «Повернення отримано».
Що під капотом
- Без правок ядра. Меню й блок на сторінці замовлення — через події OpenCart, без OCMOD-модифікацій. Одна бібліотека класів однакова в трьох збірках, код сумісний з PHP 7.0.
- Власні таблиці
oc_cc_mrc_parcel(одна ТТН — один рядок),oc_cc_mrc_event(історія),oc_cc_mrc_order(ТТН, введені в замовленні),oc_cc_mrc_kv(службові дані). Таблиці модулів доставки модуль лише читає. - API: Нова Пошта TrackingDocument.getStatusDocuments, Укрпошта Status Tracking, Meest openAPI tracking. У Pro — Rozetka Seller API, Prom.ua API, Епіцентр Marketplace API.
- Ключі й токени зберігаються зашифрованими (AES з HMAC) і не виводяться в HTML. Ключі наших модулів модуль розшифровує сам, не підключаючи їхніх файлів.
- Ліцензія живе в окремій групі налаштувань: «Зберегти» її не чіпає, деінсталяція теж.
- Видалення: деінсталяція знімає події й крон; таблиці з посилками лишаються для повторного встановлення. Галочка «Видаляти посилки, їхню історію й налаштування» перед деінсталяцією прибирає й їх.
Як встановити
- OpenCart 4: Розширення → Інсталятор → завантажте
cc_mrc.ocmod.zip(імʼя архіву не змінюйте) і натисніть «Встановити». OpenCart 3: Розширення → Інсталятор →cc_mrc-oc3.ocmod.zip. OpenCart 2.3: залийте вміст папкиupload/зcc_mrc-oc2.ocmod.zipу корінь магазину (FTP або файловий менеджер хостингу) — Інсталятор 2.3 без налаштованого FTP файлів не копіює. - Розширення → Розширення → Модулі → Marketplace Returns Control → «Встановити», потім «Редагувати».
- «Що відстежувати»: перевірте, що таблиці модулів доставки позначені «знайдено». Ключі з наших модулів підхопляться самі — це видно по написах «взято з модуля …».
- Продажі → «Контроль повернень» → «Перевірити зараз». Посилки зʼявляться у вкладках за висновками.
- Коли повернення фізично прийшло, натисніть «Повернення отримано» у списку або на сторінці замовлення.
- Для Pro: вставте ліцензійний ключ із листа після оплати або натисніть «Спробувати Pro 7 днів» у розділі «Pro-ліцензія», потім увімкніть маркетплейси й автоматизацію. Для OpenCart 3 і 2.3 додайте cron-адресу з налаштувань у cron хостингу, раз на годину.
Питання
про модуль
Не знайшли відповідь? Напишіть у Telegram — відповімо протягом робочого дня.
Чи потрібен API-ключ Нової Пошти?
Ні. Відстеження Нової Пошти працює без ключа. З ключем відправника (або з телефоном відправника в налаштуваннях) Нова Пошта додатково повідомляє зворотну ТТН і дату, коли закінчується зберігання. Якщо стоїть наш модуль Нова Пошта Premium, ключ береться з нього.
Навіщо підтверджувати повернення вручну?
Бо саме статус перевізника й буває неправдою: повернення позначене «вручено відправнику», а посилка ще лежить у відділенні. Така посилка лишається в «Потребують уваги», доки ви не натиснете «Повернення отримано» — тобто доки товар справді не на полиці.
ТТН записує інший модуль доставки, не ваш.
У налаштуваннях, рядок «Інша таблиця», вкажіть його таблицю, колонку з ТТН, колонку з номером замовлення і перевізника (або «Визначати за номером»). ТТН можна також ввести вручну в блоці «Контроль повернень» на сторінці замовлення.
Які маркетплейси підтримує Pro?
Rozetka, Prom.ua й Епіцентр. Модуль читає замовлення кабінету з ТТН і звіряє статус маркетплейсу з перевізником. Звʼязок із замовленням OpenCart береться з нашого модуля «ТТН у маркетплейси» (Marketplace Waybills); замовлення маркетплейсу без замовлення в OpenCart теж відстежуються. Логін і токени, уже введені в наших модулях, підхоплюються самі.
Чи перевірено на живих кабінетах?
Ні. Нова Пошта відповідала наживо на запити без ключа. Укрпошту, Meest, Rozetka, Prom і Епіцентр перевірено за їхньою офіційною документацією на тестових відповідях: публічних пісочниць у цих сервісів немає. Тому перевірте модуль на своїх посилках у 7-денному тріалі Pro, а якщо якийсь статус трактується не так — напишіть нам, виправимо.
Ліцензія на рік?
Ні. Для OpenCart це одна оплата, ліцензія назавжди, і вона одна на всі три збірки: 4.x, 3.x і 2.3. Тріал стартує лише за вашою кнопкою; коли він закінчується, вимикаються тільки Pro-функції — посилки й історія лишаються.
Чи змінює модуль щось у замовленнях сам?
У Free — ні, лише додає в історію замовлення рядок без сповіщення покупця, коли знайдено проблему чи підтверджено повернення (вимикається). У Pro можна обрати статус після підтвердженого повернення і після відмови; за замовчуванням «не змінювати». Статус «Кошти повернуто» для відмови модуль не дає вибрати.
Модуль змінює файли OpenCart?
Ні. Він працює через події OpenCart (меню й сторінка замовлення), без OCMOD-правок ядра, і має власні таблиці. Таблиці наших модулів доставки лише читає.
Поки що жодного відгуку. Будьте першим.
Поки питань немає. Запитай — ми відповімо протягом 24 годин.
Не той варіант, що шукаєте?
Робимо кастомні модулі під WordPress, WooCommerce, OpenCart і Shopify. Розкажіть про задачу — підготуємо оцінку.
Замовити кастомний модуль
Купівля модуля
—