Импорт каталога B2B по api

Импорт каталога B2B по api для Shop-Script

Импорт товаров, цен и остатков из B2B

Отзывов пока нет

Бесплатно

Установите плагин «Импорт каталога B2B по api» с помощью приложения «Инсталлер» в бекенде своего аккаунта Webasyst.

Ваш отзыв
Установок
10+
Разработчик
Поддержка
Лицензия
LGPL
Версия
1.2.6
Обновлено
6 августа 2026
Минимальные требования

Импорт каталога B2B — плагин для Shop-Script, который подключает ваш магазин к Partner API поставщика на Webasyst (плагин B2B / оптовые продажи). Вы получаете категории, товары, цены и остатки напрямую в каталог Shop-Script — без ручной выгрузки Excel и без «своего» парсера под каждого поставщика.

Плагин ходит на API вида https://сайт-поставщика/b2b/api/v1, сопоставляет категории, создаёт и обновляет товары, синхронизирует цены и остатки. Запуск — из настроек плагина или по cron / CLI. Журнал и «последний запуск» пишутся в файлы wa-log (без отдельной MySQL-таблицы журнала).

Важно про кабинет поставщика. Чтобы импорт работал, поставщик должен выдать вам доступ в своём плагине B2B: раздел /my/b2b/api/ — домен вашего магазина, API-токен и выбранные категории экспорта. Без токена и совпадающего домена API отвечает отказом в авторизации. Сам Partner API и кабинет настраиваются у поставщика; этот плагин — сторона получателя каталога.

  • Что даёт магазину-получателю:
    • Подключение к Partner API поставщика по URL, токену и домену клиента.
    • Ручное и автоматическое сопоставление категорий API ↔ категории вашего магазина (поиск в выпадающем списке).
    • Импорт / обновление товаров и цен, отдельная синхронизация остатков.
    • Полный цикл «категории → товары → остатки» одной кнопкой или одной CLI-командой.
    • Cron-готовые команды: товары/цены и остатки с разной периодичностью.
    • Журнал синхронизаций и таблица последних запусков в файлах wa-log/shop/plugins/.
  • Что нужно от поставщика:
    • Установленный и настроенный плагин B2B / оптовые продажи.
    • Ваш аккаунт одобрен как оптовый клиент.
    • В /my/b2b/api/: токен, ваш домен, категории для экспорта.
    • Рабочий URL API: https://домен-поставщика/b2b/api/v1.
  • Где настраивать: Плагины → Импорт каталога B2B — вкладки «Подключение», «Категории», «Синхронизация», «Cron / CLI», «Журнал».

Как это работает «простыми словами»

  1. Поставщик выдаёт вам URL API, токен и разрешает домен вашего сайта в кабинете B2B API.
  2. В плагине «Импорт каталога B2B» вы вставляете эти данные и сохраняете настройки.
  3. На вкладке «Категории» загружаете дерево категорий API и сопоставляете их с категориями своего магазина.
  4. На вкладке «Синхронизация» проверяете подключение и запускаете импорт товаров / остатков (или полный импорт).
  5. Для регулярного обновления вешаете на cron команды товаров и остатков.

Основные сценарии использования

  • Подключить поставщика с нуля:
    • Получите у поставщика URL /b2b/api/v1, токен и подтвердите, что ваш домен прописан в токене.
    • Откройте Плагины → Импорт каталога B2B → Подключение.
    • Заполните URL API, токен, домен клиента; выберите, какую цену писать (оптовая или розничная).
    • Сохраните настройки.
    • Перейдите на «Синхронизация» → «Проверить подключение» — должен вернуться успех и данные группы.
  • Настроить категории:
    • Вкладка «Категории» → «Загрузить категории API».
    • В каждой строке выберите локальную категорию магазина (есть поиск по названию).
    • Или нажмите «Автопо имени» — заполнятся точные совпадения названий.
    • «Сохранить сопоставление».
    • Рекомендуется держать включённым «Новый товар только при сопоставленной категории», чтобы «чужие» ветки API не плодили мусор в каталоге.
  • Запустить импорт:
    • «Товары / цены» — создать недостающие позиции и обновить существующие (название, SKU, цены, привязка к категориям по карте).
    • «Остатки» — только остатки и доступность SKU (быстрее, удобно для частого cron).
    • «Категории (создать недостающие)» — если в настройках разрешено создавать категории без ручного сопоставления.
    • «Полный импорт» — категории → товары/цены → остатки.
  • Поставить на cron:
    • Товары/цены реже (например, раз в 15 минут).
    • Остатки чаще (например, раз в 5 минут).
    • Команды и примеры crontab — на вкладке «Cron / CLI».

