Skip to main content
— Concept

Automate Alva Courses with Shopify Flow

Alva Courses adds 12 triggers and 7 actions to Shopify Flow, Shopify's free automation app. Triggers start a workflow when something happens in a course; actions let any workflow enrol a customer, change their access, send their emails or reset their progress. It works on every Alva Courses plan.

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 completed fires when you pass the student's coursework, not when they finish the last lesson.
  • Repeat completion. Course lesson completed fires again only if a student's progress was reset and they complete the lesson again; Repeat completion is 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 soon fires 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 expired skips 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

Does Shopify Flow cost extra with Alva Courses?

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.

Can a workflow run for just one course?

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.

Will turning on a workflow send triggers for past events?

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.

What happens to a student's progress when a workflow revokes their access?

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.

How do I check why a workflow didn't run?

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?

Still stuck? Email us.

Last updated 2026-10-01