Как массово обновить цены в Битрикс24 из файла

Поставщик прислал новый прайс, а в каталоге Битрикс24 — 450 позиций со старыми ценами. Пока менеджер откроет каждый товар, исправит число и нажмёт «Сохранить», счета уже уйдут клиентам по вчерашним цифрам. Массово это решается файлом: один импорт с новыми ценами — и каталог актуален. Разберём, какой файл собрать, как прогнать его через повторный импорт и не развести в каталоге дубли и мусор.

Почему руками это долго

Ручной сценарий на одну позицию выглядит невинно: найти товар в каталоге, открыть карточку, поменять цену, сохранить. Проблема в масштабе. При 300–500 позициях это вечер монотонной работы, а монотонность — главный источник ошибок: цифры переставлены местами, строка пропущена, значение введено не в то ценовое поле.

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

Как Битрикс24 обновляет товары импортом

Отдельной кнопки «обновить только цены» в Битрикс24 нет — обновление делается тем же механизмом импорта, которым товары загружались изначально. Логика такая: вы загружаете CSV, в мастере импорта указываете поле, по которому искать существующий товар (обычно артикул или ID), и колонки, которые нужно обновить. Товар нашёлся — его поля перезаписываются значениями из файла. Не нашёлся — в зависимости от настроек строка пропускается или создаёт новую позицию.

Первичную загрузку мы разбирали в статье про импорт товаров в Битрикс24, устройство самого каталога — в материале о товарном каталоге Битрикс24. Экраны мастера и подписи пунктов меню портал периодически меняет, поэтому перед загрузкой откройте актуальный мастер в своём Битрикс24 и сверьте сопоставление полей: принцип стабилен, а формулировки плавают.

Мастер импорта Битрикс24: сопоставление колонок файла полям товара
Повторный импорт: колонка с артикулом сопоставлена полю, по которому ищется товар

Какой файл подготовить

Для обновления цен достаточно минимального CSV из двух колонок:

  • Идентификатор товара — поле, по которому мастер ищет позицию: артикул или ID. Он должен совпадать с каталогом до мелочей: лишний пробел, другой регистр или пропущенный дефис — и Битрикс24 товар не найдёт.
  • Новая цена — числом: «1450», а не «1 450 руб.». Разделитель тысяч, валютный суффикс и запятая в дробной части — типовые причины, по которым цена уезжает в каталог текстом или ломает импорт.

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

Из закупочной цены в вашу: наценка и округление

В прайсе поставщика лежит закупка, а в каталог нужна ваша цена. Пересчёт делается в конвертере прайсов для Битрикс24 двумя действиями на колонке цены:

  • «Умножить» — наценка коэффициентом: закупку на 1,25 — и вот цена с наценкой 25%. Как связаны процент наценки и коэффициент, подробно разобрано в статье про наценку на прайс.
  • «Округлить» — до рублей или десятков, чтобы в счетах не мелькали значения вида 1 437,80.

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

Действия «Умножить» и «Округлить» на колонке с закупочной ценой
Наценка коэффициентом и округление — два действия на одной колонке, результат виден в превью

Чистка файла перед импортом

Прайс поставщика — это ещё не файл обновления: в нём шапка с реквизитами, строки-группы с названиями категорий, позиции без цены и «Итого» внизу. В конвертере это снимается по шагам:

  1. На шаге «Структура» укажите, с какой строки начинается таблица, и удалите строки-разделы — многоэтажная шапка схлопнется в одну строку заголовков.
  2. На шаге «Колонки» оставьте только артикул и цену и переименуйте их так, как названы поля в мастере импорта.
  3. Фильтрами отсеките позиции без остатка («остаток больше 0») и строки, где вместо артикула «Итого».

На экспорте выбирайте CSV — конвертер отдаёт файл в UTF-8, который Битрикс24 читает без кракозябр.

Экспорт готового CSV с артикулами и новыми ценами
Готовый файл обновления: артикул и новая цена числом, без служебных строк

Типовые ошибки при обновлении

  • Дубли артикулов в файле. Один артикул встретился дважды с разными ценами — товар обновится несколько раз подряд, и какая цена останется, предсказывать не хочется. Перед загрузкой проверьте файл на повторы.
  • Цена текстом. «1 450 руб.», пробел-тысячи, пустая ячейка — такие значения либо отвергаются, либо записываются непредсказуемо. Чистите цену до голого числа.
  • Артикул не совпал. Поставщик пишет «AB-123», у вас в каталоге «AB123» — строка молча пропустится, и позиция останется со старой ценой. Никакого отчёта об ошибке может и не быть: просто цена не поменялась.
  • Не тот режим импорта. Если мастер настроен на создание новых товаров, а не на обновление существующих, вместо новых цен получите второй каталог из дублей. Режим и сопоставление полей проверяйте до нажатия «Старт».

Частые вопросы

Создаст ли повторный импорт дубликаты товаров?

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

Можно ли обновить цены только у части каталога?

Да. Файл может содержать только те строки, которые меняются: товары, которых в файле нет, останутся с прежними ценами. Удобно, когда поставщик поднял цены на одну категорию из десяти.

Артикулы поставщика не совпадают с моими — что делать?

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

После импорта у части товаров цены не изменились — почему?

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