Связаться
  • OpenCart
  • Доставка
  • v1.0.2

Marketplace Returns Control для OpenCart — контроль возвратов и незабранных посылок

Модуль для OpenCart 4, 3 и 2.3, который сверяет ТТН ваших заказов с Новой Почтой, Укрпочтой и Meest и показывает посылки, где нужен человек: возврат «прибыл», а товара на полке нет; хранение в отделении заканчивается; посылка зависла; статус заказа противоречит посылке; деньги вернули раньше товара. Pro сверяет ещё и заказы Rozetka, Prom и Эпицентра, проверяет каждый час, шлёт сводку на почту и в 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.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
Или все 144 Pro-модулей в All Access — 4 990 ₴ / год

Что есть во Free,
а что даёт Pro

Бесплатная версия работает без ограничения по времени. Pro добавляет остальные функции из таблицы.

Функция Free Pro
ТТН из заказов автоматически: наши модули Нова Пошта Premium, Укрпочта, Meest, любая другая таблица или вручную в заказе ✔ ✔
Отслеживание Новой Почты и Укрпочты (до 100 ТТН за запрос) и Meest кнопкой «Проверить сейчас» ✔ ✔
Обратная ТТН Новой Почты находится сама и отслеживается отдельно ✔ ✔
«Перевозчик пишет "возвращено", а у вас товара нет» — возврат закрывается только вашим подтверждением ✔ ✔
«Заканчивается хранение в отделении» — с датой, когда посылка уедет обратно ✔ ✔
«Зависла» — ни одного нового статуса за N дней ✔ ✔
«Статус заказа противоречит посылке» и «Деньги вернули раньше, чем товар» ✔ ✔
Вкладки «Требуют внимания», «Возвраты», «В пути», «Завершённые», фильтры и поиск по ТТН или номеру заказа ✔ ✔
«Возврат получен» с комментарием, «Отметить решённым», история каждой посылки ✔ ✔
Блок «Контроль возвратов» на странице заказа, ручная ТТН и обратная ТТН ✔ ✔
Ключи перевозчиков — из наших модулей доставки, ничего не нужно вводить повторно ✔ ✔
Сборки для OpenCart 4.x, 3.x и 2.3, админка на украинском, русском, английском ✔ ✔
Rozetka, Prom.ua, Эпицентр: статус маркетплейса сверяется с перевозчиком и с заказом — ✔
«Маркетплейс закрыл как полученный, а перевозчик не вручил» и «Маркетплейс и перевозчик говорят разное» — ✔
Автоматическая проверка каждый час (планировщик OpenCart 4 или cron-адрес) — ✔
Утренняя сводка на почту — ✔
Telegram: срочные случаи сразу, сводка утром — ✔
Статус заказа меняется сам после подтверждённого возврата или отказа — ✔
Экспорт списка в CSV — ✔

Как это выглядит

Список посылок модуля Marketplace Returns Control в OpenCart 4.1, вкладка «Требуют внимания» (админка на украинском)
Продажи → «Контроль возвратов», вкладка «Требуют внимания» (OpenCart 4.1, админка на украинском): Эпицентр закрыл заказ как полученный, а посылка в отделении; деньги вернули раньше товара; Rozetka и Укрпочта говорят разное. У каждой строки — статус перевозчика с кодом, вывод и действия: «Возврат получен», «Отметить решённым», история.
Блок «Контроль возвратов» на странице заказа OpenCart с подтверждённым возвратом Укрпочты
Блок на странице заказа: Укрпочта вручила возврат отправителю, возврат подтверждён вручную с комментарием. Ниже — поле для ТТН и обратной ТТН, если их не записал модуль доставки.
Настройки «Что отслеживать»: ТТН из модулей Новая Почта, Укрпочта и Meest, другая таблица, пороги дней
«Что отслеживать»: таблицы наших модулей Новая Почта, Укрпочта и Meest найдены сами, рядом — другая таблица для чужого модуля доставки, окно наблюдения, «зависла через», «неподтверждённый возврат через», предупреждение о конце хранения и статусы заказов.

Главное о модуле

Как это выглядит для покупателя

Покупатель модуля не видит: на витрине и в оформлении заказа ничего не меняется, лишних запросов и скриптов на страницах магазина нет.

Что получает админ

В меню «Продажи» появляется пункт «Контроль возвратов» с количеством проблемных посылок.

