BookingWP v5.4.2 - #1 WordPress Appointment Booking Plugin
#1 WordPress Appointment Booking Plugin
Related items
Related Woocommerce Plugins
Woocommerce Subscriptions
by Prospress Inc
WooCommerce Subscriptions Plugin allows you to introduce a variety of subscripti...
Woocommerce Smart Coupons
by StoreApps
Enhance your coupon options – create gift certificates, store credit, coupons ba...
Woocommerce Table Rate Shipping
by WooCommerce
Advanced, flexible shipping. Define multiple shipping rates based on location, p...
WooCommerce Appointments is the perfect plugin for handling appointments on your own website. Fully integrated with WooCommerce, WordPress and Google Calendar. It is the best appointment scheduling software you can get right now. Request payments or accept appointments for free. This WooCommerce extension allows you to receive payments for appointments with little to no effort.
Recent releases
Release history
- Dev - PHPStan raised to level 3 (phpVersion 7.4).
- Dev - Tests: regression coverage for range_type RRULE routing parity and orphan `rrule` field cleanup.
- Dev - Tests: lock GCal failure-path contracts (`make_gcal_request()` → `WP_Error`, `sync_event_resource()` → `false`) and rule-minutes payload shape across all `compute_rule_minutes()` branches.
- Indexed availability: RRULE expansion follows `range_type` (same as dynamic); orphan `rrule` on non-`rrule` rules uses the non-RRULE path and purges legacy expand rows on background passes.
- Google Calendar: inbound sync clears `rrule` when an event is stored as non-recurring (`custom` / `custom:daterange`).
View changelog
- PHPStan: level 2 with a clean baseline — expanded plugin and integration stubs plus PHPDoc/type fixes across core.
- Storefront calendar: `data-engine` reports rules/occupancy source (1 indexed, 2 dynamic, 3 indexed + appointment cache).
- Performance - Indexed availability: occupancy reads from appointment cache when healthy (live fallback during backfill; in-cart recurring holds merged); backfill batches gap-only missing appointments.
- Dev - Orders: `get_appointment_ids_from_order_and_item_id()` deprecated — use `get_appointment_ids_from_order_item_id( $order_item_id, true, $order_id )`.
- Dev - Orders: `get_appointment_ids_from_order_item_id()` triggers `wc_doing_it_wrong` when `$order_id` is omitted (except opt-in order-line `_appointment_id` cache).
- Indexed availability: weekday `time:N` rules count only matching days; re-enable no longer wipes inline indexing; backfill pending flag clears/re-queues stale jobs and stops on zero-gap batches.
- Google Calendar: scheduled sync is forward-only unless admin full re-sync; inbound sync skips stale events (event ID / `site_url` mismatch).
- Availability / slots: overlap day keys use Fake UTC civil midnight so 00:00 wall slots stay on the correct day on negative-offset stores.
- Orders: order-scoped line-item lookup (`$order_id` on `get_appointment_ids_from_order_item_id`) — orphaned `_appointment_order_item_id` no longer shows another customer’s appointment; line delete clears the link before ID reuse.
- Cart: session load removes holds tied to terminal orders or past start dates and releases `in-cart` appointments to `was-in-cart`.
View changelog
No changelog available for this version.
Frequently asked questions
Is BookingWP - #1 WordPress Appointment Booking Plugin GPL licensed?
Can I use BookingWP - #1 WordPress Appointment Booking Plugin on multiple websites?
How much does BookingWP - #1 WordPress Appointment Booking Plugin cost on GPLCoffee?
Are updates included with BookingWP - #1 WordPress Appointment Booking Plugin?
Is BookingWP - #1 WordPress Appointment Booking Plugin safe to download?
Auto-updates included
Install it once, update automatically.
The GPLC Connector installs this plugin from your wp-admin and rolls out new versions to your connected sites - up to 25. Included with 12-month and Geek Lifetime plans (plus legacy 6-month).