Запись клиентов — одна из самых востребованных функций для Telegram-ботов. Салоны красоты, медицинские клиники, автосервисы, студии йоги, барбершопы, мастера на дому — всем нужна автоматизация записи. В этой статье подробно разбираем, как устроен бот с записью на услуги: от архитектуры до конкретных технических решений.
Базовая архитектура бота для записи
Схема работы бота
Клиент → Telegram-бот → База данных (расписание) ↔ CRM (опционально)
↓
Уведомления администратору + клиенту
Основные компоненты системы:
- Telegram Bot API — обработка сообщений и кнопок от клиентов
- База данных — хранение расписания, записей, клиентов, мастеров
- Календарная логика — определение свободных слотов, учёт рабочего времени, выходных
- Система напоминаний — отправка уведомлений за 24 часа, за 2 часа до визита
- Админ-панель — интерфейс для администратора (изменение расписания, просмотр записей)
- Интеграция с CRM (опционально) — синхронизация записей с внешней системой
Шаг 1. Проектирование базы данных
База данных — сердце бота. Нужно хранить:
Таблица "Клиенты"
Таблица "Мастера/Сотрудники"
Таблица "Услуги"
Таблица "Записи"
Статусы записи: pending (ожидает), confirmed (подтверждена), completed (выполнена), cancelled (отменена)
Шаг 2. Построение диалога с клиентом
Сценарий записи через бота:
- Клиент нажимает «Записаться на услугу»
- Бот показывает список услуг (стрижка, маникюр, окрашивание...)
- Клиент выбирает услугу
- Бот показывает список мастеров, которые делают эту услугу
- Клиент выбирает мастера (или «Любой свободный»)
- Бот показывает календарь со свободными датами
- Клиент выбирает дату
- Бот показывает свободные временные слоты на эту дату
- Клиент выбирает время
- Бот запрашивает контактные данные (если клиент новый)
- Бот создаёт запись и отправляет подтверждение клиенту и администратору
Пример кода (упрощённо):
Шаг 3. Логика календаря и свободных слотов
Самая сложная часть — определение свободных временных слотов. Нужно учитывать:
- Рабочие часы мастера (например, 10:00-19:00)
- Выходные дни мастера
- Уже занятые слоты (существующие записи)
- Длительность услуги (если стрижка 60 минут, а запись на 14:00, следующий слот — 15:00)
- Перерывы мастера (обед с 13:00 до 14:00)
Алгоритм расчёта свободных слотов:
- Получить рабочие часы мастера на выбранную дату
- Разбить рабочий день на слоты по 30 минут (или другой интервал)
- Получить все существующие записи мастера на эту дату
- Исключить занятые слоты и перерывы
- Вернуть список свободных слотов
Шаг 4. Система напоминаний
Напоминания критичны для снижения «не пришли». Стандартная схема: уведомление за 24 часа и за 2 часа до визита.
Реализация через cron-задачи:
Шаг 5. Админ-панель для управления
Администратору нужен удобный интерфейс для управления записями. Два подхода:
1. Админ-панель в Telegram (команды бота)
- /bookings_today — список записей на сегодня
- /block_slot 14:00 15:00 — заблокировать слот
- /cancel_booking 123 — отменить запись №123
2. Веб-админка (более удобно)
Отдельный веб-интерфейс, где администратор видит расписание в виде таблицы, может перетаскивать записи, редактировать, добавлять вручную. Технологии: React/Vue + API бота.
Шаг 6. Интеграция с CRM
Если у вас уже есть CRM (Yclients, amoCRM, Битрикс24), бот должен синхронизироваться с ней. Обычно через API интеграцию:
- Когда клиент записывается через бота → запись автоматически появляется в CRM
- Когда администратор создаёт запись в CRM → она отображается в боте
- Изменения расписания в CRM синхронизируются с ботом
Пример интеграции с Yclients:
Шаг 7. Безопасность и 152-ФЗ
Бот собирает персональные данные (имена, телефоны, даты визитов). Обязательные меры:
- Шифрование данных в базе (или хранение на зашифрованных дисках)
- Согласие на обработку ПД при первой записи (галочка «Я согласен с политикой конфиденциальности»)
- Возможность удаления данных по запросу клиента (команда /delete_my_data)
- Логи доступа к данным (кто и когда смотрел записи)
- Серверы в России (если работаете с российскими клиентами)
Важно: Если вы обрабатываете более 1000 клиентов, формально нужно уведомить Роскомнадзор. На практике большинство компаний ограничиваются публикацией политики конфиденциальности и сбором согласий.
Сколько стоит разработка такого бота
Оценка по времени (для опытного разработчика):
- Проектирование БД и архитектуры: 8-12 часов
- Разработка основного сценария записи: 20-30 часов
- Календарная логика и расчёт слотов: 12-18 часов
- Система напоминаний: 6-10 часов
- Админ-панель в Telegram: 10-15 часов
- Интеграция с CRM (если нужна): 15-25 часов
- Тестирование и баг-фиксы: 10-15 часов
Итого: 80-125 часов работы.
При средней ставке разработчика 2000-3000₽/час в Санкт-Петербурге получается 160 000 — 375 000₽. Студии обычно берут 100 000 — 180 000₽ за готовое решение, потому что используют наработки и шаблоны.
Нужен бот для записи клиентов?
Разработаем бот с календарём, напоминаниями и интеграцией с CRM. Гарантия 6 месяцев, договор, поэтапная оплата.
Заказать разработкуЗаключение
Telegram-бот для записи на услуги — это сложная, но решаемая задача. Ключевые моменты: правильная база данных, логика расчёта свободных слотов, система напоминаний и удобная админ-панель. Если делать качественно, с учётом всех нюансов — бот окупится за 2-3 месяца за счёт снижения нагрузки на администраторов и уменьшения количества «не пришли».
Если вы разработчик — используйте эту статью как техническое ТЗ. Если вы заказчик — закажите разработку у профессионалов, которые уже делали подобные проекты.