Руководство · автоматизация
Бот для записи клиентов: чеклист пилота для салона и ИП
Запись, перенос, отмена и напоминание — достаточно для пилота; платежи и лояльность позже. Слоты бот показывает только из того расписания, которое вы открыли в таблице или CRM — он не угадывает загрузку мастера.

Когда бот для записи клиентов нужен, а когда хватит таблицы
Три сигнала, после которых я на наставничестве обычно предлагаю переходить от Google Sheets к боту. Первый — переписка про слоты съедает смену администратора: «а в субботу есть?», «а пораньше?», «а к другому мастеру?». Второй — ночные сообщения без ответа до утра, хотя клиент готов записаться сейчас. Третий — переносы и отмены теряются в личном Telegram мастера, а в журнале слот всё ещё занят.
Когда хватит таблицы: один мастер, до пятнадцати записей в неделю, слоты редко меняются, администратор на связи в часы работы. Если вы сами ведёте блокнот и не теряете ни одного «хочу в пятницу» — бот на старте лишний.
Таблица ниже — что я слышу на входе и что уточняю до любого кода.
| Что говорят | Что я уточняю на разборе |
|---|---|
| «Нужен бот для записи клиентов» | Откуда слоты, кто подтверждает исключения |
| «Как у салона с YCLIENTS» | Уже есть CRM или только переписка |
| «Создать бота для записи клиентов быстро» | Четыре действия пилота или витрина из десяти кнопок |
| «Чат бот для записи клиентов в телеграм» | Один канал на пилоте или каскад WA и SMS |
Переписка про слоты и потерянные сообщения
Типичный сбой: клиент пишет «маникюр в субботу после шести», администратор отвечает через три часа, предлагает 18:30, клиент молчит — а слот нигде не зафиксирован. Через неделю тот же человек приходит с другого канала, и кажется, что «мы его потеряли». Бот не читает мысли, но фиксирует выбор из открытых окон и пишет строку в учёт.
Салон, ИП и малый сервис — типовой поток
Услуга → мастер или ресурс → слот → контакт → напоминание. На пилоте я не смешиваю этот поток с заявкой «узнать цену» — для цен отдельная ветка или кнопка к человеку.

Минимальный сценарий пилота: четыре действия
Клиент жмёт кнопки — учёт обновляется. Я фиксирую пилот как цепочку запись → перенос → отмена → напоминание; всё остальное — очередь после стабильного потока.
| Действие | Клиент в боте | Система / учёт |
|---|---|---|
| Запись | Услуга → слот из доступных → имя и телефон → «Вы записаны» | Строка в таблице или CRM; слот занят |
| Перенос | «Мои записи» → новый слот | Старый слот свободен, новый занят |
| Отмена | Кнопка в напоминании или меню | Слот свободен, статус «отменено» |
| Напоминание | За сутки или за три часа; кнопки подтвердить, перенести, отменить | Только подтверждённые записи |
Запись на слот
Кнопочный путь: услуга → дата → время → подтверждение. Свободный текст на пилоте не разбираю — маршрут к администратору. YCLIENTS в своей инструкции для салонов советует начинать именно с простого кнопочного бота, без ИИ-диалога.
Перенос и отмена
Без переноса и отмены администратор снова вручную в чате. Клиент должен освободить слот сам, не дожидаясь «напишите нам для отмены».
Напоминание клиенту
Отдельный worker или cron шлёт сообщение с кнопками. Паттерн из CRM-инструкций: подтвердить или отменить прямо из напоминания — меньше неявок без обещания процентов, которые я не верифицирую.

