Enrolment: Authorize.net

enrol_authorizedotnet
Maintained by DualCube Team
Enrolment in Moodle using Authorize.net payment gateway for paid courses This plugin helps admins and webmasters use Authorize.net as the payment gateway. Authorze.net is one of the most commonly used payment gateways and offers considerable number of features unsupported by other payment gateways like Paypal. This plugin has all the settings for development as well as for production usage. Its easy to install, set up and effective.
92 sites
248 downloads
15 fans

Enrolment in Moodle using Authorize.net payment gateway for paid courses

This plugin helps admins and webmasters use Authorize.net as the payment gateway. PAuthorze.net is one of the most commonly used payment gateways and offers considerable number of features unsupported by other payment gateways like Paypal. This plugin has all the settings for development as well as for production usage. Its easy to install, set up and effective.

Installation Guidence :

Login to your moodle site as an “admin user” and follow the steps.

1) Upload the zip package from Site administration > Plugins > Install plugins. Choose Plugin type 'Enrolment method (enrol)'. Upload the ZIP package, check the acknowledgement and install.

2) Go to Enrolments > Manage enrol plugins > Enable 'Authorize.net' from list

3) Click 'Settings' which will lead to the settings page of the plugin

4) Provide merchant credentials for Authorize.net, select the checkbox as per requirement. Save the settings.

5) Select any course from course listing page.

6) Go to Course administration > Users > Enrolment methods > Add method 'Authorize.net' from the dropdown. Set 'Custom instance name', 'Enrol cost' etc and add the method.

This completes all the steps from the administrator end. Now registered users can login to the Moodle site and view the course after a successful payment.

Note: You need to configure the Default Relay Response URL in you authorized.net account. The Relay Response URL will be "http://your_moodle_website/enrol/authorizedotnet/ipn.php"

To add a Default Relay Response URL:

Log into the Merchant Interface at https://account.authorize.net/ or Sandbox Interface https://sandbox.authorize.net/.

Click Account from the main toolbar.

Click Response/Receipt URLs under Transaction Format Settings.

Click Edit next to Default Relay Response URL. The Relay Response page appears.

In the URL text field, enter the URL where the payment gateway should send the transaction response. This URL must start with either "http://" or "https://". Parameterized URLs are not permitted.

Click Submit. A confirmation message indicates that the URL has been added.

To add a URL to the list of authorized Response or Receipt URLs:

Log into the Merchant Interface at https://account.authorize.net/ or Sandbox Interface https://sandbox.authorize.net/.

Click Account from the main toolbar.

Click Response/Receipt URLs under Transaction Format Settings.

Click Add URL.

Enter the new URL. This URL must start with either "http://" or "https://".

Click Submit.

Contributors

