Обмен данными

Импорт материалов из CSV

Шаблон материалов из семи колонок: почему единицу измерения надо завести заранее, почему артикул сверяется со всем каталогом и что в отчёте об ошибках.

Светлана Золотенкова Автор: Светлана Золотенкова Обновлено: 28 июля 2026 г.

Список сырья и комплектующих почти всегда уже где-то лежит: в закупочной таблице, в выгрузке из бухгалтерии, в прайсе поставщика. Заводить его в системе по одной карточке не нужно — материалы загружаются файлом.

Загрузка занимает минуту, а вот подготовка файла требует одной проверки заранее. С неё и начнём, потому что именно на ней спотыкается большинство первых импортов.

Сначала заведите единицы измерения

Единица измерения при импорте не создаётся автоматически. Если в файле стоит кг, а в справочнике единиц такой записи нет, строка не заедет. Вы получите ошибку:

Единица измерения «кг» не найдена. Заведите её в Настройки → Единицы измерения

Так ведёт себя только единица. Категория, наоборот, создаётся сама: написали в файле «Фурнитура», такой категории нет — система заведёт её и привяжет материал.

Поэтому порядок действий такой: сначала откройте «Настройки» → «Единицы измерения» и заведите все единицы, которые встречаются в вашем файле, — метры, килограммы, штуки, литры. Потом загружайте материалы. Иначе первый импорт отклонит половину строк, и разбираться придётся построчно.

Названия сверяются без учёта регистра: КГ, Кг и кг — одна и та же единица.

Где начать загрузку

Откройте меню пользователя, выберите «Настройки», вкладку «Импорт данных», найдите плитку «Добавить материалы». На ней две кнопки, и нажимать их надо в этом порядке: сначала «Скачать шаблон», потом «Загрузить данные».

Собирать файл с нуля не стоит. Число колонок жёсткое — ровно семь. Файл с шестью или восемью колонками система не разберёт и отобьёт целиком, ещё до разбора строк.

Колонки шаблона

Шаблон приходит с заголовком и одной строкой-примером:

Пример материала;MAT-001;Сырьё;кг;Поставщик ООО;120,50;false

Колонка Что в неё писать
«Название» название материала; единственная обязательная колонка
«Артикул» код позиции; проверяется на уникальность по всему каталогу
«Категория» группа для фильтров; если такой нет, создастся автоматически
«Единица измерения» название из справочника единиц; должна существовать заранее
«Поставщик по умолчанию» название поставщика из справочника
«Закупочная цена» число; запятая как разделитель дробной части допустима
«Учёт партий» да или нет

Обязательная колонка одна — «Название». Остальные можно оставить пустыми: строка Бязь суровая;;;;;; — валидная запись, материал заедет с одним названием.

Лишние пробелы по краям значений система убирает сама.

Скачанный шаблон импорта материалов, открытый в таблице: семь колонок и заполненные строки с примерами данных
Правьте скачанный шаблон, а не собирайте файл заново: заголовок в нём уже верный.

Как заполнять три неочевидные колонки

«Закупочная цена» принимает и точку, и запятую: 120.50 и 120,50 — одно и то же число. Пробелы-разделители разрядов не годятся — 1 200,50 не разберётся. Цена попадает в карточку материала как закупочная и как начальная себестоимость.

«Учёт партий» понимает да, нет, true, false, 1, 0, yes, no, y, n в любом регистре. Любое другое слово — ошибка строки. Если колонку оставить пустой, система возьмёт значение из настроек: «Настройки» → «По умолчанию для новых позиций», блок «Материалы», группа «Отслеживание».

«Поставщик по умолчанию» ищется по названию среди уже заведённых поставщиков. Не нашёлся — строка всё равно заедет, но без поставщика, и в отчёте появится предупреждение. Загрузите поставщиков до материалов, если хотите привязать их сразу.

Что происходит после нажатия «Загрузить данные»

Предпросмотра нет: строки уходят в базу сразу. Под плиткой появляется полоса результата:

Импорт завершён · 42 принято · 3 отклонено

Полоса зелёная, если замечаний нет, и жёлтая, если есть хотя бы одна ошибка или предупреждение. В жёлтой появляется ссылка «Скачать отчёт об ошибках (CSV)».

Зелёная полоса результата импорта материалов с текстом «Импорт завершён · N принято · 0 отклонено»
Зелёная полоса означает, что замечаний нет ни по одной строке.

Сами сообщения на экране не выводятся — они лежат в отчёте. Скачивайте его, иначе вы увидите только счётчики.

Файл приходит как materials-import-report.csv с тремя колонками: «Строка», «Уровень», «Сообщение». В колонке «Уровень» стоит ошибка или предупреждение.

