Skip to content
Appointments & Booking

Appointments & Booking

Online booking for service businesses — salons, dentists, garages, tutors,
consultants. Replaces the phone-and-notebook workflow with a /book page
that fills the calendar by itself.

Setup in 10 minutes

  1. Services — add what clients book: duration, an optional buffer after

the visit (cleanup, preparation), price.

  1. Staff — add specialists (even a one-person business adds themselves):

which services they provide, the weekly schedule (per-day working hours,
empty = day off), vacations and days off.

  1. Settings — the slot grid step (default 30 min), minimum notice

(default 2 h), how far ahead clients can book (default 30 days), the
owner notification email and the client email language.

  1. Put a link to /book in the menu, or drop the {booking_button} tag

into any page or template.

How clients book

Service → specialist (or "any available") → date → free time slots
(computed live: schedule minus vacations minus existing appointments with
buffers) → name, email, phone → done. The client gets a confirmation email
with an Add to calendar (.ics) button and a cancellation link; the
owner gets a notification.

Race-safe: the chosen slot is re-validated at submit time — two clients
cannot take the same time.

Day-to-day

  • Appointments — the day journal with prev/next navigation: times,

services, clients with contacts, one-click done / cancel.

  • Reminders — add the cron line (hourly): clients with an appointment

tomorrow get a reminder email. Reminders cut no-shows roughly in half.

  • Clients cancel via their link; cancelled slots free up instantly.

Notes

  • All times are the business's local time — no timezone math for clients.
  • Antispam: the booking form goes through the core form.spam_check

filter, so the Antispam & Captcha plugin protects it automatically.

  • Prepayment via payment plugins is planned for a future version.
Version Date Requires Size
1.1.1 2026-08-24 PHP >=8.3 · Celena >=3.6 36 KB

1.1.1: the booking form now names the exact failure reason (stale page, rate limited, slot just taken) instead of a generic error; the admin journal shows the total of upcoming appointments next to the selected day.

1.1.0 2026-08-24 PHP >=8.3 · Celena >=3.6 35 KB

1.1.0: Upcoming appointments dashboard widget (today/tomorrow labels, service, client, specialist); booking rate limit relaxed to 12 per 5 minutes.

1.0.0 2026-08-24 PHP >=8.3 · Celena >=3.6 33 KB

Initial release: 4-step booking wizard, live slot engine (schedules minus time off minus bookings with buffers), any-staff option, race-safe slot validation, confirmation and owner emails, ICS calendar files, cancellation links, daily reminder cron, day journal admin.

Requirements

  • PHP >=8.3 or newer
  • Celena CMS >=3.6 or newer

Installation

After purchase you receive a license key. Install the package from the client admin panel — it will ask for the key on activation.

  1. Open Plugins/Themes in your Celena admin panel.
  2. Click “Install from file” and upload the downloaded archive (or use “Install from marketplace” if connected).
  3. Activate the package — for paid packages, enter the license key when prompted.

Full installation guide in the documentation →