Solved

Show/Hide Block Based on whether or not someone has placed an order

  • 16 July 2021
  • 4 replies
  • 649 views

Badge +2

Hi there,

 

I’m trying to add a lookup to my email template which would go in every email so that if someone has placed an order in the past, they will be shown an image, but if they have never placed an order, then the block will be hidden.

Is this possible? My intention is for this to be the case for every email, but I’m not sure if I have to use a custom profile property or I can query the Shopify Placed Order event type for the person?

 

Thanks!

icon

Best answer by Dov 16 July 2021, 18:54

View original

4 replies

Userlevel 7
Badge +61

Hello @Conor G,

Thank you for sharing this with our Community.

The simplest solution for this is to use a conditional split in your flow. This is because you cannot use the show/hide block based on past order history. The show/hide functionality will only work for profile properties or based on events in a metric triggered flow. For more detail on this, I recommend reviewing our article on using the show/hide feature here.

The conditional split should use the condition: What somebody has done > placed order at least once over all time. Down the “Yes” path of the split, include the email with the image. Then clone the same flow email, remove the block containing the image, and insert it on the “No” leg of the conditional split.

I hope that helps!

Badge +2

Thanks Dov,

 

I actually figured out a way to do it by creating a profile property when someone has placed an order, and then showing or hiding the block based on that!

 

Thanks for the reply either way!

Userlevel 1
Badge +4

Hi, I would be interested to know how to create a profil property when someone has placed an order.

Could you please explain it ?

Thanks,

Laurent

Badge +2

Hi, I would be interested to know how to create a profil property when someone has placed an order.

Could you please explain it ?

Thanks,

Laurent

Hey Laurent,

It looks like nobody has gotten back to you so far.

The simplest way to do that would be to add a property every time a customer places an order.

Trigger: Placed Order => Profile Property Update => For example, the name could be:

Property Label: Placed Order

Property Value: True

You could either add a profile property in your Post Purchase Flow or set up a different flow just for that. You could even remove or update/change the property if someone refunds an order.

Don't forget to save the property to a profile first in order to let this work.

If you have any further questions, don't hesitate to ask.

Kind regards,
Noah

Reply