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

Обновление прайс-листов импортом CSV

Единственный импорт, который обновляет существующие данные. В файле не цены, а одна из пяти формул, и список ошибок виден только во всплывающем окне.

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

Пересмотр цен — работа сезонная и массовая: подняли ставку на опте, поменяли скидку одному клиенту, пересчитали наценку по сотне позиций. Кликать это в карточке прайс-листа долго.

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

Что именно грузится

Важно с самого начала: в файле нет цен в рублях. Прайс-лист в системе хранит не цену, а формулу, по которой цена считается от базовой цены продажи или от себестоимости варианта. Файл задаёт как раз формулу — метод и его значение.

Пять методов, те же, что в карточке прайс-листа:

В файле Как называется в интерфейсе Как считается цена
FIXED «Фикс-цена» ровно указанное число
PERCENTAGE «Скидка % от цены продажи» цена продажи минус процент
MARKUP «Наценка % от цены продажи (базовой)» цена продажи плюс процент
MARKUP_FROM_COST «Наценка % от себестоимости» себестоимость плюс процент
FIXED_DELTA «±₽ от цены продажи» цена продажи плюс указанные рубли

В файл пишется левая колонка — латиницей. Регистр не важен, percentage и PERCENTAGE равнозначны. Русские названия из интерфейса система не понимает: любое другое слово даёт ошибку с перечислением допустимых.

Что означает каждый метод и когда какой брать, разбирает статья «Методы цены в прайс-листе».

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

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

Колонок ровно шесть.

Не берите за шаблон выгрузку из списка прайс-листов

Кнопка «Экспорт» в списке «Продажи» → «Прайс-листы» отдаёт другой файл — сводку по прайс-листам с колонками «Название», «Тип», «Статус», «Позиций», «Покупателей». Это отчёт для человека, для загрузки он не годится: колонки не те и позиций в нём нет вовсе.

Шаблон для импорта берётся только кнопкой «Скачать шаблон» на самой плитке. Он приходит с одной строкой-примером, в которую подставлены название существующего прайс-листа и первый вариант с артикулом из вашего каталога.

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

Базовый;SKU-001;Пример товара;default;PERCENTAGE;10

Колонка Что в неё писать
«Прайс-лист» название существующего прайс-листа; обязательна
«Код варианта» артикул варианта; обязательна
«Название товара» система эту колонку не читает
«Название варианта» система эту колонку не читает
«Тип корректировки» один из пяти методов латиницей; обязательна
«Значение» число; обязательна

Строка опознаётся по паре «Прайс-лист» + «Код варианта». Две колонки с названиями существуют только для того, кто правит файл глазами: система их не сверяет. Название товара в файле может быть каким угодно — цена всё равно уедет на тот вариант, чей артикул стоит в колонке «Код варианта».

В колонке «Значение» принимается и точка, и запятая: 10.5 и 10,5 — одно число.

Прайс-лист должен существовать

Импорт не создаёт прайс-листы. Название сверяется точно, целиком:

Прайс-лист «Оптовый 2026» не найден

Заведите прайс-лист заранее в «Продажи» → «Прайс-листы», потом грузите позиции. Лишний пробел или другой регистр в названии — это уже другой прайс-лист, и строка отклонится.

Вариант тоже должен быть заведён:

Вариант с артикулом «SKU-001» не найден

Добавлено, обновлено, пропущено

Каждая строка попадает в один из трёх исходов:

  • добавлено — такой позиции в прайс-листе не было, она создана;
  • обновлено — позиция была, метод или значение отличались, они заменены;
  • пропущено — позиция была ровно с таким же методом и таким же значением, менять нечего.

«Пропущено» здесь означает «уже так и было», а не «строку не удалось применить». Загрузили файл дважды — первый раз увидите «добавлено», второй раз ровно то же число в «пропущено». Это нормально.

Результат показывается всплывающим окном

Тут интерфейс отличается от остальных плиток. У прайс-листов нет полосы результата под плиткой и нет CSV-отчёта об ошибках. Вместо них появляется всплывающее сообщение:

Прайс-листы обновлены

Добавлено 42, обновлено 18, пропущено 5, ошибок 0.

Если ошибки есть, заголовок меняется на «Импорт завершён с ошибками», и прямо в сообщении перечисляются первые пять с номерами строк:

Стр. 7: Прайс-лист «Оптовый 2026» не найден

Больше пяти — остальные сворачиваются в строку «…и ещё N». Такое сообщение не гаснет само, пока вы его не закроете, — именно чтобы вы успели прочитать список.

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

Номера строк считаются вместе с заголовком: заголовок — строка 1, первая запись — строка 2.

Где смотреть результат

Откройте «Продажи» → «Прайс-листы», зайдите в нужный прайс-лист, вкладка «Цены на продукцию». Там же виден пересчитанный итог по каждой строке.

Вкладка «Цены на продукцию» прайс-листа с обновлёнными методами корректировки и пересчитанными ценами
После загрузки метод и значение заменены, итоговая цена пересчитана сразу.

Новые цены начинают действовать в заказах тех покупателей, к которым привязан этот прайс-лист. Как работает привязка, разбирает статья «Прайс-листы под клиента».

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

Загрузка не удаляет позиции. В файле нет строки — значит, позиция просто осталась как была. Чтобы убрать позицию из прайс-листа, удалите её в карточке.

Дат начала и окончания в файле нет. Изменения применяются сразу, отложить их на будущую дату импортом нельзя.

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

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

Проверьте выборочно две-три позиции после массовой правки цен. Ошибка в колонке «Тип корректировки» не всегда даёт отказ: перепутанные PERCENTAGE и MARKUP — оба валидны, но одна формула скидывает, а другая накидывает. Система такую подмену поймать не может.

Пустой файл или файл только с заголовком ошибки не даёт, счётчики будут нулевыми.

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

  • разделитель — точка с запятой (;), не запятая;
  • кодировка — UTF-8, иначе «Файл не в кодировке UTF-8. Сохраните CSV как UTF-8.».

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

  • Не создаёт прайс-листы. Только наполняет существующие.
  • Не создаёт товары и варианты.
  • Не удаляет позиции из прайс-листа.
  • Не задаёт срок действия цены и не привязывает покупателей.
  • Не отдаёт CSV-отчёт об ошибках — список показывается во всплывающем сообщении и только там.
  • Не читает XLSX и XLS. Только CSV.

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

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