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).
- Connect a payment gateway
- Price a course
- Arrange the storefront
- Take a test purchase
- Confirm it worked
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:
- Open the storefront and add the priced course to the cart.
- Go to checkout and choose your gateway.
- Complete the payment using the gateway's test card / sandbox details.
- 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.phpif you want to verify branding first).