Как загрузить товары в интернет-магазин из Excel, CSV и YML
Универсальная инструкция: как превратить файл поставщика, выгрузку Wildberries, Ozon, 1С или старого магазина в каталог на сайте. Какие колонки нужны, как собрать варианты из строк, подтянуть фото по ссылкам и обновлять цены тем же файлом, ничего не сломав.

Чтобы сделать импорт товаров из Excel в интернет-магазин, сохраните таблицу в .xlsx или CSV так, чтобы одна строка была одним товаром или вариантом, а в первой строке стояли заголовки колонок: название, артикул, цена, остаток, категория, ссылки на фото. Затем загрузите файл в мастер импорта, проверьте, как он распознал колонки, и запустите пробный прогон. Он покажет, что изменится, ничего не сохраняя. Каталог из пары тысяч товаров с фото по ссылкам так загружается за вечер, включая подготовку файла.
Коротко:
- Подходят Excel (.xlsx), CSV, YML и XML. Старый .xls пересохраните в .xlsx.
- Заголовки выгрузок 1С, OpenCart, InSales, Tilda, Wildberries и Ozon мастер узнаёт сам.
- Варианты (цвет, размер) собираются из строк с одним названием или кодом модели.
- Фото подтягиваются по ссылкам, уже скачанные второй раз не качаются.
- Повторный импорт того же файла ничего не меняет, поэтому обновлять цены и остатки им безопасно.
Какие форматы понимает импорт товаров
В 100300 CMS импорт находится в Магазин → Импорт и экспорт. Если установлен модуль «Переезд», путь такой: Обмен данными → Импорт и экспорт.
| Формат | Откуда обычно берётся | Что учесть |
|---|---|---|
| Excel .xlsx | Прайс поставщика, ручная таблица, выгрузка маркетплейса | Можно выбрать лист. Штрихкоды не превращаются в «4,6E+12», даты читаются по формату ячейки |
| CSV / TXT | Выгрузка старого магазина, 1С, учётной программы | Кодировку (UTF-8, Windows-1251) и разделитель (; , табуляция) мастер определяет сам |
| YML | Фид для Яндекс Маркета от поставщика или со старого сайта | Предложения с одним group_id становятся вариантами одного товара |
| XML 100300 CMS | Перенос каталога между сайтами на 100300 CMS | Переносит о товаре всё, включая оптовые цены и цены групп |
| Старый .xls | Excel 2003 и старше | Не принимается: откройте и сохраните как .xlsx |
Файлы CommerceML из 1С вручную не загружаются. Их 1С присылает сама по протоколу обмена, и это отдельная настройка, о ней — статья про обмен сайта с 1С. Предел загрузки — 100 МБ, но не больше лимитов PHP на вашем хостинге.
Подготовка файла: какие колонки нужны
Обязательных колонок немного: название и цена. Если в каталоге есть варианты или вы планируете обновлять товары тем же файлом, добавьте артикул. Всё остальное по желанию. Пример таблицы, которую мастер узнает без ручной настройки:
| Название | Артикул | Цена | Старая цена | Остаток | Категории | Опция: Цвет | Характеристика: Материал | Фото |
|---|---|---|---|---|---|---|---|---|
| Плед Nord | PN-GR | 3 490 | 3 990 | 12 | Текстиль > Пледы | Серый | Шерсть | https://…/nord-grey.jpg |
| Плед Nord | PN-BG | 3 490 | нет | Текстиль > Пледы | Бежевый | Шерсть | https://…/nord-beige.jpg | |
| Кружка Fjord | KF-01 | 690 руб. | есть | Посуда | Подарки | Керамика | https://…/fjord-1.jpg | https://…/fjord-2.jpg |
Что важно в колонках:
- Цена читается в любом привычном виде: «1 990», «1990,50», «1 990 руб.», «1990 ₽».
- Остаток — число или слово. «Есть» и «в наличии» значат «в наличии без учёта количества», «нет» и «под заказ» — ноль.
- Категории пишут путём через «>»: «Текстиль > Пледы». Если категорий несколько, их разделяют «|». Недостающие категории мастер создаст сам, если вы разрешите.
- Характеристика: Имя — значение для фильтра каталога. Если характеристики ещё нет, мастер её создаст.
- Опция: Имя — ось вариантов: цвет, размер, объём.
- Оптовые цены пишут лесенкой: «5:790 | 10:750» (от 5 штук по 790, от 10 по 750).
- Цена: Оптовые — цена для группы покупателей с таким названием.
- Вес, г или Вес, кг пригодится для расчёта доставки, «1,5 кг» тоже распознаётся.
- Пустая ячейка ничего не стирает. Исключение — старая цена в строке с ценой: пусто значит «без скидки».
Если таблица от поставщика устроена иначе, переименовывать колонки не обязательно. Мастер понимает обычные русские и английские названия и заголовки выгрузок 1С, OpenCart, InSales, Tilda, Wildberries и Ozon. Неузнанную колонку вы сопоставите вручную в одном списке.
Мастер импорта товаров по шагам

