Автоматичний експорт товарів 1С-Бітрікс у прайс-листи: CSV, Excel, YML

Уявіть: оптовик запитує прайс-лист з артикулами, залишками по складах і фотографіями у форматі XLSX, а стандартне вивантаження Бітрікс видає лише CSV з ID, назвою та ціною. Доводиться правити руками — втрачаєте години, плодяться помилки. З нуля писати вивантаження довго, а стандартні засоби не покри
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Автоматичний експорт товарів 1С-Бітрікс у прайс-листи: CSV, Excel, YML
Простий
~1 день

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

Часті запитання

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

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1415
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    996
  • 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
    735
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    863
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    773
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1134

Уявіть: оптовик запитує прайс-лист з артикулами, залишками по складах і фотографіями у форматі XLSX, а стандартне вивантаження Бітрікс видає лише CSV з ID, назвою та ціною. Доводиться правити руками — втрачаєте години, плодяться помилки. З нуля писати вивантаження довго, а стандартні засоби не покривають специфіку B2B: різні типи цін для оптовиків і роздрібу, умовне форматування, автоматична щоденна генерація. Налаштування вивантаження товарів у прайс-листи 1С-Бітрікс під ключ дозволяє вирішити це завдання без програмування. Економія часу — до 20 годин на місяць, а вартість обслуговування знижується на 30% за рахунок автоматизації. Наприклад, типовий проект коштує від 5000 грн і окупається за 2 місяці. Автоматизація заощаджує до 20 000 грн на місяць на зарплаті менеджера. За 5+ років ми налаштували експорт для 50+ проектів — від простих CSV до складних XLSX з макросами. Ми спеціалізуємося на налаштуванні прайс-листів Бітрікс та експорті каталогу Бітрікс для різних форматів. Ви можете отримати CSV прайс-лист Бітрікс або XLSX Бітрікс з усіма даними. Розкажу, як це робимо під ключ і які рішення реально економлять час.

Типова ситуація: менеджер витрачає щоп'ятниці на ручне формування прайсу з Excel-вивантаження. Результат — застарілі ціни, невірні залишки. Автоматичний експорт на стороні Бітрікс вирішує проблему: задаєте розклад, формати та доступ — і клієнти отримують актуальні файли без вашої участі. Налаштування займає від двох днів, а економія часу — до 20 годин на місяць. Економія коштів: до 20 000 грн/міс.

Які стандартні профілі експорту надає Бітрікс?

Модуль catalog з коробки пропонує кілька профілів: Магазин → Налаштування → Експорт каталогу. Кожен профіль — PHP-файл у /bitrix/modules/catalog/load/.

  • CSV (cat_o_csv.php) — вивантаження з налаштуванням роздільника, полів, кодування. Підходить для Excel, Google Таблиць, 1С.
  • Яндекс.Маркет (YML) (yandex_run.php) — XML у форматі YML. Формально для Яндекс.Маркету, але універсальний товарний фід.
  • CommerceML — XML для обміну з 1С, важкий формат, не для прайс-листів. CommerceML на Wikipedia (Wikipedia).

Налаштування профілю: вибираєте інфоблок, тип ціни, властивості, фільтр за розділами. Результат — файл за URL або на диску.

Чому стандартного CSV недостатньо?

Стандартний CSV дає базовий набір: ID, назва, ціна, розділ. Для реального прайсу потрібні артикул, бренд, залишки по складах, посилання на фото. Кожне поле — окрема доробка. Критично для B2B: різні групи клієнтів бачать різні ціни. Один профіль = один тип ціни. Для трьох груп — три профілі. Кодування вибираємо під систему клієнта: Windows-1251 для 1С, UTF-8 для інших.

Залишки по складах стандартний експорт не вивантажує — потрібен кастомний обробник з викликом CCatalogStoreProduct::GetList(). Це збільшує обсяг даних, але без цього прайс не відображає реальну наявність.

Як ми налаштовуємо кастомний експорт під ваші завдання

