
B2B Order Import для OpenCart — заказ из заявки клиента в Excel, CSV и PDF
Модуль для OpenCart 4, 3 и 2.3 превращает файл заявки оптового клиента в заказ магазина. Менеджер загружает Excel, CSV или ODS (в Pro — ещё и PDF с текстовым слоем), модуль находит таблицу, сопоставляет строки с товарами по артикулу, модели, штрихкоду или названию и показывает всё на проверку. Заказ создаётся только после того, как менеджер нажмёт «Создать заказ», и создаёт его сам магазин: склад, письма и другие модули работают как для заказа из корзины.
- Совместимость
- 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) · файлы .xlsx/.xlsm, .csv/.txt/.tsv, .ods, PDF с текстовым слоем (Pro) · старый .xls не читается · MariaDB 10.11
- Версия
-
v1.0.0 (OpenCart 4)
v1.0.0 (OpenCart 3.x)
v1.0.0 (OpenCart 2.3) - Лицензия
- один сайт, навсегда
- Триал
- 7 дней, без карты, один на сайт
- Обновлено
- 10 октября 2026
Что есть во Free,
а что даёт Pro
Бесплатная версия работает без ограничения по времени. Pro добавляет остальные функции из таблицы.
Как это выглядит
Главное о модуле
Как это выглядит для покупателя
Для обычных покупателей ничего не меняется: модуль не добавляет скриптов на витрину и не трогает оформление заказа.
Что получает админ
Пункт меню Продажи → «Импорт B2B-заказов» со счётчиком новых заявок от клиентов.

