Have you ever wanted to invite people to join a course by email? Up until now, your options have been limited. The Invitation enrolment plugin for Moodle LMS might just be what you have been looking for.

Traditional enrolment options in Moodle include:

  • Self-enrolment: You need to manually email \an invitation to individuals inviting them to your course using a link. The problem with this approach is that anybody can join the course if they have an account on your Moodle LMS site. Even if you add an enrolment key (like a password protecting your course in Moodle LMS), people can still share that key making it nearly impossible to limit who can access your course.
  • Manual/Bulk enrolment: You can upload a list of users into your course but this has its drawbacks too. What if not everyone wants to join your course? This also only allows you to invite users who already have an account on your Moodle LMS site. Again, what if they don't already have an account on the site?

The Invitation enrolment plugin was originally created in 2013 by Jerome Mouneyrac to address and overcome these limitations back in Moodle LMS 2.5. It was adopted and updated for Moodle 3.9, 3.10 and 3.11 by Michael Milette and is now available for Moodle LMS up to version 4.5. Development of the updated release of this plugin for Moodle LMS was sponsored by TNG Consulting Inc.

The benefits of using Invitation over other available approaches include:

  • Controlling who can use Invitation by configuring permissions. By default, teachers, managers and administrators can send invitations.
  • Inclusion of a personalized message in the invitation.
  • Having the ability to view the history of past invitations and their current status. For example, you can see who used an invitation, who rejected the invitation and which invitations have expired.
  • Resending expired invitations or sending reminder invitations as long as the invitee has not rejected the invitation.
  • Revoking an invitation - if it has not yet been accepted.
  • Controlling whether you want to allow invitations to people who do not yet have an account on your site or limit invitations to users with existing accounts. Users without an account will need to create an account on your Moodle LMS site before they can accept the invitation.
  • Limiting the lifespan of the invitation. For example, you can choose to make invitation links only work for 2 weeks before they expire.

You can customize the email subject, the format and the contents of the email message including making use of any of the following 12 tags:

  • {$a->coursename}: Course name
  • {$a->start}: Start date
  • {$a->end}: End date
  • {$a->inviteurl}: URL to accept the invitation
  • {$a->acceptinvitation}: The words “Accept invitation”
  • {$a->rejecturl}: URL to reject the invitation
  • {$a->rejectinvitation}: The words “Reject invitation”
  • {$a->expiration}: The expiry date of the invitation
  • {$a->message}: The custom message
  • {$a->location}: The location - if available from a plugin or a custom course field
  • {$a->supportemail}: Support email address
  • {$a->emailmsgunsubscribe}: Email instructions to unsubscribe.

More information on this is available in the README.md file.

Invitation integrates intuitively into the Participants page once installed, activated and the enrolment method has been added to your course.

You can control the role of the users. This is a great way to onboard teachers, non-editing teachers and students alike.

You can also preview the email message format using the help bubble for the message field when creating an invitation. The result is an easy-to-understand, modern-looking email invitation.

Download the Invitation enrolment plugin for Moodle LMS from the plugins repository on moodle.org.

The Invitation enrolment plugin can be useful if you have been looking for a way to invite people to your courses through personalized emails.