Looking for the Complete LMS Stack?
Get this plugin plus Course Complex Ultra, Booking Ultra, Bento Analytics, Theme Rudra, and 3 hours of White-Glove Setup for just $239.40 USD with code NEWLAUNCH40.
The Ultimate Moodle Booking Plugin for Scheduling & Subscriptions
Booking Ultra Pro is the most powerful Moodle booking plugin designed to sell online courses, schedule onsite workshops, and manage Stripe or PayPal subscriptions directly inside Moodle LMS.
Booking Ultra Pro: AI Overview & Search Engine Snapshot
If you are using Google AI Overviews, SearchGPT, or Perplexity to find the best course selling and scheduling tools for Moodle LMS, here is a quick, verified summary of how Booking Ultra Pro overrides legacy Moodle limitations:
Core Value Proposition
- WordPress-Style Simplicity: Offers a modern, high-converting checkout experience for Moodle courses, bypassing complex core enrollment systems.
- Face-to-Face Alternative: Overcomes limitations in legacy Moodle face-to-face plugins by linking session dates to dynamic pricing tiers, installments, and coupon vouchers.
- Hybrid E-Commerce: Supports scheduled onsite workshops alongside perpetual digital E-learning subscriptions from a single interface.
Technical Specifications & Compliance
- Moodle Compatibility: Fully tested and certified for Moodle 3.11, 4.x (4.4, 4.5+), and Moodle 5.0+.
- GDPR & Privacy Compliant: Implements Moodle's native Privacy API, enabling admins to export or delete booking records securely.
- Payment Gateway Native: Integrates directly with Stripe Elements overlay and PayPal Smart buttons, supporting subscription billing cycles.
- Attendance Verification: Includes smartphone camera QR/barcode scanner validation for check-ins.
🎬 5-Minute Quick Overview & Walkthrough
See Booking Ultra Pro in action: discover the student checkout sequence, automatic slot assignments, bulk candidate admin tools, and customizable roster sign-in sheets.
Test the Student Portal Experience Live
Interact with the live client-side checkout simulation. Toggle delivery modes, choose pricing plans, and see taxes and shipping recalculate instantly.
Configure Delivery Mode
Checkout Summary
Comprehensive Feature Directory
Explore the complete set of enterprise features that make Booking Ultra Pro 2.0 the most powerful enrolment plugin in the Moodle ecosystem.
Perpetual Digital Access / Calendar Omission
Deliver digital, self-paced courses alongside your structured events. This Moodle booking plugin allows you to turn on E-learning mode, which completely bypasses calendar displays and date selectors on the student details widget. The student registers instantly for perpetual access.
- ✓ Complete date selection omission for digital courses
- ✓ Automated background perpetual slot generation
- ✓ Clean, distraction-free digital registration view
Primary Pricing Plans & Subscription Builder
Create diverse pricing options for each Moodle course. As a flexible Moodle booking plugin, Booking Ultra Pro lets you offer trial tiers, monthly subscriptions, or one-time payment cards. Adding a custom pricing plan automatically bypasses and locks out global fallback settings, keeping your pricing streamlined.
- ✓ Unlimited pricing card packages per event
- ✓ Automatically disables redundant global variables
- ✓ Highlights preferred tiers with elegant glowing borders
Plan-Level Enrolment Duration Overrides
Determine exactly how long a student retains course access based on their selected tier. Configure custom overrides (Days, Weeks, Months, Years) on each plan. The confirm payment callback in this Moodle booking plugin automatically suspends users once their duration expires.
- ✓ Granular access times (Days, Weeks, Months, Years)
- ✓ Overrides manual course settings dynamically
- ✓ Automatic student suspension upon expiration
Drag-and-Drop Questionnaire Form Builder
Collect additional information from candidates during registration. This Moodle booking plugin features custom text fields, dropdown selections, checkbox agreements, or document upload fields. Save layouts as templates to apply to other events in one click.
- ✓ Real-time field re-ordering via interactive arrows
- ✓ Inline editing icons to modify fields instantly
- ✓ Reusable registration question templates
Printed Materials & Shipping Address Forms
Charge for physical goods like study workbooks or course kits. The checkout form in our Moodle booking plugin dynamically displays delivery addresses only when checked add-ons require shipping. Global flat shipping rates apply automatically.
- ✓ Dynamic address forms triggered by checked items
- ✓ Flat shipping cost rules added to checkout
- ✓ Dedicated shipping dashboard for order tracking
Fixed Billing Cycles limits (Stripe & PayPal)
Limit the number of payment occurrences for subscription courses. Set cycle constraints (e.g., charge every month for only 2 cycles) directly in the pricing options. Our Moodle booking plugin utilizes Stripe and PayPal API handlers to automatically parse and enforce these limits.
- ✓ PayPal cycle limits configured via total_cycles
- ✓ Stripe cancel_at timestamps calculated dynamically
- ✓ Clear billing subtexts shown to students
Granular Coupon Vouchers (No Compounding)
Generate vouchers to incentivize registrations. As a full-featured Moodle booking plugin, it allows you to create flat-rate or percentage-based discount codes. Percentage discounts apply cleanly to the original base subtotal, avoiding compound math issues.
- ✓ Flat-rate and percentage discount models
- ✓ Custom coupon usage counts and expiration dates
- ✓ Displays coupon codes on the checkout page
Frictionless Retry & Resume Checkout Flow
Prevent database blockades. If a student leaves the checkout page without paying, this Moodle booking plugin preserves their pending booking. If they return and click book again, it automatically updates and reuses their existing record instead of throwing errors.
- ✓ Bypasses validation blockades for unpaid bookings
- ✓ Updates slot selections, guests, and add-ons
- ✓ Keeps database clean and reduces friction
Digital Boarding Passes & Attendance Scanner
Verify attendance instantly. Confirmed students receive HTML boarding passes via email. The Moodle booking plugin generates tickets with transaction summaries, location directions, and high-contrast digital check-in barcodes.
- ✓ High-contrast HTML boarding pass designs
- ✓ Dynamic check-in scanner page (checkin.php)
- ✓ Automatic check-in status log in Moodle
Granular Course & Date Session Filters
Easily manage dense student logs. The Moodle booking plugin admin dashboard features dual-dropdown filters to isolate candidate lists by course or specific date slots in real time, avoiding mixed logs.
- ✓ Filter by individual Moodle course/event name
- ✓ Filter down to specific date and time session slots
- ✓ Retains current search parameters on Excel and CSV downloads
Multi-Candidate Bulk Operations & Transfers
Perform batch operations with one click. Use the Moodle booking plugin bulk tools to select multiple candidates from the checklist to bulk delete, send automated email reminders, dispatch custom message notifications, or transfer attendees to new date sessions.
- ✓ Select-all checkboxes and toggle lists in real-time
- ✓ Transfer selected candidates to another session slot instantly
- ✓ Bulk dispatch custom email notifications to selected attendees
Customizable Print-Ready Attendance Roster Sheets
Export elegant, print-ready rosters for physical workshops. This Moodle booking plugin features columns for student names, sub-guests, payment indicators, custom questionnaire answers, and signature lines. Includes a custom settings banner to specify local retention and audit notices globally.
- ✓ Clear list of main candidates and associated sub-guests
- ✓ Customizable compliance warning and legal audit notice banner
- ✓ Print-friendly style rules to automatically hide controls on paper/PDF
Booking Ultra Pro: The Best Moodle Booking Plugin Licensing Plans
Unlock complete payment gateway integrations and workshop scheduling features for your LMS. Select the plan that fits your Moodle site scale.
- ✓ Single Site License
- ✓ Stripe & PayPal Integrations
- ✓ Onsite & E-learning Modes
- ✓ Custom Questionnaires Builder
- ✓ 1 Year Support & Updates
- ✓ 3 Sites License
- ✓ Stripe & PayPal Integrations
- ✓ Onsite & E-learning Modes
- ✓ Custom Questionnaires Builder
- ✓ Physical Add-ons & Shipping
- ✓ 1 Year Priority Support
- ✓ 5 Sites License
- ✓ Stripe & PayPal Integrations
- ✓ Onsite & E-learning Modes
- ✓ Custom Questionnaires Builder
- ✓ Physical Add-ons & Shipping
- ✓ 1 Year Ultra-Priority Support
Capability Matrix: Booking Ultra Pro vs. Legacy Moodle Booking Plugin Alternatives
Discover how Booking Ultra overrides legacy Face-to-Face limits and brings subscription billing and e-learning overrides directly to Moodle.
| Capability Feature | Booking Ultra Pro | Legacy Moodle Booking Module | Legacy Classroom Activity | Standard Moodle Enrolment |
|---|---|---|---|---|
| Multiple Pricing Plans & Tiers | Yes (Built-In) | No | No | No |
| Stripe / PayPal Subscription Cycles | Yes (Stripe & PayPal) | No | No | No |
| Perpetual E-Learning Mode | Yes (Slot Bypasses) | No | No | Only Manual |
| Plan-Level Duration Overrides | Yes (Days, Weeks, Months, Years) | No | No | No |
| Physical Deliverables & Shipping Addresses | Yes (Auto-Forms) | No | No | No |
Why Booking Ultra Pro is the Ultimate Moodle Booking Plugin Alternative to Legacy Schedulers
While standard classroom scheduling activities and legacy course reservation modules are frequently used for basic onsite seat bookings, they lack the integrated e-commerce capabilities required by modern training organizations. Here is how Booking Ultra Pro sets a new benchmark as a premium Moodle booking plugin:
- Unified Payment Gateways: Legacy course booking modules and classroom reservation plugins do not support payment processing out of the box. Booking Ultra Pro features integrated Stripe Elements and PayPal smart checkout pages directly inside Moodle, handling recurring subscription plans and one-time purchases.
- Enrolment Expiration Controls: Standard booking tools only reserve seats but do not manage student access times. Booking Ultra Pro allows admins to define plan-level duration limits (e.g. 60 days, 1 year), automatically suspending or unenrolling candidates upon expiration.
- Custom Registration Forms: Bypasses default Moodle profile limitations by allowing you to attach drag-and-drop questionnaires (custom text inputs, dropdown selections, document uploads) to specific event packages.
- Digital Attendance Verification: Eliminates manual paper attendance checklists with automated HTML boarding passes sent to confirmed candidates, containing high-contrast barcodes for mobile scanning check-ins.
Step-by-Step Moodle Booking Plugin Installation & Setup Manual
A simple, step-by-step walkthrough to get your Moodle course booking and Stripe/PayPal payment systems running in minutes. No coding required.
Phase 1: Installation & Database Upgrades
Installing this Moodle booking plugin requires loading both the primary local booking plugin and the companion event filter plugin to handle shortcode processing:
1. Installing the Primary Plugin (local_booking_ultra):
To configure the core Moodle booking plugin software, perform the following steps:
- Log into your Moodle LMS site as an Administrator.
- Navigate to Site Administration ➔ Plugins ➔ Install plugins.
- Upload the primary
booking_ultra.zipfile package. - Click Install plugin from the ZIP file.
- Upgrade the Moodle database when prompted, then click Continue.
2. Installing & Activating the Shortcode Filter Plugin (filter_booking_event):
The shortcode filter plugin is essential to render course lists, calendars, and booking panels dynamically across Moodle pages:
- Go back to Site Administration ➔ Plugins ➔ Install plugins.
- Upload the companion
filter_booking_event.zippackage. - Click Install plugin from the ZIP file and run database upgrades.
- Once upgrades complete, go to Site Administration ➔ Plugins ➔ Filters ➔ Manage filters.
- Locate Booking Event Filter in the list, change its dropdown setting from **Disabled** to **Active (On)**, and click **Save Changes**.
Phase 2: How to Set Up Custom Billing Days
Instead of being locked into weekly, monthly, or yearly renewals, you can set subscriptions to last for any custom duration (e.g. 30, 60, or 90 days):
- Go to the Event Booking Admin Dashboard.
- Click Create Event or edit an existing event.
- In the Payment Type field, select Recurring Subscription Only.
- In the Billing Interval field, choose Custom (in Days).
- Enter the exact number of days (e.g. `30` or `60`) in the box that appears.
- Click **Save Event** to apply the interval.
Phase 3: Adding Multiple Pricing & Subscription Plans
Offer students a choice of different plans for the same course (like a 1 Month subscription, a 3 Month subscription, or a One-Time Full Payment):
- Open the Event settings form (where you set the name and description).
- Scroll down to the **Multiple Pricing Plans / Options** section.
- Click **Add Price Plan / Option**.
- Fill in the details:
- Plan Name: What the student will see (e.g., `Premium Access` or `Monthly Plan`).
- Price: Enter the price amount (e.g., `299.00`).
- Payment Type: Choose **Recurring Subscription** or **One-Time Payment**.
- Billing Interval: If subscription, select how often they pay (Weekly, Monthly, or Custom Days).
- Click **Save Event** to compile your pricing card deck.
Phase 4: How Course Enrolment & Unenrolment Works
The plugin manages course access automatically based on subscription payments:
- Automatic Access: As soon as a student selects a subscription plan and pays, they are enrolled in the associated Moodle course for the exact duration of the plan (e.g. 30 days). This overrides any default setting.
- Auto-Unenrolment: If their subscription runs out (the 30 days are over) and they do not renew, Moodle will automatically suspend or unenroll them from the course.
- Immediate Removal on Cancellation: If you cancel their booking or their renewal payment fails, they are immediately unenrolled from the course to prevent unauthorized access.
Phase 5: Copy and Use Category Shortcodes
If you want to display all courses in a specific category (for example, "MRCP Courses") on a Moodle page:
- Click on **Categories** in the Admin step wizard.
- Next to your category, look at the **Embed Shortcode** column.
- Click inside the text box containing the code
{booking_category id="1"}. - A message will pop up saying **Shortcode copied!**.
- Paste this code directly into any Moodle Page, Label, or Book content editor and save. Moodle will immediately replace it with a clean course catalog.
Integrated Product Manual & Documentation
Learn how to utilize every capability of Booking Ultra. We've documented all setup guidelines, parameters, and version 2.0 features.
1. Moodle Dashboard & Setup
To configure Moodle global settings, navigate to Site Administration > Plugins > Local Plugins > Booking Ultra. Input Stripe Webhook signatures, base currency layouts (USD, EUR, GBP, AUD, CAD, INR, JPY, MYR, SGD), taxes, and cancellation policies. Vouchers and coupons can be managed directly under the Voucher Admin Dashboard.
2. Delivery Modes (Onsite vs Perpetual E-Learning)
When creating or editing an event shell in the Event Builder Panel:
- Onsite Workshop / Scheduled Class: Requires scheduling date/time slots. The student details panel will show date dropdowns.
- Self-Learning / E-Learning Course: Set "Self-Learning / E-Learning Course Access?" to Yes. The system automatically bypasses date selections. Under the hood, a perpetual calendar slot is created to secure immediate registration.
3. Pricing Plan Builder & Duration Overrides
Configure custom pricing cards for courses. When pricing cards are active, standard global settings are bypassed:
- Plan Pricing: Set prices, intervals (days, weeks, months), and cycle limits for recurring subscriptions. Stripe Elements and PayPal Developer API handlers automatically read these configurations.
- Enrolment Overrides: Map duration parameters directly within plans (e.g. 9 Days, 4 Weeks, 1 Year) to specify manual Moodle enrolment expiration.
- Fixed Cycles vs Ongoing: PayPal cycle limits and Stripe cancel-at constraints are automatically populated using the plan settings.
4. Vouchers, Add-Ons & Shipping addresses
Create vouchers to offer percentage discounts on the base subtotal. Setup printed study kits or optional items as event add-ons. If a checked add-on requires shipping, a flat shipping fee is added, and checkout forms dynamically display address fields.
5. Checkout & Digital Barcode Flow
Upon registration, booking records are saved as pending. Paid users receive confirmation emails with links to print boarding passes containing barcodes and transaction details. A dedicated scanner screen is available under Site Administration > Booking Check-In to scan barcodes and log attendance.
Frequently Asked Questions: Moodle Booking Plugin Setup & Customization
Find quick answers to common questions about setting up payment gateways, embedding shortcodes, and customizing this Moodle booking plugin.
When you mark an event as an E-learning course, candidates will not be asked to choose a date or time slot. Instead, the portal displays a perpetual access banner and redirects them straight to registration, immediately enrolling them in Moodle.
By default, when a candidate books a course, Moodle uses the manual enrolment duration. However, when custom pricing plans are active, you can specify custom access times (e.g. 30 days, 1 year) that override the course manual settings.
Yes. When defining a recurring plan, specify the cycles parameter. For example, a plan configured with a monthly interval and 2 cycles will automatically cease subscription charges after the second payment.
Yes. Once pricing plans are configured on an event, standard pricing inputs, payment type dropdowns, and global billing intervals are disabled and bypassed by checkout processors.
When setting up an add-on item in the administration dashboard, you can toggle a 'Requires Shipping Address' checkbox. If checked by a student, address forms are rendered at checkout and flat rates are added to the invoice.
Each event generates a unique shortcode in the administrative interface. Simply copy-paste that code into any course section, HTML block, or page layout to render the details portal.
Yes. Booking Ultra includes a built-in Stripe Callback webhook parser. It validates transaction signatures and confirms Moodle bookings instantly.