Інтеграція 1С-Бітрікс з Яндекс.Маркет

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Інтеграція 1С-Бітрікс з Яндекс.Маркет
Середня
~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С-Бітрікс з Яндекс.Маркет

Каталог на сайті — це одна структура даних. Яндекс.Маркет очікує інше: власні категорії, обов'язкові атрибути для кожної категорії, фіди в форматі YML з конкретними тегами. Без правильного налаштування товари не пройдуть модерацію, а ті, що пройшли — показуватимуть неправильні ціни або порожні характеристики. Інтеграція 1С-Бітрікс з Яндекс.Маркет — це зіставлення двох різних моделей даних і підтримання синхронізації.

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

Яндекс.Маркет взаємодіє з магазином через два канали:

  1. YML-фід (Yandex Market Language) — XML-файл з товарами, який Маркет періодично завантажує за URL. Основний канал для каталогу.
  2. Partner API (https://api.partner.market.yandex.ru/) — REST API для управління замовленнями, цінами, залишками, статусами.

У 1С-Бітрікс за генерацію фіду відповідає модуль catalog.export з профілем експорту «Яндекс.Маркет (YML)». За роботу з API — або модуль із Marketplace (RetailCRM, Kooplex, «МоєДіло»), або спеціальний обробник.

Генерація YML-фіду: глибока настройка

Стандартний профіль експорту створюється в Магазин → Налаштування → Експорт каталогу → Яндекс.Маркет. Базові параметри:

  • Тип торгівлі: DBS (Delivery by Seller) — доставка продавцем, FBS (Fulfillment by Seller) — відвантаження зі свого складу через логістику Маркета, FBY (Fulfillment by Yandex) — товар лежить на складі Яндекса.
  • Інфоблок каталогу: прив'язка до конкретного інфоблоку товарів.
  • Властивості для експорту: зіставлення полів інфоблоку з тегами YML.

Обов'язкові теги для кожного <offer>:

Тег YML Поле в Бітрікс Примітка
<name> NAME елемента До 150 символів
<price> Ціна каталогу У рублях, без знижок
<currencyId> Валюта RUR / USD
<categoryId> Розділ інфоблоку Зіставляється з категоріями Маркета
<picture> DETAIL_PICTURE або властивість Мінімум 300×300 px, до 10 фото
<vendor> Властивість «Бренд» Обов'язково для більшості категорій
<barcode> Властивість «Штрихкод» EAN-13. Без нього — обмеження розміщення
<description> DETAIL_TEXT До 3000 символів, обмежені HTML-теги

Критичний момент — <param>. Яндекс.Маркет вимагає характеристик товару у вигляді <param name="Розмір">42</param>. У Бітрікс характеристики — це властивості інфоблоку. Стандартний профіль експорту експортує тільки ті властивості, які явно позначені в налаштуваннях експорту. Якщо властивість множественна (кілька значень), кожне значення генерує окремий <param>.

Проблема з торговими пропозиціями (SKU). Якщо товар має торгові пропозиції (розмір, колір), кожна пропозиція — окремий <offer> у фіді. Зв'язок встановлюється через <group_id> (об'єднує пропозиції одного товару). Стандартний експорт Бітрікс не завжди правильно формує group_id — може знадобитися доопрацювання обробника експорту в /bitrix/php_interface/include/catalog_export/.

Зіставлення категорій

Яндекс.Маркет використовує власне дерево категорій. Розділ «Електроніка → Смартфони» у вашому каталозі — це конкретний categoryId у дереві Маркета. Зіставлення встановлюється двома способами:

  1. Через модуль інтеграції — завантажується дерево категорій Маркета, і для кожного розділу інфоблоку вибирається відповідність.
  2. Через market_category в YML — тег <market_category>Електроніка/Смартфони</market_category> всередині <offer>. Яндекс намагається автоматично зіставити.

Перший способ надійніший. Неправильне зіставлення = товар потрапить у чужу категорію з іншими обов'язковими атрибутами і не пройде модерацію.

Управління замовленнями через Partner API

Коли покупець замовляє товар на Яндекс.Маркет, замовлення потрібно прийняти і обробити. Схема:

  1. Маркет відправляє POST на ваш endpoint (callback URL) з даними замовлення.
  2. Обробник Бітрікс створює замовлення в модулі sale через Bitrix\Sale\Order::create().
  3. При зміні статусу замовлення в Бітрікс — відправляється PUT-запит в Partner API для оновлення статусу на Маркеті.

Статуси Маркета: PROCESSINGDELIVERYDELIVERED / CANCELLED. Зіставлення зі статусами Бітрікс (N, P, F, C) налаштовується в модулі інтеграції.

Оновлення залишків. Маркет очікує актуальні залишки. Два підходи:

  • Через фід — тег <count> в <offer>. Фід оновлюється по cron кожні 30–60 хвилин.
  • Через API — метод PUT /campaigns/{campaignId}/offers/stocks. Оновлює залишки в реальному часі. Використовується для товарів з великим обігом.

Часті помилки при інтеграції

Фід не проходить валідацію. Яндекс перевіряє XSD-схему. Незакриті теги, спецсимволи (&, <, >) в описі без CDATA, кирилиця в URL картинок — все це причини відхилення.

Ціни не збігаються. Якщо на сайті діють знижки, а фід експортує ціну до знижки — Маркет може заблокувати магазин за розбіжність цін. Рішення: в профілі експорту вибрати тип ціни, відповідний ціні на сайті, або формувати <oldprice> для перекреслена ціни.

Дублі товарів. При переіндексації каталогу змінюються ID елементів інфоблоку. Маркет вважає товари з новими ID новими офертами, а старі — видаленими. Використовуйте <shop-sku> на основі артикулу (властивість ARTICLE), а не ID елемента.

Терміни інтеграції за масштабом

Масштаб каталогу Обсяг робіт Термін
До 500 товарів, без SKU Настройка фіду + базове зіставлення 3–5 днів
500–5000, з торговими пропозиціями Фід + доопрацювання експорту + API залишків 1–1.5 тижня
5000+, FBS/FBY, мультискладовість Повна інтеграція: фід + API замовлень + залишки + статуси 1.5–2 тижня