The MooWoodle plugin is an extention of WooCommerce that acts as a bridge between WordPress/Woocommerce and Moodle. It fetches all the courses from your Moodle instance and makes them available for sale, which may be bought by users through WooCommerce. It reduces your effort by synchronising your LMS site with your online store. And when someone purchases a course from the store he/she is automatically gets registered for the course in the LMS site. More over this plugin works with WooCommerce subscription plugin too.


  • WooCommerce 3.0.0+
  • WordPress 4.7.3+
  • Multilingual Support is included with the plugin and is fully compatible with WPML.


WP site setup:
1. To set up the plugin: Synchronise > Settings > Fill up Access URL (site url of your moodle site) and Webservice Token (generated from your moodle site; a more detailed guide is given below).

  1. Check Create Products From Courses checkbox if you want to create product from courses during course sync; otherwise leave it unchecked. In that case the courses will be saved in wordpress site and you can manually add products for courses later.

  2. Check Update user info with order info checkbox to update user info with new order info.

  3. By default, the users will be enrolled in the course with student role. If you want to assign any custom role to the user you have to enter the role id in the `Moodle user role id in a course.

Moodle site set up:
Create and setup webservice:
1. Administration > Site administration > Advanced features > Enable webservice > Save changes.

  1. Administration > Site administration > Plugins > Manage protocols > Enable REST protocol.

  2. Administration > Site administration > Plugins > External services > Add > Give a Name and chack Enabled > Add service > Add functions > Add the following functions to your webservice:
    i. core_user_create_users: Create users
    ii. core_user_get_users: Search for users matching the parameters
    iii. core_user_update_users: Update users
    iv. core_course_get_courses: Return course details
    v. core_course_get_categories: Return category details
    vi. enrol_manual_enrol_users: Manual enrol users

  3. Administration > Site administration > Plugins > Manage tokens > Add > Select user (Admin) from users\’ list > Select your service form services\’ list > Save changes.

Disable password policy:
The password policy settings needed to be disabled since the user password will be generated in WordPress end and will not match the password policy of Moodle. The steps to disable password policy are given below.

  1. Administration > Site administration > Security > Site policies > Uncheck Password policy > Do not forget to save changes.


All we want is love. We are extremely responsive about support requests – so if you face a problem or find any bugs, shoot us a mail or post it in the support forum, and we will respond within 24 hours(during business days). If you get the impulse to rate the plugin low because it is not working as it should, please do wait for our response because the root cause of the problem may be something else.


  • Fill up Access URL, Webservice token and other settings fields.
  • Select Yes and click on Synchronise to sync courses and course categories from your moodle site.
  • In advanced features check Enable web service check box and save changes to enable web service for your moodle site.
  • Enable REST protocol from manage protocol of your moodle site.
  • In External services click on Add to add your external service.
  • Give a Name to your external service and check Enabled then Add service to add your external service.
  • Click on Add functions to add functions to your service.
  • Add above mentioned functions mentioned to your service.
  • In Manage tokens click on Add to generate new webservice token for your service.
  • Select the admin user from the User list and your service form Service list the save changes.
  • The token generated for your service. (Copy this token and pest it in Webservice token field in our WordPress plugin settings.)
  • Uncheck Password policy then save changes to disable Moodle's default password policy checking.


Installation Instructions

NOTE: Woo-Moodle bridge plugin is a extention of WooCommerce, so the WooCommerce plugin must be installed and activated in your WordPress site for this plugin to work properly.

  1. Download and install MooWoodle plugin using the built-in WordPress plugin installer.
    If you download MooWoodle plugin manually, make sure it is uploaded to /wp-content/plugins/moowoodle/. Or follow the steps below:
    Plugins > Add new > Upload plugin > Upload > Install Now.

  2. Activate the plugin through the \’Plugins\’ menu in WordPress.

Does this plugin work with newest WP version and also older versions?

Yes, this plugin works really fine with WordPress 4.7! It is also compatible for older WordPress versions upto 4.1.1.

Does this plugin work with latest version of Moodle?

Yes, this plugin works really fine with WordPress 3.2! It is also compatible with Moodle version 2.9.

Up to which version of WooCommerce this plugin compatible with?

This plugin is compatible with the latest version of WooCommerce, that is, Version 2.6.9.

Does this plugin work with WooCommerce Subscription?

Yes, it works with WooCommerce Subscription.


Returning Students now enrolled

I’m running: WP 4.7.3, WC 3.0.1, Moodle 3.2.1+
With MooWoodle ver 1.2.1 the plug-in now enrolls returning students! 🙂

Version 1.2.1 added a new function ( core_user_get_users ). You must add this new function at: Administration > Site Administration > Web services > External Services > Add Functions. Add the following function to your webservice: core_user_get_users

Once this is done MooWoodle will enroll returning students into their course in Moodle.

All works as it should now. 🙂 🙂

Great idea, poor execution

Plugin can’t be activated with recent versions of wordpress and WooCommerce. Support forum is deader than death itself and the makers don’t respond to emails submitted through their website.

A real shame. On paper, exactly what lots of people are looking for.

Excellent – Up and working in a couple of hours

WP 4.7, WooCommerce 2.6.11 and Moodle 3.2 Centos 7

This plugin works better than I hoped. Sending Love for the dev who asked for it 😉

It threw up a couple of gotchas but those were all in process and my lousy email reading skills. I am separately going to suggest instructions to the developers, but mainly the need to add instructions for your customer on the Woo order. I plan on also adding something similar to the product descriptions so that peeps know to look at their email.

I added the following to Products / (the product) / advanced . It will show on the order and the emailed order.

Thank you for your purchase. Here is your course link Click Here ….

**Your Password will be sent to your supplied email**

Follow the instructions to the letter but be aware that certain Moodle functions have been renamed.

Excellent Plugin

Love this plugin. It makes an account in Moodle from the checkout from woo commerce and sends you the user name and password. It works with the latest Moodle 3.1.

Read all 9 reviews

Contributors & Developers

“MooWoodle” is open source software. The following people have contributed to this plugin.


Translate “MooWoodle” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Compatible with Moodle 3.2.2.


  • Compatible with Moodle 3.2.


  • Tweak – Now using REST Protocol instead of XML-RPC Protocol.
  • Fix – All the courses\’ name are now in the New Enrollment notification mail.
  • Fix – Admin can publish products in which course is not assigned.


  • Initial version