The Definitive Guide to Selling Moodle Courses and Managing Onsite Bookings (Without WooCommerce)
If you are a training provider or university running Moodle, you have likely struggled with a basic question: How do I sell my courses cleanly?
For years, the standard advice has been to set up WordPress, install WooCommerce, install a bridge plugin (like Integration Helper), and configure database synchronizations. While this works for simple digital course files, it falls apart when you try to sell blended learning, scheduled seminar workshops, or classroom events. WooCommerce knows nothing about classroom seats, attendance waitlists, custom Moodle registration forms, or checking in physical students at the door.
In this comprehensive guide, we will detail why selling courses natively inside your LMS is the key to maximizing conversion rates, and how the **Booking Ultra Pro 2.0** plugin package handles Stripe subscriptions, PayPal billing cycles, physical deliverables, and QR check-ins without third-party integrations.
Why Course Selling Bridges Break Down
Using a separate system (like WooCommerce or Shopify) to sell Moodle courses introduces severe database and user experience friction:
- Enrolment Delays: When a payment is processed on WooCommerce, a background webhook has to run to tell Moodle to enrol the user. If the cron job lags, students are left waiting outside their course.
- Checkout Redirections: Forcing students to navigate from your course catalog to a shop website, register there, and then get sent back to Moodle ruins checkout conversion rates.
- Unpaid Pending Booking Blockades: If a student registers for a workshop but leaves the checkout page before paying, traditional plugins block them from booking again because their email is "already registered."
How Booking Ultra Solves the Blended Learning Challenge
Blended learning combines self-paced online courses (E-learning) with physical classroom sessions (Onsite workshops). A modern booking system must handle both seamlessly. Here is how Booking Ultra Pro manages these requirements:
1. Perpetual E-Learning Access (Omit Date Selectors)
If you are selling a pure online course, forcing a student to pick a scheduled calendar date makes no sense. Booking Ultra features a **Self-Learning / E-Learning Mode** switch. When turned on, the system omits all date dropdowns and calendar displays, allowing the candidate to check out instantly for perpetual access.
2. Multiple Pricing Plans & Stripe Subscriptions
Don't lock your students into a single price. Booking Ultra lets you build custom pricing packages for the same course:
- One-Time Payments: A single full payment for lifetime access.
- Recurring Subscriptions: Charge monthly, weekly, or yearly using Stripe and PayPal.
- Fixed Billing Cycles: Set cycle limits (for example, charge every month for only 2 cycles) directly in the pricing setup. Stripe and PayPal API handlers automatically parse and enforce these limits.
3. Plan-Level Enrolment Duration Overrides
Different pricing tiers should grant different access times. With Booking Ultra, you can set custom overrides (e.g. 30 Days, 6 Months, or 1 Year) directly on each plan. When the subscription expires or is canceled, the confirm payment callback automatically suspends the student's Moodle enrolment.
4. Flat-Rate Shipping for Physical Add-Ons
If your course includes physical workbooks or study kits, you can add them as optional upgrades at checkout. If a checked add-on requires shipping, a flat shipping fee is automatically added, and shipping address fields dynamically expand on the form.
Step-by-Step Installation Guide (For Administrators)
Setting up Booking Ultra takes less than five minutes. The system uses a primary local plugin block and a companion filter plugin to process shortcodes:
1. Install Main ZIP (local_booking_ultra)
Log in as an Administrator, navigate to Site Administration ➔ Plugins ➔ Install plugins, upload the primary booking_ultra.zip package, and run the Moodle database upgrade wizard.
2. Install Filter ZIP (filter_booking_event)
Upload the companion filter_booking_event.zip. Once installed, go to Filters ➔ Manage filters and change Booking Event Filter status to **Active (On)**. This allows shortcodes to render.
QR Attendance Boarding Passes & check-in Scanner
For classroom training, manual attendance sheets are slow and insecure. Booking Ultra automates this process:
- Automated Boarding Pass: Once payment is confirmed, the system emails the student a high-contrast HTML boarding pass.
- QR Attendance Barcode: The boarding pass includes a secure barcode/QR code linking to the student's booking record.
- Mobile check-in Scanner: Administrators can scan the student's ticket using their phone at the classroom door to instantly log attendance in Moodle.
Boost Your Moodle Course Sales Today
Upgrade to Booking Ultra Pro. Get Stripe subscriptions, flat-rate physical shipping add-ons, waitlist promotions, and QR barcode check-ins natively inside Moodle.
Frequently Asked Questions
No. Booking Ultra operates natively inside Moodle. Students check out and pay directly on your LMS, eliminating the need for WordPress or WooCommerce.
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.
Yes. You can configure fixed billing cycles (e.g. monthly for 3 cycles) directly in the pricing card settings. Stripe and PayPal handlers automatically enforce these limits.