Elbuz завантажує в базовий каталог файл будь-якої структури — XML, YML, CSV, XLS чи XLSX. Ви один раз показуєте, яка колонка чи тег відповідає якому полю товару, і далі файли того самого вигляду вантажаться за цією розміткою.
Коли це знадобиться:
- Прайс постачальника у власному форматі — наступний файл вантажиться за збереженою розміткою.
- Каталог з іншої системи пласкою таблицею — дерево розділів будується з колонки зі шляхом категорії.
- Назви колонок незнайомі — «Аналізувати файл» показує, що у файлі є, а AI пропонує розмітку.
- Постачальник переписує назви товарів — власний ключ упізнає товар за кодом, і дублів не з'являється.
З чого почати: відкрийте шаблон «Универсальный импорт» і розмітьте колонки свого файлу.
Що вміє універсальний імпорт
- Розмітка колонок — ви вказуєте, з якої колонки чи тегу брати кожне поле товару, і вона зберігається в шаблоні.
- Підказки — «Аналізувати файл» показує колонки й теги файлу, AI пропонує готову розмітку.
- Категорії — за ID з блоку категорій або за текстовим шляхом «Розділ / Підрозділ».
- Власний ключ — товар упізнається за кодом постачальника, хоч би як змінилася назва.
- Журнал прогону — видно, скільки рядків прочитано й де зупинилося завантаження.
- Одиниці виміру — «шт.» і «штук» з різних файлів зводяться в одну одиницю довідника.
Де це і хто має доступ
- Меню
- Довідники → Операції → Завантаження даних
- Інші входи
- рядок «Универсальный импорт» у списку шаблонів — вікно розмітки
- Право доступу
- вікно «Завантаження» у «Правах груп»
- Підготувати
- файл XML, YML, CSV, XLS чи XLSX або посилання на нього
Коли брати універсальний імпорт, а не готовий шаблон
Універсальний імпорт беруть, коли готового шаблону під ваш файл немає. Готові шаблони — XML/YML, CommerceML (1С), XLSX (Prom/EVO) — розраховані на стандартну структуру: назви колонок і вузлів у них наперед відомі. Якщо файл стандартний, простіше взяти готовий шаблон: там колонки вже розмічені.
Універсальний потрібен для нестандартного файлу: саморобне вивантаження з чужої системи обліку, прайс постачальника у своєму форматі, XML із довільними назвами вузлів. Один раз розмітили — далі файл того самого формату вантажиться за цим шаблоном. Порівняння всіх способів завантаження: який спосіб обрати.
Формати: XML та YML, CSV, XLS і XLSX. Файл можна завантажити з комп'ютера або дати посилання, за яким Elbuz забиратиме його сам. Формат ви обираєте в шаблоні: у таблиці (CSV/XLSX) дані лежать по колонках, у XML — по вузлах.
1
Рядок універсального шаблону імпорту- Рядок «Универсальный импорт» — шаблон типу «Універсальний» для файлів XML, CSV, XLS.
Як розмітити колонки файлу
Розмітка — це таблиця відповідностей: ліворуч поле картки Elbuz, праворуч — джерело у файлі. Для кожного потрібного поля вкажіть, звідки брати значення:
- для таблиці (CSV, XLS, XLSX) — колонку файлу (за назвою заголовка чи номером);
- для XML — вузол або атрибут (наприклад,
price,vendor,@id), а також вузол товару — повторюваний елемент, що відповідає одному товару (наприклад,//offer).
Незіставлені поля програма не заповнює й не чіпає — розмічайте лише те, що є у файлі. Розмітка зберігається в шаблоні кнопкою «Зберегти налаштування»; змінити відповідність можна будь-коли, поправивши потрібний рядок.
1
Рядок розмітки: поле каталогу ↔ джерело2
Вибір формату файлу- Рядок розмітки зіставляє поле каталогу Elbuz (ліворуч) з тегом або колонкою джерела (праворуч).
- Формат файлу визначає, як система читає джерело — XML, CSV, XLS чи XLSX.
Що можна зіставити
Зіставити можна будь-яке поле картки товару, що є колонкою в сітці товарів: назву, ціну, артикул, кількість, наявність, виробника, опис, вагу й габарити, штрихкод, meta-поля й ваші додаткові поля. Службові поля (внутрішні ідентифікатори, дати, системні прапорці) заповнює сама програма. Окремими блоками розмічають:
- Категорію — за ідентифікатором з файлу або за повним шляхом (категорії).
- Характеристики — окрема секція для атрибутів товару; її поле «Одиниця» шукається в довіднику одиниць виміру (одиниці виміру).
- Фото — окреме поле для посилань на зображення.
Що буде з порожніми значеннями
- Порожнє значення заповненого не затирає. Якщо поле зіставлено, а в рядку файлу воно порожнє, у картці лишається попереднє значення.
- Кількість — виняток. Зіставлена порожня або нульова кількість робить товар «Немає на складі». Якщо кількість не зіставлено взагалі, товар дістає статус «В наявності».
- Рядок без назви відкидається цілком. Без «Найменування» з рядка в каталог не потрапляє нічого.
Як не вгадувати назви колонок: аналіз файлу, AI і пресети
«Аналізувати файл» читає ваш файл і показує знайдені теги та колонки підказками в полях розмітки — залишається обрати потрібні зі списку. З XML і CSV він бере перші 512 КБ (XLS і XLSX читаються цілком), проходить не більше 50 вузлів товару в XML, а в таблиці читає рядок заголовків. У каталозі після цього не змінюється нічого.
«Заповнити за допомогою AI» пропонує готову відповідність: програма сама здогадується, де назва, де ціна, де артикул, а ви перевіряєте й правите. У запит іде зразок файлу: для XML — перший вузол товару, обрізаний до 8000 символів; для CSV та XLS — перші шість рядків, кожне значення вкорочене до 120 символів.
- Початок або кінець
- Дія або результат
- Розвилка: далі шлях залежить від відповіді
Для типових джерел є пресети — збережені набори відповідностей, які підставляють розмітку одним кліком.
Пресет, AI і JSON замінюють розмітку, а не доповнюють:
- вибір пресета замінює розмітку цілком, разом із форматом файлу й налаштуваннями джерела;
- «Заповнити за допомогою AI» замінює цілком блок полів товару, а також блоки фото, характеристик, категорій і тегів — ті, на які AI дав відповідь. Поля, які ви зіставили руками, а AI не знайшов, зникнуть. Формат файлу й налаштування джерела беруться з форми;
- кнопка «Застосувати до форми» на вкладці «JSON (розширено)» замінює розмітку тим, що написано в редакторі.
Порядок, який зберігає роботу: спершу пресет або AI, потім ручні правки, і тільки потім «Зберегти налаштування».
Як завантажити категорії: за ID або за шляхом
Категорії у файлі бувають двох видів:
- Блок категорій з ідентифікаторами (як у YML) — Elbuz будує дерево за ним, а товар прив'язує за його categoryId. Такий блок є лише для XML.
- Текстовий шлях у рядку товару («Побутова техніка / Кухня / Чайники») — Elbuz розбирає шлях і створює вкладеність розділів сам. Це спосіб для пласких таблиць без окремого класифікатора.
Розділи з файлу — звичайні розділи каталогу: увімкнені, потрапляють у вивантаження, у картці розділу видно, яким шаблоном його створено. Повторне завантаження дублів не плодить, але перейменування переживає по-різному:
- розділ, створений за текстовим шляхом, шукається за парою «батьківський розділ + назва». Перейменували його у себе — наступний прогін створить поруч новий розділ зі старою назвою;
- розділ, створений за ID з блоку категорій, шукається за ID і перейменування переживе. Але назву з файлу прогін щоразу записує назад.
Товари, у яких категорію не вказано або не розпізнано, лягають у службовий розділ «Товари - universal» — вимкнений і без вивантаження. Не порожній після прогону — сигнал поправити розмітку категорій. Як перенести звідти товари й чому не можна видаляти розділ разом із ними: службові категорії.
- Початок або кінець
- Розвилка: далі шлях залежить від відповіді
Як Elbuz упізнає товар і як задати власний ключ
Окремого поля «ключ» у переліку полів немає: упізнавання вбудоване й працює у два кроки. Спершу Elbuz шукає картку з таким самим ID товару (рядок UUID) — якщо ви передаєте його з файлу. Якщо такого поля в розмітці немає, він шукає за зв'язкою трьох полів: «Артикул виробника» + «Найменування» + «Зовнішнє посилання». Регістр і зайві пробіли не враховуються.
- Початок або кінець
- Розвилка: далі шлях залежить від відповіді
Звідси два наслідки, через які найчастіше й зʼявляються дублі:
- якщо в наступному файлі змінилася назва того самого товару («Чайник біл.» → «Чайник білий») — зв'язка вже не збігається, і замість оновлення зʼявиться друга картка;
- якщо у файлі два різні товари з однаковою назвою й однаковим (або порожнім) артикулом — перше завантаження заведе дві картки, а далі оновлюватиметься лише одна з них.
Надійніше задати власний ключ. На вкладці «JSON (розширено)» допишіть у розділ product рядок "uuid": {"from": "Код"}, де «Код» — колонка або тег зі стабільним ідентифікатором товару в джерелі (до 80 символів), і натисніть «Застосувати до форми». Тоді товар упізнається за цим значенням, а саме значення наступні прогони не перезаписують.
1
Розділ product2
Застосувати до форми- Розділ product — сюди дописують новий ключ з ідентифікатором.
- Кнопка «Застосувати до форми» переносить зміни з JSON у таблицю відповідності.
Як запустити завантаження й перевірити результат
Запускайте кнопкою «Завантажити» у шапці вікна шаблону. Джерело файлу визначає відкрита вкладка над розміткою: «Локальний файл» — піде файл, який ви щойно обрали; «Зовнішнє посилання» — Elbuz забере файл за адресою з поля посилання. Прогін бере розмітку з екрана, навіть незбережену.
Кнопка «Завантажити» в переліку шаблонів і значок ▶ у його рядку нічого не завантажують: журнал напише «Завантаження даних завершено!», але жодного товару не з'явиться. Розкладу в цього шаблону немає. Запускайте завантаження з вікна самого шаблону.
Перший запуск робіть на невеликому файлі й перевірте кілька карток очима: чи правильно розклалися назви, ціни, категорії. Переконались — тоді вантажте повний файл.
Перемикач «Активний / Вимкнений» у шапці вікна впливає лише на груповий запуск «Завантажити всі шаблони» (вимкнути чи видалити). Видалити універсальний шаблон не можна — це системний рядок.
- Початок або кінець
- Дія або результат
- Розвилка: далі шлях залежить від відповіді
Що показує журнал прогону
Журнал відкривається в бічній панелі «Сповіщення та операції», вкладка «Активні», і не зникає, якщо закрити вікно шаблону:
- «Читання файлу (XML)» — у дужках формат із розмітки. Не той формат — зупиняйтеся одразу;
- «Збережено товарів: N» — після кожної пачки у 2000 рядків;
- «Фінальна обробка каталогу (націнки, сортування, індексація)…» — файл дочитано;
- «Усього оброблено товарів: N», далі «Завантаження даних завершено!» і «Витрачено часу».
Обидва числа в журналі — це рядки, прочитані з файлу, а не картки в каталозі. Рядок без назви відкидається вже після підрахунку. «Усього оброблено товарів: 4000» при порожньому каталозі означає, що поле «Найменування» не зіставлене.
Кожен прогін окремим рядком видно в «Історії запусків» (значок у шапці вікна шаблону), а картки цього шаблону — у базовому каталозі за колонками «Джерело: назва», «Джерело: код» і «Джерело: ID». Детальніше: як перевірити, що завантаження пройшло. Рядки журналу зберігаються 14 днів, картки операцій — 90.
1
Підсумки за період2
Рядок запуску- Підсумки за період — кількість запусків, середня та найдовша тривалість, запуски з помилками.
- Рядок запуску — початок, стан, джерело, час виконання, користувач і підсумок одного завантаження.
Що буде з каталогом при наступних прогонах
Загальна механіка повторного завантаження однакова для всіх шаблонів і описана в огляді: що перезапише повторний прогін. Нижче — що особливого в універсального.
Товар зник із файлу
Універсальне завантаження не вимикає, не обнуляє й не видаляє картки, яких у новому файлі не стало: галочки «Видаляти записи…» в цього шаблону немає. Детальніше: товар зник із джерела.
Галочка «Категорії з файлу — єдина правда» в секції «Категорії» прибирає у товарів із файлу лише ті розділи, яких у файлі немає. Товари, яких у файлі немає, вона не чіпає. Застарілі позиції знайдіть у базовому каталозі: відбір за «Джерело: назва», сортування за «Дата оновлення» — давня дата означає, що товар у файлах більше не приходить.
Чому товар не оновився
Картку з ознакою «Не оновлювати» універсальне завантаження не чіпає, а з «Фіксована ціна» — не змінює її ціну. Фото імпорт додає лише новим товарам. Детальніше: як закріпити своє значення.
Якщо той самий товар приносять два шаблони, лишається значення останнього прогону; колонки «Джерело» показують того, хто картку створив (два шаблони на той самий товар).
Якщо прогін наплодив зайвих карток
Картки цього шаблону відбирають у базовому каталозі за «Джерело: назва», «Джерело: код» (тут universal) і «Дата додавання». Зайві видаляють — остаточно (якщо завантажили не те). Пари однакових карток зливає вікно «Дублікати каталогу» (пошук і злиття дублікатів). Щоб дублі не поверталися, задайте власний ключ.
Якщо завантаження обірвалося
Дані лягають у каталог пачками по 2000 рядків, тож після обриву в каталозі лишається те, що встигло зберегтися; межу показує останнє «Збережено товарів: N». «Стоп» прогін перевіряє раз на 200 рядків. Повторний запуск безпечний, якщо товар упізнається стабільно (власний ключ). Детальніше: якщо прогін обірвався.
Межі одного прогону
Стелі на кількість рядків немає: файл читається потоково, а на прогін відведено 2 години. Файл, який не доходить на сервер через браузер, вантажте посиланням. Детальніше: межі одного прогону.
Сценарії
Прайс постачальника у своєму форматі
Що увімкнути: таблиця Excel зі стовпцями «Код», «Найменування», «Ціна опт», «Залишок», «Бренд», «Розділ». Розмітка: «Код» → «Артикул виробника», «Найменування» → назва, «Ціна опт» → ціна, «Залишок» → кількість, «Бренд» → виробник, «Розділ» → категорія за шляхом. Той самий «Код» задайте власним ключем: "uuid": {"from": "Код"}.
Що вийде: наступний прайс того самого вигляду вантажиться цією ж розміткою, а позиції впізнаються навіть після того, як постачальник перепише назви.
Прайс постачальника приходить регулярно, а назви в ньому переписуються
Що увімкнути: у розмітці — «Найменування» й інші потрібні поля; на вкладці «JSON (розширено)» у розділі product рядок "uuid": {"from": "Код"} з колонкою стабільного коду постачальника, далі «Застосувати до форми» і «Зберегти налаштування». Ключ задавайте до першого завантаження цього прайсу.
Що вийде: товар упізнається за кодом, хоч би як змінилася назва. Чого не станеться: картки, які цей прайс завів раніше без ключа, за кодом не впізнаються — прогін заведе поруч другі картки.
Перенести каталог із пласкої таблиці іншої системи разом із деревом розділів
Що увімкнути: формат CSV, XLS чи XLSX; у секції «Категорії» — «Шлях категорій у товарі» (колонка з рядком на кшталт Техніка>Кухня>Чайники), «Роздільник рівнів» (типово >) і «Роздільник категорій» (типово |) — якщо товар лежить у кількох розділах.
Що вийде: розділи створюються за шляхом, товар привʼязується до всіх перелічених, а перший шлях стає головним. Повторний прогін бере наявний розділ із тією ж назвою під тим самим батьком. Товари з порожньою колонкою шляху ляжуть у вимкнений «Товари - universal».
Постачальник перекладає товари між розділами, а в каталозі вони лишаються і в старих
Що увімкнути: у секції «Категорії», блок «Заміщення звʼязків», галочку «Категорії з файлу — єдина правда» — і тільки для повного файлу.
Що вийде: у товарів із файлу лишаються рівно ті розділи, які вказані у файлі; інші звʼязки прибираються, зокрема проставлені вручну. Без галочки нові розділи лише додаються. Самі розділи не видаляються — зникають лише звʼязки товарів із ними.
Прийшов незнайомий файл, і назви колонок не хочеться вгадувати
Що увімкнути: оберіть файл на вкладці «Локальний файл», натисніть «Аналізувати файл», за потреби — «Заповнити за допомогою AI»; для XML спершу перевірте поле «Вузол товару».
Що вийде: знайдені колонки чи теги стають підказками в полях розмітки, AI заповнює рядки полів товару. Чого не станеться: AI не доповнює вашу розмітку, а замінює рядки полів товару — дописаний власний ключ uuid зникне, тож ключ дописуйте після AI.
Що робити, коли завантаження не вдалося
| Що ви бачите | Чому так | Що зробити |
|---|---|---|
| «Не задано відповідність полів (mapping_config)» | Розмітка порожня або JSON зіпсовано правкою | Відкрийте вкладку «Відповідність полів» і зіставте хоча б назву та ціну (як розмітити) |
| «Не той формат файлу. Для цього шаблону потрібен: .xml, .yml, .csv, .xls, .xlsx» | Розширення обраного файлу не з цього переліку | Перезбережіть файл у потрібному форматі; перейменувати розширення недостатньо |
| «Файл не вдалося передати на сервер. Можливо, він завеликий або звʼязок обірвався. Код помилки» | Файл не доїхав на сервер, розбір навіть не починався | Покладіть файл за посиланням і вантажте з вкладки «Зовнішнє посилання» (межі прогону) |
| «Читання XLS/XLSX недоступне: не підключено бібліотеку OpenSpout» | На цій установці немає читалки таблиць Excel | Збережіть файл як CSV і зіставте розділювач, або зверніться в підтримку |
| «У файлі не знайдено вузол товару. Перевірте поле "Вузол товару"» | У полі «Вузол товару» стоїть тег, якого у файлі немає | Натисніть «Аналізувати файл» і подивіться, які теги в ньому є насправді |
| З XML завантажилися не ті дані | Вузлом товару вказано не той повторюваний елемент | Вкажіть вузол, який у файлі йде по одному на товар (як розмітити) |
| Кирилиця в назвах «поламалася» | Файл не в тому кодуванні | Перезбережіть файл у UTF-8 |
| Колонки CSV прочиталися неправильно | Роздільник у шаблоні не такий, як у файлі | Вкажіть кому, крапку з комою чи табуляцію — як у файлі |
| «AI не повернув відповідь. Перевірте, що AI-помічник підключений» | AI не підключено або це демо-тариф, де він вимкнений | Зіставте поля вручну — розмітка від цього нічого не втрачає (підказки) |
| «AI не зміг зіставити жодного поля» | Модель відповіла, але жодного поля не впізнала; форма не змінилася | Натисніть «Аналізувати файл» і зіставте поля вручну |
| У журналі «Усього оброблено товарів» — тисячі, а в каталозі порожньо | Не зіставлено «Найменування»: рядки без назви відкидаються після підрахунку | Додайте поле «Назва» в розмітку й повторіть прогін (журнал прогону) |
| Запустили з переліку шаблонів — «Завантаження даних завершено!», а товарів немає | Універсальний шаблон із переліку не запускається | Відкрийте шаблон і натисніть «Завантажити» в його вікні (запуск) |
| Після повторного завантаження з'явилися дублі | Змінилася назва, артикул або посилання товару у файлі, а власного ключа немає | Задайте власний ключ (упізнавання товару), зайві картки приберіть (зайві картки) |
| Після завантаження товари опинилися в розділі «Товари - universal» | Для цих рядків категорію не вказано або не розпізнано | Перевірте розмітку категорій і перенесіть товари (категорії) |
Часті запитання
Чи треба розмічати файл щоразу?
Ні. Розмітка зберігається в шаблоні, і наступний файл того самого формату вантажиться за нею — досить один раз налаштувати відповідності.
Які формати підтримуються?
XML, YML, CSV, XLS і XLSX. Файл можна завантажити з комп'ютера або вказати посиланням — тоді Elbuz забере його сам, коли ви натиснете «Завантажити».
Чи можна запускати універсальний імпорт за розкладом?
Ні. Розкладу в цього шаблону немає, запуск лише вручну — кнопкою «Завантажити» у вікні шаблону (запуск).
Чи можна скасувати завантаження одним кліком?
Ні, кнопки «відкотити» немає. Наслідки розбирають відбором у базовому каталозі за джерелом і датою (зайві картки).
Чи збере імпорт варіанти товару в родину за характеристиками?
Ні. Пошук товарів-опцій під час універсального завантаження вимкнено; звʼязки варіантів робляться окремо.
Постачальник пише «шт.», інший — «штук». Можна, щоб це була одна одиниця виміру?
Так: у довіднику «Одиниці виміру» впишіть друге написання в колонку «Назва синонім» (синоніми одиниць).
Суміжні теми
- Якщо треба порівняти способи завантаження й зрозуміти, що перезапише повторний прогін, — Огляд завантаження даних.
- Якщо у файлах різне написання одиниць виміру — Одиниці виміру: синоніми й коефіцієнт.
- Якщо файл — стандартний YML-фід — Імпорт каталогу з XML / YML.
- Якщо в каталозі вже є дублі — Пошук і злиття дублікатів.

