plugin-icon

Oryx Bookings

A professional service booking and appointment scheduling system for WordPress with staff management, real-time availability, and enterprise-grade sec …
Version
1.0.0
Senast uppdaterat
Feb 5, 2026

Oryx Bookings is a powerful, feature-rich appointment and service booking plugin designed for businesses that require a reliable, scalable, and secure booking infrastructure. Built from the ground up with custom database tables, clean architecture, and modern PHP 8.0+ practices, Oryx Bookings delivers exceptional performance even at scale.

Whether you run a salon, clinic, consulting firm, spa, fitness studio, or any service-based business, Oryx Bookings provides everything you need to manage appointments, staff schedules, and customer bookings seamlessly.

Why Choose Oryx Bookings?

  • Custom Database Architecture – Optimized InnoDB tables with proper indexing for lightning-fast queries
  • Enterprise-Grade Security – Rate limiting, spam protection, booking locks, and GDPR compliance built-in
  • Clean Architecture – Repository pattern, Use Cases, and proper separation of concerns
  • Real-Time Availability – Intelligent slot calculation with double-booking prevention
  • Elementor Integration – Native Elementor widget with 6 beautiful templates
  • Developer-Friendly – Action hooks, well-documented code, and extensible design

Core Features

Service Management

  • Create unlimited services with custom pricing and duration
  • Rich text content editor with media support for detailed service descriptions
  • Featured images for visual service presentation
  • Service categories with hierarchical support for organized navigation
  • Active/Inactive status control for seasonal or temporary services
  • Two availability modes: Staff-based (requires staff selection) or Service-only (company schedule)
  • Assign multiple staff members to each service

Staff Management

  • Complete staff profiles with name, job description, and photo
  • Link staff to WordPress users (optional)
  • Flexible Availability Modes:
    • Use company default working hours
    • Custom weekly schedule per staff member
  • Individual staff days off management
  • Active/Inactive status for staff availability control

Booking System

  • Real-time available slot calculation
  • Automatic slot generation based on service duration
  • Smart conflict detection prevents double-bookings
  • Support for multiple booking statuses: Pending, Confirmed, Cancelled, Completed
  • Customer information capture (name, email)
  • UTC timestamp storage for timezone accuracy
  • Action hooks for integration with email notifications and CRM systems

Company Schedule & Holidays

  • Working Hours Configuration:
    • Set opening and closing times for each day of the week
    • Mark specific days as closed (e.g., weekends)
    • Visual time picker interface
  • Company Days Off / Holidays:
    • Add unlimited holiday dates with optional reasons
    • Automatic booking prevention on closed dates
    • Easy management with add/delete functionality

Security & Protection

  • Rate Limiting:
    • Configurable request limits per action (slots lookup, booking creation)
    • Adjustable time windows
    • IP + User-Agent tracking for accurate limiting
  • Spam Protection:
    • Honeypot fields to catch bots
    • Time-based tokens prevent instant form submissions
    • Minimum form fill time requirement
  • Slot Security:
    • Cryptographically signed slot tokens
    • Token expiration (TTL) prevents replay attacks
    • Server-side validation of all booking requests
  • Booking Lock:
    • Transient-based locking prevents race conditions
    • Configurable lock duration (5-60 seconds)
    • Ensures only one booking per slot
  • Security Logging:
    • Track rate limit hits, token failures, booking conflicts
    • Privacy-conscious logging with IP masking and email hashing
    • Option storage or error_log output

GDPR Compliance

  • Personal Data Export: Integrated with WordPress privacy tools for data export requests
  • Personal Data Erasure: Anonymizes booking records while preserving business data
  • Privacy-First Design: Minimal data collection, secure storage practices

Frontend Integration

  • Shortcode: [oryx_bookings] – Display the complete booking form anywhere
  • My Bookings Shortcode: [oryx_bookings_my_bookings] – Let customers view their bookings
  • AJAX-Powered: Smooth, no-reload experience for date/slot selection
  • Responsive Design: Works perfectly on desktop, tablet, and mobile
  • Template System: Choose between Default and Steps templates
  • Customizable Colors: Primary color picker to match your brand
  • CSS Classes for Styling:
    • .oryx-bookings-form – Main form container
    • .oryx-bookings-field – Individual form fields
    • .oryx-bookings-submit – Submit button

Elementor Integration

  • Native Elementor Widget – Drag-and-drop booking form widget
  • 6 Beautiful Templates:
    • Grid
    • Stepper
    • Accordion
    • Card Flow
    • Flat Split
    • Focus Input
  • Live Preview in Elementor editor
  • Custom Widget Category for easy access

Admin Dashboard

  • Quick Overview: Pending bookings count, active services, active staff at a glance
  • Modern UI: Clean, card-based design with Tailwind CSS
  • Easy Navigation: Quick links to all management areas
  • Real-Time Stats: Database-driven statistics

Internationalization

  • Fully translation-ready with complete text domain support
  • All strings wrapped in translation functions
  • POT file generation ready
  • RTL-compatible design

Developer Features

  • Action Hooks:
    • oryx_bookings_booking_created – Fires when a new booking is created
  • Repository Pattern: Clean data access layer for all entities
  • Use Cases: Business logic encapsulated in dedicated classes
  • PSR-4 Autoloading: Modern PHP class loading
  • Type Declarations: Strict typing with PHP 8.0+ features
  • WordPress Coding Standards: Fully compliant with WPCS

Usage

Quick Start Guide

Step 1: Configure Working Hours Go to Oryx Bookings > Settings > Working Hours and set your business operating hours for each day of the week.

Step 2: Add Holidays (Optional) Navigate to Settings > Holidays to add any dates when your business will be closed.

Step 3: Create Staff Members Go to Staff > Add New Staff and create profiles for your team members. Choose whether they follow company hours or have custom schedules.

Step 4: Create Services Navigate to Services > Add New Service. Set the name, duration, price, and assign staff members who can provide this service.

Step 5: Display the Booking Form Add the shortcode [oryx_bookings] to any page or post, or use the Elementor widget.

Shortcodes

Main Booking Form: [oryx_bookings] Displays the complete booking form with service selection, staff selection (if applicable), date picker, time slots, and booking confirmation.

Customer Bookings: [oryx_bookings_my_bookings] Allows logged-in customers to view their booking history.

For Developers

Hook into new bookings: add_action(’oryx_bookings_booking_created’, function($booking_id, $booking_data) { // Send email notification // Update CRM // Trigger automation }, 10, 2);

Third-Party Libraries

This plugin bundles the following third-party libraries:

Flatpickr v4.6.13 A lightweight, powerful datetime picker Source: https://flatpickr.js.org/ Copyright (c) 2017 Gregory Petrosyan License: MIT License (https://opensource.org/licenses/MIT)

Support

For support, feature requests, or bug reports, please visit the plugin support forum or contact the developer.

Credits

Developed by Rabie Eltegani with a focus on performance, security, and user experience.

Gratispå Business-paket
Testat upp till
WordPress 6.9.1
Detta tillägg är tillgängligt för nedladdning för din .