Activities: Booking

Maintained by it's meDavid Bogner
The module is perfect for managing participants and subscription of online and offline courses and events.
731 sites
82 fans
Current versions available: 9

This plugin needs funding. If you rely on it, then consider a support contract so you can use it in the future as well. There are a lot of necessary tasks to be accomplished in order to keep the module working and up to date.


Version for Moodle 3.8 is not yet funded. If you use this plugin consider a maintenance/support contract in order to have a working module for your next Moodle upgrade! Contact info (at) for further information.


  • Implement automated testing
  • Upgrade from custom availability to Moodle availability API has to be done
  • Replace YUI Javascript framework with JQUERY framework (YUI is not developped anymore)
  • Provide documentation (only a part of the features are documented)
  • Language optimization (German language support lacks some strings)
  • Additional features

Recent contribution:

  • Automn 2018: Added Moodle mobile support. Added GDPR API.
  • Spring 2018: Moodle 3.4 suppport added, new features to add notes to bookings and to send ical fiels separately and to choose which data is used for the ical-field location. Several bug fixes.
  • Automn 2017: Sign-In Sheet download form with new download options, Customizable fields to display in the sign-in sheet and other areas, Improved editing of session times, Include session times in confirmation mail, and much more
  • July 2017: Transfer users to other booking option within a booking instance. Support for Moodle 3.2, 3.3 and Boost theme added. Bug fix when status changed from waitinglist to regularly booked in order to automatically subscribe users to the associated course. Design improvements, replace YUI framework with JQuery and AMD.
  • April 2017: New features added: sign-in sheet customization, custom fields for booking options funded by Lesterhuis Training & Consultancy
  • February 2017: PostgreSQL is available again! Thanks to funding of University of Applied Sciences Würzburg-Schweinfurt
  • January 2017: Added completion settings based on rating and added rating feature for bookings. Thanks to funding of the University of Coventry
This is a powerful booking tool, that provides a lot of features. It is perfect managing course bookings, or bookings of events, that are not associated with a moodle course. Some of the features are:
  • Max participants
  • Waitinglist
  • Automatic course subscription
  • Automatic group subscription and creation of groups
  • Confirmation mail
  • Download userlist as xls or ods
  • Cancellation system
  • Subscription period
  • Accept terms and conditions
  • Custom messages
  • Bulk subscription management
  • Assign teachers to be able to manage a single booking option
  • Sign-in Sheet as PDF (for print)
  • Custom fields for booking options
  • Activity completion
  • Rating and Grading
  • and a lot more.


Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3


