Official documentation

ModernCommerce documentation

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

Version 2.1.8

Modern Commerce: Quick Start


This guide takes you from a fresh install to a working test purchase, the fastest way. It assumes the plugin is installed, cron is running, and defaults are seeded (see Installation).

1. Connect a payment gateway

Open /local/moderncommerce/admin/gateways.php and configure at least one of Stripe, PayPal, Paystack, or Flutterwave with the API keys/secrets from that provider's dashboard. Start in the gateway's test/sandbox mode.

There is no sale until a gateway is configured. Also confirm your store currency is set (Settings → Currency) before creating prices: the default is NGN. See Payments.

2. Price a course

Open /local/moderncommerce/admin/pricing.php and give an existing Moodle course a price:

  • Set the price, an optional compare-at (crossed-out) price, visibility, and status.
  • Selling several courses together? Create a bundle or program at /local/moderncommerce/admin/bundles.php. See Products & Pricing.

3. Arrange the storefront

Open the storefront at /local/moderncommerce/index.php and turn on edit mode to arrange widgets: hero, featured products, catalog, and content sections. The catalog itself is a widget, so you decide where it appears. See Storefront.

4. Take a test purchase

As a normal (non-admin) user:

  1. Open the storefront and add the priced course to the cart.
  2. Go to checkout and choose your gateway.
  3. Complete the payment using the gateway's test card / sandbox details.
  4. You'll be returned to the success page.

Test the full set of outcomes before going live: a successful payment, a failed payment, a cancelled checkout, a refund, and a duplicate webhook delivery.

5. Confirm it worked

After the payment (and the next cron cycle for any async follow-up), check:

  • Orders at /local/moderncommerce/admin/orders.php: the order shows as paid.
  • The buyer is enrolled in the course and sees it in the learner dashboard (/local/moderncommerce/learner/index.php).
  • An invoice/receipt was generated and the confirmation emails were sent (run php local/moderncommerce/cli/test_emails.php if you want to verify branding first).

Where to go next

Keep the documentation aligned with every release.

Support the source review, examples, compatibility checks, and editing required to keep implementation guidance accurate as Moodle evolves.

Support development Voluntary support. The core stays GPL.