How Alva Courses works with Shopify Flow
A Shopify Flow workflow is a trigger, optional conditions and one or more actions. Every Alva Courses trigger carries the student as a Shopify customer, plus the course's ID, title and link, so any Flow action can use them: add a customer tag, send an internal email, update Klaviyo or a Google Sheet. Alva actions work the other way round, letting a workflow enrol a customer, change their access or look up their progress.
Alva Courses only sends a trigger to Flow while a turned-on workflow uses it, so triggers you don't use cost nothing and send nothing.
Find course IDs and URL handles
Every Alva action has a Course ID or URL handle field, and every trigger includes Course ID so a condition can pick out one course. In Alva Courses, open Settings → Integrations → Shopify Flow: the Course IDs for Flow table lists each course's Flow ID and URL handle, with copy buttons.
The same Flow ID is on each course's Settings tab, under the course URL. A URL handle is the part of the course link after /apps/alva/courses/. If you later change a course's URL, workflows that use the old handle keep working.
Build your first workflow
1. Open Shopify Flow
In Alva Courses, open Settings → Integrations → Shopify Flow and click Open Shopify Flow, or open Flow from Apps in your Shopify admin. Click Create workflow.
2. Choose an Alva trigger
Click Select a trigger, choose Alva Courses, and pick the event that should start the workflow, such as Course completed. The triggers reference lists what each one sends.
3. Limit it to one course (optional)
Every Alva trigger fires for all your courses. To act on one course only, add a Condition that Course ID is equal to that course's Flow ID.
4. Add an action
Add any Flow action, such as Add customer tags or Send internal email, or an Alva Courses action such as Enroll customer in course. In an Alva action, paste the course's Flow ID or URL handle into Course ID or URL handle. The actions reference explains each one.
5. Turn it on and check it
Turn the workflow on. Back in Alva Courses, its trigger shows In use, and Flow activity lists each trigger Alva sends and each action it runs, with its status.
Every trigger
Alva Courses sends 12 triggers. Each one includes the student and the course, and lesson events add the lesson. The triggers reference lists every field each trigger carries.
| Trigger | When it fires |
|---|---|
Course enrollment created |
A customer was enrolled in an Alva course by purchase, by you, or by CSV import, membership tag, free self-enrollment or a Flow action. |
Course lesson completed |
A student completed a lesson in an Alva course. Fires again if they complete it again after their progress was reset; see Repeat completion. |
Course completed |
A student completed an Alva course: every lesson, any required quizzes, and a passing evaluation where the course requires one. |
Course quiz graded |
A student's quiz attempt in an Alva course passed, failed or timed out. Quizzes needing manual review fire once you've reviewed them. |
Course lesson comment posted |
A student posted a comment or a reply on a lesson in an Alva course. |
Course coursework submitted |
A student submitted their coursework for evaluation in an Alva course. |
Course coursework evaluated |
You evaluated a student's coursework in an Alva course, as a pass or as a request to revise. |
Course certificate issued |
An Alva course certificate was emailed to a student. |
Course access removed |
A student lost access to an Alva course: unenrolled, refunded, member deleted or revoked by Flow. Not fired by removing a membership tag. |
Course instructor reply posted |
You replied to a student's lesson comment in an Alva course. The customer is the student you replied to. |
Course access expiring soon |
A student's access to an Alva course expires in 14, 7, 3 or 1 days. Add a condition on Days until expiry to choose when to act. |
Course access expired |
A student's access to an Alva course reached its expiry date, plus your grace period. |
Every action
Alva Courses adds 7 actions. Each one needs a customer, so use them after a trigger that provides one. The actions reference covers their fields, rules and the messages Flow shows when a step runs.
| Action | What it does |
|---|---|
Enroll customer in course |
Give a customer access to an Alva course. |
Revoke course access |
Remove a customer's access to an Alva course. Their progress, quiz attempts and coursework are kept. |
Extend or set course access |
Change when a customer's access to an Alva course expires. Fill in exactly one of the three options. |
Resend course access email |
Email a customer the link to an Alva course they're enrolled in. |
Send course certificate |
Email a customer their certificate for an Alva course they've completed. Does nothing if it was already sent. |
Reset course progress |
Reset a customer's progress in an Alva course. This permanently deletes their completed lessons, quiz attempts and coursework evaluations. |
Get course progress |
Look up a customer's progress in an Alva course, to use in later steps. |
Things to know before you rely on a workflow
Alva Courses sends a trigger only when something really changes, and a few events behave in ways worth planning for.
- One trigger per real change. Reopening a finished lesson, a repeated request or enrolling someone who is already enrolled sends nothing.
- Evaluation courses. For a course that requires evaluation,
Course completedfires when you pass the student's coursework, not when they finish the last lesson. - Repeat completion.
Course lesson completedfires again only if a student's progress was reset and they complete the lesson again;Repeat completionis then true. Add a condition that it is false to reward each lesson only once. - No guaranteed order. Two triggers from the same moment, such as the last lesson and the course completion, can reach Flow in either order. Don't build a workflow that needs one to arrive first.
- Rarely, twice. If a server restarts at exactly the wrong moment, Flow can receive the same trigger twice. Prefer steps that are harmless to repeat, such as adding a tag.
- Expiry reminders.
Course access expiring soonfires at 14, 7, 3 and 1 days before access ends. Alva Courses checks every hour and sends only the nearest of those already reached, so a student enrolled with 5 days left gets the 7-day reminder, never 14 and 7 at once. - Not every change is an event. Removing a membership tag doesn't fire
Course access removed, because tag access is checked when the student opens the course. Deleting a course, uninstalling Alva Courses and customer data erasure requests fire nothing. - New workflows start fresh. Alva Courses starts sending a trigger within about a minute of you turning on a workflow that uses it. Earlier events aren't sent afterwards, and
Course access expiredskips deadlines that passed more than 48 hours earlier. - Marketing automations. Every Alva trigger includes the student as a customer, so Shopify also offers Alva triggers when you build marketing automations in Shopify Messaging, formerly Shopify Email. Marketing emails only reach customers who have subscribed to email marketing.
- English names. Shopify Flow shows Alva's trigger, action and field names in English only, whatever language your admin uses.
Restore access that a workflow revoked
Revoke course access keeps the student's progress, quiz attempts and coursework, so access can be given back. In Alva Courses, open Members and select the student. The course shows Revoked by Shopify Flow with a Restore access button; confirm, and the student can open the course again with their progress intact.
Automation never undoes a revoke: Enroll customer in course refuses a revoked student. Access removed after a refund has no Restore access button, because a new purchase restores it. If the workflow that revoked access runs again, it can revoke it again.
Check that a workflow is working
In Alva Courses, Settings → Integrations → Shopify Flow marks each trigger that a turned-on workflow uses as In use. Flow activity lists the latest 25 triggers Alva sent and the latest 25 actions it ran, with their status and any error. In Shopify Flow, each workflow's recent runs show the message Alva Courses returned for every action step.
Frequently asked questions
No. Alva Courses includes its Shopify Flow triggers and actions on both plans, Unlimited and Unlimited Pro, at no extra cost, and Shopify Flow itself is a free Shopify app. Apps you connect inside a workflow, such as a loyalty or email marketing app, keep their own pricing.
Yes. Every Alva Courses trigger fires for all your courses and includes a Course ID field. Add a condition that Course ID is equal to the course's Flow ID, which you can copy from Settings → Integrations → Shopify Flow in Alva Courses or from the course's Settings tab.
No. Alva Courses sends a trigger only for events that happen while a turned-on workflow uses it, starting within about a minute of turning it on. Earlier enrolments, completions and quiz results are not replayed into Shopify Flow.
It is kept. The Revoke course access action keeps completed lessons, quiz attempts and coursework. Restore access from the student's page in Members in Alva Courses and they carry on where they left off. Only the Reset course progress action deletes progress.
In Alva Courses, open Settings → Integrations → Shopify Flow. A trigger used by a turned-on workflow shows In use, and Flow activity lists the latest triggers Alva sent and actions it ran, with any error. In Shopify Flow, each workflow's recent runs show the message Alva Courses returned for every action step.
See also
Was this helpful?
Last updated 2026-10-01