Stripe Payment Restriction
Monetise any Moodle activity or resource by placing it behind a secure one-time Stripe payment — instant access after checkout.
Sell access to any Moodle activity with a single Stripe payment
Stripe Payment Restriction is an availability condition plugin for Moodle 4.5+ that places any activity or resource — a quiz, file download, assignment, SCORM package, or any other activity type — behind a secure one-time payment powered by Stripe Checkout.
Students are redirected to a hosted Stripe Checkout page where they pay securely. No card numbers or payment data ever touch your Moodle server. On successful payment, Moodle immediately grants access and the student is returned to the course.
Teachers set the price directly in the activity availability settings — no coding or ecommerce knowledge required. Administrators can view all transactions and export them to CSV from a dedicated report page.
How it works
- Teacher adds the "Stripe Payment" availability condition to any activity and sets the price.
- Student sees a payment prompt instead of the activity content.
- Student is redirected to Stripe Checkout for secure payment.
- On success, access is granted immediately — the student is returned to the activity.
- Stripe webhook verifies payment server-side to prevent spoofing.
What's Included
Restrict any activity — quiz, file, assignment, SCORM
Works with every Moodle activity and resource type. Apply the condition to a quiz, a file download, a SCORM package, or any combination. Set a different price on each item.
Secure Stripe Checkout — no card data on your server
Students pay on Stripe-hosted Checkout pages. No card numbers, CVVs, or payment data ever reach your Moodle server. PCI-DSS compliance is handled entirely by Stripe.
Instant access granted on successful payment
Stripe sends a webhook to your Moodle site. The plugin verifies the payment and grants access in real time — no manual approval, no page reload required by the student.
Teacher and admin transaction reports
A dedicated report page shows every payment — student name, activity, amount, date, and Stripe payment ID. Filterable by course and date range.
CSV export and duplicate payment prevention
Export any filtered transaction report to CSV in one click. The plugin tracks successful payments per student so they are never charged twice for the same activity.
System Requirements
Frequently Asked Questions
Support
The plugin is free and open source (MIT licence). Download from GitHub or Moodle.org. For questions, bug reports, or feature requests, open an issue on GitHub or contact us via the form on this site.
Ready to Deploy Stripe Payment Restriction?
Install it on your Moodle site in minutes. Need customisation or a bespoke plugin? Get in touch.
The word Moodle and associated Moodle logos are trademarks or registered trademarks of Moodle Pty Ltd or its related affiliates.