Hooks
Booking Suite exposes prefixed WordPress actions and filters so custom code can extend booking, payment, notification, availability, and integration behavior without editing plugin files.
Filters
xcbs_available_slots
Filters computed availability slots.
Arguments: $slots, $service_id, $staff_id, $date_start, $date_end, $customer_timezone.
xcbs_booking_data_before_insert
Filters the sanitized booking row before it is inserted into xcbs_bookings.
Arguments: $data, $payload.
xcbs_email_template_{type}
Filters a raw HTML email template before placeholders are replaced. Supported core types include booking_created, booking_confirmed, booking_cancelled, booking_rescheduled, reminder_24h, and reminder_1h.
Arguments: $template, $booking.
xcbs_stripe_payment_intent_args
Filters Stripe PaymentIntent arguments before the remote request is sent.
Arguments: $args, $booking.
xcbs_zoom_meeting_args
Filters Zoom meeting creation arguments before the remote request is sent.
Arguments: $args, $booking.
xcbs_intake_form_fields
Filters public intake fields returned for a service.
Arguments: $fields, $service_id.
Actions
xcbs_booking_created
Runs after a booking row is inserted.
Arguments: $booking.
xcbs_booking_confirmed
Runs when a booking is confirmed.
Arguments: $booking.
xcbs_booking_cancelled
Runs when a booking is cancelled.
Arguments: $booking.
xcbs_booking_completed
Runs when a booking is marked completed.
Arguments: $booking.
xcbs_payment_received
Runs after a Stripe payment is verified and recorded.
Arguments: $booking, $payment_intent_id.
xcbs_reminder_sent
Runs after a reminder notification is sent.
Arguments: $booking, $type.