DualCube Team (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments

Show comments
• Wed, 4 Jan 2017, 6:45 PM
Hi Dale,

Yes, this plugin is completely compatible with moodle3.1.
• Mon, 13 Feb 2017, 7:31 PM
Can you develop a customized plugin for me? i have a moodle website bsacademy.us, the student in my locality are not okay with paypal,credit card etc. So i generate a code that i sell to them. Then after registration, they submit the code to system admin for enrollment. This work is very tedious and i want it automatic. Like if there will be a plugin, a student during enrolment only enter his code then the system verifies weather the code is valid or not then also verify if it has already been used. If the code is valid, it accepts and enroll the student. please let me know if you can do it.
Thank you
• Thu, 16 Feb 2017, 10:42 AM
Hello, I'm trying to setup the authorize.net plugin. My question is what is "Production mode"? Should I enable it or not for enrollment to online classes? Will appreciate if let me know as soon as you can. Thank you!
• Mon, 20 Feb 2017, 3:55 PM
Hi Zhivko,

Thanks for reaching out! Production Mode means "Live Mode" where you can make live (actual) payment transactions.
You can enable Production Mode of authorize .net from
Site administration > Plugins > Enrolments > enable authorize.net > settings > check for "Check for production mode".

Yes, you should enable it when you are doing actual transactions in currency to enrol users. Please let me know if we can help with anything else.

Thanks and Regards,
Arindam
• Tue, 21 Feb 2017, 3:32 PM
Thank you Arindam!
• Fri, 24 Feb 2017, 5:50 PM
I'm trying to make a payment and getting an error message: (14) The referrer, relay response or receipt link URL is invalid.
Just called Authorize.net, their representative didn't have any clue... Does the Relay Response URL need to be "http://your_moodle_website/enrol/authorizedotnet/ipn.php" (as required above) or it should actually be "http://your_moodle_website/enrol/authorize.net/ipn.php"??
Thanks
• Mon, 27 Feb 2017, 3:51 PM
Hello,
Although I have selected the options - Notify Student, Notify Teacher and Notify Admin -  no one gets notified when student gets enrolled.
Is this a plugin issue? Or is there any site level or course level setting I need to adjust for this?

Thanks!
• Mon, 27 Feb 2017, 4:43 PM
@Zhivko,
The relay response url will be - http://your_moodle_website/enrol/authorizedotnet/ipn.php
• Sat, 15 Apr 2017, 1:21 AM
I installed this plugin a few days ago. Got the authorize.net account set up and but imediately after the payment form is processed, the browser goes to this page (http://my_website_domain/enrol/authorizedotnet/update.php?id=1) with the following error... "Coding error detected, it must be fixed by a programmer: Invalid property courseid specified". Is this plugin still recieving aid from developer? I would ask for assistance in this. Additional info: The payment gateway succeeded- payment was processed but user was not enrolled into class(charged but not granted access to the course)
• Tue, 18 Apr 2017, 1:11 AM
More information on the post I made before. I tried creating a new course, and tested with a brand new student account. I got the same error:
"Coding error detected, it must be fixed by a programmer: Invalid property courseid specified"
This error happens immediately after payment is sent to Authorize.net. The payment is succesful, but the update that enrolls the student is not happening. Please advise. Thank you.
• Tue, 18 Apr 2017, 1:19 AM
One last info bit, each time the error occurred the url changed sligthly...
First time was http://pmnerds.com/enrol/authorizedotnet/update.php?id=1
Second time was http://pmnerds.com/enrol/authorizedotnet/update.php?id=2
Third time was http://pmnerds.com/enrol/authorizedotnet/update.php?id=3
• Tue, 18 Apr 2017, 8:12 PM
@William,

Please visit the link: https://gladguys.com/demo/moodle/moumita/moodle3.2/
Then set up and test it using your sandbox account.

Admin Access
username: demouser
password: Demo@123

Kindly let me know the output.

Thanks and Regards,
Arindam
• Wed, 19 Apr 2017, 1:52 AM
Is this what you needed?
Coding error detected, it must be fixed by a programmer: Invalid property courseid specified

More information about this error

×Debug info:
Error code: codingerror
×Stack trace:
line 215 of /lib/classes/message/message.php: coding_exception thrown
line 125 of /enrol/authorizedotnet/update.php: call to core\message\message->__set()
• Wed, 19 Apr 2017, 2:06 AM
I figured out the issue!
in the file listed above..(line 125 of /enrol/authorizedotnet/update.php: call to core\message\message->__set()) is a change from moodle 3.1.
more info found here: https://fossies.org/diffs/moodle/3.1.3_vs_3.2/error/index.php-diff.html
but essentially, change
$eventdata = new \core\message\message();$eventdata->courseid = SITEID;

to

\$eventdata = new stdClass();

if you are using moodle version 3.1

Thanks for the plugin!
• Thu, 20 Apr 2017, 5:18 PM
Hi William,

You can simply install/upgrade latest version of this plugin. I Hope , it will be helpful .

Thanks and Regards,
Arindam
Please login to post comments