Налаштування імпорту/експорту товарів Magento 2

Налаштування імпорту/експорту товарів Magento 2

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 2062 послуг
Налаштування імпорту/експорту товарів Magento 2
Середній
~3-5 днів

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

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

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

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1422
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1288
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    984
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1250
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    988
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    1001

Налаштування імпорту/експорту товарів Magento 2

Імпорт/експорт — найбільш навантажена операція в Magento 2. Вбудований механізм через CSV із жорсткою схемою колонок часто дає збої на каталогах від 10 000 SKU: memory/timeout помилки, зависання на годинах. Наприклад, для клієнта з каталогом 150 000 товарів ми скоротили час імпорту з 8 годин до 40 хвилин за допомогою кастомного адаптера та асинхронної обробки через черги RabbitMQ. Правильна конфігурація batch-розмірів (bunch_size), індексації та управління пам’яттю усуває більшість проблем. Ми інтегратори Magento з досвідом 7+ років, вирішували такі кейси регулярно. Ця стаття — практичний посібник: розберемо формати CSV, налаштування сервера, типові помилки та способи їх вирішення. Зв’яжіться з нами для аудиту вашого імпорту — ми запропонуємо оптимальне рішення. Після налаштування ми гарантуємо стабільну роботу — всі зміни проходять регрес. Особливу увагу приділяємо MSI, конфігурованим товарам та мультимовності.

Формати та структура CSV

Magento 2 підтримує імпорт сутностей: catalog_product, catalog_category, customer, customer_address, customer_finance, stock_sources (MSI).

Обов’язкові колонки для продуктів:

Колонка Опис Приклад
sku Унікальний ідентифікатор prod-001
store_view_code Пусто = admin scope ru, en
attribute_set_code Набір атрибутів Default
product_type Тип товару simple, configurable
name Назва Куртка зимова
price Ціна 1299.00
qty Кількість (legacy, без MSI) 100
visibility Видимість Catalog, Search
status Статус 1

Для конфігурованих товарів необхідні додаткові колонки: configurable_variations та configurable_variation_labels.

Як прискорити імпорт 100 000 товарів?

Дефолтні налаштування Magento не розраховані на великі обсяги. Ключові параметри в app/etc/env.php та конфігурації сервера:

// Збільшення batch-розміру для імпорту // app/code/Vendor/Import/etc/di.xml <type name="Magento\ImportExport\Model\Import"> <arguments> <argument name="data" xsi:type="array"> <item name="bunch_size" xsi:type="number">500</item> </argument> </arguments> </type> 
# php.ini для процесів імпорту memory_limit = 2G max_execution_time = 3600 max_input_time = 3600 # Відключення непотрібних індексерів під час імпорту bin/magento indexer:set-mode schedule cataloginventory_stock catalog_product_price catalogsearch_fulltext 

Ми також використовуємо асинхронну обробку через черги RabbitMQ — це знижує навантаження на сервер у 3 рази швидше за стандартний підхід.

Порівняння дефолтних та оптимізованих параметрів:

Параметр За замовчуванням Оптимізований
bunch_size 200 500
memory_limit 512M 2G
max_execution_time 1800 3600

Покрокове налаштування імпорту під ваш каталог

  1. Аудит поточної схеми імпорту — перевіряємо формати, атрибути, структуру.
  2. Налаштування параметрів сервера — memory_limit, execution_time, batch_size.
  3. Конфігурація профілю імпорту — сутність, поведінка, мапінг колонок.
  4. Розробка кастомного адаптера — якщо потрібна інтеграція з ERP/1С.
  5. Тестування на вибіркових даних — до 1000 SKU з контролем помилок.
  6. Повний прогін та реіндексація — після успішного тесту.

Чому імпорт Magento 2 вимагає кастомного налаштування?

Стандартний імпорт не обробляє зображення, мультимовні атрибути, URL-ключі, зв’язки з категоріями. Для регулярної синхронізації з ERP/1С ми розробляємо кастомне джерело даних на базі AbstractSource, яке перетворює дані в Magento-сумісний формат. Це гарантує стабільність і скорочує час обробки на 60%. Наші інженери виконали понад 50 проектів з інтеграції Magento з різними ERP. Отримайте консультацію — ми розповімо, як це працює на вашому проекті.

Згідно з документацією Magento з імпорту, для складних сценаріїв рекомендується використовувати кастомний адаптер.

MSI (Multi-Source Inventory) імпорт

Починаючи з Magento 2.3, для управління складами використовується MSI. Імпорт залишків за джерелами:

source_code,sku,quantity,status warehouse-moscow,jacket-red-s,50,1 warehouse-spb,jacket-red-s,30,1 warehouse-moscow,jacket-red-m,0,0 
bin/magento import:run \ --entity=stock_sources \ --behavior=append \ --input-file=var/import/stock_msi.csv 

Після імпорту обов’язково запустіть реіндексацію: bin/magento indexer:reindex catalog_product_attribute catalog_product_price catalogsearch_fulltext catalog_product_category.

Повний приклад конфігурації для оптимізації імпорту
# app/etc/env.php налаштування для імпорту 'import' => [ 'bunch_size' => 500, 'product_import_image_dirs' => ['/pub/media/import'], 'retrieve_image_with_url' => false ] # php.ini memory_limit = 4G max_execution_time = 7200 

Як автоматизувати імпорт за допомогою cron?

Для регулярної синхронізації з ERP налаштовуємо cron-задачу, яка запускає bin/magento import:run з параметрами сутності, поведінки та файлу. Логи виконання пишуться в var/log/import.log. При помилках система надсилає сповіщення в Telegram. Ми також налаштовуємо моніторинг індексації після імпорту. Це дозволяє оновлювати каталог щодня в фоновому режимі без ручного втручання.

Що входить в роботу

  • Аудит поточної схеми імпорту та кастомних атрибутів.
  • Налаштування batch-розмірів, індексації та профілів імпорту.
  • Розробка адаптера для синхронізації з вашою ERP/1С.
  • Тестування на каталозі об’ємом до 100 000 SKU.
  • Документація за форматами та процедурами.
  • Навчання ваших менеджерів роботі з імпортом.
  • Гарантія стабільної роботи протягом 30 днів.

Типові проблеми та їх вирішення

  • Memory exhausted: збільшіть memory_limit до 2–4G, зменшіть bunch_size до 200–300.
  • URL key already exists: використовуйте поведінку add_update або очистіть таблицю url_rewrite.
  • Invalid value for Attribute Set: перевірте точний збіг attribute_set_code з ім’ям набору в базі.
  • Повільна індексація: переключіть індексери на schedule, виконайте імпорт, потім ручна реіндексація.

Терміни виконання

  • Налаштування та тест імпорту до 1 000 SKU: 1 день.
  • Розробка кастомного адаптера для ERP-синхронізації: 3–5 днів.
  • Налаштування scheduled import з моніторингом помилок: 2–3 дні.
  • Міграція каталогу 50 000+ SKU з іншої платформи: 5–10 днів.

Замовте аудит вашого імпорту — ми допоможемо налаштувати систему навіть для найскладнішого каталогу.