Skip to main content
Solved

List-Triggered Flow for Multiple Online Course Purchases


Forum|alt.badge.img+1

Hi Klaviyo Community,

 

I hope you're doing well. I'm currently facing an urgent issue, and I’d greatly appreciate your help to get this sorted (or else I may get fired).

 

We’re working on a confirmation email for online course purchases, which we’re planning to automate using a list-triggered flow. The list will contain details such as the customer’s email address, course ID, course date, and course time, which will also be included in the email.

For customers who purchase a single course, this works as expected. However, most customers tend to purchase multiple courses, and I’m unsure if the list-triggered flow will work correctly in this case, as the email will need to list all of their courses.

Additionally, the list will be uploaded bi-weekly, and I’m concerned about whether there’s a way to upload it without overriding the current values - essentially, it should just update the information rather than replacing it.

Any guidance or advice would be immensely appreciated. I’m under the gun to resolve this, so your prompt response would be a life-saver!

Thanks tons!

Best answer by In the Inbox

Hi ​@Anh Nguyen 

Thank you for posting your question in the community. I agree with ​@MANSIR2094 that an event-triggered flow would be best for your setup vs. a list-triggered flow. If you have developers who can automate this as suggested that is great. If you don’t have developers one alternative workaround you could explore is using the Zapier integration.

For example, through Zapier you could still use lists via Google Sheets and then set up an event-triggered flow that looks for people added to a google sheet. When a new row is added, Zapier will pass this information to Klaviyo and trigger the event. 
https://zapier.com/apps/klaviyo/integrations/google-sheets

Admittedly, setting up Zapier will take some tinkering, but this might be a good middle-ground solution to explore before committed dev resources or if you don’t have dev resources available.

I hope this helps!

Best,

@In the Inbox 

View original
Did this topic or the replies in the thread help you find an answer to your question?

4 replies

MANSIR2094
Problem Solver IV
Forum|alt.badge.img+17
  • Problem Solver IV
  • 262 replies
  • March 6, 2025

Hello ​@Anh Nguyen,  I completely understand how frustrating this situation must be, and I appreciate you reaching out for help. Don't worry, we can definitely find a solution.

 

The issue you're facing with list-triggered flows is due to how Klaviyo handles data uploads. Since each upload replaces existing data, it's not ideal for showcasing multiple course details in one email.

 

Instead, I suggest using an event-triggered flow based on a "Course Purchased" event. This approach allows Klaviyo to store multiple course details under one profile and dynamically display them in the email.

 

If you are uploading data manually, make sure you are updating profiles rather than replacing them. And if multiple courses are purchased at once, you can pass them as an array in the event data and use a dynamic table block in the email to list all courses properly.

 

Let me know if this help, and if you need help with setting this up don't hesitate to reach out.


Forum|alt.badge.img+1
  • Author
  • Contributor IV
  • 7 replies
  • March 6, 2025

@MANSIR2094 Thank you for your support! That’s something I’m thinking at the moment but I’m not sure if we can create an event using CSV file. 


MANSIR2094
Problem Solver IV
Forum|alt.badge.img+17
  • Problem Solver IV
  • 262 replies
  • March 6, 2025

@Anh Nguyen I recently finished a project with my developer that tackled a similar challenge. We created a Python script to handle revenue tracking and event updates in Klaviyo.

 

The script processed CSV data, sent purchases as custom events, and ensured new data was added without overriding existing values. I think a similar approach could work wonders for your case!

 

Instead of relying on a list-triggered flow, you could upload your CSV and have a script send each course purchase as an event to Klaviyo's API. This way, customer profiles will store multiple course purchases, and your confirmation email can dynamically pull all courses a customer has bought.

 

This approach prevents overwriting existing data and ensures the email includes everything accurately.  let me know what your thought on this.


In the Inbox
Partner - Platinum
Forum|alt.badge.img+31
  • 2025 Champion
  • 298 replies
  • Answer
  • March 6, 2025

Hi ​@Anh Nguyen 

Thank you for posting your question in the community. I agree with ​@MANSIR2094 that an event-triggered flow would be best for your setup vs. a list-triggered flow. If you have developers who can automate this as suggested that is great. If you don’t have developers one alternative workaround you could explore is using the Zapier integration.

For example, through Zapier you could still use lists via Google Sheets and then set up an event-triggered flow that looks for people added to a google sheet. When a new row is added, Zapier will pass this information to Klaviyo and trigger the event. 
https://zapier.com/apps/klaviyo/integrations/google-sheets

Admittedly, setting up Zapier will take some tinkering, but this might be a good middle-ground solution to explore before committed dev resources or if you don’t have dev resources available.

I hope this helps!

Best,

@In the Inbox