fbpx
Bundle & Save 81.5%

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.

Explore 2026 Enterprise Suite →
Moodle Booking Plugin: Sell Courses & Schedule Onsite Workshops

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

Base Subtotal: $0.00
Enrolment Duration: Standard Override
Billing Cycle Limits: Ongoing
VAT/Tax rate: 10% Included
Total Final Price: $0.00
Get Booking Ultra Now

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.

Digital-First Enrolment

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
Student Booking Portal Front-End interface
Real view of the student course listing page template
Pricing Architecture

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
Pricing tier configuration wizard screen
Admin settings to construct pricing plans and custom enrollment overrides
Enrolment Controls

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
General overrides configuration interface screen
Global General Settings for booking timeouts and lockouts
Form Builder

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
Form Builder and questionnaire creator interface screen
Custom registration questionnaire editor and field manager
E-Commerce Add-Ons

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
Shipping management order list screen
Order fulfillment directory for shipping printed deliverable materials
Subscription Cycles

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
Stripe and PayPal gateway settings panel
Payment gateway webhook endpoints and security secret keys interface
Discount Engine

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
Vouchers coupons engine panel
Coupon code manager displaying status logs and discount totals
User Experience

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
Candidate booking database lists analytics
Admin listings directory detailing transaction reference logs and checks
Attendance Management

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
Voucher Boarding Pass layout with QR barcode
HTML boarding pass receipt ticket containing check-in QR barcode
Data Directory

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
Granular filters UI interface screenshot
Admin dashboard showing Course and Session date dropdown filters
Admin Controls

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
Bulk actions control panel interface screen
Multi-action toolbox for batch delete, transfer, and notifications
Compliance & Audits

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
Print-ready attendance sign-in sheet layout screenshot
Clean printable attendance sheet layout with signature columns

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.

Light Plan
$299.00
  • Single Site License
  • Stripe & PayPal Integrations
  • Onsite & E-learning Modes
  • Custom Questionnaires Builder
  • 1 Year Support & Updates
Purchase License
Enterprise Plan
$499.00
  • 5 Sites License
  • Stripe & PayPal Integrations
  • Onsite & E-learning Modes
  • Custom Questionnaires Builder
  • Physical Add-ons & Shipping
  • 1 Year Ultra-Priority Support
Purchase License

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
This section compares the premium features of Booking Ultra Pro with legacy alternatives like the Wunderbyte Booking module (mod_booking), the Moodle Face-to-Face plugin (mod_facetoface), and the Moodle Scheduler plugin (mod_scheduler). As a next-generation replacement for Wunderbyte and Face-to-Face, Booking Ultra Pro delivers a WordPress-style course scheduling and Stripe subscription gateway for Moodle LMS.

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:

  1. Log into your Moodle LMS site as an Administrator.
  2. Navigate to Site Administration ➔ Plugins ➔ Install plugins.
  3. Upload the primary booking_ultra.zip file package.
  4. Click Install plugin from the ZIP file.
  5. 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:

  1. Go back to Site Administration ➔ Plugins ➔ Install plugins.
  2. Upload the companion filter_booking_event.zip package.
  3. Click Install plugin from the ZIP file and run database upgrades.
  4. Once upgrades complete, go to Site Administration ➔ Plugins ➔ Filters ➔ Manage filters.
  5. 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):

  1. Go to the Event Booking Admin Dashboard.
  2. Click Create Event or edit an existing event.
  3. In the Payment Type field, select Recurring Subscription Only.
  4. In the Billing Interval field, choose Custom (in Days).
  5. Enter the exact number of days (e.g. `30` or `60`) in the box that appears.
  6. 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):

  1. Open the Event settings form (where you set the name and description).
  2. Scroll down to the **Multiple Pricing Plans / Options** section.
  3. Click **Add Price Plan / Option**.
  4. 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).
  5. 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:

  1. Click on **Categories** in the Admin step wizard.
  2. Next to your category, look at the **Embed Shortcode** column.
  3. Click inside the text box containing the code {booking_category id="1"}.
  4. A message will pop up saying **Shortcode copied!**.
  5. 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.

Moodle Site Admin Local plugin configuration dashboard page
General setting fields for currency defaults, thousand separators, and cancellation window lockouts.

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.
Event Creation form builder display page
Administration fields to link events directly to Moodle courses and configure delivery models.

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.
Merchant payment gateways Stripe and PayPal secrets setup page
Secured input fields for Stripe and PayPal setup on your Moodle booking plugin.

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.

Add-ons settings directory manager
Addon upgrades portal containing weight configurations and shipping requirements checkboxes.

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.

Candidate Boarding Pass layout with QR barcode
HTML boarding pass voucher containing order breakdown summaries and checkin barcodes.

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.

How does the Self-Learning / E-Learning delivery mode work? +

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.

How do plan-level enrolment overrides work? +

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.

Can I limit the number of payments for recurring plans? +

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.

Are global base settings ignored when pricing plans are used? +

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.

How do add-on shipping collection forms operate? +

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.

How do I embed the booking panel into a Moodle page? +

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.

Does Booking Ultra support Stripe Webhooks? +

Yes. Booking Ultra includes a built-in Stripe Callback webhook parser. It validates transaction signatures and confirms Moodle bookings instantly.

Moodle Expert Help