Skip to main content
— How-to

Send course completions to Klaviyo

Alva Courses sends a Course completed trigger to Shopify Flow when a student finishes a course. Connect it to Klaviyo’s Track an event action and Klaviyo records a Completed Alva course event on the student’s profile, ready to start a Klaviyo flow such as a congratulations email or an offer for your next course.

What this workflow does

This workflow sends Klaviyo an event called Completed Alva course each time a student completes a course in Alva Courses. The event lands on the student’s Klaviyo profile, matched by email address, and carries the course’s ID, title and link, when it was completed, and any grade and final score.

Klaviyo can then start a flow from that event, such as a congratulations email, a review request or an offer for the next course. Completed means every lesson finished, required quizzes passed and, where the course needs one, a passing evaluation. The fields are in Shopify Flow triggers and their fields.

Build the workflow

1. Create a workflow with the Course completed trigger

In the Shopify admin, open Apps, then Flow, and click Create workflow. Click Select a trigger, find Alva Courses and choose Course completed.

2. Add Klaviyo’s Track an event action

Add an action after the trigger and choose Track an event from Klaviyo. Klaviyo maintains this action, so if its fields look different from the ones below, follow Klaviyo’s labels.

3. Fill in the Klaviyo fields

Paste your key into Klaviyo Public API Key and enter Completed Alva course as the Event Name. Fill Customer Email Address, Customer First Name and Customer Last Name from the customer with Add a variable.

4. Add the event properties

Event Properties takes JSON. Add Course ID, Course title, Course URL, Completed at, Grade and Final score, inserting each value with Add a variable. Put | json inside the braces of each text value so a quotation mark in a title cannot break it, for example {"Course title": {{ courseTitle | json }}, "Final score": {{ finalScore }}}.

5. Name the workflow and turn it on

Name the workflow Send course completions to Klaviyo and click Turn on workflow. Alva Courses only sends Course completed to Flow while a turned-on workflow uses it, so students who finished earlier are not sent to Klaviyo.

6. Start a Klaviyo flow from the event

Run the test below first: Klaviyo only lists a metric once it has received an event. Then, in Klaviyo, create a flow triggered by the Completed Alva course metric and build your congratulations email or offer in it.

Test the workflow

Sign in to your storefront as a test customer whose email you can look up in Klaviyo, and complete every lesson of a short course. Open that profile in Klaviyo: its activity should show Completed Alva course with the course properties, marked with the Shopify icon Klaviyo gives events from Shopify Flow.

Nothing in Klaviyo? Check the workflow’s recent runs in Shopify Flow for a Klaviyo error, such as a wrong API key. Then confirm in Alva Courses, under Settings → Integrations → Shopify Flow, that Course completed appears under Flow activity → Triggers sent.

Send enrolments and lesson progress too

A workflow has one trigger, so each kind of event needs its own workflow. Duplicate this one and change the trigger to Course enrollment created with the event name Enrolled in Alva course, adding Enrollment source and Access expires at as properties. Use it to start a welcome series.

For progress, use Course lesson completed with the event name Completed Alva lesson and the Lesson title and Percent complete properties. Add a condition that Repeat completion is false, so a lesson completed again after a progress reset is not counted twice.

Things to know

Filter by course in Klaviyo or in Flow. Course ID travels with every event, so a Klaviyo flow filter can pick one course. Or add a condition in Flow: Course ID is equal to the course’s Flow ID, which Alva Courses lists under Settings → Integrations → Shopify Flow.

Only new completions are sent. Course completed is sent for completions that happen while the workflow is on. Students who finished earlier never reach Klaviyo through this workflow.

Flow can act in Alva Courses too. The same workflow can enrol graduates in your next course with the Enroll customer in course action; see Shopify Flow actions. To tag graduates in Shopify as well, see Tag customers who complete a course.

See also

Was this helpful?

Still stuck? Email us.

Last updated 2026-10-01