Служба поддержки в WhatsApp с ИИ-ассистентом

Обновлено

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

wapi.kz — не конструктор ботов, а канал. Вебхуки доставляют входящие сообщения вашей программе, API отправляет ответы, MCP-сервер даёт ИИ-агенту инструменты для WhatsApp. Думает модель, которую выбираете вы, — Claude, ChatGPT или другая — с вашей базой знаний и правилами. Номер остаётся на телефоне, поэтому человек в любой момент видит переписку и может ответить сам.

Пример сообщений клиенту
Здравствуйте! Я ИИ-помощник магазина. Доставка по Алматы бесплатна от 15 000 ₸, привезём завтра. Оформить заказ или позвать менеджера?
Заказ №48213 сегодня у курьера, он приедет с 14:00 до 18:00. Если нужно перенести — напишите удобное время, я передам.
С этим вопросом лучше поможет менеджер — я передал ему переписку. Он ответит здесь же в рабочее время, с 9:00 до 19:00.

Сценарии

Типовые вопросы

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

Статус заказа или записи

«Где мой заказ?» — ассистент берёт телефон из входящего сообщения, находит заказ в вашей системе и отвечает статусом. Искать нужно только по номеру, с которого пишут: чужие заказы бот показывать не должен.

Сбор заявки

Клиенту нужно то, что требует человека: расчёт, подбор, выезд мастера. Ассистент задаёт два-три уточняющих вопроса, создаёт лид в CRM с кратким пересказом и говорит, кто и когда продолжит.

Передача человеку

Клиент просит менеджера, недоволен, спрашивает о деньгах и возвратах — или ассистент не уверен в ответе. Бот честно говорит, что передал вопрос, отправляет уведомление в рабочий чат, например в Telegram, и больше не отвечает в этом чате. Менеджер пишет с телефона или из WhatsApp Web.

Ночью и в выходные

Вне рабочего времени ассистент закрывает типовое, а на остальное говорит, когда ответят люди. Утром менеджер видит, что осталось без ответа.

Как подключить

Вебхуки и свой обработчик — основной способ для круглосуточной поддержки. Событие message приходит на ваш адрес, обработчик сразу отвечает 200, проверяет, не ведёт ли чат человек, получает ответ модели и отправляет его через POST /messages/send:

JavaScript
const API = "https://wapi.kz/api/v1";
const H = { Authorization: `Bearer ${process.env.WAPI_KEY}`, "Content-Type": "application/json" };

app.post("/whatsapp/webhook", express.json(), async (req, res) => {
  if (req.query.token !== process.env.WAPI_HOOK_TOKEN) return res.sendStatus(403);
  res.sendStatus(200); // ответить сразу, думать — после
  const e = req.body;
  if (e.event !== "message" || !e.payload.from.endsWith("@c.us")) return;
  const client = e.payload.from.split("@")[0];
  const from = e.wapi.number_id;

  // человек писал в этот чат за последний час — бот молчит
  const q = new URLSearchParams({ from: String(from), chat: client, limit: "20" });
  const { messages } = await (await fetch(`${API}/messages?${q}`, { headers: H })).json();
  const hourAgo = Date.now() - 60 * 60 * 1000;
  if (messages.some((m) => m.source === "phone" && Date.parse(m.created_at) > hourAgo)) return;

  let text;
  if (e.payload.hasMedia) { // файл: GET /messages/{e.wapi.message_id} → media.url; здесь для простоты — человеку
    await notifyManager(client); // ваша функция: сообщение в рабочий чат
    text = "Вижу вложение, но открыть его не могу — передал менеджеру, он ответит здесь.";
  } else {
    text = await askAssistant(client, e.payload.body); // ваша функция: запрос к модели с базой знаний
  }
  await fetch(`${API}/messages/send`, { method: "POST", headers: H, body: JSON.stringify({ to: client, text, from }) });
});

То же без кода собирается в n8n: узел Webhook, запрос к модели и HTTP Request к wapi.kz. Подробный разбор — в гайде ИИ-бот для WhatsApp.