Собрать до включения бота:
- 01
Список услуг — до восьми на пилоте — с длительностью слота.
- 02
Источник слотов: таблица, CRM или ручные «окна на неделю» — один, не три.
- 03
Поля записи: услуга, дата и время, имя, телефон, мастер если их больше одного.
- 04
Правило эскалации: свободный текст и голосовое → «написать администратору».
- 05
Тайминг напоминания — за 24 часа или за 3 часа — и текст с кнопками.
- 06
Критерий «пилот успешен» на одну-две недели — см. раздел про проверку ниже.
Чеклист полей и слотов перед запуском бота
Перед кнопкой «Запуск» я прошу пройти сценарий с секундомером. Если до подтверждения на телефоне уходит больше двух минут — режем вопросы.
| Поле | Обязательно | Зачем |
|---|---|---|
| Услуга | Да | Из списка, не свободный ввод |
| Дата и время | Да | Только из открытых слотов |
| Имя | Да | Для журнала и напоминания |
| Телефон | Да, если перезвон | Иначе только @username |
| Мастер / ресурс | Если больше одного | Иначе скрытое поле по умолчанию |
| Комментарий | Нет на пилоте | Удлиняет диалог |
Услуга, дата, время, контакт
Каждое лишнее поле — минус к доходимости. На разборе я спрашиваю: «зачем менеджеру это до первого визита?» Если ответа нет — поле убираем.
Исключения и эскалация к администратору
«Мастер заболел», «хочу вне расписания», сравнение цен — бот не угадывает, а показывает кнопку к человеку. Исключения вы заранее описываете списком, а не надеетесь на «умный» ответ.
Готовность слотов перед пилотом:
- Открытые окна на 7–14 дней вперёд
- Блокировка обеда и выходных в источнике слотов
- Праздники отмечены, слоты закрыты
- Если есть CRM — односторонняя синхронизация согласована
- Администратор знает, кто правит слот вручную при сбое
Бот для записи клиентов в Telegram: формат и ограничения
На пилоте я фиксирую один канал — Telegram. Клиенты уже пишут туда; InlineKeyboard даёт короткий сценарий без установки приложения. Каскад WhatsApp → Telegram → SMS, как у интеграторов поверх YCLIENTS, — отдельный этап после проверки одного канала.
Почему Telegram на пилоте
Кнопки, callback, напоминания в том же чате. Для ИП и малой студии это часто единственный мессенджер, где живёт переписка с клиентами.
Что бот не заменяет на старте
Журнал в CRM, оплату, рассылки, ИИ-диалог, синхронизацию пяти мессенджеров. Бот закрывает согласованный сценарий записи, а не весь бэк-офис.
Технические границы из документации Telegram Bot API: callback_data у inline-кнопки — от 1 до 64 байт, короткие коды шага, не длинный JSON. После нажатия обязателен answerCallbackQuery, иначе у клиента «часики» на кнопке.
# Псевдокод пилота: услуга → дата → время (callback_data ≤ 64 байта)
from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton
def kb_services():
return InlineKeyboardMarkup(inline_keyboard=[
[InlineKeyboardButton(text="Стрижка", callback_data="svc:cut")],
[InlineKeyboardButton(text="Маникюр", callback_data="svc:nail")],
[InlineKeyboardButton(text="Администратор", callback_data="esc:human")],
])
async def on_callback(query, bot):
await bot.answer_callback_query(query.id) # обязательно по Bot API
step, payload = query.data.split(":", 1)
# календарь в чате — только даты с открытыми слотами в учётеInline-календарь в чате — UI выбора даты, не источник занятости. Ограничение диапазона дат — да; занятость читает из таблицы или CRM.
У DIKIDI Telegram — канал уведомлений с номера телефона, не отдельный бот записи. Лимит для номеров вне контактов: не более 15 сообщений в день и не более 200 всего — по справке вендора на 2026-08-02.
Конструктор, разработка или короткий пилот
Я не продаю «дороже», а режу переделки. Если берёте SaaS — сверьте с границами из следующего раздела: без «умного календаря» и обещаний, что бот сам заполнит расписание.
| Решение | Для кого | Запись в TG | Слабое место для пилота «свои правила» |
|---|---|---|---|
| YCLIENTS + Wahelp или CHATPUSH | Салон на YCLIENTS | Через интегратор | Подписка; избыточно без CRM |
| DIKIDI + TG | Пользователи DIKIDI | Уведомления, не отдельный бот | Лимиты TG на «холодные» номера |
| ЮМастер | ИП, малые студии | Шаблонный бот | Кастомная логика ограничена |
| Конструкторы | Линейный сценарий | Да | Потолок при нескольких мастерах |
| Заказной бот | Ясный процесс | Да | Дольше старт; свои правила и источник слотов |
Цены интеграторов — по данным вендора на 2026-08-02: Wahelp от 1190 ₽/мес при оплате через маркетплейс YCLIENTS, CHATPUSH от 999 ₽/мес за филиал, ЮМастер — месяц бесплатно, далее около 1000 ₽/мес. Это не мой оффер; сравниваю только чтобы вы понимали альтернативы.
Матрица выбора
- Конструктор — линейный сценарий, один мастер, слоты простые.
- SaaS (ЮМастер, DIKIDI) — шаблон совпадает с вашим процессом, быстрый тест.
- Заказная разработка — нестандартные слоты, несколько филиалов, атомарная блокировка от двойной записи, интеграция с существующей CRM.
Когда звать разработку после пилота
Когда конструктор или SaaS упёрлись в потолок, а поля и ветки уже проверены на реальных переписках. Тогда обсуждаем разработку проекта — перенос проверенного сценария, не витрина из десяти функций.
Что не обещать на первом пилоте
| Обещание | Почему не на старте |
|---|---|
| «Умный календарь» / автозагрузка | Слоты задаёт владелец или CRM; бот не создаёт окна |
| Оплата в боте | Удлиняет сценарий и юридические риски |
| Лояльность, абонементы | Отдельный продуктовый контур |
| ИИ вместо кнопок | После стабильного потока — граница с ИИ-агентами |
| ROI и «неявки минус 60%» | Маркетинговые проценты не верифицированы |
| Каскад WA → TG → SMS | Отдельный этап после одного канала |
Платежи, лояльность, «умный календарь»
Я обещаю автоматизацию согласованного сценария, не заполнение расписания. Если вам обещают «бот сам разложит клиентов по окнам» — спросите, откуда бот берёт занятость. Ответ должен быть: из вашей таблицы или API CRM.
ИИ-агент вместо кнопок
На пилоте — кнопки. ИИ после одной-двух недель стабильного потока и белого списка ответов. Свободный текст клиента без маршрута к человеку — типовой источник ошибок.
Проверка пилота на реальных записях за 1–2 недели
Критерии готовности: журнал событий, доходимость до статуса «записано», доля отмен через бота против ручных. Учёт — одна строка на запись; статусы: новая, подтверждена, отменена, перенесена.
Критерии готовности
Без журнала спорить «бот не сработал» бессмысленно. Минимум — время, user id, шаг сценария, факт записи в таблицу.
Таблица или CRM — минимальный учёт
Google Sheets хватает на пилот: колонки услуга, дата, время, контакт, статус, мастер. Когда поток стабилен — смотрим интеграцию Telegram и CRM.
Шаги приёмки пилота:
- 01
День 0: включить бота только для новых клиентов или одного дня недели; старый поток в таблице параллельно.
- 02
Дни 1–3: пройти сами три раза — кнопки, текст вместо кнопок, обрыв на середине.
- 03
Дни 4–7: минимум десять реальных записей через бота; сверка с журналом — нет «забытых» слотов.
- 04
Неделя 2: проверить перенос и отмену минимум по два кейса каждый; слот освобождается в учёте.
- 05
Напоминания: ушли по расписанию; кнопки подтвердить и отменить работают.
- 06
Решение: масштабировать, доработать поля или эскалация к разработке — только после зелёного чеклиста.
| Метрика | Как считать | Порог «можно масштабировать» |
|---|---|---|
| Записи в учёте | Строки со статусом «записано» | Все из бота попали в журнал |
| Двойные слоты | Два клиента на одно время | Ноль инцидентов |
| Время диалога | Секундомер на телефоне | До двух минут до подтверждения |
| Эскалации | Сообщения «к администратору» | Меньше трети — иначе упростить меню |

