LearnDash comes with the ability to accept payment for courses by leveraging PayPal. Using this add-on, you can quickly and easily accept payments using the Stripe payment gateway. Use it with PayPal, or just use Stripe – the choice is yours!

Click here to read the official integration announcement.

Add-On Features


Accept payments using Stripe – Use your free Stripe account to accept credit card payments for courses.

Automatic user creation and enrollment – After successful payment the customer receives a user account and is auto-enrolled into the course.

Compatible with built-in PayPal option – Activate both the PayPal and Stripe options to allow your customers to choose how they want to pay.

Lightbox overlay – Users stay on your site and enter their details into the secure Stripe overlay.ChangelogJune 15, 2020 – V1.5.0

  • Added webhook support for legacy checkout
  • Added support for Group purchase to existing logic
  • Added filter hook for Stripe session args
  • Updated Stripe PHP SDK dependency to v6.43.1
  • Updated refactor integration classes
  • Updated to move Stripe session creation on payment button click event
  • Updated integration object variables to be global
  • Updated initiate integration class in variables so that it can be referenced somewhere else
  • Updated decimal currency support for amount with decimal in transaction record
  • Updated two decimals arg in amount_number_format args
  • Fixed wrap function in try catch block to fix fatal error when retrieving customer when it does not exist in webhook POST data
  • Fixed PHP warning because arithmetic operation expects variable to be always numeric

April 28, 2020 – V1.4.0

  • Added filter hook to allow bailing from processing webhook
  • Added subscription cancellation handler
  • Added logic for payment intent data not to be used other than for paynow product
  • Added payment methods options update
  • Added `get_payment_methods` helper and apply payment method options
  • Added payment methods settings
  • Added `invoice.payment_succeeded` webhook event handler
  • Added `invoice.payment_failed` webhook event handler
  • Added filter hook for checkout sca integration payment method types
  • Added ideal to SCA payment methods
  • Added test endpoint secret settings field
  • Updated to rename webhook handler function
  • Updated to set up Stripe session and store it in cookie to prevent multiple session creations in Stripe
  • Updated call to `stripe_button` function only once
  • Updated global exception
  • Updated endpoint secret setter and getter and change endpoint secret retrieval to use getter method
  • Updated admin script to accomodate test endpoint secret field
  • Updated default username to use email address format and add filter to create short username if needed
  • Fixed wrap session creation in try catch block to prevent fatal error and return button if session is not created
  • Fixed non active subscription pass logic checks and enroll users to courses
  • Fixed Bail process if payload or signature is empty
  • Fixed undefined index error
  • Fixed prevent creating Stripe session if the product type is not paynow or subscribe to prevent Stripe error
  • Fixed ideal payment method addition logic
  • Fixed change response code for `SignatureVerification` error
  • Fixed ideal payment not available for currency other than euro
  • Fixed duplicate customer creation in Stripe account because of unnecessary `add_stripe_customer()` call


Please enter your comment!
Please enter your name here