Telegram-бот для записи с мини-приложением для оформления
Клиентский бот Bronjoy позволяет находить сервисные бизнесы в Узбекистане и записываться к ним, не выходя из Telegram. Бот отвечает за язык, диплинки и уведомления, а саму запись ведёт мини-приложение внутри клиентского приложения Bronjoy. Общий бот Bronjoy открывает весь маркетплейс; кроме того, бизнес может подключить собственного бота, который сразу открывает его страницу записи.
Ключевые возможности
- Сначала — язык — при первом
/startбот сразу на трёх языках спрашивает, на каком общаться — узбекском, русском или английском, и этот выбор сопровождает человека во всех ботах Bronjoy. - Диплинки не теряются из-за вопроса — ссылка
/startна конкретное заведение откладывается на 15 минут, пока человек выбирает язык, поэтому клиент всё равно попадает в тот бизнес, на который нажал. - Бесшовный вход — мини-приложение отправляет в API подписанные
initDataот Telegram, API проверяет подпись HMAC-SHA256 и выдаёт клиенту токен — без пароля и без кода. - Весь сценарий записи — услуга, филиал, дата и время, подтверждение и оплата, а номер телефона запрашивается через собственный запрос контакта Telegram.
- Главный экран мини-приложения — предстоящие визиты, популярные места поблизости и превью карты для просмотра.
- Уведомления в чате — подтверждения, напоминания и напоминания об оплате записи приходят с кнопками, которые открывают страницу записи или оплаты внутри мини-приложения.
- White-label боты — владелец, у которого подключена функция собственного бота, добавляет токен бота; Bronjoy проверяет его в Telegram, регистрирует вебхук и направляет кнопку меню бота на страницу записи этого бизнеса.
Архитектура и технологический стек
Бэкенд бота
Бот работает на Nutgram — PHP-фреймворке для Telegram Bot API — внутри API на Laravel 12 в режиме вебхука. Один набор обработчиков обслуживает и общий бот, и все white-label боты. Секрет вебхука каждой организации выводится через HMAC из ключа платформы, поэтому бизнес, подключивший бота, никогда не получает секрет, с помощью которого можно подделать обновления для другого бизнеса.
Ежедневная задача telegram:setup-webhooks заново регистрирует все вебхуки, чтобы сменённый токен или изменённый базовый URL не могли незаметно остановить доставку. Отправки также сообщают причину сбоя: клиент, заблокировавший бота, помечается как недоступный, и повторов не будет, а при сетевой ошибке отправка повторяется.
Фронтенд мини-приложения
Мини-приложение — это набор маршрутов /tma в клиентском приложении на Nuxt 4 со своим макетом. Стартовый экран при первой отрисовке показывает «Initializing…», поэтому при запуске из Telegram никогда не мелькает маркетинговая главная, а затем авторизует клиента и ведёт его к записи в заведение или к его визитам. Вход идемпотентен, а одновременные вызовы делят один выполняющийся запрос, поэтому макет и страница никогда не авторизуются дважды. Экраны используют сгенерированный типизированный клиент API Bronjoy и переведены на все три языка.
Аккаунты
Клиенты из Telegram находятся или создаются по Telegram ID, а язык, выбранный в боте, переносится в аккаунт, чтобы на нём приходили и остальные уведомления. Тот же подход «найти или создать» позже пригодился в мини-приложении BiliMind в Telegram.
Наша роль
Мы сделали бота, слой вебхуков и white-label, сценарий записи в мини-приложении и шаблоны уведомлений. Работа началась в январе 2026 года с первой интеграции с Telegram и авторизации в мини-приложении.
Смежные работы
Посмотрите нашу услугу по разработке Telegram-ботов. Владельцы бизнеса подтверждают эти записи в боте для сотрудников Bronjoy, а клиенты с вопросами обращаются в бот поддержки Bronjoy.