MCP подходит, когда агент работает по запросу. Подключите wapi.kz к Claude Code и попросите: «разбери новые сообщения и ответь на типовые» — агент сам вызовет get_messages и send_message:

bash
claude mcp add --transport http wapi https://wapi.kz/api/mcp \
  --header "Authorization: Bearer <API_KEY>"

В другие клиенты добавьте HTTP MCP-сервер по их инструкции: адрес https://wapi.kz/api/mcp и заголовок Authorization: Bearer <API_KEY>. Сообщения агента попадают в историю с source: "mcp". Подробнее — в документации MCP и гайде ИИ-агент через MCP. Код пишет ваш разработчик, а типовую связку можно заказать заявкой из кабинета.

Что важно учесть

  • Человек всегда может перехватить. Когда менеджер пишет с телефона, приходит событие message.out, а в истории — source: "phone". Бот должен замолчать в этом чате, иначе клиент получит два разных ответа.
  • Бот не обещает того, чего нет. Скидки, сроки, возвраты, наличие — только из вашей базы знаний или системы. Нет ответа — «уточню у менеджера», а не догадка. До запуска проверьте ассистента на реальных вопросах из истории чатов.
  • Честно представляться. В первом ответе ассистент говорит, что он ИИ-помощник, и как позвать человека.
  • Вложения и голосовые — отдельная ветка. Входящие файлы сохраняются сами: через несколько секунд после вебхука ссылка на файл появится в media.url сообщения GET /messages/{id}. Голосовое можно расшифровать и ответить, фото — передать модели, которая понимает картинки. С чем бот не справится — скан, документ, неясное фото, — передавайте человеку, как в примере выше.
  • Не теряйте сообщения. Отвечайте на вебхук кодом 200 за 10 секунд, а ответ модели готовьте после. Повторной отправки нет: если сервер был недоступен, заберите пропущенное через GET /messages?since=…. Подписи у запросов нет — проверяйте секрет в адресе.
  • Один ответ — одно сообщение. С номера уходит не больше 1 сообщения в секунду, а ответ до 4096 символов лучше отправить целиком, чем пятью кусками.
  • Данные уходят модели. Текст клиента обработчик передаёт провайдеру модели, а его серверы, как правило, за пределами Казахстана. Не отправляйте модели лишнего, особенно документы и медицинские сведения. Журнал сообщений wapi.kz хранится в Казахстане, хранение текстов можно выключить. Это не юридическая консультация — уточните у юриста.
  • Бот отвечает, а не рассылает. Поддержка — это ответы тем, кто написал сам, и такие диалоги повышают индекс доверия номера. Но риск блокировки не нулевой: гарантий нет ни у кого.

Сколько стоит

9 900 ₸ в месяц за номер, без платы за сообщения, запросы к API и вебхуки. Запросы к модели оплачиваются отдельно — её провайдеру по его тарифам. Баланс пополняется через Kaspi или по счёту на ТОО/ИП. Подробнее — на странице цен, API-ключ — после регистрации.

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

Есть ли у wapi.kz готовый бот?

Нет, конструктора ботов у нас нет. wapi.kz доставляет сообщения и отправляет ответы, а логику и модель выбираете вы. Типовую связку можно заказать заявкой из кабинета.

Какую модель выбрать?

Любую, к которой есть API: Claude, ChatGPT или другую. wapi.kz от модели не зависит — обработчику всё равно, кто сформулировал ответ.

Как бот поймёт, что в разговор вступил человек?

По событию message.out в вебхуке или по source: "phone" в истории чата. Правило простое: человек недавно отвечал — бот молчит.

Может ли бот написать клиенту первым?

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

Подходит ли MCP для круглосуточного бота?

MCP вызывает сам агент, пока он работает. Для мгновенных ответов в любое время нужен обработчик вебхуков, а MCP удобен, когда агент разбирает сообщения по запросу или по расписанию.

Подключите WhatsApp к своим системам

9 900 ₸ в месяц за номер, без платы за сообщения. Сервер в Казахстане, оплата Kaspi или счётом на ТОО/ИП. Подключение — около 5 минут.

Гайды по теме

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