Номера строк считаются вместе с заголовком. Заголовок — строка 1, первая запись — строка 2. «Строка 4» из отчёта — это третья запись вашего файла.

Жёлтая полоса результата импорта материалов с отклонёнными строками и ссылкой «Скачать отчёт об ошибках (CSV)»
Жёлтая полоса и ссылка на отчёт: разбирать причины надо в скачанном файле.

Ошибка и предупреждение — это разные вещи

Ошибка отбрасывает строку. Предупреждение пропускает её вперёд.

Импорт всегда частичный: одна плохая строка не отменяет остальные. Принятые материалы уже в каталоге, отклонённые — нет. Поэтому «отклонено 3» не значит, что заливать надо весь файл заново: достаточно исправить три строки и загрузить только их.

Ошибки, из-за которых строка не заедет:

  • «Колонка «Название» пустая — название материала обязательно» — единственное обязательное поле не заполнено.
  • «Материал с SKU «MAT-001» уже существует» — артикул занят.
  • «Единица измерения «кг» не найдена. Заведите её в Настройки → Единицы измерения» — единицы нет в справочнике.
  • «Некорректное число в «Закупочная цена»: «1 200,50»» — в цену попал пробел, буква или второй разделитель.
  • «Учёт партий»: ожидается true/false, получено «может быть»» — в колонке слово, которого система не знает.
  • «Ожидается 7 колонок, получено 8» — в строке лишняя точка с запятой. Чаще всего она приезжает внутри названия.

Предупреждение одно, и оно не мешает строке заехать:

  • «Поставщик «Ткани Севера» не найден — материал принят без поставщика».

Артикул уникален по всему каталогу

Проверка на дубль идёт не только по материалам. Артикул сверяется со всеми позициями каталога, включая товары и их варианты. Если SKU-100 уже стоит у варианта товара, материал с таким же артикулом не заедет — вы получите «Материал с SKU «SKU-100» уже существует».

Отсюда практическое следствие: не используйте для материалов ту же схему артикулов, что и для товаров, иначе половина файла упадёт на пересечениях.

Строки без артикула дублями не считаются. Загрузите такой файл дважды — получите два одинаковых материала.

Разделитель и кодировка

Два требования, из-за которых чаще всего «ничего не загрузилось»:

  • разделитель — точка с запятой (;), не запятая и не табуляция;
  • кодировка — UTF-8.

Файл в кодировке Windows отвергается целиком, ещё до разбора строк:

Файл не в кодировке UTF-8. Сохраните CSV как UTF-8.

Файл с запятыми вместо точек с запятой читается как одна колонка и отбивается сообщением «Ожидается 7 колонок в заголовке, получено 1».

В Excel лечится так: «Сохранить как» → «CSV UTF-8», затем проверьте, что разделителем в файле стала точка с запятой. В российской локали Excel обычно ставит именно её.

Куда смотреть после импорта

Откройте «Каталог», вкладку «Материалы». Загруженные позиции лежат там же, где заведённые руками, и сразу доступны в рецептах и закупках.

Проверьте два-три материала выборочно: единицу измерения, категорию и закупочную цену. Что ещё есть в карточке, разбирает статья «Как завести материал».

Краевые случаи

Пустой файл или файл только с заголовком. Ошибки не будет: система вернёт «Импорт завершён · 0 принято · 0 отклонено». Полностью пустые строки в середине файла она тоже молча пропускает.

Артикул с ведущим нулём. Excel съедает ноль и превращает 0100 в 100. Задайте колонке текстовый формат до того, как вставлять в неё артикулы.

Повторная загрузка того же файла. Строки с артикулами уйдут в отклонённые по дублю, строки без артикулов заведутся ещё раз.

Категория создалась, а строка упала. Так бывает: категория заводится раньше, чем система проверяет остальные поля. Отката нет, лишнюю категорию удалите руками в «Настройки» → «Категории».

Все материалы заехали как покупные. Это не сбой: материал в системе всегда можно купить и нельзя изготовить, отдельной колонки для этого в шаблоне нет.

Чего импорт материалов не делает

  • Не обновляет существующие материалы. Дубль по артикулу отклоняется, карточка остаётся прежней. Правки вносите руками.
  • Не создаёт единицы измерения. Их надо завести заранее.
  • Не откатывается. Отменить уже выполненный импорт одной кнопкой нельзя.
  • Не загружает минимальный запас, точку повторного заказа, срок поставки и минимальную партию заказа. Колонок для них в шаблоне нет, хотя описание плитки упоминает точку повторного заказа. Эти поля заполняются в карточке материала, вкладка «Пополнение».
  • Не читает XLSX и XLS. Только CSV.

Смотрите также:

Помогла ли статья?