Триал стартует, когда вы попросите

Свежая установка — бесплатная версия, ничего не включается само. Кнопка «Попробовать 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); если у вас другие, выберите их в настройках.

История версий

v1.0.2 Текущая 24 сентября 2026

Статус заказа Prom.ua показывается так, как его называет Prom («Скасовано»), без дописанного английского кода доставки («Скасовано / delivered»).

v1.0.1 24 сентября 2026

OpenCart 4 с драйвером базы pdo: список посылок, поиск, CSV, сводка и проверка по крону больше не падают с ошибкой SQL.

v1.0.0 Первый релиз сентябрь 2026

Для OpenCart 4.x, 3.x и 2.3: ТТН из модулей Новая Почта, Укрпочта, Meest, из другой таблицы и из заказа, отслеживание трёх перевозчиков, обратные ТТН Новой Почты, выводы, подтверждение…

Вместе с Marketplace Returns Control для OpenCart покупают

4 модуля одним заказом — на 40% дешевле, чем по отдельности

Набор «Старт магазина» Marketplace Returns Control Nova Poshta Premium LiqPay Telegram-уведомления и Viber/SMS покупателям Нужно больше — все 144 модулей в All Access за 4 990 ₴.
3 790 ₴ навсегда вместо 6 260 ₴ поштучно
Купить набор →

Полное описание модуля

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 без танцев с кодировкой.

Как это работает — шаг за шагом

  1. «Проверить сейчас» (в Pro ещё и каждый час) сначала подхватывает новые ТТН: из таблиц модулей доставки, из другой таблицы и из блока заказа. Берутся заказы за окно наблюдения (60 дней по умолчанию); заказы без статуса и в статусах, которые вы пропускаете, — нет.
  2. Затем модуль опрашивает перевозчиков: Новую Почту и Укрпочту пачками до 100 ТТН, Meest по одной. Сначала идут посылки, которые ещё не проверялись, потом самые давние.
  3. Ответ каждого перевозчика сводится к одному состоянию: в пути, в отделении, вручено, отказ, возвращается, возвращено отправителю, утеряно. Для Новой Почты модуль берёт обратную ТТН (кроме переадресации) и дату окончания хранения.
  4. В Pro модуль читает заказы Rozetka, Prom и Эпицентра с ТТН и добавляет к посылке состояние маркетплейса и возврата средств.
  5. Из всего этого и статуса вашего заказа получается один вывод, от самого важного к обычному: маркетплейс закрыл как полученный, расхождение, деньги раньше товара, «возвращено» без подтверждения, утеряно, статус заказа противоречит, заканчивается хранение, зависла.
  6. Каждое изменение попадает в историю посылки, в 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. Ключи наших модулей модуль расшифровывает сам, не подключая их файлов.
  • Лицензия живёт в отдельной группе настроек: «Сохранить» её не трогает, деинсталляция тоже.
  • Удаление: деинсталляция снимает события и крон; таблицы с посылками остаются для повторной установки. Галочка «Удалять посылки, их историю и настройки при удалении модуля» перед деинсталляцией убирает и их.

Как установить

  1. 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 файлы не копирует.
  2. Дополнения → Дополнения → Модули → Marketplace Returns Control → «Установить», затем «Редактировать».
  3. «Что отслеживать»: проверьте, что таблицы модулей доставки отмечены «найден». Ключи из наших модулей подхватятся сами — это видно по надписям «взято из модуля …».
  4. Продажи → «Контроль возвратов» → «Проверить сейчас». Посылки появятся во вкладках по выводам.
  5. Когда возврат физически пришёл, нажмите «Возврат получен» в списке или на странице заказа.
  6. Для Pro: вставьте лицензионный ключ из письма после оплаты или нажмите «Попробовать Pro 7 дней» в разделе «Pro-лицензия», затем включите маркетплейсы и автоматизацию. Для OpenCart 3 и 2.3 добавьте cron-адрес из настроек в cron хостинга, раз в час.

Вопросы
о модуле

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

@catcode_support Настройка, совместимость, активация
Нужен ли 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-правок ядра, и имеет собственные таблицы. Таблицы наших модулей доставки только читает.

Не тот вариант, что искали?

Делаем кастомные модули под WordPress, WooCommerce, OpenCart и Shopify. Расскажите о задаче — подготовим оценку.

Заказать кастомный модуль