Інтеграція 1С-Бітрікс з Ozon (маркетплейс)

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Інтеграція 1С-Бітрікс з Ozon (маркетплейс)
Середня
~1-2 тижні
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Інтеграція 1С-Бітрікс з Ozon (маркетплейс)

Ozon не працює через товарні фіди. На відміну від Яндекс.Маркета, де основний канал — YML-файл, Ozon вимагає завантаження товарів через Seller API. Це POST-запити з JSON-тілом, жорстка система атрибутів за категоріями і обов'язкова прив'язка до карточок Ozon. Без API-інтеграції управляти каталогом з 1С-Бітрікс неможливо — ручне заповнення через кабінет при більш ніж 50 товарах нежиттєвопо.

Архітектура інтеграції

Ozon Seller API (https://api-seller.ozon.ru/) — REST API з авторизацією через Client-Id і Api-Key. Ключі створюються в особистому кабінеті продавця: Налаштування → API-ключи.

Основні групи методів:

  • /v3/product/import — завантаження та оновлення товарів
  • /v2/product/info/list — отримання інформації про товари
  • /v1/product/import/prices — оновлення цін
  • /v2/products/stocks — оновлення залишків
  • /v1/posting/fbs/list — список замовлень FBS
  • /v1/posting/fbs/ship — підтвердження відвантаження

Інтеграція будується на стороні Бітрікс як набір cron-агентів або обробників подій, які відправляють запити в API Ozon і отримують відповіді.

Завантаження товарів: система атрибутів Ozon

Ключова складність Ozon — категорійна система атрибутів. Кожна категорія (category_id) має свій набір обов'язкових і опціональних атрибутів. Отримати їх можна через /v1/description-category/attribute.

Приклад для категорії «Смартфони»:

Атрибут Ozon attribute_id Обов'язковий Поле в Бітрікс
Бренд 85 Так Властивість «Бренд»
Назва 4180 Так NAME
Модель 9048 Так Властивість «Модель»
Колір 10096 Так Властивість з ТП
Обсяг пам'яті Так Властивість з ТП
Вага з упаковкою, г 4382 Так Властивість або вичислювана
Габарити упаковки 4383–4385 Так Властивості

Значення-довідники. Багато атрибутів — не вільний текст, а вибір з довідника Ozon. Бренд «Samsung» — це конкретний option_value_id, який потрібно знайти через /v1/description-category/attribute/values. При зіставленні властивостей Бітрікс на атрибути Ozon необхідно створювати таблицю відповідностей: значення властивості інфоблоку → option_value_id Ozon.

Прив'язка до карточок. Ozon об'єднує однакові товари різних продавців у одну карточку. Прив'язка відбувається за штрихкодом (EAN), артикулом виробника або через ручну модерацію. Якщо товар вже є в базі Ozon, ваша оферта прив'яжеться до існуючої карточки. Якщо ні — створюється нова, яка проходить модерацію (1–3 дні).

Зіставлення даних: інфоблок → Ozon API

Типова схема зіставлення для модуля інтеграції:

Інфоблок «Каталог» (iblock_id = N)
  ├── NAME → attribute_id 4180 (Назва)
  ├── PROPERTY_BRAND → attribute_id 85 (Бренд, довідник)
  ├── PROPERTY_ARTICLE → offer_id (артикул продавця)
  ├── PROPERTY_BARCODE → barcode
  ├── DETAIL_TEXT → description (до 6000 символів)
  └── DETAIL_PICTURE → images[] (до 15 фото, мінімум 200×200)

Інфоблок ТП (iblock_id = M)
  ├── PROPERTY_COLOR → attribute_id 10096 (Колір, довідник)
  ├── PROPERTY_SIZE → attribute_id (розмір, залежить від категорії)
  └── Ціна каталогу → price / old_price

Зіставлення зберігається в налаштуваннях модуля інтеграції (якщо використовується готовий модуль із Marketplace) або в конфіґураційному файлі спеціального рішення.

Синхронізація цін і залишків

Ціни. Ozon працює з двома цінами: price (ціна продажу) і old_price (перекреслена). Різниця повинна бути не менше 5% — інакше Ozon не показуватиме знижку. Оновлення через /v1/product/import/prices, ліміт — 1000 товарів за запит.

У Бітрікс ціни зберігаються в таблиці b_catalog_price. Для інтеграції з Ozon виділяється окремий тип ціни (наприклад, «Ціна Ozon») або використовується основна роздрібна. Агент синхронізації запускається по cron кожні 15–30 хвилин, вибирає товари з змінена ціною (TIMESTAMP_X) і відправляє пакетний запит.

Залишки. Метод /v2/products/stocks. Критично для FBS — якщо залишок в Ozon > 0, а на складі товара нема — отримуєте штраф за скасування замовлення. Синхронізація залишків повинна бути максимально частою: кожні 5–15 хвилин для товарів з великим обігом.

Для мультискладовості Ozon підтримує передачу залишків за складами (warehouse_id). Кожен склад Ozon зіставляється зі складом у Бітрікс (якщо використовується складський облік модуля catalog).

Обробка замовлень

Замовлення FBS забираються через /v1/posting/fbs/list з фільтром status = awaiting_packaging. Обробник:

  1. Отримує список нових замовлень.
  2. Створює замовлення в Бітрікс через Bitrix\Sale\Order::create() з зіставленням полів: товари, кількість, адреса (якщо доступна), сума.
  3. При збиранні замовлення і передачі в доставку — викликає /v1/posting/fbs/ship з указанням posting_number і трек-номеру.

Статуси замовлення Ozon → Бітрікс:

Ozon Дія в Бітрікс
awaiting_packaging Створення замовлення, статус «Новий»
awaiting_deliver Статус «Зібрано»
delivering Статус «Відправлено»
delivered Статус «Виконано»
cancelled Скасування замовлення

Типові проблеми

Товар не пройшов модерацію. Причина #1 — неправильне зіставлення атрибутів. Перевірте через /v1/product/info/list поле status_description. Часта помилка — бренд переданий текстом, а не option_value_id.

Rate limiting. Ozon API обмежує число запитів: ~60 запитів на хвилину для більшості методів. При каталозі в 10 000+ товарів оновлення цін потрібно розбивати на пакети з затримкою.

Розбіжність залишків. Якщо замовлення створено на Ozon, але агент синхронізації ще не забрав його — залишок у Бітрікс не зменшився. Наступний запит залишків відправить застарілі дані. Рішення: при отриманні замовлення з Ozon спочатку зарезервувати залишок у Бітрікс, потім синхронізувати.

Масштаб Термін
До 500 товарів, проста структура 5–7 днів
500–5000, SKU, мультисклад 1.5 тижня
5000+, повна автоматизація (замовлення + залишки + статуси) 2 тижня