Solved

Flow: looping with a time delay until a property is true

  • 30 March 2021
  • 6 replies
  • 41 views

Badge

We have a somewhat complicated series of flows that we are trying to link.  Here is the summary of the problem we are trying to solve:

We need to know when a specific product is “delivered.”  We are on Shopify, and Shopify does not send Klaviyo a trigger for delivery (I do not understand why).

So we installed AferShip which sends a Delivery notification, but you cannot access any information about the products shipped to insert in the flow emails.

So the solution we came up with is to set a Property (“product delivered”) to true on a Flow triggered by AfterShip “Delivered” trigger.  Then we have the another flow triggered on Fufilled (which has all the product information) loop and wait for the “product delivered” property to turn true before sending our a timeline of emails that contain said product info.

The question is how do we loop with say a day time delay on a conditional that is waiting for Proper “product delivered” to be true.

 

OR is there a better way to do this?

icon

Best answer by caroline 1 April 2021, 19:47

Hi @hbaxton,

Unfortunately, there isn’t a way to repeat flow logic until a specific property is set to true. You could instead have the desired conditional logic repeat with enough of a time delay that there is a high probability that the property gets set to true within that time frame. For example, if most products are delivered within 3-6 weeks, repeat the conditional split within the flow every week with a 1 week time delay for ten weeks.

An alternative approach would be to send a custom event to Klaviyo via API that contains all of the product information and that is only triggered when the product is delivered. You might be able to do this using AfterShip’s webhooks.

Track and Identify API Reference

Best,

Caroline

View original

6 replies

Badge

@caroline thanks.  I think some sort of loop ability is such a huge feature that should be easy to implement as its a standard feature in all programming languages.  If you can pass that on to your development team as a feature request I would appreciate it.

Userlevel 4
Badge +4

Hi @hbaxton,

You will need to change the emails manually.

Best,

Caroline

Badge

Hi @caroline,

 

Ok, so I’ve cloned all the emails in the flow many times since we want to check everyday.  If we change one of the emails in the flow, do I need to change every Cloned flow email as well or will they update automatically?

Userlevel 4
Badge +4

Hi @hbaxton,

Unfortunately that solution does require cloning the email and repeating it at different points in the flow. I realize it’s not ideal but I definitely recommend cloning the email rather than recreating the email.

Best,

Caroline

Badge

Hi Caroline,

 

Thank you for the detailed reply.  I am trying what you recommended with the repeated conditional split, but running into somewhat of an issue.  See the screenshot.  Let me know what you think.  Thank you!

 

Userlevel 4
Badge +4

Hi @hbaxton,

Unfortunately, there isn’t a way to repeat flow logic until a specific property is set to true. You could instead have the desired conditional logic repeat with enough of a time delay that there is a high probability that the property gets set to true within that time frame. For example, if most products are delivered within 3-6 weeks, repeat the conditional split within the flow every week with a 1 week time delay for ten weeks.

An alternative approach would be to send a custom event to Klaviyo via API that contains all of the product information and that is only triggered when the product is delivered. You might be able to do this using AfterShip’s webhooks.

Track and Identify API Reference

Best,

Caroline

Reply