Title: GemBooking &#8211; Appointment Booking, Booking Calendar &amp; Reservations
Author: Kodezen LLC
Published: <strong>August 24, 2026</strong>
Last modified: August 25, 2026

---

Search plugins

![](https://ps.w.org/gembooking/assets/banner-772x250.png?rev=3663910)

![](https://ps.w.org/gembooking/assets/icon-256x256.png?rev=3663910)

# GemBooking – Appointment Booking, Booking Calendar & Reservations

 By [Kodezen LLC](https://profiles.wordpress.org/kodezen/)

[Download](https://downloads.wordpress.org/plugin/gembooking.1.3.1.zip)

 * [Details](https://wordpress.org/plugins/gembooking/#description)
 * [Reviews](https://wordpress.org/plugins/gembooking/#reviews)
 *  [Installation](https://wordpress.org/plugins/gembooking/#installation)
 * [Development](https://wordpress.org/plugins/gembooking/#developers)

 [Support](https://wordpress.org/support/plugin/gembooking/)

## Description

**GemBooking is a complete WordPress booking plugin** for appointments, events, 
rentals and bookable resources. Publish your availability, let customers pick a 
date and time on a mobile-friendly booking calendar, collect payment, and have the
confirmation email sent automatically – without writing a line of code.

It suits any business that sells time or space: salons and spas, clinics and therapists,
consultants and lawyers, photographers, tutors and coaches, studios and gyms, coworking
desks, rental gear, courts and meeting rooms.

#### GemBooking at a glance

 * **Online booking calendar** – a live date and time slot picker that only offers
   slots you are really free for.
 * **Appointment scheduling** – per-service duration, buffer time, lead time and
   booking windows.
 * **Rental and resource reservations** – book rooms, desks, courts, vehicles and
   equipment, not just people.
 * **Staff and multi-host teams** – every host keeps their own working hours.
 * **Payments** – sell bookings through WooCommerce or StoreEngine using your existing
   gateways.
 * **Automatic emails** – confirmation, reschedule and cancellation notices for 
   customer and admin.
 * **Customer self-service** – a My Bookings page to reschedule or cancel, embedded
   in your store dashboard.
 * **18 industry presets** – a working booking system seeded for you in a couple
   of clicks.
 * **Free and unlimited** – no bookings cap, no time limit, no upsell walls inside
   the plugin.

#### What can you book with GemBooking? Industry presets

Not sure which kind of booking system you need? Start the onboarding wizard and 
pick the preset closest to your business. Each preset seeds a working service, availability,
pricing and booking form for you, so you begin from a real, bookable setup instead
of a blank screen – and you can rename or rebuild any part of it afterwards.

**Professional services** – time-slot appointments with a single host.

 * **Appointments** – consultant, coach, freelancer: 1-on-1 time-slot bookings, 
   online or in person.
 * **Photographer / Videographer** – headshots, weddings, events: packaged photo
   and video shoots.
 * **Lawyer / Consultant** – legal advice and business consulting sold as hourly
   billable appointments.

**Beauty and wellness** – in-person services with optional staff selection.

 * **Salon / Hair / Beauty** – hairdresser, nails and beauty treatments booked per
   service.
 * **Massage / Spa** – massage therapist and spa treatments sold as fixed-length
   sessions.

**Health and medical** – clinical appointments with intake questions.

 * **Doctor / Dentist** – patient appointments with intake fields on the booking
   form.
 * **Therapy / Counselling** – private 1-on-1 therapy or coaching sessions.

**Fitness and classes** – group bookings that share one capacity.

 * **Class / Studio** – yoga, language class or workshop: several people book the
   same session.
 * **Fitness Class / Gym** – group classes and gym sessions with a capacity-limited
   headcount.

**Hospitality** – tables, desks and catering.

 * **Cafe / Reserved Seat** – reserve a small table for a time window.
 * **Coworking Desk** – a hot desk rented by the hour at a coworking space.
 * **Catering Booking** – a catering package booked for a date, with guest count
   and minimum party size.

**Travel and transport** – journeys and charters.

 * **Airport Shuttle / Transfer** – pickup-to-dropoff transfer booked for a chosen
   time.
 * **Boat / Yacht Charter** – private charter at an hourly rate with a passenger
   limit.

**Rentals** – book the thing, not the person.

 * **Court / Equipment Rental** – tennis court, kayak or gear: direct resource bookings
   by the hour or day.
 * **Car / Van Rental** – daily vehicle rental from a pool of cars, each with its
   own rate.
 * **Camera / Gear Rental** – daily rental of cameras, lenses and equipment.

**Education**

 * **Tutoring / Lessons** – private 1-on-1 lessons or tutoring sessions.

**Anything else**

 * **Custom** – skip the wizard and build your services, availability and form from
   scratch.

#### Online appointment scheduling

 * **Date and time slot picker** – customers book from a live calendar that only
   shows slots you are actually free for.
 * **Per-service duration and buffer time** – add padding before or after each appointment
   so back-to-back bookings never collide.
 * **Lead time and booking window** – require a minimum notice before an appointment,
   and stop bookings too far in the future.
 * **Weekly availability with date overrides** – set working hours once, then block
   holidays or open a partial day when you need to.
 * **Automatic double-booking protection** – slots are checked against existing 
   bookings and capacity before a booking is accepted.
 * **Recurring bookings** – let a customer book the same slot daily, weekly or monthly
   in one go.
 * **Group and party bookings** – set a capacity per slot and collect details for
   every attendee in the party.

#### Resource and rental reservations

Bookable resources cover anything that is not a person: rooms, desks, courts, studios,
vehicles, equipment. Each resource gets its own capacity, pricing and availability
rules, plus its own public listing page.

#### Staff, hosts and multi-location teams

Assign one or more hosts to a service and the booking form respects each host’s 
own working hours. Team roles keep staff on the screens they need without handing
out administrator access.

#### Custom booking forms

Build the questions you ask at checkout with a drag-and-drop form builder: text,
email, phone, dropdown, radio, checkbox, multi-select and more, per service or shared
globally. Mark fields required, and get notified when a specific answer comes in.

#### Automated booking emails

Confirmation, reschedule and cancellation emails are sent automatically to both 
the customer and the site admin, from templates you can edit in the admin.

#### Customer self-service

A **My Bookings** page lets customers view, reschedule or cancel their own bookings
through signed links – and it is embedded as a native tab inside the WooCommerce,
StoreEngine and Academy LMS account dashboards, so customers never leave your store
to manage a booking.

#### Visitor timezone detection

Times are detected in the visitor’s own timezone and shown that way in the slot 
picker, confirmation screen, My Bookings page and emails, so remote appointments
are never booked an hour off.

#### Booking management for admins

 * Calendar and list views of every booking, with search and filters by date, status
   or customer.
 * Status workflow – pending, confirmed, cancelled, rescheduled – plus bulk actions.
 * Add a booking manually on behalf of a customer straight from the calendar.
 * Redirect customers to a thank-you page of your choice after booking.

#### Accept payments for bookings

Connect the built-in WooCommerce or StoreEngine integration and every booking becomes
a real order, inheriting your existing prices, taxes, currencies and payment gateways–
no separate checkout to configure.

#### Works with your existing store or LMS

 * **WooCommerce** – sell bookings as products and show My Bookings inside the WooCommerce
   account dashboard.
 * **StoreEngine** – full checkout, product linking and order sync, with a My Bookings
   dashboard tab.
 * **Academy LMS** – My Bookings appears as a native tab in the student dashboard,
   so tutoring sessions sit beside courses.

#### Shortcodes

Drop booking anywhere on your site – any theme or page builder that renders shortcodes
will do:

 * `[gembooking_service id="123"]` – a single service with its Book Now button
 * `[gembooking_service_list]` – a browsable list of services
 * `[gembooking_resource]` – bookable resources, one or all
 * `[gembooking_event]` / `[gembooking_event_list]` – events
 * `[gembooking_flow]` – a full guided booking flow, with or without a picker
 * `[gembooking_form]` – a standalone booking form
 * `[gembooking_my_bookings]` – the customer booking dashboard
 * `[gembooking_customer_panel]` – the customer account panel

#### Developer friendly

Custom database tables with a documented REST API, WP-CLI commands, outgoing webhooks
for booking events, and filters throughout the booking solver. Fully translation
ready and RTL ready under the `gembooking` text domain.

#### GemBooking Pro – advanced booking types

[GemBooking Pro](https://gembooking.net/) is a separate plugin that unlocks the 
booking types below, plus dynamic pricing rules, extra services, prepaid packages,
and Zoom, Google Meet, Google Calendar, Microsoft Teams and SMS integrations.

 * **Hotel / Short-Stay Rental** – multi-day stays with check-in / check-out dates
   and a pool of rooms.
 * **Restaurant** – table reservations placed on a visual floor plan.
 * **Ticket / Event Sales** – concerts, theatre and workshops: sell tickets for 
   a fixed date with QR check-in and per-ticket perks.
 * **Seated Event** – theatre, concert hall or stadium: assigned-seat ticket sales
   with a visual seat picker.
 * **Conference** – a multi-tier community conference ticket with QR check-in for
   entry, meals, swag and the after party.
 * **Contributor Day** – the free, hands-on side event that runs alongside a conference:
   RSVP tickets with QR check-in.
 * **Bus Route** – inter-city bus with multiple stops, assigned seats and segment-
   aware ticketing.
 * **Tour / Day Trip** – guided tour or day trip with a fixed departure date and
   capacity.

## Installation

#### From your WordPress dashboard

 1. Go to **Plugins – Add New** and search for **GemBooking**.
 2. Click **Install Now**, then **Activate**.

#### Manual installation

 1. Upload the `gembooking` folder to `/wp-content/plugins/`.
 2. Activate the plugin through the **Plugins** menu in WordPress.

#### First-time setup

 1. Go to **GemBooking – Dashboard** and run the onboarding wizard.
 2. Pick the preset that matches your industry. It seeds a starter service, availability
    and booking form for you.
 3. Set your working hours under the service’s availability tab.
 4. Publish the booking form on any page or post with the `[gembooking_service id="
    123"]` shortcode, or link to the service page the plugin already created.
 5. Optional – activate the WooCommerce or StoreEngine integration if you want to charge
    for bookings.

## FAQ

### Is GemBooking free?

Yes – no booking limit, no time limit, nothing locked behind an upgrade prompt. 
GemBooking Pro is a separate plugin for hotels, restaurants, seat maps, ticketing
and third-party integrations.

### Which preset should I choose?

The one closest to your business. A preset only seeds a starter service, availability
and form, and anything it creates can be renamed, re-priced or deleted. If nothing
fits, pick **Custom**.

### How do I add a booking form to a page?

Paste `[gembooking_service id="123"]` into any page or post, or `[gembooking_form]`
for a standalone form. The plugin also creates service and resource pages for you
automatically.

### Can I prevent double bookings?

Yes. Every slot is validated against existing bookings, per-slot capacity and buffer
time before it is saved, so the same slot cannot be taken twice.

### Can I book rooms, equipment or vehicles instead of people?

Yes. Bookable resources cover anything that is not staff-based, each with its own
capacity, pricing and availability.

### Does it support multiple staff members?

Yes. Assign a service to one or more hosts and the booking form only offers slots
that host is actually free for.

### Can customers reschedule or cancel their own bookings?

Yes, through signed links in the confirmation email and on the My Bookings page.
Both can be switched off per service.

### Does it handle different timezones?

Yes. The visitor’s timezone is detected automatically and every time is shown in
it, while the booking is stored against your site’s timezone.

### Can I accept payments for bookings?

Yes. Activate the WooCommerce or StoreEngine integration and each booking checks
out as a normal order, using your existing gateways, taxes and currency.

### Does it work with WooCommerce?

Yes. Sell bookings as WooCommerce products, and My Bookings appears as a tab inside
the WooCommerce account dashboard.

### Can I sell event tickets?

Date-based event bookings are free. Ticket tiers, QR check-in and assigned seating
come from the separate GemBooking Pro plugin.

### Does it work with my theme and page builder?

Yes. The booking screens render through shortcodes, so any theme or page builder
that outputs shortcodes can display them. The front end is responsive and RTL ready.

### Is GemBooking translation ready?

Yes. All strings use the `gembooking` text domain, a POT file ships in `/languages`,
and the interface supports RTL languages.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“GemBooking – Appointment Booking, Booking Calendar & Reservations” is open source
software. The following people have contributed to this plugin.

Contributors

 *   [ Kodezen LLC ](https://profiles.wordpress.org/kodezen/)
 *   [ Tushar Imran ](https://profiles.wordpress.org/tusharimran/)

[Translate “GemBooking – Appointment Booking, Booking Calendar & Reservations” into your language.](https://translate.wordpress.org/projects/wp-plugins/gembooking)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/gembooking/), check
out the [SVN repository](https://plugins.svn.wordpress.org/gembooking/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/gembooking/) by 
[RSS](https://plugins.trac.wordpress.org/log/gembooking/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.3.1

25-08-2026
 * Fixed – Translations now apply to the admin and booking screens. GemBooking’s
JavaScript strings could never be matched to a language pack on translate.wordpress.
org, so even a fully translated locale still displayed English. The plugin now ships
a translation manifest that WordPress.org and WordPress can both read. * Fixed –
47 JavaScript strings across 16 screens carried an incorrect text domain (including“
gembook”, “gemboards” and “academy”) and so were never offered for translation at
all. * Fixed – Some GemBooking Pro settings tabs could render with missing spacing
and styles. * Improved – GemBooking Pro can now add its new Manage License screen
to the bottom of the Settings tabs.

#### 1.3.0

17-08-2026
 * Changed – GemBooking Pro’s features now ship entirely inside GemBooking
Pro. The free plugin no longer contains any locked, greyed-out or non-functional
Pro screens; every control it shows is fully usable. * Changed – The dynamic pricing,
extra services, seat map, floor plan and hotel editors, the Venues and Floors screens
and their matching booking-form steps are now added by GemBooking Pro when it is
installed. * Improved – Group attendees (per-attendee details for party bookings)
is now a free feature. * Improved – Booking form builder— field types that your 
site cannot use are hidden instead of shown as locked options. * Fixed – StoreEngine
shop archive— the “Book Now” button is now swapped in without output buffering, 
removing an unclosed buffer that could interfere with other plugins on the shop 
page.

#### 1.2.4

09-08-2026
 * Fixed – Custom database tables now use the WordPress-recommended dbDelta
schema format, so activation no longer logs “Multiple primary key defined” database
warnings.

#### 1.2.2

27-07-2026
 * Changed – Updated the bundled `chillerlan/php-qrcode` library to version
5 for continued security and compatibility. * Changed – The full React/Sass source
and build configuration now ship with the plugin so the compiled assets are publicly
reviewable and reproducible. * Fixed – Removed a leftover set of `add_action()` 
calls that were registered without a callback, preventing a possible fatal error
on PHP 8+.

#### 1.2.1

15-07-2026
 * Changed – GemBooking now requires PHP 8.1 or higher. On older PHP 
the plugin stays inactive and shows a notice instead of causing errors. * Improved–
Ticket QR codes are now generated on your own site (no third-party QR image service),
so ticket data never leaves your server. * Improved – Privacy & self-hosting— removed
all remote asset calls (fonts, images); the core plugin loads everything locally
and contacts no external service by default. * Improved – WordPress.org compliance&
security hardening— input sanitization, output escaping, proper script/style enqueuing,
and nonce/permission checks across admin and REST endpoints. * Improved – Admin 
notices on GemBooking’s own screens are hidden only on those pages, so other plugins’
notices are never suppressed elsewhere. * Fixed – Ticket QR image now loads correctly
on sites using plain permalinks.

#### 1.2.0

25-06-2026
 * Added – Timezone auto-detect— booking time fields detect the visitor’s
own timezone; slot picker, confirmations, My Bookings and emails show times in the
customer’s zone. * Added – Dashboard embed— “My Bookings” is now embedded as a native
tab inside the WooCommerce, StoreEngine and Academy LMS customer dashboards, so 
customers manage bookings without leaving the store/LMS. * Added – My Packages— 
customers see their purchased packages on the My Bookings page and book the included
services/events/resources for free, with a friendly empty state. * Improved – Add-
ons page— credential add-ons reserve a fixed connection slot so toggling/connecting
no longer makes the card grid jump. * Improved – Booking calendar— hover any day(
month, week or day view) to reveal an “Add” button that opens Add Booking pre-focused
on that date. * Improved – Manual booking— admin “Add Booking” no longer prefills
or assigns the booking to the admin; the real customer is captured and the booking
owner resolves from the customer’s email. * Improved – Booking Forms— the advanced
builder now unlocks automatically when GemBooking Pro is active (no separate add-
on toggle). * Improved – Ticket scanning— the Tickets admin page now surfaces the
frontend “staff scan” page link (with copy), so you can share it with gate staff
to redeem tickets from any phone. * Changed – Packages moved to GemBooking Pro— 
the Packages feature now requires GemBooking Pro. * Fixed – Add-on activation crash(“
Cannot assign to read only property”). * Fixed – “Show booking products in shop”
setting now saves. * Fixed – Customer Profile page crash on the timezone field. *
Fixed – StoreEngine dashboard “My Bookings” menu icon. * Fixed – Logged-out My Bookings
page now redirects to login and, when active, the store/LMS dashboard. * Fixed –
Team members— assigning an access role no longer overwrites a user’s existing roles,
and the team UI can no longer grant administrator. * Fixed – Multi-value booking-
form answers (checkbox / multi-select) are now saved correctly instead of being 
lost. * Fixed – Deleting a package from the admin list.

#### 1.1.0

18-06-2026
 * Added – Microsoft Teams location option— Microsoft Teams added as 
a selectable location type when creating or editing calendar events. * Improved –
All admin dashboard UI and frontend booking modal UI * Fixed – User reschedule and
cancellation for booking. * Fixed – All buttons click page reload issue. * Fixed–
All buttons disable issue. * Fixed – Onboarding reload issue.

#### 1.0.1

10-06-2026
 * Improved – Ticket selling— Fixed event datetime with sales cutoff,
per-tier pricing (Adult / Child / VIP / GA). * Improved – Tickets List table— Admin
table view for managing tickets. * Improved – Share system— Share bookings and events.*
Improved – Reply Features— Reply to booking notifications. * Improved – WooCommerce
Integration— Full WooCommerce checkout compatibility with prices, taxes, and gateway
inheritance. * Improved – StoreEngine integration— sell bookings through the StoreEngine
eCommerce engine (checkout, product linking, order sync). * Improved – eCommerce
Engine system— Flexible eCommerce engine architecture. * Improved – Price Global
Settings— Global pricing configuration. * Improved – Onboarding wizard— Industry
preset system with guided setup. * Improved – Free presets— Appointments, Photographer,
Lawyer/Consultant, Salon/Spa, Massage, Doctor, Therapy, Class/Studio, Fitness, Cafe,
Coworking, Catering, Shuttle, Boat Charter, Rentals, Car Rental, Gear Rental, Tutoring.*
Improved – Preset system— Pre-configured booking setups with lock system for Pro
presets. * Added – Taxonomy Support— Custom taxonomy for organizing services, events,
and resources. * Added – Location features— Location-based booking support with 
multiple location types (in-person, Zoom, Google Meet, MS Teams, online). * Improved–
Shortcode—[gembooking_service id=”123″]and[gembooking_event]shortcode support. *
Improved – Service & Event archive/single pages— Custom template pages for services
and events. * Improved – My Bookings page— Customer self-service booking management.*
Improved – Settings UI— Complete settings page redesign with organized sections (
General, Email, Hotel, Venue). * Improved – Booking management— Status workflow (
pending  confirmed / cancelled / rescheduled), bulk actions, search and filter by
date/status/customer. * Improved – Calendar view— Calendar view added to booking
management. * Improved – Booking details— Updated booking detail views. * Improved–
Reschedule UI— Reschedule and cancellation interfaces. * Improved – Modal system—
Multiple modal types for booking flows, confirmation dialogs before delete. * Improved–
Dashboard UI— Redesigned admin dashboard. * Improved – Time format— Configurable
time format support. * Improved – Breadcrumbs— Updated breadcrumbs across admin 
pages. * Improved – Icons & Colors— Updated icon set and border colors throughout
the admin. * Improved – Security hardening— Fixed multiple security issues across
the codebase. * Improved – Token security— Improved token handling for authentication.*
Improved – Auth fixes— Resolved authentication issues with Zoom server-to-server
OAuth. * Fixed – Timezone compatibility— Fixed timezone issues; now fully compatible
with WordPress timezone settings. * Fixed – Availability rules— Fixed availability
rule generation and bug issues. * Fixed – Preset fixes— Resolved preset pricing,
conflicts with StoreEngine, and multiple preset bugs. * Fixed – Ticket system— Fixed
ticket slot picking, attendee types, and booking issues. * Fixed – Host issues— 
Fixed event host missing and host member slot generation. * Fixed – Modal issues—
Fixed modal open/close issues across the admin. * Fixed – Payment issues— Fixed 
payment processing bugs. * Fixed – Notification indexing— Fixed notification indexing
for proper delivery. * Fixed – Required fields validation— Fixed form validation
for required fields. * Fixed – Menu option— Fixed admin menu option display. * Fixed–
Lazy load— Removed lazy loading for improved reliability. * Fixed – Table issues—
Fixed various table display and data issues. * Fixed – Tags and slug— Fixed taxonomy
tag and slug issues. * Fixed – Custom availability— Fixed custom availability override
issues. * Fixed – Slot conflicts— Resolved time slot conflict detection. * Fixed–
Team member slots— Fixed team member slot generation. * Fixed – Link creation— Fixed
link generation issues. * Fixed – Max capacity— Fixed maximum capacity enforcement.*
Fixed – Booking redirect— Fixed post-booking redirect behavior. * Fixed – Service
duration— Fixed duration and attendee value bugs. * Fixed – StoreEngine conflicts—
Resolved conflicts between presets and StoreEngine. * Fixed – Meta issues— Fixed
save meta not showing and meta data saving issues. * Fixed – Onboarding issues— 
Fixed onboarding wizard flow and menu issues.

#### 1.0.0

26-05-2026
 * Initial public release.

## Meta

 *  Version **1.3.1**
 *  Last updated **10 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.4 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 8.1 or higher **
 * Tags
 * [appointment booking](https://wordpress.org/plugins/tags/appointment-booking/)
   [appointment scheduling](https://wordpress.org/plugins/tags/appointment-scheduling/)
   [booking calendar](https://wordpress.org/plugins/tags/booking-calendar/)[booking system](https://wordpress.org/plugins/tags/booking-system/)
   [reservations](https://wordpress.org/plugins/tags/reservations/)
 *  [Advanced View](https://wordpress.org/plugins/gembooking/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/gembooking/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/gembooking/reviews/)

## Contributors

 *   [ Kodezen LLC ](https://profiles.wordpress.org/kodezen/)
 *   [ Tushar Imran ](https://profiles.wordpress.org/tusharimran/)

## Support

Issues resolved in last two months:

     1 out of 9

 [View support forum](https://wordpress.org/support/plugin/gembooking/)