View Categories

Stripe Payment Pro

6 min read

Brief Introduction #

Stripe Payment Pro lets you accept recurring payments for Moodle courses using Stripe.

You can create course subscriptions, offer trial periods, control billing cycles, provide coupons, and allow students to manage their subscriptions directly from Moodle.

Key Features #

  • Recurring Payments: Charge students weekly, monthly, yearly, or at a custom interval.
  • Trial Periods: Offer students a trial before subscription billing starts.
  • Billing Cycles: Decide how many times a student should be charged.
  • Coupons: Create discounts for selected courses.
  • Multi-Currency: Accept payments in supported currencies.
  • Subscription Management: Let students view and cancel their subscriptions.
  • Secure Payments: Payments are securely processed through Stripe.

Requirements #

Installation #

Step 2: Install the Plugin #

Log in to Moodle as an administrator.

Go to:

Site Administration → Plugins → Install plugins

Upload the plugin ZIP file and complete the installation.

Step 3: Get Your License Key #

Install the plugin in your moodle site

To activate the license for Stripe Pro and ensure proper webhook registration:

💡 Once activated, the plugin will automatically register the required webhook with your Stripe account.

Step 3: Verify Webhook on Stripe #

Ensure that a new webhook has been added with the correct endpoint URL and events.

Log in to your Stripe Dashboard.

Go to Developers → Webhooks. For example : https://dashboard.stripe.com/test/webhooks

Configuration #

Once you will install the plugin, you need to follow these steps :

  • User Token : In order to get the token, goto Web services >> Manage tokens >> Create token for moodle_enrollment_stripepaymentpro. Once the token is generated, add this into settings.

Enable payment mode #

To enable Stripe as payment mode, go to Enrolments >> Manage to enroll plugins and enable Stripe Payment Pro.

Configuring subscription product #

Open the course where you want to accept subscription payments and add Stripe Payment Pro as an enrolment method.

Configure the following settings:

Recurring Cost #

Enter the amount students will pay for each billing cycle.

Example: Enter 25 if students should pay $25 each time the subscription renews.

Product ID #

The Stripe Product ID will be created automatically.

You don’t need to enter anything manually.

Renewal Interval #

Choose how often the subscription should renew:

  • Day
  • Week
  • Month
  • Year

Renewal Interval Period #

Enter how many intervals should pass before the next payment.

For example:

1 + Month = Every month
3 + Month = Every 3 months
1 + Year = Every year

Trial Period #

Enable this option if you want to give students a trial before subscription billing starts.

Enter the trial duration and select the time unit.

Example: 7 Days

The minimum trial period is 2 days.

Subscription Billing Cycles #

Enter how many times the student should be charged.

For example:

If the course costs $25 per month and you enter 6 billing cycles, the subscription will run for 6 billing cycles.

Enrolment Group #

Use Enrolment Group to automatically add students to a specific Moodle group when they purchase the subscription.

This is useful when the same course has different batches, plans, or groups of students.

For example, if a course has groups called January Batch and February Batch, you can select January Batch here. Anyone who purchases through this subscription will be enrolled in the course and automatically added to the January Batch group.

If you don’t need to organize students into groups, you can leave this option unselected.

Example #

For a course costing $25/month for 6 billing cycles with a 7-day trial, configure:

  • Recurring Cost: $25
  • Renewal Interval: Month
  • Renewal Interval Period: 1
  • Trial: Enabled
  • Trial Period: 7 Days
  • Subscription Billing Cycles: 6
  • Enrolment Group: Select a group if required

Save the settings and your subscription course is ready.

Students Flow #

When a student will purchase a product, they can see all the details in the checkout page :

Creating Coupon #

With Stripe Pro, you can now create and manage coupons directly from your Moodle site. Follow these steps to add a coupon:

  • Navigate to Coupon Management: Go to Site Administrator > Enrollment > Stripe Payment Pro – Coupon Management > Generate Coupon.
  • Provide the Required Coupon Details:
    • Coupon Name: Enter the name of the coupon. This will appear on receipts and invoices.
    • Discount Type: Choose whether the coupon offers a discount as a fixed amount or a percentage off the subscription.
    • Discount Amount: Specify the exact amount or percentage of the discount.
    • Coupon Currency: Select the currency for the coupon.
    • Duration: When creating a coupon in Stripe Pro, you can specify how long the discount will be valid by choosing from three duration options:
      • Forever: The coupon applies to all invoices indefinitely, including recurring orders.
      • Once: The coupon applies only to the first invoice.
      • Multiple Months: Set the duration for which the discount is valid. For example, a 50% off coupon with a 4-month duration will apply to all invoices within those 4 months. If a customer uses this coupon for a yearly subscription during this period, the 50% discount will cover the entire year.
    • Coupon Expiry: Define how long the coupon will be valid. For example, a coupon set to last forever for a customer will continue to provide discounts indefinitely, but new customers won’t be able to use it after the expiration date.
    • Coupon for Specific Courses: Select the products (courses) that are eligible for the discount. The coupon will only apply to the selected products. If a subscription doesn’t include any eligible products, the coupon won’t be applied. Note: Only products with Stripe as the payment gateway will be listed here.

Student Subscription Management #

Every student can easily manage their subscriptions from their account.

  • View Subscriptions: Students can check the list of all their active subscriptions.
  • Next Payment Date: Each subscription displays the upcoming payment date for clarity.
  • Cancel Subscription: Students can cancel their subscription at any time.

Important:
If a student cancels a subscription, they will still have access to the enrolled courses until the end of the subscription period they have already paid for. After this period ends (when the next billing cycle starts), access to those courses will automatically be removed.

Invoice Download #

Admins can download invoices for course subscriptions directly from the platform.

  • Each subscription record includes a Download Invoice option.
  • When the Download button is clicked, the admin will be redirected to the Stripe site.
  • From there, the invoice for that specific transaction can be downloaded.

Powered by BetterDocs

Shopping Cart
Scroll to Top