Request a Demo
Custom E-commerce module for Open edX

Open edX is a very popular platform, offering a huge variety of individuals (instructors, authors and students) or entities (colleges and companies) means for efficient eLearning via MOOCs. However, every job must be paid and eLearning is no exception. With thousands of students learning from thousands of different locations, E-commerce is the only solution possible.

2749 06/02/2018
Head of Sales and Marketing, Raccoon Gang

Sergiy has significant expertise as an eLearning and Marketing expert since 2012. He brings his experience into play to help RG customers to keep pace with the changing dynamics in the Learning indust

Custom E-commerce module for Open edX platform

table of contents

Let’s take a closer look on how E-commerce in Open edX works. What main functions should E-commerce module in any MOOC provide? Here is a short list of functions we expect from an E-commerce module:

  • Receiving payments via PayPal and/or credit cards
  • Adjusting course price (discounts)
  • Providing free or paid courses

Open edX platform has a built-in E-commerce module working with CyberSource payment platform, yet it is far from perfect. It allows accepting payments from credit/debit cards, issuing discounts and creating free courses. This module’s main flaw is that it does not work with PayPal.  However, additional Django Project E-Commerce external module is needed to accept PayPal payments – but this module cannot work with discounts.

How does the built-in open edX E-commerce module work?

First of all you should connect the CyberSource E-commerce module to your Admin panel (it is built-in, yet not activated by default), add a CyberSource account and provide all required CyberSource Client Data, namely:

  • ACCESS_KEY
  • PROFILE_ID
  • PURCHASE_ENDPOINT
  • SECRET_KEY

After that, you should set up a paid course in Admin panel and select a Course mode for it. Yes, each course is set up separately… To finish setting up the E-commerce open edX module you should add an admin role to the course in the Admin panel. This should be either finance_admin or sales_admin. Both of these roles can accept payments.

How does Django Project E-Commerce external module work?

Django Project E-commerce module is a separate project that interacts with Open edX via API.
Its setup process differs quite a lot. You should install the DP E-commerce module, add the client account and specify all the details required. These are just the same as the abovementioned:

  • ACCESS_KEY
  • PROFILE_ID
  • PURCHASE_ENDPOINT
  • SECRET_KEY

However, you can add Paypal Client Data at once, which consists of CLIENT_ID and SECRET_ID. Once this data is submitted, you proceed to turn off the Shopping Card in Open edX LMS, and setting up the DP module itself.

You should input Partner Configuration and Site Configuration data, input ID_COURSE of an already existing course, created with Open edX, and select the payment mode.

What kinds of courses can Django Project E-Commerce external module support?

Django Project E-Commerce allows providing such modes of access to courses:

  • Free course audit
  • Free courses  without a certificate
  • Paid courses with a certificate
  • Credited paid courses with a certificate

What does the payment look like?

From the customer’s side, the payment process is the following. If a student wants to enroll for a paid course, he or she is redirected to a payment page, where they submit their payment details and check the payment mode – via credit card or PayPal. Please note that the student should upload a photo-quality picture of their government-issued ID and confirm it with a short webcam session. This is done for verification purposes.

How does Raccoon Gang PayPal module work?

Raccoon Gang developed this alternative built-in solution for the sake of combining both payment methods in one module. It works similarly to the standard version, the only difference being that it cannot issue discounts. You should install it, create a CyberSource account, and specify PayPal Client Data (CLIENT_ID and SECRET_ID). The rest of the workflow is the same with setting up the built-in CyberSource module.

To process the data we utilize a function, which works with PayPal. The problem is that Open edX is built in such a way that  the payment mode is set with a parameter in Settings, and this parameter contacts the payment system back-end.

Conclusions

Therefore, if your customers require credit card payment possibility, you can use the built-in Open edX E-commerce module. If your customers prefer paying with PayPal - you can utilize PayPal module developed by Raccoon Gang. In case you need both credit card and PayPal payment methods - feel free to use external Django Project CyberSource module (with the following 2 limitations - you can’t adjust the already specified course entity and you can’t issue discounts).

However, if you aim big, it’s best to do things the right way from the very beginning. It’s best to have your own marketing website, which connects to Open edX via API and allows monitoring all the enrolled students with ease - and Raccoon Gang can help you with that!

Back to materials

Follow Us

Recommended articles:

table of contents
Schedule a Demo Schedule a Demo

We use cookies to personalise content and ads, to ensure we're delivering the best possible website experience for our visitors. You consent to our cookies if you continue to use our website.
Learn more about who we are, how you can contact us and how we process personal data in our Privacy Policy 

Accept
Please proceed to the next page for the most convenient date and time for a demo What do we mean by "demo"? How long would the demo take?
Book a demo