NeoGraph.tech

Как подключить чат-бота к SberCRM: схема и сценарии

Как подключить чат-бота к SberCRM: архитектура, типовые сценарии, метрики качества и стоимость реализации. Пошаговая схема.

Автор: · Опубликовано: 06.07.2025 (Обновлено: 17.05.2026)

В статье — проверенная схема подключения чат-ботов к SberCRM для внедрения ИИ в бизнес: как принимать лиды и события, где хранить знания для ответов, как подписывать вебхуки (и что делать, если их нет), как не нарушить 152-ФЗ и с чего начать пилот. В конце — ссылки на официальные страницы SberCRM API/портала разработчика и видео-гайд по настройке интеграций.


1) Архитектура интеграции (обзор)

Задача. Чат-бот должен: (а) получить событие из SberCRM, (б) забрать контекст (регламенты/прайсы), (в) сгенерировать черновик/рекомендацию с цитатами (если используется RAG), (г) записать результат в SberCRM, (д) залогировать метрики.

Компоненты:

  • SberCRM — лиды/сделки/задачи/письма (публичный API и портал разработчика доступны).
  • Integration API — наш бэкенд (Next.js/Node), точки /webhooks/sbercrm и /api/sbercrm.
  • RAG-индекс (опционально) — векторная база (Qdrant) для регламентов/прайсов/политик (для умных чат-ботов с ИИ).
  • Оркестрация — n8n для уведомлений, эскалаций и SLA-таймеров.
  • Мониторинг — логи, метрики (FRT/AHT/конверсия), алерты (Prometheus/Grafana).

Где взять API: на официальной странице API SberCRM и в дайджесте о запуске портала разработчика/публичного API (с указанием, что есть публичный API и маркетплейс интеграций). Смотри раздел «Источники».


2) События из SberCRM: вебхуки и альтернативы

2.1. Вебхуки

Идеальный вариант — вебхуки на ключевые события (новый лид, изменение этапа, новая задача, письмо). Для каждого события на стороне интеграции:

  • проверяем подпись (секрет),
  • валидируем payload (JSON Schema),
  • дебаунсим повторные доставки (idempotency key),
  • кладём событие в очередь обработки.

2.2. Если вебхуков нет/ограничены

Используйте один из вариантов:

  • Polling через API по updated_at/since_id с джиттером и лимитами.
  • iPaaS-коннекторы (Albato и др.) с источником Webhooks и действиями SberCRM (поддерживаются сценарии интеграции).
  • Формы сайтов → входящие интеграции SberCRM (есть видео-гайд по настройке входа/отладки).

На практике SberCRM активно развивает API и портал разработчика; если вебхуки недоступны для нужного объекта, начинайте с polling + iPaaS-коннектора для критичных событий (см. «Источники»).


3) Мэппинг полей (базовый)

Сущность Поле SberCRM (пример) Наше поле Примечание
Lead id, created_at, status_id, source, assigned_to leadId, createdAt, stage, channel, owner для SLA по первому ответу
Lead email, phone, company, comment contacts, company, notes маскируем ПДн в логах
Deal id, stage_id, amount, currency, deadline dealId, stage, amount, currency, deadline A/B по этапам
Task id, due_at, text, assignee taskId, dueAt, body, assignee напоминания/эскалации
Message direction, channel, body, template_id channel, draft, template черновики писем с цитатами

4) Примеры интеграции (Node/Next.js)

4.1. Входящий вебхук

// /app/api/webhooks/sbercrm/route.ts
import type { NextRequest } from "next/server";
import { verifySignature, enqueue } from "@/lib/sbercrm";

export async function POST(req: NextRequest) {
 const signature = req.headers.get("x-sbercrm-signature") ?? "";
 const body = await req.text(); // сохраняем сырой текст для подписи
 if (!verifySignature(body, signature, process.env.SBERCRM_WEBHOOK_SECRET!)) {
 return new Response("invalid signature", { status: 401 });
 }
 const event = JSON.parse(body);
 await enqueue("sbercrm.events", event); // idempotency внутри очереди
 return new Response("ok");
}

4.2. Обработка события → черновик ответа

