Skip to main content

Currently, the “Placed Order” event is transferred from Shopify to Klaviyo without any delay. This means that order tags which are added a few seconds after the order is placed via a Shopify Flow are not included in the event data sent to Klaviyo. As a result, we can’t use these tags for segmentation in Klaviyo flows.

Unfortunately, Klaviyo does not re-sync metrics after they’ve been recorded, so it’s not possible to retroactively include the order tags in the original Placed Order event.

Has anyone found a solution for this issue or had experience with any of the following approaches?

  1. Re-fetching order data in the Klaviyo flow:
    Using the Shopify Admin API to fetch the latest order data (with tags) within the Klaviyo flow where the segmentation is needed. This seems complex to implement, and we’re unsure if it would work reliably.

  2. Creating a separate trigger event:
    Sending a custom event to Klaviyo once the order tags have been successfully added, and then using this as a trigger for segmentation or flows.

  3. Using a Klaviyo connector in the Shopify Flow:
    Adding an action in the same Shopify Flow that sets the order tags, using the Klaviyo connector to update the customer profile with those tags as custom profile properties. These sync to Klaviyo almost in real-time. However, any tags added this way would need to be carefully managed (e.g., removed if they no longer apply).

Welcome to the community ​@Dorit

I had this issue also with a client. I set up a placed order event in Shopify flow to add the order tags I wanted in Shopify and also to push them to Klaviyo.

As you’ve mentioned, because the order tags in Shopify are added with a delay that initial Shopify flow trigger does not pass those tags to Klaviyo in the placed order event. However, it does pick those tags up in the fulfilled order event when the order is fulfilled.

I don’t know if that helps in your use case but though it worth mentioning!

Regards

Andy  


@Dorit as previously mentioned, this issue arises because once the "Placed Order" event is recorded in Klaviyo, it cannot be modified. The event is transmitted immediately via webhooks, making it immutable. The only way to synchronize additional tags with Klaviyo is by either adding them as custom profile properties or by creating a redundant custom event, which can be triggered through the Shopify flow connector or middleware using APIs.


Reply