1. Setting Up Post-Purchase Flows in Klaviyo

This guide walks you through building Klaviyo flows triggered by Postflows shipping events. Postflows detects what happens with a shipment and sends the event to Klaviyo; Klaviyo then sends the email to your customer.

What this guide covers: How to build and configure flows in Klaviyo. For reference on event names, data properties, and how the integration works: see How Postflows Works with Klaviyo and Omnisend.


Before You Start

Make sure the following are ready before building your flows:

  • Klaviyo is connected in Postflows. Go to Dashboard > Integrations to confirm.

  • Your tracking page is set up in Postflows. Your post-purchase emails will link customers here.

  • You know which Postflows event you want to use. Each flow is built around one event.

For the full list of available events and when they fire, see Available Events and What Triggers Each One.


Step 1 - Create a New Flow in Klaviyo

Log in to Klaviyo and go to Flows in the left navigation. Click Create Flow, then select Build Your Own. Do not start from a template.

Give your flow a name that matches the Postflows event you're using. For example:

  • Postflows - Shipment In Transit

  • Postflows - Out for Delivery

  • Postflows - Shipment Delivered

Click Create Flow to continue.

You can optionally add Klaviyo tags to help organize your flows internally. This is not required for Postflows to work.


Step 2 - Select Your Postflows Trigger

After creating your flow, Klaviyo will prompt you to select a trigger. The trigger is the Postflows event that determines when customers enter the flow.

From the trigger setup screen, select Metric. Then go to Your Metrics, search for "Postflows", and select the event you want to use for this flow.

The available Postflows events are:

  • Postflows - 1. Order Created

  • Postflows - 2. Shipment In Transit

  • Postflows - 3. Out for Delivery

  • Postflows - 4. Shipment Delivered

  • Postflows - 5. Label Created

  • Postflows - 6. Shipment Exception

  • Postflows - 7. Delivery Attempt Failed

  • Postflows - 8. Ready for Pickup

Once selected, customers will enter this flow whenever that Postflows event fires for their order.

Configure re-entry settings

Below the trigger, you'll see a Re-entry criteria setting. Select ‘Allow re-entry’, so customers can enter this flow every time the trigger event fires.

This is important: a customer can place multiple orders, which means the same Postflows event fires again for each new shipment. Without re-entry enabled, a customer who has already gone through this flow won't receive emails for future orders.

Trigger filters (optional)

Trigger filters let you control which orders enter this flow at the moment the event fires. For most brands, no trigger filters are needed during initial setup. You can add them later to segment by order value, product type, or other criteria.

To add one: click the Trigger block, select Trigger Filters, and click Add a filter.

Profile filters

Profile filters help prevent customers from receiving outdated or overlapping shipping emails when you're running multiple shipment flows.

For example, if a customer's order has already triggered Shipment In Transit, they should no longer receive emails from the Order Created flow. To set this up, add a profile filter to your Order Created flow:

  • Select What someone has done (or not done)

  • Choose Postflows - 2. Shipment In Transit

  • Set the condition to: zero times since starting this flow

This tells Klaviyo to stop sending Order Created emails to anyone who has already moved into the transit stage of their shipment journey.

Adjust the filter for each flow based on where it sits in your shipment sequence.

To add one: click the Trigger block, select Profile Filters, and click Add a filter.


Step 3 - Add an Email to Your Flow

Add the email block

Click the ‘+’ icon below the trigger, select Email, then click the email card to open the email settings panel.

Configure email settings

In the email settings panel, configure the following:

  • Email Name

  • Subject Line

  • Preview Text

  • Sender Name

  • Sender Email Address

  • Template

  • Skip recently emailed profiles (Smart Sending) - consider turning this off for shipping notifications; these are transactional emails and customers should receive them regardless of how recently they were last emailed

  • UTM Tracking - optional, for campaign attribution

Every Postflows event passes shipping data directly into Klaviyo, including tracking number, carrier, estimated delivery date, order details, and line items. These are all available as dynamic variables in your email template. For the full list of available properties, see How Postflows Works with Klaviyo and Omnisend.

Add time delays between emails (optional)

If your flow includes more than one email, you can add time delays between them to space out your communication and avoid sending too many updates in quick succession.

To add a delay:

  • Click the + icon below an email

  • Go to Logic

  • Select Time Delay

  • Choose how long customers should wait before receiving the next email

Example uses:

  • Space out multiple updates in a Shipment In Transit sequence

  • Add a gap between a delivery confirmation and a follow-up email

  • Delay a review request after delivery to give the customer time to receive and open their order

Select or build your email template

In the email settings panel, go to Template and click Select template. From here you can choose an existing template, use a saved brand template, or build a new one in Klaviyo's email editor.

We recommend linking customers to your Postflows tracking page in your post-purchase emails. See Tracking Page Builder Guide for more details.


Step 4 - Preview and Activate

Preview your flow

Before going live, preview your emails to confirm that the Postflows data populates correctly. Tracking details, order information, and personalization should all appear as they would in a real send.

Because Postflows automatically seeds sample shipment events when you connect Klaviyo, you can preview your emails with realistic tracking and order information without needing to place live Shopify test orders.

To preview your flow: open an email in the flow builder and click Preview and Test. Select one of the available Postflows sample profiles. You can review email design, subject lines, tracking links, and dynamic shipment data.

If you need to resend the sample events, go to Dashboard > Integrations > Seed All Events in Postflows.

Activate your flow

Once your flow is ready, update each email from Draft to Live and turn on the flow in Klaviyo.

A few things to know about flow statuses:

Status

What Happens

Draft

Flow is paused. Nothing sends.

Manual

Flow runs, but emails are held for your approval before sending. Use this for testing.

Live

Flow runs and emails send automatically.

Each email inside the flow has its own status, separate from the flow status. Both the flow and each individual email need to be set to Live for emails to send.

We recommend setting the flow to Manual first, reviewing a queued test email to confirm everything looks right, then switching to Live.


Basic Troubleshooting


Related articles