К содержимому
Все материалы

Обновление цен в CRM по прайсу поставщика: что проверить до записи

Стабильный код товара, нужный тип цены и отчёт изменений важнее команды «обновить всё». Разбираем безопасный порядок настройки обмена.

Редакция AkmeloО продукте и работе с данными
Карточка прайса соединена с каталогом товаров через промежуточный лист проверяемых измененийИзображение недоступно

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

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

Один товар должен находиться одним способом

Надёжный ключ живёт дольше названия. Если поставщик переименовал «Фильтр салона» в «Фильтр салонный», это ещё не новый товар. Если два производителя используют одинаковый короткий артикул, это ещё не одна позиция.

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

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

Разведите закупочную и продажную цену

Слово «Цена» в прайсе не описывает вашу коммерческую политику. В документе может быть базовая стоимость, персональная скидка, цена за упаковку или предложение на определённый объём. В CRM при этом могут существовать закупочная цена, розничная и несколько типов цен для покупателей.

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

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

Сначала сформируйте список изменений

Ниже учебный пример. Суммы условные, CRM-1042 и другие коды служат только для иллюстрации сопоставления.

Позиция Сейчас в целевом поле Из прайса Действие до записи
CRM-1042 1 200 ₽ 1 260 ₽ Проверить основание, затем обновить
CRM-1043 850 ₽ Пусто Оставить прежнее, уточнить источник
Не найдено соответствие Нет 490 ₽ Не создавать карточку автоматически
CRM-1044 3 100 ₽ 31 ₽ Проверить единицу продажи и исходную строку

Резкое отклонение само по себе не доказывает ошибку: поставщик мог действительно изменить условия. Поэтому порог изменения лучше использовать как повод для подтверждения. Значение порога и возможность исключений зависят от товара и вашего процесса.

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

Запись и повторное чтение решают разные задачи

Успешная подготовка выгрузки означает, что данные готовы к передаче. Ответ получателя об успешном запросе означает, что он обработал конкретное обращение по своему контракту. Ни одно из этих событий не заменяет проверку конечных значений в CRM.

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

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

Какую часть можно подготовить в Akmelo

Akmelo позволяет получить данные с сайта или из проверенного почтового вложения, обработать их сценарием и настроить схему выгрузки. CSV, JSON, XML и другие доступные способы передачи выбираются под возможности получателя. Настройка полей выгрузки помогает отделить внутренние названия от структуры, которую ждёт интеграция.

Для «1С-Битрикс: Управление сайтом» есть отдельный установочный модуль Akmelo. Он рассчитан на обычные товары, один выбранный тип цены и общий остаток; особенности торговых предложений и складских документов требуют отдельной настройки или адаптера. Это не обещание готового подключения к любой установке и не коннектор Битрикс24 CRM.

У Битрикс24 есть собственный метод изменения цены, которому нужны идентификатор цены, сумма, валюта и необходимые права. Наличие такого метода подтверждает возможность отдельной интеграции, но не означает, что она уже настроена в вашем Akmelo.

Практический первый этап выглядит скромно: один поставщик, одно поле цены, ограниченный набор товаров и проверяемый отчёт изменений. Когда повторный запуск, пропуски и ошибки перестали быть сюрпризом, можно увеличивать объём и отдельно решать, какие изменения разрешено проводить без участия сотрудника.