Moodle Shop structure documentation

Automating enrolments incourses as effect of the purchase, introduction

the Moodle Shop engine is a complex and complete component used to sell online teaching-related “objects”.

Once loaded with a lot of content and teaching scenarios, Moodle can offer a lot of saleable items. Moodle is a flexible and highly configurable application, which makes it an excellent candidate for a wide of business scenarios.

Enrolling in a training course and obtaining a learner’s account for a given period is a classic monetisable component of activities specific to virtual training centres. There are several distinct derivative situations that depend on the purchasing process for the training course, its social or funding context.

Buying their own seat

An online learner wants to personally participate in a course they purchased. In principle, this buyer will have access to:

The purchased training course, as a learner

The “support” course, which serves as the management interface for their training course, as a customer

Buying a training session for a group of participants

A person in charge of training or a business manager would like training for one or more employees. If the number is known, that person can “set up a training course” on behalf of the company and purchase the amount of seats required to establish the session. The company pays for the seats but the bill can be supplemented with a standard training agreement to allow funding agency reimbursement of the training.

Enrolments purchased in this manner can be unlimited or, on the contrary, renewable after a certain period of time (duration).

Retrieving a purchased certificate

In MOOCs (Massive Open Online Courses), access to training courses is free of charge but the retrieval of formal proof of participation and attainment of objectives can be subject to payment. The shop makes it possible to develop this type of product

Extending an existing enrolment period

Training company X offers a preparatory course for a difficult finance examination, with study support programmes and coaching. Enrolment is initially sold for a 3-month period and can be freely extended by one-month periods.

Buying assigned role in a specific context

Training company Y builds a two-tiered course programme that uses two roles, Student and Student+, to access more or less developed parts of the course. It is possible to acquire a “higher” status for an already active enrolment or access a higher status for all platform courses.

Buying learning credits to use later to make their own course program

A company offers a wide variety of training modules and would like customers to be able to freely build their content portfolio. The shop is used to recharge a virtual account with training credits that will be used to choose course modules from the internal catalogue.

This method is easier to use for learners who only have one financial transaction to carry out at the beginning.

Major Shop elements

Moodle Integrated Shop has two main parts:

A front office accessed by customers to purchase items

A Back office to :

help sales managers define the product offer

allow sales operators to monitor and manage transactions

Optionally, building a customer support workplace using a Moodle course is a good idea and shop implementation provides accessory blocks to help build a customer environment with all the necessary features.

Shop back-office

Implementation classes and functional primitives

The ShopObject class

The Shop class

The Catalogue class

The CatalogCategory class

The CatalogItem class

The Bill class (Concept of order and bill statuses)

the BillItem class

the Customer class

The Product class (instance)

the ProductEvent class

the ShippingZone class

the CatalogShiping class

Technical utilities

Tracing transactions

Notifications

Shop front-office

Sales conditions

Purchase sequence

Purchase steps

Fill shopping cart

Input product tuning parameters

Input participant (in seats mode)

Input customer data

Confirm purchase order

Payment

Produce product (synchronous or delayed)

Produce bill

Shop Sub-Plugins

Products action scripts

General structure of handlers

Standard handlers (community version) :

Course Enrolment

Assign role to context

Enrolment extension

Additional handlers (PRO version)

Setup a course session (with participants) (PRO)

Generate unassigned seats (PRO)

Open LTI Access (PRO)

Unlock certificate (PD Certificate) (PRO)

Load user account with quiz attempts (PRO)

Load user account with educational credits –> Using Educational Credits Enrol plugin (PRO)

Special handlers

Course Creation (PRO)

Course Category (for customer to manage) (PRO)

Create a VMoodle instance (PRO)

Payment methods

Pay modes

Standard interfaces (community version)

Local test interface

Free order pseudo-payment method

Cheque

Bank Transfer

Paypal

Additional interfaces (PRO)

Mercanet (BNP/SOGE)

Systempay (CE/BP)

Ogone/Ingénico (broker)

Back to Local Shop componant - Local shop structure summary - Configuration and implementation of a commercial offer - back to catalogue