Как я сделал SaaS CRM прямо в Telegram — без единого веб-интерфейса

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

Я пошёл другим путём: сделал CRM прямо в Telegram, используя топики (темы) супергруппы как колонки Kanban-доски. Никакого веб-интерфейса — только бот.

Идея: Telegram как UI

У Telegram есть функция топиков в супергруппах. Это как каналы внутри группы — каждый топик имеет своё название и изолированный чат. Именно это стало основой архитектуры:

  • Новые
  • В работе
  • Успех
  • Кабинет
  • База знаний

Архитектура

Три независимых процесса

  • API
  • MasterBot
  • CRMBot

Почему три процесса а не один? Каждый компонент имеет разные требования к надёжности и масштабированию. API может перезапуститься не прерывая polling ботов. Master Bot не нужен Redis FSM с теми же настройками что CRM Bot. А также:

  • PostgreSQL
  • Redis

Мультитенантность

Вся система мультитенантная — один инстанс обслуживает множество клиентов.

ForceReply - ввод данных без команд

Одна из главных UX-задач: как получить ввод от менеджера внутри группового чата? Модальных окон в Telegram нет. Решение — ForceReply: бот отправляет сообщение, Telegram автоматически открывает поле ввода с указанием "Ответить на...". Менеджер вводит данные, не покидая чат.

SaaS: подписки и монетизация

Оплата через ЮКасса. Тарифы:

  • Базовый, вкл в себя пробный на 14 дней и ограничениями по заявкам и менеджерам
  • Безлимитный, 1500 р./мес.

Онбординг через Master Bot

Пользователь регистрируется через отдельный Master Bot:

  1. /start → вводит название компании
  2. Выбирает тариф (trial или сразу оплата)
  3. Получает инструкцию: создать супергруппу, добавить CRM бота, написать /setup
  4. /setup в группе — бот(CRMBot) создаёт все топики, привязывает группу к тенанту

Интеграция с Tilda

Tilda присылает form-data с произвольными полями — у каждой формы своя структура. Написал универсальный парсер.

Планы развития

  • Вложения к карточкам — документы и фото прикрепляются к лиду и переезжают вместе с карточкой по топикам
  • Аналитика — графики конверсии, среднее время сделки
  • Webhooks исходящие — уведомлять внешние системы при смене статуса
  • Масштабирование в месенджер MAX, как целевое решение

Итог

Топики супергрупп дают готовую Kanban-доску. ForceReply закрывает потребность в формах. Inline-кнопки заменяют веб-интерфейс для большинства операций.

Менеджеры не устанавливают отдельное приложение — они просто работают в Telegram который у них уже открыт весь день.

1
Начать дискуссию