Official documentation

ModernCommerce documentation

Install, configure, operate, and extend the Moodle-native commerce platform.

Version 2.1.6

Learner account & access

The learner account is an authenticated ModernCommerce application under /local/moderncommerce/learner/. It brings commercial and learning records together without copying Moodle's learning data.

Learner pages

Route Purpose
learner/index.php Account shell/dashboard
learner/courses.php Courses and access state
learner/library.php Searchable access library
learner/calendar.php Moodle learning calendar view
learner/certificates.php Available certificate records/links
learner/grades.php Moodle grade summaries
learner/orders.php Buyer's orders
learner/order.php?id=ID One owned order
learner/wishlist.php Saved products
learner/profile.php Profile and billing details
learner/subscription.php Current subscription
learner/subscription_access.php Access granted by subscription

The React application also exposes equivalent AJAX functions for dashboard, courses, certificates, grades, orders, wishlist, subscription, product access and profile.

Ownership and authorization

Own-order and own-subscription services must scope records to the logged-in user. Knowing another record ID must not grant access. Administrative pages use separate all-order/subscriber capabilities.

Profile editing respects Moodle's authentication/profile rules. If the active authentication plugin supplies an external profile-edit URL, ModernCommerce directs the user there rather than bypassing it. Profile-picture updates require Moodle's own-profile capability.

How access appears

Course access may originate from a paid order entitlement, redeemed course/bundle key, active subscription rule or an independent Moodle enrolment. The learner views should describe the effective access while the diagnostic path preserves its source.

Order cancellation

The learner API includes an own-order cancellation action, but eligibility depends on the order state and validation service. Do not promise that every buyer can cancel every order. Paid orders, fulfilled access and gateway refunds require the administrative/refund workflow.

Support checklist

When a learner reports missing access, collect their Moodle user ID/email and order/key/subscription reference. Verify ownership, then trace the entitlement source. Do not create a duplicate Moodle account or duplicate enrolment before checking whether the original transaction belongs to a different account.