Sell courses through your WooCommerce checkout and let FlowMattic handle access in LearnDash. Paid orders enroll the buyer, refunds and lapsed subscriptions take access away, and course completions can hand back a coupon for the next course. Both plugins run on the same WordPress site, so nothing leaves it.
51 triggers63 actions7 example workflows1 ready-made templateUnlimited runs
Try a pairing
When this happens in WooCommerce43 triggers
Do this in LearnDash6 actions
1. TriggerNew Order Created
2. ActionEnroll Into Course
When WooCommerce fires New Order Created, FlowMattic runs Enroll Into Course in LearnDash with the data from that event.
You build this in the FlowMattic workflow builder on your own site. See the setup steps
WooCommerce and LearnDash workflows you can build
Each one uses only triggers and actions the two integrations ship today, plus FlowMattic's own tools. Where the library has a ready-made template, import it instead of building from scratch.
Ready-made template
Enroll the buyer in a LearnDash course when they order
Each course is a WooCommerce product. When the order comes in, the buyer is enrolled into the matching course, so they can start learning without waiting for you.
Put the bundle's products in one WooCommerce category. A purchase from that category adds the buyer to a LearnDash group that holds every course in the bundle.
Product Category Purchased→Add to Group
Take course access away when an order is refunded
A refund in WooCommerce removes the student from the course they paid for, so refunded buyers do not keep the lessons.
Order Status Set to Refunded→Remove From Course
Match group access to a membership subscription
For course memberships sold as WooCommerce Subscriptions, a Router reads the new status. Active subscribers are added to the members' group and cancelled or expired ones are removed.
WooCommerce Subscription Status Updated→Router→Add to Group→Remove From Group
Sell cohorts as variations and enroll into the right one
Run each start date as a variation of one product. A Router reads the variation bought and enrolls the student into that cohort's course.
Variable Product Purchased→Router→Enroll Into Course
Reward a finished course with a coupon for the next one
When a student completes a course, create a single-use WooCommerce coupon and email them the code, so the next purchase comes from someone already engaged.
Course Completed→Create Coupon→Email (SMTP)
Give loyal customers a bonus course
When a customer's total spend passes the amount you set, enroll them into a bonus course as a thank-you, with no coupon code to manage.
Customer Total Spend Threshold→Enroll Into Course
Set up: enroll buyers on new orders
When you are done, a new order for your course product enrolls the buyer in the LearnDash course it sells.
1
Check both plugins
WooCommerce and LearnDash run on the same site as FlowMattic, so there is no account to connect for either one.
2
Start with New Order Created
Create a workflow with the WooCommerce New Order Created trigger and place a test order so FlowMattic captures the order data.
3
Keep course orders only
Add a Filter that checks the product in the order, so orders for other products do not enroll anyone.
4
Enroll the buyer
Add LearnDash Enroll Into Course, map the customer's user ID, pick the course, test the step and switch the workflow on.
Enroll the buyer in a LearnDash course when they orderTemplate
1. Trigger in WooCommerce
New Order Created
2. Action in LearnDash
Enroll Into Course
Fields mapped from the earlier steps (a typical setup)
From WooCommerce
To LearnDash
Customer user ID
User
Line item product ID
Filter condition
Order ID
Kept in the run log
Built on the FlowMattic canvas. Test each step with real data, then switch the workflow on.
Triggers and actions in this pair
A trigger starts a workflow. An action is something FlowMattic does in the app as a step.
Good to know
Enroll Into Course needs a WordPress user. Guest checkouts create none, so require an account at checkout or create one first with WooCommerce Create a Customer.
Some payment methods create the order before money arrives. If you take bank transfers or cash on delivery, start from Order Paid or Order Status Set to Completed instead.
A refunded order that held several courses needs Remove From Course for each one, or a group removal if you sold them as a bundle.
Course CompletedTriggers when a course is completed
Enrolled Into a CourseTriggers when a user is enrolled into a new course
Added Into a GroupTriggers when a user is added to group access
Essay SubmittedTriggers when a new essay is submitted
Group CompletedTriggers when a user completes all courses in a group
Lesson CompletedTriggers when a lesson is completed
Quiz CompletedTriggers when a quiz is completed by student
Topic CompletedTriggers when a topic is completed
Actions (6)
Add to GroupAdd user to group(s).
Remove From GroupRemove from group.
Enroll Into CourseEnrol user into a course.
Remove From CourseRemove the student access from LearnDash course(s).
Mark Course as CompleteMark the course as complete for user.
Reset Course ProgressReset the given course progress for user.
Why run this pair with FlowMattic
WooCommerce and LearnDash connect through FlowMattic on your own site, with no separate automation account in the middle and no charge per run.
Student data stays on one site
Orders, user accounts and course progress move between two plugins on your own WordPress install, with no outside service in the middle.
Launch day costs the same
Runs are unlimited, so a course launch that brings hundreds of orders in an hour runs every enrollment on the plan you already have.
Access follows the money both ways
The same workflows that grant access on payment take it away on refunds and cancelled subscriptions, which keeps your course roster honest.
Common questions
Can WooCommerce enroll students into LearnDash automatically?
Yes. Use a WooCommerce order trigger, such as New Order Created or Order Paid, followed by LearnDash Enroll Into Course. A Filter on the product keeps other orders out.
What happens if the buyer checked out as a guest?
LearnDash can only enroll a WordPress user. Turn on account creation at checkout, or add a WooCommerce Create a Customer step before the enrollment so the buyer has an account.
Can I remove access when a subscription ends?
Yes. Start from WooCommerce Subscription Status Updated, check the new status with a Router or Filter, and run Remove From Course or Remove From Group for cancelled and expired subscriptions.
Can I reset a student's progress when they buy a retake?
Yes. Sell the retake as its own product, start from Product Purchased for that product, and run Reset Course Progress followed by Enroll Into Course if needed.
Can finishing a course give the student a discount?
Yes. Start from LearnDash Course Completed, create a coupon with WooCommerce Create Coupon, then email the code. Add Email(s) to Coupon can limit it to that student's address.
30-day money-back guarantee Unlimited workflows and runs Self-hosted
Reviewed 27 Oct 2026. The example workflows are written with AI from the real triggers and actions of both integrations and checked against them. WooCommerce integration 2.2.2, LearnDash integration 1.0.4.