Demo scenario
Nail studio
NEWNew in Telegram · HTML widgets

Nail Studio: manicure booking in a single widget

A nail studio moved its Telegram booking to the new HTML widgets from Bot API 10.4. The client picks service, extras, artist and time right in the message, and the bot then updates the same card with the booking status.

Niche
Nail studio, Kyiv
Channel
Telegram bot + HTML widgets
Launch
3 weeks
Volume
~1,400 bookings/month
16:44
Chats
Nail Studio
bot
NS
What can this bot do?Manicure and pedicure booking, prices, free slots and reminders 💅
Thursday
Hi! I'd like a manicure on Saturday, ideally in the afternoon11:20
Hi Sofia! 💅 Pick everything right here, free slots come straight from the artists' schedule:11:20
Booking confirmedNo. 214
Nov15
Saturday · 15:00–16:45
Manicure + gel polish · nail art
Artist Olena · $19
ConfirmedReminderVisit
RescheduleDirections
Done ✨ See you on Saturday at 3 PM. I'll remind you 2 hours before11:20
great, thanks!11:21
Saturday
Today at 3 PMOlena · manicure + gel polish · 41 Saksahanskoho St
See you at 3 PM 💅
Thanks for the rating! 💕
10% off your next visitNAIL10
Loved it, thank you 💕16:40
Message
DoneReminded on the day and collected a rating

Results

1 minfrom first message to a confirmed booking
5choices in one card: service, extras, artist, day, time
2 hbefore the visit: a reminder in the same chat
−10%off the next visit after a rating

* Demo case: names, quotes and numbers are placeholders and will be replaced with real ones.

Try it yourself

A live Telegram HTML widget

This is the real widget interface from this case. Pick a service, extras, artist, date and time, press "Book" and watch the bot update the card in place.

    What the bot receives

    This demo reproduces Bot API 10.4 widget behaviour on the website. A real widget lives in Telegram and only talks to its own bot.

    Tap the widget's elements

    Challenge

    Booking in the bot took 8-10 messages: service, artist, day, time, colour. Clients got lost mid-chat, and the admin worked out price and duration by hand.

    • A long chat before booking
    • Price with extras and duration calculated by hand
    • Reminders and rescheduling by hand

    Solution

    The AI assistant replies and sends an HTML widget right away: service with price and duration, extras, artist, date and time in one card. After booking the bot updates the same widget with the status, reminds on the day and asks for a rating.

    • Every choice in one message
    • Status updates in the same widget, no new messages
    • A rating and a discount for the next visit
    Architecture

    How the bot is built

    The customer writes in a messenger, the AI assistant understands the request and works with the business's services itself. No copying between tabs.

    TriggerBot message
    AI assistantBooking & widgets
    ModelPrompt: studio toneFree slotsPrices & durations
    sendWidget: booking
    widget_query: choice
    Create booking
    Widget: confirmed
    Client card
    2 h before visit
    Rating widget
    Trigger: where the customer comes fromAI assistantThe agent's model, prompt, memory and knowledge← swipe the diagram →
    Behind the scenes

    What happens while the customer types

    01

    Puts free slots into the widget

    Before sending, the bot takes the artists' real slots from the calendar and bakes them into the widget data. Busy hours are crossed out.

    Google CalendarArtists · Saturday
    Olena
    Iryna
    Sofia
    10 AM11 AM12 PM1 PM2 PM3 PM4 PM5 PM6 PM
    Alina
    Vira
    Marta
    Sofia K. · manicure + gel polish
    Daryna
    Nina
    Oksana
    Yulia
    Added by the AI assistant · just now
    02

    Receives the client's choice from the widget

    Every tap in the widget reaches the bot as a widget_query. The bot answers in a fraction of a second and updates the card state with editMessageWidgetData.

    Telegram Bot APIupdate · widget_query
    // update from Telegram
    "widget_query": {
      "data": "svc=gel;add=art;m=olena;t=sat-15:00",
      "from": "Sofia K."
    }
    → answerWidgetQuery        ✓ 0.4 s
    → editMessageWidgetData    ✓ status: confirmed
    Widget updated in place · just now
    03

    Remembers the client's choice

    The CRM stores the service, extras and favourite artist. Next time the bot offers "same as last time" in one tap.

    Salon CRMClient #3317
    NewBookedVisitRegular
    ServiceManicure + gel polish
    ExtrasNail art, 2 nails
    ArtistOlena · $19
    ReminderSat, 1 PM
    Created by the AI assistant · just now
    Stack

    Tools and integrations

    The bot's brain
    AI assistant
    • Runs the chat and answers questions
    • Sends and updates widgets
    • Knows the schedule, prices and durations
    Agent parts
    ModelPrompt: studio toneFree slotsPrices & durations
    ChannelTelegram Bot API 10.4

    Dialogue and HTML widgets

    Bot API
    ScheduleGoogle Calendar

    Artists' schedule

    OAuth 2.0
    CRMSalon CRM

    Clients, services, visits

    REST API
    DataGoogle Sheets

    Service prices and durations

    OAuth 2.0
    Honestly

    Pros and limits

    What the business got

    • The client picks everything in one message, no back-and-forth
    • Price and duration with extras are calculated at once, no "how much will it be?"
    • Booking status updates in the same widget
    • After the visit the bot asks for a rating and gives a discount on the next booking

    Limits worth knowing

    • In production Telegram, widgets can only be sent to a private chat with the bot, groups are test-server only for now
    • Older Telegram versions show a text caption instead of the widget
    • A widget is limited to 32 KB of code and can't reach the internet: the bot passes it all data
    Rollout

    From brief to launch

    Week 1

    Script, services, prices and durations

    Week 2

    Widget design and code within 32 KB

    Week 3

    Calendar, CRM, reminders, launch

    “Clients say booking now feels like an app, except there's nothing to install.”
    Maryna Kovalchuk
    nail studio owner

    Ready to handyour chats to a bot?

    Message us in any messenger and we'll show a live demo of the AI assistant for your niche.

    1. 01You message usin any messenger
    2. 02A demo for your nichewithin 1-2 days, free
    3. 03Launchfrom 1 week