// /jobs/onLeadEvent.ts
import { getLead, updateLead, createMessage } from "@/lib/sbercrm";
import { retrieveContext, draftReply } from "@/lib/agent";

export async function onLeadEvent(evt: any) {
 if (evt.type !== "lead.updated" && evt.type !== "lead.created") return;

 const lead = await getLead(evt.lead_id);
 const ctx = await retrieveContext({ topic: "pricing", locale: "ru", orgId: lead.org_id });
 const draft = await draftReply({ lead, ctx, requireCitations: true });

 await createMessage(lead.id, { 
 channel: "email",
 body: draft.text,
 citations: draft.citations, // ссылки/версии документов
 template_id: draft.templateId
 });

 await updateLead(lead.id, { tags: [...lead.tags, "agent_draft"] });
}

4.3. Падение на polling (если вебхуков нет)

// /cron/sbercrm-poll.ts — запускаем каждые 2–5 мин
import { listLeadsUpdatedSince } from "@/lib/sbercrm";
let cursor = new Date(Date.now() - 2*60*1000).toISOString(); // скользящее окно

export async function poll() {
 const leads = await listLeadsUpdatedSince(cursor);
 for (const lead of leads) {/*...обработка как выше... */}
 cursor = new Date().toISOString();
}

5) Сценарии автоматизации (что даёт эффект)

  1. Первый ответ по лидам (FRT). Черновик письма/сообщения «по регламенту» + быстрый подбор кейсов → −30–40% FRT.
  2. Приоритезация и автоназначение. По продукту/сегменту/сумме и SLA → меньше «забытых» лидов.
  3. Автозадачи по этапам. Перешёл на Offer → задача «Отправить КП», дедлайн + напоминания.
  4. Обогащение карточки. BI/каталоги → маржинальность/остатки/статусы логистики прямо в SberCRM.
  5. Реактивация молчунов. Триггеры no activity N days → персональные шаблоны реактивации.
  6. Рекламации. Авто-шаблоны ответов + чек-лист документов, эскалации по SLA.

6) RAG-поток для ответов «по регламенту»

  • Инжест регламентов/прайсов/политик, хранение версий.
  • Индексация в векторную базу + связи между процессами, ролями, политиками и KPI.
  • Гибридный ретривал (BM25+dense) + rerank; собираем контекст 2–4 фрагмента.
  • Генерация черновика с цитатами (doc_id/страница/версия).
  • Если нет цитат/низкий скор — возвращаем «нет данных».

7) Безопасность, 152-ФЗ и аудит

  • On-prem/частный контур для документов; обезличивание ПДн в логах/корпусе.
  • RBAC/ACL по отделам/каналам; минимизация токенов доступа к API.
  • Логи запросов/ответов, версионирование промптов, idempotency для вебхуков.
  • Ограничение IP-диапазонов и подпись вебхуков (если доступны).

8) Мониторинг и метрики

  • Продуктовые: FRT (медиана), «без ответа >24ч», конверсия по этапам.
  • Тех: доля успешно обработанных событий, ретраи, средняя латентность ответа, ошибки агентов.
  • Экономика: минут/кейс, цена запроса (учёт cached input), ROI пилота (8 недель).

9) Пилот за 8 недель (шаблон плана)

  • 1–2: цели/KPI, доступы к API, прототип вебхуков/пуллинга, индекс v1.
  • 3–4: черновики ответов, приоритезация, A/B на 20–30% очередей.
  • 5–6: тюнинг ретрива/шаблонов, включение напоминаний/эскалаций.
  • 7–8: расширение трафика, замер, ROI, план масштаба.

10) FAQ

Нужны ли вебхуки? Желательно, но можно начать с polling + iPaaS (Albato) и форм-интеграций (есть видео-гайд). Будут ли «галлюцинации»? Мы требуем цитаты и версии документов; без цитаты — «нет данных». Как не нарушить 152-ФЗ? Обезличивание ПДн, on-prem/частный контур документов, шлюз для внешних моделей. Подходит ли для SberCRM? Да: у SberCRM есть публичный API и портал разработчика; детали эндпоинтов/ограничений смотрите в их документации/аккаунте разработчика.


Источники


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

Нужна диагностика процессов или AI-автоматизация?
Бесплатная консультация за 15 минут