- Файл. Перетащите его в окно. На экране виден лимит размера, есть файлы-примеры.
- Колонки. Мастер сам находит строку заголовков, даже если над ней шапка прайса. Рядом с каждой колонкой показано, во что она пойдёт, с пометкой «авто» и примерами значений. Поправьте то, что распознано неверно. Удачное сопоставление сохраните набором: в следующий раз к файлу того же поставщика оно применится само.
- Настройки. Как узнавать товары: по артикулу, ID, внешнему коду или названию. Режим: добавлять и обновлять, только обновлять или только добавлять. Какие поля обновлять: названия, описания, цены, остатки, категории, фото, SEO. Что делать с товарами, которых нет в файле.
- Пробный прогон. Ничего не записывает и показывает, сколько товаров будет создано, обновлено, пропущено или с ошибками, какие появятся категории, бренды и характеристики, сколько фото скачать, плюс примеры изменений.
- Загрузка. Нажмите «Выполнить импорт», и мастер повторит тот же файл с теми же настройками. Ошибки и предупреждения соберутся в файл errors.csv, первые 200 видны на экране.
Совет из практики: первый раз загрузите 20–30 строк из начала файла. Проверьте на сайте карточку, фильтр и фото, и только потом запускайте весь каталог.
Варианты товаров из строк
Варианты — это когда один товар продаётся в разных цветах или размерах, и у каждого свой артикул, цена, остаток и фото. В таблице поставщика это обычно несколько строк подряд.
Мастер собирает такие строки в один товар по одинаковому ключу. Сначала он смотрит на внешний код товара (код модели, «Код» из 1С), потом на ID, потом на одинаковое название. Различия между строками берутся из колонок «Опция: …». Общие для товара значения (описание, категории) берутся из первой непустой ячейки, фото — из всех строк.
Если у вас наоборот, одна строка на товар, а варианты перечислены через «|» в ячейках, включите режим «Строка на товар». Мастер предложит его сам, если увидит «|» в артикуле. Существующие варианты при повторном импорте узнаются по артикулу или набору опций и сохраняют свои номера. Корзины и заказы покупателей от этого не ломаются.
Как загрузить фото товаров по ссылкам
Положите ссылки на фото в колонку «Фото». Несколько ссылок разделяйте «|», запятой или пробелом, можно и разнести их по нескольким колонкам. Первое фото станет главным. Для фото конкретного варианта есть колонка «Фото варианта».
- Мастер скачивает по четыре фото параллельно, принимает только изображения до 15 МБ.
- Уже скачанные ссылки второй раз не качаются. Повторный импорт не забьёт медиатеку дублями.
- Ссылки на ваш же сайт (
/uploads/…) находятся в медиатеке без скачивания. - Если фото не скачалось, это предупреждение, а не ошибка: товар загрузится без него, ссылка попадёт в отчёт.
Частая проблема — ссылки на облачные диски и маркетплейсы, которые отдают не картинку, а страницу просмотра. Такие ссылки мастер пропустит: нужна прямая ссылка на файл .jpg, .png или .webp. В пробном прогоне видно число фото к скачиванию, и проблему можно заметить до загрузки.
Если товары у поставщика есть только на его сайте и таблицы нет, файл можно не делать: модуль «Парсер товаров» загружает товары прямо с сайтов поставщиков.
Массовая загрузка больших файлов частями
Большой файл не нужно делить руками. Импорт идёт в фоне отрезками по несколько секунд, поэтому не упирается в лимит времени PHP на хостинге. Страницу можно закрыть: задание продолжит планировщик сайта. Импорт можно поставить на паузу, продолжить или остановить из вкладки «История».
Если в какой-то строке товара ошибка (например, в цене стоит текст, который нельзя прочитать как число), товар не записывается целиком, а остальные идут дальше. После загрузки больше тысячи товаров фильтр и поиск перестраиваются сами.
Повторный импорт: обновление цен и остатков
Импорт записывает только то, что изменилось. Если загрузить тот же файл второй раз, ничего не поменяется. Поэтому прайс поставщика можно загружать хоть каждый день:
- Выберите режим «Только обновлять» и узнавание по артикулу.
- В «Что обновлять» оставьте только цены и остатки, чтобы не затереть описания, которые вы правили на сайте.
- Для товаров, которых нет в файле, выберите действие: не трогать, снять с публикации или обнулить остаток. Оно применяется только в выбранной области — категориях или брендах этого поставщика. Товары другого поставщика не пострадают.
- Сохраните сопоставление колонок набором, чтобы в следующий раз пройти мастер за минуту.
Выгрузка товаров в Excel и массовая правка цен
Экспорт — вкладка «Экспорт» там же. Готовые наборы: «Полный каталог» (все колонки, строка на вариант), «Только цены и остатки», «Для Яндекс Маркета» (YML) и «Для поставщика». Можно выгрузить весь каталог или только выбранные категории, бренды и товары в наличии.
Порядок для массовой правки цен: выгрузить «Полный каталог» в Excel, поправить цены формулой, загрузить файл обратно. Заголовки экспорта импорт узнаёт без настройки, а неизменённые строки не трогает. Для простых случаев Excel не нужен: в списке товаров отметьте строки и нажмите «Изменить выбранные». Можно поднять цену на процент с округлением до 10 ₽ или сделать текущую цену зачёркнутой для распродажи.
Для площадок, которые читают фид, есть постоянный адрес /shop/yml.xml. Он обновляется сам, когда меняется каталог, если включить фид в настройках магазина.
Итог
Порядок импорта товаров из Excel: таблица с заголовками, артикул у каждой строки, ссылки на фото, мастер с пробным прогоном, тестовая загрузка 20–30 строк, затем весь каталог. Повторные загрузки обновляют только изменившееся, поэтому прайсы поставщиков можно подливать регулярно.
Ядро 100300 CMS бесплатное, а каталог, импорт и экспорт входят в модуль «Интернет-магазин» (разовая лицензия на домен, есть пробный период). Что ещё есть в магазине, смотрите на странице CMS для интернет-магазина. Короткая инструкция по экрану — в справке «Импорт товаров и обмен с 1С».
Загрузите свой файл в демо-админке без регистрации: Магазин → Импорт и экспорт. Пробный прогон покажет, как мастер поймёт вашу таблицу.