Типовые ошибки при записи через бота и как исправить
Двойные слоты и «забытые» переносы
Два клиента на 14:00 — гонка при отсутствии единого учёта. Перенос без освобождения старого слота — типовой баг: в журнале две строки, в реальности один мастер. Нужна атомарная блокировка слота при записи — CRM API, база данных или advisory lock.
Слишком длинный диалог и потеря клиента
Каждый лишний вопрос, нет кнопки «человек», голосовые без маршрута — клиент уходит в личку мастера, и бот снова не при делах.
До бота поток часто выглядит так:
Триггер: клиент пишет в Telegram «маникюр в пятницу после 18:00»
→ администратор отвечает из личного чата (задержка 2–6 часов)
→ [ветка] запись / вопрос цены / молчание
→ при записи: услуга, мастер, слот → блокнот или Google Sheets
→ перенос: клиент пишет «перенесите» → поиск строки глазами
→ напоминание — вручную, если не забыли
→ сбой: двойная запись на 18:30; ночное сообщение без ответа; перенос без освобождения слотаПосле пилота те же шаги, но запись, перенос, отмена и напоминание закрыты ботом плюс журнал.
| Ошибка | Симптом | Что я меняю |
|---|---|---|
| Двойная запись | Два клиента на 14:00 | Атомарная блокировка слота в учёте |
| Потерянный перенос | Старый слот занят | Статус и освобождение в одной транзакции |
| «Часики» на кнопке | Клиент жмёт повторно | answerCallbackQuery сразу |
| Ночная запись без слотов | «Запишите на любое» | Только открытые окна; иначе «ожидайте ответа» |
Что читать дальше
По теме в блоге: чат-бот для бизнеса — родительский контекст пилота одного сценария; автоматизация заявок — если путаете запись и квалификацию лида; интеграция Telegram и CRM — после стабильного потока. Обсудить пилот под ваш процесс — в Telegram или через разработку проектов.
Частые вопросы
Чем бот для записи отличается от бота для заявок?
Заявка — контакт и квалификация: услуга, срок, комментарий, уведомление менеджеру. Запись — слот из доступных, перенос, отмена, напоминание. На пилоте я не смешиваю оба потока: сначала тот, где больше потерь.
Можно ли обойтись без CRM на пилоте?
Да. Google Sheets или таблица с колонками услуга, дата, время, контакт, статус, мастер — достаточно на одну-две недели проверки. CRM подключаем, когда поток стабилен и поля согласованы.
Бот сам подстроится под расписание мастера?
Нет. Слоты вы открываете вручную или из CRM; бот показывает только доступное. Исключения вроде болезни мастера — эскалация к администратору, не угадывание.
Что если два клиента выбрали одно время?
Нужен единый учёт и блокировка слота при записи — CRM API, база или advisory lock. Без этого два одновременных нажатия дадут двойную запись.
Подойдёт ли DIKIDI или ЮМастер вместо разработки?
Если шаблон совпадает с вашим процессом — SaaS быстрее. Заказ имеет смысл при своих правилах слотов, нескольких филиалах или интеграции с существующей CRM.
Нужен ли ИИ в боте записи?
На пилоте — кнопки. ИИ подключаю после стабильного потока, списка типовых вопросов и человека на ревью. Свободный текст без маршрута к администратору — частый источник ошибок.
Сколько стоит бот для записи клиентов?
Зависит от источника слотов, числа мастеров и интеграций. Цифру без брифа не называю. На разборе фиксируем четыре действия пилота и критерий готовности — потом оценка.
Telegram не всем клиентам — что делать?
На пилоте один канал. Каскад SMS или WhatsApp — отдельный этап после проверки сценария в Telegram. Иначе вы отлаживаете три канала сразу.
Связанные страницы

Обсудить вашу задачу
Напишите в Telegram цель, что уже сделано и где стопор.
Отвечаю сам — без бота и «оставьте заявку».