it's me
David Bogner (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS


  • it's me
    Sat, Oct 8, 2016, 3:05 AM
    @Rob: How many bookings do you have? 10, 1000 or 10000 or 100000 or 1.000.000?
  • Picture of Georg Wiesinger
    Thu, Oct 13, 2016, 9:37 PM
    Thanks for your help, David! I will translate all missing strings to German, first I need to check how works...
  • Picture of Rob Johnson
    Fri, Oct 14, 2016, 1:24 AM
    @David, The output buffer is in the php.ini file. It is set to 4096 bytes by default.

    The export fails for all booking options no matter if there only two or up to 80. If I then click a single booking option, it works fine.
  • Picture of Dom F
    Sat, Oct 29, 2016, 7:24 PM
    Hi Guys,

    Thankyou for what is probably a great module for booking...

    BUT that's the problem, I have no idea, because the documentation ( seems to be missing 95% essential information,

    No explanation for any of these fields, what they do, or how to use them.....

    Booking nameRequired field (what is this for, who sees this?)- no mention in the docs of what this is anywhere
    Event typeRequired field (I have no idea what this means - surely all events are bookings?)- no mention in the docs of what this is anywhere
    Booking text (where is this shown what is this for? who sees it?)- no mention in the docs of what this is anywhere
    Duration (mins, weeks hours, are they contiguous?)- no mention in the docs of what this is anywhere - formatting?
    Course points (I have no idea what this is)- no mention in the docs of what this is anywhere
    Organizer name (Is this the name of the person they are going to meet?) - I assume so but no mention in the docs of what this is anywhere
    Poll Url - no mention in the docs of what this is anywhere - the help file pop-up doesnt help
    Teachers poll url - no mention in the docs of what this is anywhere

    It seems essential information is missing. Is this confusion to encourage people to pay for an explanation via paid support ? This doesnt seem very fair. If a module is badly documented then it seems wrong to say "well if you want us to give you proper documentation then you can always pay for it"

    Paid support is a very fair and reasonable request to make (I wish we - -as a totally unfunded charity - could afford it) but could we at least get explanations of how to use the tool, with a description of the settings instead of being left to guess - or have 6 words answers for each setting?

    I am quite frustrated, I have installed the software only to discover it doesn't explain 90% of the features. Are we supposed to guess what any of these settings do? Or abandon the guesswork and go for another solution?

    I started my email with the subject line something for nothing. Perhaps if someone sent me proper documentation that explains ALL the settings clearly - I could return the favour - for example - by creating some video tutorials that we coukd all use and benefit from and furter promote this great tool? (Thats what my voluntary schools project does by the way)

    Do let me know either way as I need to know how to use the tool - or delete it and start all over again with another solution that has explanations for teachers are not just moodle coders and senior tech level admin

    Many thanks

  • Picture of Dom F
    Sat, Oct 29, 2016, 7:27 PM
    P.S> I would also be happy to share translation work to iEnglish and correct some of the spellings that appear in the current installed version. Its all a two way process of supporting each other - from one dotorg to another.

  • Picture of Rob Johnson
    Tue, Nov 1, 2016, 2:12 AM
    @Dom, the docs page you linked to is for a very old version of Moodle. Try I am just a user of the module. It was pretty easy to figure out what the settings do by creating a Booking event and using a test account or two to simulate its use. Give it a try, the module works really well.
    Wed, Nov 2, 2016, 11:35 PM
    Hi, If i add a record direct to mdl_booking_answears, a email confirmation will send in on the next cron.php execution. Or I need to add more records in other tables ?
  • it's me
    Thu, Nov 3, 2016, 1:28 AM
    @Jose: I you are trying to do strange things. You can't add something directly to the db and then expect to trigger something with your action. I recommend not doing that at all.
  • it's me
    Sat, Nov 5, 2016, 12:39 AM
    @Dom: You are welcome to contribute to the language file or to the documentation. Right now the documentation really is very basic, but most features can be explored through testing. Personally I can only provide services based on a contract.

    Kind regards,

  • Picture of Dave Hope
    Thu, Dec 15, 2016, 12:25 AM

    Hi all, has anyone had any issues with this plugin not sending confirmation emails? I've tried on a fresh install of moodle (this is the only custom plugin) and I've enabled Send confirmation email and Send confirmation email to booking manager but neither emails are sent.

    My SMTP settings are correct because the registration and course welcome message are both sent successfully.

    No idea where to start!

  • Picture of Saaid Agherdien
    Sat, Feb 11, 2017, 4:43 PM
    Please help. How can i set my students view to only see the "view only my bookings" as in the case of image four of the pugin screenshots. currently my students see all four tabs: 1. "My Institutions" 2. "Active Bookings" 3. "All Bookings" 4. "My Bookings"
  • it's me
    Mon, Feb 13, 2017, 10:42 PM
    Hi Saaid, I just uploaded a new version. In this version you can define a default view in the booking settings. i hope, that solves your problem. Kind regards,
  • Picture of Saaid Agherdien
    Wed, Feb 15, 2017, 12:32 AM
    Hi David, thank you for uploading the new version. It does allow you to define a default view. This means that you can determine the active tab i.e. "My Institutions" or "Active Bookings" or "All Bookings" or "My Bookings". I was hoping to hide three of the tabs and only have the student view "My bookings" as is the case in the screen shot image no.4 Andraz responded by saying: " this function is not implemented in this version of Booking." Please let me know if this will be implemented in the next version.
    Thanking you again for the quick response and for a fantastic booking plugin.
  • Picture of Lebato MT
    Wed, Feb 15, 2017, 7:11 PM
    Hi David,

    I have installed the new version. but when i edit/update the existing booking options and click "Save and Display", i get this error: "The group already exists in the target course, please choose another name for the booking option". it looks like the system is attempting to add a new booking option instead of updating.
    stack trace:
    line 413 of /mod/booking/locallib.php: moodle_exception thrown
    line 443 of /mod/booking/lib.php: call to booking_utils->group()
    line 99 of /mod/booking/editoptions.php: call to booking_update_options()
  • it's me
    Wed, Feb 15, 2017, 7:31 PM
    Hi Lebato,

    thank you for reporting the problem. I just uploaded a new version which fixes the bug.

    Kind regards,
Please login to post comments