Edwiser Bridge WooCommerce Moodle Integration Plugin allows you to sell Moodle courses in your WooCommerce shop as products and simplifies the task of maintaining a Learning Management System along with an eCommerce store. This plugin is an extension to your WordPress website.
Quick Links for plugin Installation and Usage Instructions:
Using the older version of the plugin (WooCommerce Moodle Integration)? Refer to the below documentation:
WooCommerce Moodle Integration (Legacy Plugin Documentation)
Installation Guide: Woocommerce Moodle Integration
Important: This plugin is a premium extension for the WooCommerce plugin. You must have the WooCommerce plugin already installed.
- Upon purchasing the WooCommerce Moodle Integration plugin, an email will be sent to the registered email id, with the download link for the plugin and a purchase receipt id. Download the plugin using the download link.
- Go to Plugin-> Add New menu in your dashboard and click on the ‘Upload’ tab. Choose the ‘woocommerce-moodle-integration.zip’ file to be uploaded and click on ‘Install Now’.
- After the plugin has installed successfully, click on the Activate Plugin link or activate the WooCommerce Moodle Integration plugin from your Plugins page.
- A WooCommerce-Moodle License sub-menu will be created under Plugins menu in your dashboard. Click on this menu and enter your purchased product’s license key. Click on Activate License. If license is valid, an ‘Active’ status message will be displayed, else ‘Inactive’ will be displayed.
- Upon entering a valid license key, and activating the license, a Moodle menu will be created in your dashboard.
Moodle Side Configuration
On your Moodle website, do the following:
- Create an External Service
-
- Go to Home -> Site Administration -> Plugins -> Web Services -> External services.
- Give a name to the external service.
- Check enabled option.
- Check Authorised Users only option.
- Click on ‘Add service’ button and wait until ‘Add functions to the service’ page is loaded.
- Click on the ‘Add functions’ link.
- Select these functions in the functions box:
- core_user_create_users: Create users.
- core_user_get_users_by_field
- core_user_update_users
- core_course_get_courses: Return course details
- core_course_get_categories: Return category details
- enrol_manual_enrol_users: Manual enrol users
Remember to save changes made.
- Enable REST Protocol
-
- Go to Home -> Site Administration -> Plugins -> Web Services -> Manage protocols.
- Click on the Enable grey eye icon shown in the REST protocol row.
- Create a Moodle Web Service Token
-
- Go to Home -> Site Administration -> Plugins -> Web Services -> Manage tokens.
- Click on the Add link.
- Select the Admin user in Moodle under the ‘User’ list.
- Select the name of the external web service you created in step 1 under the ‘Service’ label.
- Click on ‘Save changes’ button.
- The token will be used in Moodle settings on your WordPress website.
- Enable Web Service Support
-
- Go to Home -> Site Administration ->Advanced Settings. There you will have to check the ‘enable web service’ options and click save.
- Disable the Password Policy
Since we will be creating the Moodle user password through WooCommerce, we have to disable Moodle’s password policy, or else the Moodle user will not be created after a course is purchased.
-
- Go to Home -> Site Administration ->Security -> Site Policies and disable the Password policy.
WordPress Configuration
- Go to Dashboard -> WooCommerce -> Settings -> Checkout and uncheck the ‘Enable Guest Checkout’ option and save your settings
Disable Guest Checkout
- Go to Dashboard – > Moodle – > Moodle Options
- Enter the token you created, and your Moodle URL in Moodle options form.
Moodle Options
Done! Now you can synchronize your courses from Moodle. For additional details, read the ‘User Guide’.
User Guide: Woocommerce Moodle Integration
Upon installing and activating the plugin successfully, a Moodle sub-menu will be created in your WordPress dashboard.
Moodle Submenu in WordPress Dashboard
Moodle Submenu
The Moodle submenu, provides a summary of courses synchronized. There is also a quick link to synchronize newly added courses if needed.
Moodle Sync Log
Moodle Options Submenu
You need to use this submenu to enter your Access Token created in Moodle and Moodle URL (as explained in the Installation Guide).
Synchronization Submenu
The Synchronization menu allow you to sync newly added courses in Moodle, as products in your WooCommerce store.
- Just check the ‘Synchronize Courses’ checkbox
- And click on the ‘Synchronize’ button
- A success message should be displayed once the courses have been successfully synchronized
Course Sync Option
Upon Synchronization:
- Courses and Courses Categories previously added will be updated (if applicable)
- Each new course added in Moodle will be created as a Product in WooCommerce, and will be published.
- You will need to go to the Products page & assign price to each newly synchronized course, and add additional details if needed.
- In case of subscription courses: Select product type as ‘Simple Subscription’ (when using WooCommerce Subscriptions extension)
- For subscription products, access to the Moodle course will be suspended if payment is due for a subscription & as soon as payment is made, course access will be given.
Moodle Courses as Products in your WooCommerce Store
Upon User Registration:
Every time a new user registers on your WooCommerce site, he will be automatically registered on Moodle with the same credentials, and will be automatically enrolled for the courses. Thus, he can then log into your Moodle website with the same credentials, and start taking the courses.
Please Note: If a user already exists on your WordPress website & purchases a course then a new random password will be created for him to access Moodle. The random password and Moodle username will be displayed on the purchase confirmation or ‘Thank You’ page after checkout.