Коли клієнт з каталогом на 15 000 позицій скаржиться, що Яндекс?
Маркет не приймає фід, а прайс-агрегатори бачать лише половину товарів — справа майже завжди в стандартному YML-вивантаженні 1С-Бітрікс. Налаштування YML-вивантаження 1С-Бітрікс для великих каталогів потребує особливого підходу. YML (Yandex Market Language) — це XML-формат для передачі даних про товари. Згідно з документацією, YML є стандартним форматом для обміну даними з Яндекс.Маркетом. Ми з таким стикаємося постійно: штатний профіль модуля catalog генерує XML, який підходить лише для вітрини, але не для зовнішніх майданчиків.
Правильне YML-вивантаження 1С-Бітрікс — запорука успіху на маркетплейсах. Ми гарантуємо валідність фіду та надаємо сертифіковану технічну підтримку. Маємо понад 7 років досвіду та 150+ проєктів на Бітрікс. Вартість налаштування — від 5000 до 25000 грн залежно від складності каталогу, економія від автоматизації — до 30% витрат на ручне управління.
Налаштування YML-вивантаження 1С-Бітрікс під ключ
Кастомний профіль генерує фід у 2-3 рази швидше за стандартний для каталогів 30 000 товарів, вирішуючи критичні проблеми.
Чому стандартне YML-вивантаження не підходить для великих каталогів?
Стандартний профіль експорту (Магазин → Налаштування → Експорт каталогу) генерує простий YML, але має кілька критичних обмежень:
- Торгові пропозиції. Якщо товар має SKU (інфоблок торгових пропозицій), то
створюється для кожної варіації, а береться з назви пропозиції, а не з основного товару. У результаті замість «Кросівки Nike Air Max» ви отримуєте «Кросівки Nike Air Max — Білий, 42». Для Яндекс.Маркета це допустимо, але для ряду агрегаторів — ні. - Множинні фото. Стандартний експорт бере тільки DETAIL_PICTURE. Додаткові зображення з властивості MORE_PHOTO потрібно явно підключати в налаштуваннях профілю. Кожне фото — окремий тег
, і якщо цього не зробити, фід міститиме лише одну картинку на товар. - Фільтрація за залишками. Немає можливості вивантажувати лише товари з позитивним залишком. Вивантажуються всі активні елементи. Деактивувати товари без залишку — погана ідея (страждає SEO). Єдиний вихід — доопрацьовувати профіль.
- Спецсимволи. Символи &, <, > в описах ламають XML. Стандартний профіль екранує їх, але якщо у властивостях інфоблоку є «сирий» HTML — фід може стати невалідним. Перевірка через xmllint або онлайн-валідатор YML обов'язкова.
Як ми налаштовуємо YML-вивантаження: кастомний профіль
Ми не редагуємо /bitrix/modules/catalog/load/yandex_run.php напряму — зміни зітруться при оновленні. Замість цього копіюємо файл у /bitrix/php_interface/include/catalog_export/, даємо нове ім'я та реєструємо як кастомний профіль.
Типові доопрацювання:
- Фільтр за залишками. Додаємо в arFilter умову >CATALOG_QUANTITY => 0. Для мультискладовості використовуємо CCatalogStoreProduct::getQuantity.
- Свій формат
. Формуємо назву як «Бренд + Модель + Ключова властивість» замість стандартного NAME. -
для знижок. Стандартний профіль не вивантажує закреслену ціну. Підставляємо значення з іншого типу ціни (наприклад, «Роздрібна до знижки»). -
. Тег з умовами доставки для Яндекс.Маркета. Генеруємо на основі налаштувань модуля «Доставка». - <sales_notes>. Примітка для покупця (до 50 символів), наприклад, «Мінімальна сума замовлення: 1000 грн.».
| Характеристика | Стандартний профіль | Кастомний профіль |
|---|---|---|
| Фільтрація за залишком | Ні | Так |
| Вивантаження додаткових фото | Тільки основне | Всі з MORE_PHOTO |
| Ні | Так | |
| Ні | Так | |
| Кастомний формат назви | Ні | Так |
| Продуктивність для 50 000+ товарів | Падає | Оптимізована (покрокова генерація) |
Кастомний профіль вирішує всі перелічені проблеми та забезпечує валідність фіду. За нашими вимірами, швидкість генерації для каталогу в 30 000 товарів збільшується у 2–3 рази за рахунок оптимізації запитів.
Як пришвидшити генерацію YML для 50 000 товарів?
Для каталогів понад 50 000 позицій стандартна генерація може тривати 3–5 хвилин і часто падає за таймаутом. Рішення — покрокова генерація з розбивкою на частини по N елементів за ітерацію. Ми використовуємо агенти Бітрікс, які запускаються кожні 30–60 секунд і обробляють по 1000 товарів за крок. Це дозволяє вкластися в max_execution_time і не навантажувати сервер.
Cron-задача для фонової генерації:
*/30 * * * * /usr/bin/php /var/www/bitrix/modules/catalog/load/yandex_run.php PROFILE_ID Або через агент у налаштуваннях профілю — опція «Періодичний експорт». Інтервал — 30–60 хвилин для більшості магазинів.
Підтримувані теги YML: name, price, oldprice, enable_auto_discount, delivery-options, pickup-options, store, manufacturer_warranty, country_of_origin, barcode, param, sales_notes, description, picture, vendor, vendorCode, model, typePrefix, cpc, adult, age, dimensions, weight, downloadable, rec.
Процес роботи
- Аналітика — вивчаємо поточний каталог, структуру інфоблоків, типи цін, наявність торгових пропозицій.
- Проєктування — погоджуємо список тегів і формат вивантаження з вимогами майданчиків.
- Реалізація — створюємо кастомний профіль, додаємо фільтри, теги, налаштовуємо теговане кешування.
- Тестування — перевіряємо валідність через xmllint, тестуємо на майданчиках-пісочницях.
- Деплой — налаштовуємо cron/агент, підключаємо моніторинг (перевірка дати оновлення файлу).
Строки
| Етап | Час |
|---|---|
| Базове налаштування стандартного профілю | 30 хв |
| Кастомний профіль з фільтрацією та доп. тегами | 3–5 год |
| Профіль + cron + моніторинг валідності | 1 день |
Орієнтовна вартість: базовий профіль — від 5000 грн, кастомний — від 15000 грн. Економія від автоматизації — до 30% витрат на ручне управління каталогом.
Що входить у роботу
- Повністю налаштований YML-фід з потрібними тегами.
- Кастомний профіль експорту з фільтрацією та форматуванням.
- Підключення автоматичної генерації (cron/агент).
- Моніторинг валідності та дати оновлення.
- Документація по профілю та інструкція для вашого адміністратора.
- 2 тижні підтримки після запуску (виправлення помилок, доопрацювання тегів).
Отримайте консультацію з налаштування YML-вивантаження — оцінимо ваш проєкт за один день. Замовте налаштування під ключ — строки від 1 дня.
Економія на усуненні помилок може бути значною, а правильна архітектура фіду дозволяє уникнути значних втрат щомісяця через неконсистентність даних.