Разделы настроек плагина (по вкладкам)

  • Подключение
    • URL API — базовый адрес Partner API, например https://supplier.example/b2b/api/v1.
    • Токен доступа — из кабинета поставщика /my/b2b/api/ (показывается один раз при генерации).
    • Домен клиента — ваш домен магазина; должен совпадать с X-B2B-Client-Domain / доменом в токене (обычно без www и без схемы).
    • Какую цену писать в товар — оптовая (wholesale / b2b) или розничная (retail) из ответа API.
    • Создавать новые товары — если артикул не найден локально, создать позицию.
    • Создавать категории, если нет сопоставления — автосоздание веток; если выключено — только ручная карта категорий.
    • Новый товар только при сопоставленной категории — не создавать товар, пока ни одна его категория API не сопоставлена (обновление уже существующих без категории разрешено).
    • Обновлять цены / Обновлять остатки — включать соответствующие поля при синхронизации.
    • Синхронизировать характеристики — переносить features из API в товар.
    • Снимать с публикации при нулевом остатке — скрывать товар/SKU без наличия.
    • Тип товара для новых позиций — ID типа Shop-Script (0 = по умолчанию).
    • Размер страницы API — сколько товаров запрашивать за один page (пагинация).
  • Категории
    • Загрузить категории API — дерево категорий поставщика.
    • Автопо имени — сопоставить пустые строки по точному совпадению названий.
    • Сохранить сопоставление — записать карту remote_id → local_id.
    • Выбор категории магазина — dropdown с поиском (как в карточке товара Shop-Script).
  • Синхронизация
    • Проверить подключение — ping API (группа, настройки экспорта).
    • Категории — создать недостающие (если разрешено в настройках).
    • Товары / цены — upsert по артикулу.
    • Остатки — только stocks.
    • Полный импорт — полный цикл.
    • Статус операции показывается рядом с кнопками (на своей вкладке).
  • Cron / CLI
    • php cli.php shop b2bimportProducts — товары и цены.
    • php cli.php shop b2bimportStocks — только остатки.
    • php cli.php shop b2bimportSync categories|products|stocks|full — выбранный режим.
    • Примеры crontab для товаров (реже) и остатков (чаще).
  • Журнал
    • Последний запуск — файл wa-log/shop/plugins/b2bimport.last.json.
    • Журнал — читаемый лог wa-log/shop/plugins/b2bimport.journal.log (последние записи в интерфейсе).
    • При размере журнала больше 500 МБ старые строки обрезаются автоматически.

Авторизация к API поставщика (что уходит в запросах)

  • Заголовок X-B2B-Api-Token — ваш токен.
  • Заголовок X-B2B-Client-Domain — домен из настроек плагина.
  • Методы, которые использует импорт: GET /ping, GET /categories, GET /products, GET /stocks (и связанные режимы sync).

Рекомендуемый порядок первой настройки

  1. Получить у поставщика URL API, токен и убедиться, что домен вашего магазина разрешён.
  2. Вкладка «Подключение» — заполнить поля, сохранить.
  3. «Синхронизация» → «Проверить подключение».
  4. «Категории» — загрузить, сопоставить (или «Автопо имени»), сохранить карту.
  5. Сначала «Товары / цены», затем «Остатки» (или «Полный импорт»).
  6. Проверить несколько товаров в каталоге Shop-Script (цена, категория, остаток).
  7. Настроить cron по примерам на вкладке «Cron / CLI».

Частые вопросы

  • Чем этот плагин отличается от B2B у поставщика? Плагин B2B — кабинет опта, прайс и Partner API на стороне поставщика. «Импорт каталога B2B» — клиент API на стороне вашего магазина.
  • Почему ошибка авторизации? Неверный токен, домен не совпадает с разрешённым, клиент не одобрен у поставщика или API выключен/недоступен.
  • Товары не создаются? Проверьте «Создавать новые товары», сопоставление категорий и опцию «Новый товар только при сопоставленной категории».
  • Цены не те? Смотрите «Какую цену писать в товар» (опт / розница) и что реально отдаёт API в полях wholesale/retail.
  • Остатки обновляются, а названия нет? Для частого cron используйте b2bimportStocks; полный апдейт карточек — b2bimportProducts.
  • Где смотреть лог? Вкладка «Журнал» или файлы в wa-log/shop/plugins/.
  • Нужно ли менять тему дизайна? Нет. Плагин работает в бэкенде и по CLI; витрина использует обычный каталог Shop-Script.

Полезные ссылки

Нужна помощь с настройкой под ваш сайт? Пишите на почту scc.lac@mail.ru или в Telegram @web_stu.

webictus

Все продукты этого разработчика