Booking guide

Build a booking app with AI

Calendar with time slots, customer-facing booking page, payments at checkout, automated reminders. The Calendly + Stripe combo, owned by you, on your domain.

Booking apps built with Webtwizz

01 / What you can build

Real projects, not toy examples.

People are shipping these booking apps on Webtwizz this quarter. Each one is a complete app: real auth, real data, real money flowing through Stripe.

01

Service-based booking

Coaches, trainers, tutors, therapists. Pick a slot, pay, get a confirmation email and calendar invite.

02

Class-based booking

Yoga studios, group classes, workshops. Limited seats per slot, waitlists, recurring weekly schedules.

03

Resource booking

Salon chairs, photo studios, meeting rooms. Multiple resources, bookable independently.

04

Restaurant or appointment booking

Tables, doctors, mechanics. Confirmations + reminders + cancellations.

02 / The build

From a sentence to a deployed app.

5 ordered steps. No config files, no devops, no SQL migrations to write by hand.

  1. 01

    Describe the booking flow you want

    Prompt Webtwizz with the specifics: "A booking app for my dog-grooming business. 30-min and 60-min slots, Tuesday–Saturday 9am–5pm, $40 and $70 payments at checkout, email reminders 24h before."

  2. 02

    Connect Supabase for bookings + availability

    Webtwizz creates tables for services, time slots, bookings, and customers. Availability rules (working hours, blackout dates, slot duration) are stored in the database so you can edit them later from a settings page.

  3. 03

    Connect Stripe for payment at booking

    One-click Stripe connection. Customers pay when they book. Webtwizz handles the checkout flow, holds the slot during payment, and confirms the booking only after the charge succeeds.

  4. 04

    Connect Resend for confirmations + reminders

    Webtwizz wires up the email templates: booking confirmation with a calendar invite (.ics file), 24-hour reminder, cancellation receipt. Edit the copy visually, the schedule is handled by a Supabase Edge Function cron.

  5. 05

    Customize the booking page and ship

    The customer-facing booking page is a real Next.js route. Edit the hero, photos, services, and pricing visually. Point your domain at it and hit publish. book.yourdomain.com is live.

03 / Why it works

The parts other AI builders skip.

Anyone can scaffold a CRUD app. The reason these projects ship is the integration plumbing other builders leave for you.

1

Real calendar with conflict detection

Slots are reserved at the database level. Two customers can’t book the same time even if they hit "Book" simultaneously.

2

Pay-at-booking by default

No-shows go way down when customers pay upfront. Webtwizz scaffolds Stripe checkout + refund flow.

3

Automated reminders that actually send

Cron-triggered Edge Function fires the reminder email 24 hours before. Reduces no-shows further.

4

No per-booking fees

You pay for hosting and Stripe fees. No "Calendly + scheduling tool + payment + email tool" stack.

04 / The stack

Wired up. One click each.

Supabase, Stripe, the email layer, the analytics layer. OAuth, env vars, webhooks, scaffolded routes, all generated correctly the first time.

Supabase

Supabase

Bookings, services, availability rules, customer history.

Stripe

Stripe

Pay-at-booking checkout, refund on cancellation.

Resend

Resend

Confirmation emails with.ics calendar invites, reminders, cancellation receipts.

Calendar conflicts, time zones, and double-booking: the parts you cannot fake

Booking apps look simple. They are not. The bugs that kill them are all in the parts most prompt-to-app tools skip:

Conflict detection has to be transactional. Two users hitting "book the 3 PM slot" at the same time will both get success unless your booking insert is wrapped in a transaction that locks the slot row first. Webtwizz scaffolds the slot reservation as a Supabase transaction with row-level locking. A naive AI builder will give you a check-then-insert race condition that breaks under any real load.

Time zones are everywhere. Store all slots in UTC. Convert to the user's local zone on display only. Store the user's IANA timezone (America/New_York, not "EST") so DST transitions work. Never use the browser's getTimezoneOffset for storage, it changes twice a year.

Double-booking from external calendars. If your provider syncs their Google Calendar, you need a webhook that watches for new events on their calendar and marks those slots unavailable. Otherwise the customer books a slot the provider already gave away in their personal calendar. Webtwizz scaffolds the Google Calendar push-subscription pattern correctly; it's three different APIs to get right.

Cancellation windows. "No cancellations within 24 hours" needs to be enforced server-side based on the slot's UTC time, not the user's clock. Easy to miss; expensive when missed.

Building on Webtwizz vs Calendly: when each one is the right call

Calendly + Stripe is fine if your booking flow is: free 30-min meeting → optional paid 60-min upsell. Two service types, one calendar, no real customer database. Calendly is $12/mo, Stripe is per-transaction, you'll never need anything else.

Webtwizz is the right call when: - You have multiple service types with different prices, durations, and resource requirements (rooms, instructors, equipment). - You need a real customer database to track repeat visits, package balances ("3 sessions remaining"), or no-show history. - You collect deposits at booking and the balance later. - Your team needs different views (the receptionist sees today's bookings; the owner sees revenue and capacity utilization; each provider sees their own schedule). - You want a branded confirmation flow with custom email templates, SMS reminders, and a link to reschedule on your domain.

The cost cross-over usually happens around 3–4 service types or 50+ bookings/week. Below that, Calendly is fine. Above that, you're duct-taping Calendly + Stripe + Mailchimp + Google Sheets, and Webtwizz consolidates the stack.

05 / Questions

The honest answers.

The questions founders actually ask before they commit to a stack.

How is this different from Calendly + Stripe?

Calendly is great if your booking flow is "free 30-min meeting." The moment you need payments, multiple service types, custom availability, branded confirmations, or a real customer database, you’re duct-taping 4 tools together. Webtwizz gives you one app you own.

Will Stripe work for booking deposits and full payments?

Yes. Webtwizz scaffolds both flows: full payment at booking (default) and deposit + remainder-on-arrival. Refunds on cancellation are also wired in.

Can I add multiple services with different prices and durations?

Yes. Services are a database table with name, duration, price, color. Add as many as you want from a settings page; the customer-facing picker updates automatically.

What about timezones?

Webtwizz stores all times in UTC and renders in the customer’s local timezone. Calendar invites (.ics) include the right timezone so calendar apps display correctly.

Can I integrate with Google Calendar?

Yes. Webtwizz can scaffold a Google Calendar two-way sync via OAuth. The booking confirmation also includes an.ics attachment that works with any calendar app, no integration needed.

Build it visually. Ship it today.

Webtwizz is the AI app builder that lets you edit AI-generated code visually, and ship full-stack apps with auth, databases, and payments.

30 free credits daily + 120 signup bonus · No credit card required