Native, not bridged
Courses, users, transactions, enrolments and access remain in the Moodle environment you already govern.
Complete capability reference
ModernCommerce covers the complete path from merchandising and checkout to verified payment, Moodle enrolment, recurring access, finance operations, customer service, analytics, and governance—inside one open-source Moodle plugin.
Courses, users, transactions, enrolments and access remain in the Moodle environment you already govern.
Payment, order, fulfilment, entitlement, enrolment and communication keep separate operational evidence.
Inspect the source, run it on your infrastructure and extend validated Moodle services and events.
Turn existing Moodle learning into structured offers without duplicating course content.
Attach commerce records to existing Moodle courses; no course migration or duplicate learning record is required.
Package multiple courses as a value-led bundle or an outcome-led program while preserving the included Moodle courses as the access source.
Publish recurring-access offers with billing cycles, trials, grace rules, feature matrices and course, category or bundle access rules.
Use regular, sale, tier and subscription-related prices with compare-at values, enabled states and optional start/end windows.
Leave normal courses unlimited or manage stock, reservations and capacity for limited cohorts and licence-based offers.
Organize discovery with categories, tags, attributes, product types, visibility, availability dates, language and skill level.
Publish outcomes, duration, outline, badges, trust information, assessments and learner-facing course metadata without changing course internals.
Collect buyer reviews, distinguish verified purchasers and give trusted staff moderation controls.
Build a branded public store inside Moodle instead of operating a second CMS or WordPress site.
Compose pages with slider, video hero, breadcrumb, featured and related products, catalogue, categories, trust badges, countdown, testimonials, instructors, newsletter, content, media stories, learning promise, belief, policy, FAQ, CTA, support, contact cards and footer widgets.
Add, configure, arrange and remove page-scoped widget instances from the storefront side panel.
Reuse style configurations without forcing different widget instances to share content or placement.
Publish the catalogue, pricing, about, support, privacy, terms and refund-policy experiences from the Moodle installation.
Present merchandising content, reviews, price and a responsive purchase card designed around course access.
Apply colors, typography-related tokens, radius, logo and small custom-CSS overrides across storefront, admin, learner and public surfaces.
Use the ModernCommerce storefront as Moodle’s configured default home page without editing Moodle core.
Collect newsletter subscriptions and support enquiries with Moodle core reCAPTCHA when configured.
Validate the commercial terms on the server before creating a durable order.
Persist carts and items for authenticated buyers, including additions, removals, quantities and coupon application.
Resolve product availability, current price, discounts, stock, buyer permissions and gateway readiness before payment.
Hide, request or require phone and billing-address fields according to invoicing, tax and support needs.
Preserve discount and tax adjustments with the order so historical documents do not depend on later coupon edits.
Choose one of 21 supported store currencies with configured symbol position and decimal formatting.
Configure tax treatment and carry calculated tax into order and document records.
Protect limited offers during checkout and release stale reservations through cleanup workflows.
Retain the evidence needed for cleanup and consent-aware recovery communication.
Connect merchant accounts you own and retain the operational evidence behind each payment.
Connect Stripe, PayPal, Paystack and Flutterwave using test or live credentials supplied by the merchant.
Gateway settlement goes to the organization’s own merchant account; ModernCommerce does not take a percentage.
Sensitive card entry remains with the selected gateway rather than being stored by the Moodle plugin.
Validate provider callbacks and webhooks before transitioning payment and order state.
Keep gateway reference, amount, currency, result and event evidence separate from the order record.
Handle duplicate returns and webhook deliveries without intentionally fulfilling the same purchase twice.
Expose missing credentials, incompatible currency, webhook state and other configuration blockers.
Give payment operators searchable evidence for investigation, reconciliation and support.
Operate the financial lifecycle after checkout with durable records and controlled state changes.
Snapshot items, totals, currency, addresses, adjustments and status history at purchase time.
Search and inspect orders, customers, status, items, payment evidence and fulfilment from a unified operator workflow.
Generate downloadable commerce documents from transaction snapshots rather than current product data.
Support approved invoice-led sales and finance-team workflows when card checkout is not the right route.
Record and control refunds while retaining their relationship to payment, order, access and audit history.
Bring purchase history and operational customer context together without creating a separate customer identity system.
Preserve who or what changed an order instead of relying on an overwritten status field.
Retain immutable-style operational evidence for sensitive commerce actions and investigations.
Translate verified purchases into traceable rights and Moodle course access.
Grant Moodle course access when the payment and order reach the valid fulfilment boundary.
Process the included courses behind a multi-course offer while retaining the purchased parent product.
Track processing separately from payment so failed access can be repaired without charging the buyer again.
Represent the learner’s right to a target independently of current enrolment state.
Preserve access changes for support, reconciliation and lifecycle analysis.
Reconcile subscription rights and Moodle enrolment through scheduled workflows.
Remove or change access according to validated order, key or subscription lifecycle rules.
Trace payment, items, fulfilment, entitlement and enrolment when a paid learner reports missing access.
Support promotions, prepaid access and organization-led course distribution.
Create fixed or percentage discounts with dates, usage constraints and product or bundle targets.
Issue prepaid keys that learners redeem for course access without repeating checkout.
Distribute a multi-course purchase through a controlled key pool.
Activate a subscription plan from a prepaid or corporate code.
Track keys or subscription capacity used and remaining for organization buyers.
Warn the buyer when a managed access pool approaches depletion so procurement can reorder.
Combine finance-approved invoicing with key-based or managed access distribution.
Track key state and usage for support, expiry and allocation review.
Sell recurring access while keeping billing state and Moodle access synchronized.
Configure cycle, price, status, trial days, grace period and learner-facing plan information.
Explain and compare what each subscription level includes.
Grant plan access to courses, categories or bundles.
Offer plan-level trials with optional global auto-conversion behavior.
Process renewals through scheduled gateway workflows.
Apply reminders, grace, suspension and expiry according to configured policy.
Control upgrades, downgrades, lateral moves, cooldowns, credits and immediate or end-of-period cancellation.
Configure activation, renewal, expiring, grace, expired, cancelled and payment-failed messages.
Keep purchases, learning access and self-service in the same Moodle identity.
Give learners one account shell for purchases, learning access and commerce self-service.
Show entitled courses and provide direct routes back into learning.
Let learners review purchase history, open orders and download documents they own.
Surface Moodle learning evidence beside commercial access.
Show plan, status, access and permitted cancellation or plan actions.
Let learners save products while giving operators an aggregate demand signal.
Maintain the commerce-facing profile fields required for checkout and support.
Authorize every learner record by the authenticated Moodle user rather than trusting a requested ID.
Communicate transaction and lifecycle events through a queued, observable delivery system.
Manage branded subjects and bodies with validated placeholders.
Separate the transaction from outbound delivery so payment and enrolment do not wait on email.
Notify buyers about orders, payments, invoices, enrolment and subscription lifecycle events.
Send scheduled, suppression-aware recovery messages for eligible carts.
Evaluate unpaid orders twice daily and queue applicable reminders.
Group applicable operational notifications into scheduled digest delivery.
Optionally deliver selected operational notices to configured collaboration endpoints.
Inspect queue state, attempts, logs, suppression and stale-item recovery.
See commercial performance and investigate the operational state behind it.
Configure four KPI tiles and 18 analytics or table widgets independently from the storefront widgets.
Show, hide, reorder and size widgets personally or through an authorized site default.
Review 7 days, 30 days, 90 days, 12 months or year-to-date with appropriate time buckets.
Track net/gross revenue, paid conversion, average order value, product mix and cart funnel.
Review new versus returning buyers, purchase timing, geography and wishlist demand.
Compare gateway success, tax, coupons, refunds, discounts and time to payment.
Use daily, product and gateway reporting records generated by Moodle cron.
Highlight actionable store conditions such as active course products without an enabled regular price.
Delegate commerce work through Moodle controls and retain ownership of operational data.
Separate viewing and management across orders, products, storefront, payments, reporting, subscriptions and communications.
Seed administrator, finance, product, reporting, storefront, marketing, support, subscription and payment-operations starting points.
Assign cross-store responsibilities through Moodle’s native role and capability model.
Declare metadata and external locations and participate in Moodle export, deletion and user-list requests.
Hide optional checkout fields and use suppression-aware communication workflows.
Store gateway configuration under protected capabilities and keep card capture at the provider.
Retain independent payment, webhook and audit records for investigation.
Use Moodle language strings, administrator overrides and a string-audit guard for translated interfaces.
Operate, inspect and extend the commerce layer as part of the Moodle ecosystem.
Use, inspect, modify and redistribute the plugin under its open-source licence.
Run commerce in the Moodle application, database, user, enrolment, role, messaging and cron environment.
Power the shipped AJAX applications through validated, capability-checked external functions; these are not presented as an unauthenticated public REST API.
Observe order and subscription lifecycle events instead of bypassing business rules with direct table writes.
Run notification, recovery, cleanup, reporting, key and subscription lifecycle work through Moodle cron.
Keep add-on data and business rules independent while ModernCommerce provides gated navigation and React administration surfaces.
Seed defaults and demo data, refresh roles, inspect bundles, test email and package releases.
Use database, capability, service, task and page references reviewed against the installed source.
Important operating boundaries
These boundaries matter when evaluating production fit and total operating responsibility.
ModernCommerce supports 21 currencies, but each store operates one active currency at a time; it is not simultaneous multi-currency.
Stripe, PayPal, Paystack and Flutterwave require merchant accounts and credentials owned by your organization.
Renewals, expiry, notifications, recovery, cleanup and report snapshots require Moodle cron every minute in production.
GPL access removes platform lock-in; it does not replace secure hosting, backups, monitoring, upgrades, testing and accountable staff.
Evaluate the complete system
Use the demo for product evidence and the technical reference for configuration, permissions, routes, data and operational boundaries.