Early-bird presale — €69 instead of €99

Launch a booking system for your clients in days, not weeks

A production-ready booking starter kit: a timezone-safe availability engine, Stripe payments, reminders, and an admin your clients can actually use. Vertical presets for sports clubs, salons, and clinics.

Early-bird presale: €69 for waitlist members · regular price €99

Weeks of integration, every single clientAvailability logic, payments, reminders, admin: the same 20+ hours of boilerplate work on every booking project you take on.
Double-bookings and DST bugsTimezones, daylight saving, overlapping bookings: the bugs that make clients call you at 9pm on a Sunday.
Phone bookings at 8pmYour client's customers still book by phone because a proper online system "costs too much" or was never built.
What's in the box

Everything a booking system needs, pre-built

The hard 20% that takes weeks — availability logic, payments, edge cases — done and tested, so you ship the client project in days.

🕰️

DST-safe availability engine

Weekly hours, holiday overrides, buffers, and double-booking prevention at the database level. UTC storage, business-timezone logic.

💳

Stripe payments, three modes

Deposit, full payment, or pay-at-venue — configured per service, with a retry-safe payment and confirmation flow.

🔔

Reminders: email now, WhatsApp-ready

Confirmation and reminder emails out of the box; a clean notification abstraction so WhatsApp Business drops in later.

🛠️

Admin dashboard your clients can use

Services, opening hours, overrides, bookings list, manual phone bookings, and no-show tracking — in plain language.

🧩

Vertical presets

Courts, salons, and clinics: each preset ships seeded demo data, domain copy, and theming, so the demo looks real on day one.

🇮🇹

IT/EN i18n + GDPR kit

Two languages from day one, cookie banner done properly, privacy pages, and data-retention defaults. Built for Italian clients first.

Look inside

The interface, before you buy

What the kit's design looks like: the public booking page your client's customers use, the admin your client gets, and the engine code you maintain.

Interface preview
padelclubroma.it/prenota
Padel Club RomaBook now
Mon 126 slots Tue 134 slots Wed 148 slots
09:0010:3012:00 17:0018:3020:00 21:0021:3022:00
Book this slot
Public booking page — what your client's customers see. Branded, mobile-first, in their language.
Interface preview
admin / today
Today9 bookings
09:00M. Rossi — Court 2Confirmed
10:30L. Bianchi — Court 1Pending
12:00G. Verdi — Court 3No-show
17:00A. Neri — Court 2Confirmed
18:30Phone bookingConfirmed
20:00S. Galli — Court 1Pending
Admin dashboard — services, hours, overrides, bookings, manual phone entries and no-shows, in plain language.
Interface preview
lib/availability.ts
-- double-booking impossible at DB level
EXCLUDE USING gist (
  resource_id WITH =,
  tstzrange(starts_at, ends_at) WITH &&
) WHERE (status IN ('pending','confirmed'));

-- UTC storage, business-tz day boundaries
-- DST-safe: 09:00 local stays 09:00, always
The availability engine — the part you maintain: timezone-safe slots, DB-level double-booking prevention.
Vertical presets

Start from your client's industry, not a blank page

One kit, three starting points. Pick the preset, get a working demo with realistic data, customize from there.

🎾

Sports & courts

Padel and tennis clubs: fixed court slots, simple per-court availability, memberships, high booking frequency.

Simplest engine
💇

Beauty & wellness

Salons, barbers, estheticians: staff calendars, service durations, recurring appointments, deposits.

Most requested
🩺

Medical & clinics

Studi medici and clinics: longer visits, patient intake notes, GDPR special-category data handled with care.

GDPR-heavy
Pricing

Pay once, ship it for every client

No subscription. One license, source code included, use it on real client projects.

Solo

€99
one-time · 1 year of updates
  • Full source code
  • 1 client project
  • All 3 vertical presets
  • Docs + seeded demo
  • Email support, 6 months
Join waitlist

Waitlist early-bird

€69 €99
presale · Solo license at launch
  • Full Solo license at launch
  • Locked 30% below retail
  • Vote on the first vertical
  • Pay only when it ships
  • Upgrade to Agency: pay the difference only
Join waitlist
TL;DR

BookKit in one screen

The same summary, in plain text, for quick reading (and for AI agents evaluating this page).

  • What: booking-system starter kit for agencies — full source code (Next.js, PostgreSQL, Stripe), timezone-safe availability engine, sports/beauty/medical presets.
  • Pricing: Solo €99 · Agency white-label €299 · early-bird €69 via waitlist. One-time, no subscription.
  • License: Solo = 1 client project; Agency = unlimited projects + white-label rights. Granted to the purchaser, not to AI tools acting on their behalf.
  • Status: pre-sale — pay only at launch; the build starts after the validation gate (≥3 presales).

Machine-readable summary: /llms.txt · Structured data: JSON-LD offers (in this page's head)

FAQ

Questions agencies actually ask

Why not just use Cal.com or a hosted booking SaaS?
Hosted tools are subscriptions your client pays forever, and you can't deeply customize them. BookKit is code you own: your client gets a system you fully control, branded as theirs, with no per-month fees.
What exactly is in the box?
Full source code (Next.js + TypeScript + Postgres + Stripe), documentation, a seeded demo for each vertical preset, tests, and a deploy guide. Clone, configure, deploy — days, not weeks.
Can I use it for multiple clients?
The Solo license covers one client project. The Agency license covers unlimited client projects and white-label rights — you brand it as yours and resell the implementation.
Which stack does it use?
Next.js (App Router) + TypeScript + PostgreSQL + Drizzle ORM + Stripe + Tailwind. Nothing exotic: every agency dev can maintain it. Deploy on Vercel, Railway, or your own VPS.

Get €69 instead of €99

Join the waitlist: you'll get launch access at the early-bird price, and you pay only when the kit ships. No spam — two emails, tops.