Moodle plugins directory: Course credit enrolment | Moodle.org
Course credit enrolment
Credit Enrolment for Moodle
While there are existing solutions to sell courses in moodle, they only cover the requirements to a certain extent: Some of the solutions (e.g. the PayPal and Stripe extensions) work great when courses are sold to individuals. Other solutions (e.g. integrations with courseware, woocommerce etc.) are much more feature rich and provide the full e-commerce experience, including seo, many billing options, invoicing, discounts etc. However, the implementation, maintenance and running cost of such a solution is a lot higher.
Our solution targets medium-sized companies who want to sell their courses to business clients (instead of individuals) by introducing a very simple credit system. Business clients can buy a certain number of credits using the existing payment/invoicing processes already in place at all customers (not within moodle). These credits can be assigned to users in moodle (manually or via upload) and then used to “buy” courses. Thus, implementation is basically done in minutes.
Key features:
- store credits in the user’s profile
- assign a price (=number of credits required) for a course
- enrol into the course by deducting the required credits from the user who enrols (only if enough credits are available)
Try it out
You can see the plugin in action on our test site: https://labs.bdecent.de/
With the change suggested by Peter, my problem didn't get solved. Even though I have mentioned 1000 as the default value, it was not used by the plugin when the user tried to enroll in the course. Interestingly, when administrator edited the user profile (without making any change), the user could enroll with available balance of 1000!
I am not a PHP developer. I tried my best to check the code but couldn't figure out why this is happening.
Sincere Regards
1. Is there any way to know how much credit has been used on the moodle site|courses|activities?
2. The plugin doesn't send enrolment expiry notification, what may be the reason?
What we usually do is create two custom profile fields - one called „total credits“ and one called „remaining credits“.
Whenever you „top up“ the students credits, you add the amount to both fields. That way, you can compare the two values.
A report which lists the transactions would certainly be a good idea though! If you’re interested in that feature, contact us and we can discuss it!
Best
Stefan
We have never tested expiry notifications, so I can’t tell for sure if they work or not. We did not need them when we developed the plugin.
I’ll test to see if they work on my site.
Cheers
Stefan
sorry for the late reply — testing this took a while, expiry notification cannot be set to less than a day. The test was positive though, I did receive the expiry notifications as configured and expected:
| Enrolment in the course 'Credit enrolment' will expire within the next 1 days for the following users:
| Demo User - Monday, 13 September 2021, 8:21 PM
| To extend their enrolment, go to https://labs.bdecent.de/user/index.php?id=16
(I bought the course using credit enrolment, which has a duration of 2 days, and a notification threshold of 1 day)
One thing that you might want to check is the notifications preferences. Maybe the user you're testing with simply does not have them turned on for whatever reason?
Feel free to report the issue with more details on our bug tracker: https://github.com/stefanscholz/moodle-enrol_credit/issues
Cheers
Stefan
credit works fine on 3.11. I've added 3.11 as officially supported to the latest version.
If you run into any issues, please let me know in the bug tracker.
Best
Stefan
I'll get back to you if there are any problems.
Have a nice day!
That’s great!
Im happy to review your changes.
Are you aware that our plugin dash can be used to display the credits? Check it out, maybe it suits your needs.
Feel free to reach out directly and we can discuss the integration.
Cheers
Stefan