ИИ-агент для опта: цена по объёму, дилерский уровень, остаток на складе, отсрочка и документы, прайс в таблице или 1С, каталог в CRM.
В оптовой переписке первой идёт цена от объёма. ИИ-агент считает её по прайсу с дилерскими уровнями, сверяет остаток таблицей или запросом в 1С, называет условия по минимальной партии и отсрочке из инструкции и передаёт менеджеру то, что требует личной договорённости: скидку сверх уровня, документы, спецификацию.
Партия в двести единиц, и первым же сообщением звучит дилерская цена. Розничный покупатель спрашивает, сколько стоит одна штука. Закупщик сразу называет объём и хочет вилку, наличие и срок отгрузки в одном сообщении, будто прайс у него уже открыт на соседней вкладке.
Разница между двумя переписками в том, какие данные нужны для ответа: остаток под этот объём, уровень скидки, отсрочка платежа.
Оптовый вопрос почти всегда пакетный: объём, от которого считается цена, наличие на складе под этот объём, дилерский уровень клиента, отсрочка платежа и способ отгрузки — самовывоз или доставка. Отвечать по одному пункту за раз неудобно обеим сторонам: пока считается цена, важно сразу видеть остаток и условия по счёту.
Минимальная партия обычно прописана в прайсе отдельной колонкой или общим правилом в инструкции агента. Цена от объёма — это несколько цифр на позицию: розница, опт от N единиц, отдельная ставка для дилера. Уровень клиента логичнее держать полем сделки или тегом в CRM, чем спрашивать заново в каждом диалоге.
| Что спрашивают | Розничный покупатель | Закупщик |
|---|---|---|
| Цена | за одну штуку | от объёма партии |
| Наличие | есть ли товар | хватит ли на всю партию |
| Оплата | сразу | отсрочка, счёт на юрлицо |
| Документы | чек | спецификация, накладные |
| Получение | самовывоз рядом | доставка партией |
Проверьте на своих диалогах.Регистрация без карты, 500 ₽ на тест по промокоду BLOG500
Собрать агентаПрайс с ценами по уровням и актуальный остаток, это данные со строгой структурой и точным ключом (артикул, модель), а не связный текст. Правило из чек-листа платформы простое: точный поиск по значению — таблицы, смысловой поиск по формулировке — база знаний.
Загружается такой прайс тремя способами: CSV в кодировке UTF-8 с разделителем-запятой, файл Excel или подключённая Google-таблица с доступом «Читатель» или «Редактор». Частота обновления Google-таблицы задаётся в минутах, по умолчанию 1440, то есть раз в сутки, и есть кнопка ручного обновления в любой момент.
Ставить обновление чаще 30 минут не рекомендуется. Каждое обновление скачивает таблицу целиком, и при большом файле частые запросы создают нагрузку на аккаунт Google вплоть до ограничения доступа к нему. Для остатков, которые меняются в течение дня, надёжнее кнопка ручного обновления по факту отгрузки, а не таймер на пять минут.
Когда клиент называет товар не так, как в прайсе (например, «трубу на сорок вторую», а не точное наименование позиции), работает смысловой поиск по колонке, и дальше действует то же устройство, что в таблицах с прайсом: по артикулу и модели поиск строгий, по формулировке услуги или товара — мягче, с допуском на разные слова одного смысла.
Когда склад живёт прямо в 1С и в таблицу не выгружается, агент получает остаток запросом к ней напрямую: на стороне 1С публикуется веб-сервис, а в агенте настраивается действие «Вебхук», которое обращается к нужному методу по артикулу или номеру заказа.
Для настройки нужны три вещи: URL метода вместе с описанием того, какой запрос он принимает, список заголовков и способ авторизации, который может отсутствовать вовсе. Если есть возможность влиять на проектирование метода со стороны 1С, стоит заложить в нём поддержку POST-запросов: так проще передавать объём партии и артикул за один вызов. Настройка действия и авторизация по шагам лежат в статье про интеграцию с 1С.
Если карточки товаров уже заведены в CRM, агенту не обязателен отдельный прайс-файл. В amoCRM включается поиск по каталогу товаров, и за него отвечает функция amo_product_search_in_catalog(): агент получает данные о товаре напрямую из карточки, а лимит на число результатов задаётся в настройке канала. В RetailCRM то же самое устроено через клиентскую базу: заказы, их статусы и товары видны в одном окне, что удобно для повторных оптовых закупок у постоянного клиента через агента в RetailCRM.
Дилерский уровень и договорные условия в обоих случаях логичнее хранить полем сделки или тегом, а не переспрашивать: агент подставляет нужную ставку, ориентируясь на уже сохранённый статус клиента, а не на его собственные слова о скидке.
Агент различает их по форме запроса. Розничный вопрос почти всегда про одну позицию и её цену. Оптовый сразу называет объём, спрашивает дилерскую цену или упоминает отсрочку — и это сигнал переключиться на другую ветку инструкции: цена по уровню, остаток под весь объём, условия отгрузки.
Файл со спецификацией или прайсом агент может прислать сам: отправка файлов клиенту работает как часть структурированных ответов, но это функция подписки «Интегратор». На остальных подписках агент называет условия текстом, а сам документ передаёт менеджер — рабочий обход простой и не требует переделки диалога.
Заведите прайс с уровнями цен и остатком в отдельную таблицу до того, как настраивать логику диалога — без неё агенту нечего показывать при первом же вопросе о партии. Дальше добавляется дилерский уровень полем в CRM, а уже потом — вебхук в 1С, если остатки живут там, и функция отправки файлов, если она нужна и подписка это позволяет.
Начать стоит с одной оптовой переписки за прошлую неделю: посчитайте, сколько раз в ней звучало «а от какого объёма другая цена» и сколько раз ответ на этот вопрос требовал открыть три разных документа.
По прайсу с дилерскими уровнями: розница, опт от определённого объёма, отдельная ставка для дилера. Уровень клиента хранится полем сделки или тегом в CRM, а сама цена ищется в таблице по модели или артикулу.
Использовать смысловой поиск по колонке: он ищет строки, близкие по смыслу запросу, а не по точной формулировке. Для артикула или модели, наоборот, нужен точный поиск: совпадение важнее скорости.
Да, если остатки живут именно там: на стороне 1С публикуется веб-сервис, а агент обращается к нему действием «Вебхук» по URL метода, с нужными заголовками и способом авторизации.
Отправка файлов клиенту доступна как часть структурированных ответов, и это функция подписки «Интегратор». На остальных подписках агент даёт информацию текстом, а файл присылает менеджер.
По умолчанию раз в 1440 минут, то есть раз в сутки, с кнопкой ручного обновления в любой момент. Чаще 30 минут ставить не рекомендуется: каждое обновление скачивает таблицу целиком, и частые запросы создают нагрузку на аккаунт Google.
По форме запроса, а не по обращению: розничный вопрос про одну позицию и её цену, оптовый сразу называет объём и просит дилерские условия. В инструкции для второго случая прописан переход к отсрочке, документам и подтверждению менеджером.
Хотите сразу к продукту: Конструктор чат-ботов для CRM-системы