Stripe

Payment gateways ::: paygw_stripe
Maintained by Alex Morris
Connect Moodle with Stripe to collect payments through various providers. E.g. credit cards, Alipay, Sofort. Requires a Stripe account.
Latest release:
1749 sites
480 downloads
56 fans
Current versions available: 1

Connect Moodle with Stripe to collect payments through various providers. E.g. credit cards, Alipay, Sofort.
Requires a Stripe account.

Setup

Watch this video showing the setup process:
  1. Install the plugin
  2. Enable the Stripe payment gateway
  3. Create a new payment account
  4. Configure the payment account against the Stripe gateway using your Stripe API keys
  5. Enable the 'Enrolment on Payment' enrolment method
  6. Add the 'Enrolment on Payment' method to your chosen course
  7. Set the payment account, enrolment fee, and currency
  8. All done! Try a test payment as an unenrolled learner by visiting the course

 

Details

Stripe offers 106+ currencies however certain payment gateways only support a subset of those.
E.g. Alipay only supports CNY and NZD currencies.

The plugin supports using promotion/coupon codes, automatic tax calculation, and subscriptions.

This plugin can be used with these payment gateways:

  • Card
  • Alipay
  • Bancontact
  • EPS
  • giropay
  • iDEAL
  • P24
  • SEPA Direct Debit
  • UPI
  • Klarna
  • New Zealand BECS Direct Debit

Some of those payment gateways will only work in Stripe if you have provided additional verification details.

Warm Thanks

Thanks to E-learning Co., Ltd for sponsoring the work to add subscription support to this plugin.

Potential privacy issues

Email alex@navra.nz or create a GitHub issue

Screenshots

Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4

Contributors

Alex Morris (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments

Show comments
  • Luci Setoue
    Wed, 23 Oct 2024, 1:49 PM
    Amazing plugin! Anyone else having issues with discount codes? Discount is applied, but can't proceed to the payment checkout. Works fine with full priced items
  • P H
    Wed, 30 Oct 2024, 4:24 PM
    Trying to upgrade from version 1.24 to 1.26 on Moodle 4.1+ and getting the following error:

    Installing available updates
    Downloading paygw_stripe ... OK
    Validating paygw_stripe ... Error
    [Error] Required Moodle version [2022112809]
    Installation aborted due to validation failure
  • Jonah Schroeder
    Tue, 12 Nov 2024, 12:32 AM
    Hi Alex, this plugin is a lifesaver, thanks! One thing I'd love to be able to do is customise the product name - currently it defaults to the name of the course, and when it's a subscription model "Subscribe to Enrolment in ..." doesn't really make sense in my context. Is there any way to do this?
  • ryan lesperance
    Wed, 13 Nov 2024, 10:01 AM
    Using Moodle 4.4 latest version of plugin. This plugin has worked seamlessly for the longest time but all of a sudden I am getting Forbidden
    You don't have permission to access this resource. Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request. The payment goes through to stripe but the process stops there and it fails to enrol the student. Any advice appreciated Thanks

    https://stage.proactivetraining.com.au/payment/gateway/stripe/process.php?component=enrol_fee&paymentarea=fee&itemid=342&session_id=cs_live_XXXXXXXXXXXXXXXX
  • Rajib Bhattacharjee
    Sun, 22 Dec 2024, 3:17 PM
    Hi,
    I have setup a monthly subscription using the plugin. My confusion is when we setup Monthly Subscription for the stripe in the payment accounts page do we need to provide the enrolment duration in the "Enrolment on Payment" page and what should be the value of it if we do. Right now I have set the value of course "enrolment duration" as 30 days (considering 30 days a month). Is that fine?
  • Alex Morris
    Sun, 22 Dec 2024, 3:19 PM
    You do not need to set an enrollment duration. I'd recommend leaving it empty.
  • Elnur Veliyev
    Wed, 25 Dec 2024, 4:13 AM
    Hi, is it posible to get support on your product?

    I sent you email in November, but didn't get answer.
    I needed to add VAT, customer billing address on invoice and enable sending of invoice with one time payment.
    So I asked one developer to help. It worked, but now once one enrolls all guest on the website can access the course directly, while only logged in users are requested to pay.

    Could you assist with that, or do you maybe have another plugin to sell?
  • Michael Milette
    Tue, 18 Feb 2025, 1:55 AM
    Is this plugin compatible with Moodle 4.5 LTS?
  • D S
    Tue, 15 Apr 2025, 6:35 AM
    Is there a way to use this plug-in to charge at the whole school level instead of per-course? I want users to pay a recurring monthly fee but for the entire school, not just per-course.
  • Tunya in car's
    Fri, 11 July 2025, 8:09 PM
    Hello,

    Thank you for providing the plugin! I have a question: if for some reason my payment doesn’t go through immediately, can I complete it later? Will I receive an email with a pending-payment link or instructions so I can finish the payment afterward?

    Thanks!!
  • Alexandre Prechtler
    Thu, 9 Apr 2026, 12:39 AM
    I installed The Plugin. It creates webhooks automatically but stripe informs that It cannot connect. It drama that only test Connections fail because the that handelled a real sale showed a seccessful connection. Do you have a solución for this problem? I use versión 1.31 and moodle 5.1. thanks
  • Denis Paquet
    Thu, 11 June 2026, 1:22 AM
    Hi Alex, thanks for this great plugin! We need to add text above the payment instances since there are often three or four for each of our courses. But we noticed that the "Custom instance name" field doesn't return anything. Is there an easy way to add it?
  • Mizuki Katayama
    Thu, 2 July 2026, 3:37 PM
    Hello,
    My name is Mizuki from E-Learning Co., Ltd., a Moodle Premium Partner in Japan.
    First of all, thank you for your help.

    I'd like to share one suggestion as a Stripe user regarding the subscription feature.
    When the subscription price is changed in the Stripe dashboard, the actual billing amount is updated correctly. However, the subscription price displayed in the user's Moodle profile is not updated and continues to show the old amount.
    Would it be possible for Moodle to automatically synchronize and display the updated subscription price whenever the price is changed in Stripe?
    I apologize if this has already been discussed elsewhere.
    We are currently using Moodle 4.5.
    Thank you for considering this suggestion. I would be very happy if it could be implemented.
  • Alex Morris
    Thu, 2 July 2026, 4:38 PM
    Hi Mizuki, can you please raise this on the github issue tracker: https://github.com/alexmorrisnz/moodle-paygw_stripe/issues
  • Alex Morris
    Thu, 2 July 2026, 4:39 PM
    Hi @Denis Paquet, if this is the payment instances on the course page, not the modal that pops up when you click on Stripe, I think that would be a core Moodle issue, but feel free to raise it on https://github.com/alexmorrisnz/moodle-paygw_stripe/issues and when I get some time I may be able to look into it.
1 2 3 4 5 6
Please login to post comments