Триал стартует, когда вы попросите
Свежая установка — бесплатная версия, ничего не включается само. Кнопка «Попробовать 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. Расширение zlib; ZipArchive желательно, но не обязательно. cURL — для лицензии и AI.
Файлы: .xlsx, .xlsm, .csv, .txt, .tsv, .ods; в Pro — PDF с текстовым слоем. Старый .xls — нет, защищённый паролем PDF — нет.
Права записи в storage/upload — там хранятся оригиналы файлов.
База: проверено на MariaDB 10.11.
История версий
Для OpenCart 4.x, 3.x и 2.3: импорт заявок из Excel, CSV и ODS, автопоиск таблицы, сопоставление по артикулу, штрихкоду и названию, ручная проверка, создание заказа штатной логикой магазина.
Вместе с B2B Order Import для 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
Полное описание модуля
B2B Order Import для OpenCart — модуль для магазинов, которые продают оптом. Оптовый клиент редко оформляет заказ через корзину: он присылает менеджеру файл — таблицу в Excel, выгрузку CSV или PDF из учётной программы — со своими артикулами, названиями и количеством. Дальше менеджер вручную ищет каждую позицию в каталоге, переносит количества и цены в заказ и ошибается на двадцатой строке.
Модуль делает эту работу за менеджера: читает файл, сам находит в нём таблицу, сопоставляет каждую строку с товаром магазина по артикулу, модели, штрихкоду или названию и показывает результат на проверку. Менеджер исправляет то, что модуль не узнал, и нажимает «Создать заказ». Без этой кнопки заказ не появляется — автоматически модуль ничего не заказывает.
Для оптового магазина также пригодятся наши модули для OpenCart: Опт — оптовые цены по группам покупателей (именно эти цены B2B Order Import берёт для группы клиента), Импорт прайсов поставщиков, BAS Exchange для обмена заказами с учётом и Stock Reserve & Reorder для резерва остатков под заказы.
Магазин на WooCommerce? Для него есть отдельный плагин B2B Order Import для WooCommerce с тем же подходом: файл заявки в Excel, CSV или PDF, проверка менеджером, заказ.
Как это выглядит для покупателя
Для обычных покупателей ничего не меняется: модуль не добавляет скриптов на витрину и не трогает оформление заказа. Оптовый клиент получает заказ так же, как после корзины — со стандартным письмом-подтверждением магазина, номером своей заявки в комментарии и историей статусов в личном кабинете.
В Pro можно дать оптовым клиентам собственную страницу «Загрузить заявку»: клиент, вошедший в аккаунт, отправляет файл, номер заявки и комментарий и видит свои последние заявки со статусом. Страница доступна только после входа, по желанию — только выбранным группам клиентов, с лимитом загрузок в сутки. Менеджер получает письмо, а заявка ждёт его в админке — автоматически ничего не заказывается.
Что получает админ
Пункт меню Продажи → «Импорт B2B-заказов» со счётчиком новых заявок от клиентов.
- Загрузка файла: сразу можно выбрать клиента, валюту заказа и источник цен — или указать это на следующем экране.
- Список импортов с вкладками «В работе», «От клиентов», «Заказ создан», «Все»: дата, клиент, файл, номер заявки, сколько строк сопоставлено.
Проверка заявки
- Клиент: аккаунт магазина (адрес по умолчанию и группа) или гость — компания, имя, e-mail, телефон, адрес и группа для цен.
- Колонки файла: модуль показывает, в какой строке нашёл заголовок и какую колонку взял под артикул, название, количество, единицу, цену, сумму и штрихкод. Ошибся — выберите колонку или строку заголовков и нажмите «Прочитать заново».
- Строки: что написано в файле, какой товар магазина найден и как — «по SKU», «по модели», «по названию», «похожее название — проверьте», «выбрано вручную». Рядом поиск товара, количество, цена, сумма и «Пропустить».
- Предупреждения: товар выключен, есть обязательные опции, на складе меньше, минимальное количество, цена в файле отличается от цены магазина.
После создания заказа
Импорт получает статус «заказ создан» и ссылку на заказ, строки блокируются от изменений. Оригинал файла клиента остаётся в истории — его можно скачать в любой момент.
Настройки
- Общие: статус нового заказа, названия способов оплаты и доставки в заказе, цены по умолчанию, максимальный размер файла.
- Сопоставление: в каких полях искать артикулы (SKU, модель, EAN, UPC, MPN, JAN, ISBN); в Pro — похожие названия с порогом и память сопоставлений.
- Загрузка клиентом (Pro): адрес страницы, разрешённые группы, e-mail для уведомлений, лимит в сутки.
- AI-распознавание (Pro): адрес API, ваш ключ, модель, автозапуск. Выключено по умолчанию.
Как это работает — шаг за шагом
- Менеджер загружает файл (или клиент — на своей странице в Pro). Модуль сохраняет оригинал в
storage/uploadи читает его без сторонних сервисов: Excel и ODS — как архив XML, CSV — с определением кодировки и разделителя, PDF — собственным разбором текстового слоя. - Ищет строку заголовков по словам «артикул», «код», «SKU», «наименование», «количество», «цена», «сумма» и аналогам на пяти языках; в PDF ставит границы колонок по координатам текста и склеивает перенесённые названия. Таблица заканчивается на «Итого» / «Всего» / «Total». Номер заявки берётся из текста над таблицей.
- Сопоставляет строки по очереди: (Pro) память этого клиента → артикул точно → артикул без пробелов, дефисов, точек и слешей → штрихкод → точное название → (Pro) похожее название с порогом. Запросы идут пакетами, поэтому файл на сотни строк не нагружает базу.
- Считает цену: цену магазина для группы клиента с учётом скидок за количество и акций или цену из файла с пересчётом в валюту заказа.
- Менеджер проверяет строки и нажимает «Создать заказ». Заказ создаётся штатной логикой заказов магазина: склад, письма, налоги по адресу клиента и события других модулей работают так же, как для заказа из корзины.
Что под капотом
- Без сторонних библиотек и платных сервисов. Excel, ODS, CSV и PDF модуль читает собственным кодом, совместимым с PHP 7.0. Одна библиотека классов одинакова в трёх сборках.
- Без правок ядра. Без OCMOD-патчей; пункт меню добавляется событием OpenCart. Заказ создаёт штатная логика заказов магазина, поэтому склад, письма и другие модули не обходятся.
- Собственные таблицы для импортов, строк, памяти сопоставлений и колонок. Таблицы ядра модуль не меняет.
- Защита создания: админка выдаёт подписанную одноразовую ссылку, а переход «подтверждено → создаётся» атомарный — двойной клик не даёт дубля.
- Файлы заявок лежат в
storage/upload/cc_orderimport/под случайными 32-символьными именами с запретом прямого доступа. - Лицензия живёт в отдельной группе настроек: «Сохранить» её не трогает.
- Деинсталляция снимает событие и пункт меню, историю импортов оставляет — это история заказов ваших клиентов. Для полного удаления удалите таблицы
oc_cc_orderimport_*вручную.
Как установить
- OpenCart 4: Расширения → Установщик → загрузите
cc_orderimport.ocmod.zip(имя архива не меняйте) и нажмите «Установить». OpenCart 3: Расширения → Установщик →cc_orderimport-oc3.ocmod.zip. OpenCart 2.3: залейте содержимое папкиupload/изcc_orderimport-oc2.ocmod.zipв корень магазина (FTP или файловый менеджер хостинга). - Расширения → Расширения → Модули → CatCode B2B Order Import → «Установить».
- Продажи → «Импорт B2B-заказов» → выберите файл клиента → «Прочитать файл».
- Проверьте строки, выберите клиента или заполните гостя и нажмите «Создать заказ».
- Для Pro: вставьте лицензионный ключ из письма после оплаты или нажмите «Попробовать Pro 7 дней» во вкладке «Лицензия».
Вопросы
о модуле
Не нашли ответ? Напишите в Telegram — ответим в течение рабочего дня.
Какие файлы модуль читает?
Бесплатно — Excel (.xlsx, .xlsm), CSV/TXT/TSV и ODS. В Pro — ещё PDF с текстовым слоем, то есть PDF, из которого можно выделить и скопировать текст: такие дают учётные программы, Excel и Word. Старый формат Excel (.xls) модуль не читает и просит сохранить файл как .xlsx или CSV.
А сканы и фото заявок?
У скана или фото нет текста, поэтому без AI модуль его не прочитает. В Pro можно включить AI-распознавание с вашим собственным ключом OpenAI-совместимого сервиса: файл уходит вашему провайдеру, оплачиваете его вы, CatCode файла не видит. По умолчанию это выключено и запускается только кнопкой менеджера (или автоматически, если вы это включите).
Создаст ли модуль заказ сам, без человека?
Нет. Каждый файл ждёт менеджера: тот видит строки, товары и цены, исправляет что нужно и нажимает «Создать заказ». Пока есть строки без товара, заказ не создаётся — нужно выбрать товар или отметить «Пропустить».
Что с товарами, у которых есть обязательные опции?
Модуль сопоставляет такой товар и показывает предупреждение «есть обязательные опции — добавьте их в редакторе заказа». Заказ создаётся без опций, а менеджер добавляет размер, цвет и т. п. в стандартном редакторе заказа OpenCart.
Какие цены попадут в заказ?
По умолчанию — цены магазина для группы клиента, со скидками за количество и акциями. Можно выбрать цены из файла: тогда берётся цена клиента, а если её в строке нет — цена магазина. Разницу между ценой в файле и ценой магазина модуль подсвечивает. Налоги добавляются по правилам вашего магазина, стоимость доставки — нет.
Лицензию нужно продлевать каждый год?
Нет. Для OpenCart это одна оплата, лицензия навсегда, одна на все три сборки: 4.x, 3.x и 2.3. Триал Pro стартует только по вашей кнопке. После триала импорт Excel/CSV с ручным подтверждением работает дальше, выключаются только функции Pro.
Модуль меняет файлы OpenCart или чекаут?
Нет. Без правок ядра и OCMOD-патчей, пункт меню добавляется событием. Таблицы ядра не меняются, заказ записывает штатная логика заказов магазина. Собственные таблицы модуля хранят только импорты и память сопоставлений.
Пока нет ни одного отзыва. Будьте первым.
Пока вопросов нет. Спроси — мы ответим в течение 24 часов.
Не тот вариант, что искали?
Делаем кастомные модули под WordPress, WooCommerce, OpenCart и Shopify. Расскажите о задаче — подготовим оценку.
Заказать кастомный модуль
Покупка модуля
—