Для нестандартних вимог створюємо PHP-файл у /bitrix/php_interface/include/catalog_export/ з двома функціями: налаштування профілю та експорт. При рефакторингу стандартного обробника ми оптимізуємо бізнес-логіку вибірки даних. Типові доробки:

  • Excel-формат (XLSX). Стандартний експорт не генерує XLSX. Підключаємо PhpSpreadsheet через Composer. Формуємо файл з форматуванням: шапка з логотипом, заморожений рядок, автоширина колонок. XLSX краще CSV для звітності, але генерується в 5 разів повільніше. CSV генерується в 5–10 разів швидше за XLSX.
  • Фільтрація за властивостями: тільки товари із залишком > 0, певного бренду, зі знижкою.
  • Кілька типів цін в одному файлі — колонки «Роздрібна», «Оптова від 10 шт.», «Дилерська». Кожна підтягується зі свого типу ціни.
  • Торгові пропозиції в рядках: якщо товар має SKU (розмір, колір), кожна пропозиція — окремий рядок із зазначенням варіанту.

Приклад із практики: нещодавно налаштували вивантаження для оптового дистриб'ютора з 15 000 товарів, п'ятьма типами цін і вимогою XLSX з умовним форматуванням (зелена заливка для товарів у наявності, червона — під замовлення). Вирішили через кастомний обробник на базі PhpSpreadsheet. Генерація одного прайсу — близько 30 секунд при cron-інтервалі 30 хвилин.

Приклад сигнатури кастомного обробника
function CustomExportProfile(array $arProfile, array $arParams): bool { // ваш код експорту } 

Автоматична генерація по cron: покрокова інструкція

  1. У профілі експорту увімкніть «Файл експорту» — вкажіть шлях, наприклад /upload/pricelist/price_opt.csv.
  2. Додайте cron-завдання: */30 * * * * php /var/www/bitrix/modules/catalog/load/cat_o_csv.php PROFILE_ID — оновлення кожні 30 хвилин.
  3. Альтернатива — агент Бітрікс: CCatalog::PreGenerateXML(PROFILE_ID). Працює через cron_events.php.
  4. Перевірте файл за URL та налаштуйте доступ.

Для важких каталогів (50 000+ товарів) генерація CSV займає секунди, Excel — десятки секунд. YML — хвилини. Кастомний обробник може бути в 2 рази швидшим за стандартний для складних форматів. Для великих каталогів YML кращий за CSV, оскільки містить більше даних.

Формат 1000 товарів 10 000 товарів 50 000 товарів
CSV < 1 сек 2–5 сек 10–20 сек
XLSX 2–5 сек 15–30 сек 1–3 хв
YML 1–3 сек 10–30 сек 1–5 хв

Чи можна отримати прайс-лист у форматі Excel?

Так, через кастомний обробник на базі PhpSpreadsheet. Формат XLSX підтримує форматування, макроси та захист аркушів. Але врахуйте: XLSX генерується повільніше за CSV, тому для частих оновлень рекомендуємо CSV.

Вибір формату прайс-листа

CSV — швидкий і легкий, підходить для Excel і 1С. XLSX — з форматуванням, але повільніше. YML — для маркетплейсів. Якщо потрібна сумісність з 1С, вибирайте CSV з кодуванням Windows-1251.

Організація доступу до прайс-листу

Файл лежить у /upload/pricelist/ — публічна директорія. Варіанти обмеження:

  • Пряме посилання — для партнерів вручну.
  • Авторизація через .htaccess (Basic Auth) або PHP-скрипт з перевіркою прав користувача Бітрікс.
  • Токен в URL — /upload/pricelist/price_opt.csv?token=abc123. PHP-обгортка перевіряє токен, прив'язаний до контрагента.

Типові помилки при налаштуванні експорту

  • Неправильне кодування: клієнт відкриває CSV в Excel і бачить кракозябри. Рішення — явно вказувати кодування Windows-1251 для 1С та UTF-8 для сучасних систем.
  • Розбіжність залишків: якщо не налаштувати вивантаження залишків, у прайсі буде 0, хоча на складі товар є. Обов'язково виводити актуальні залишки через CCatalogStoreProduct::GetList().
  • Забувають про торгові пропозиції: якщо товар має SKU, їх потрібно експортувати окремими рядками або об'єднувати в один рядок з варіантами.

Що входить у налаштування під ключ

Ми виконуємо проект за 2–5 днів залежно від складності. Входить:

  • Аналіз вимог (типи цін, формати, доступ).
  • Створення профілів експорту (CSV/YML) або кастомного обробника (XLSX).
  • Налаштування автоматичної генерації (cron/агент).
  • Організація доступу (токени, авторизація).
  • Документація та консультація щодо оновлення.

Гарантуємо стабільну роботу вивантаження. Отримайте актуальний прайс-лист без ручного оновлення. Зв'яжіться з нами, щоб обговорити ваш проект. Замовте налаштування прайс-листів — і ми вирішимо завдання під ключ.