Abandoned Cart E-Mails get sent despite purchase (double profiles)

  • 18 October 2021
  • 1 reply

Badge +3

Hey Klaviyo Community,


after a few attempts with the Klaviyo Support, I try to find a solution to my problem. Maybe some of you encountered the same issue:


Our cart abandonments get sent out to people despite them placing the order because of two separate profiles engaging.


Say a lead receives a campaign, clicks and lands on the website. They proceed, add something to their cart and then proceed to checkout. This all happens and get’s linked to, say “Profile A”. It’s the e-mail they received a mail from and are active on site. Then, they proceed filling out the checkout form, but insert a different e-mail then they are currently active with inside the checkout. Say Profile B.


So Profile A started the Checkout, but Profile B - which are both the same customer - places the order.


So the abandoned cart gets sent to Profile A, while Profile B gets the order confirmation.


So actually, it’s working as it should and some would argue that the impact it has on us is low. However, we have a lot of people subscribing to our lists but use different E-Mails for transactions. 


This causes plenty of questions from customers if their order went through or not, as customers receive an abandoned cart, as well as an order confirmation.


As it’s two different profiles being active, I currently don’t know of a way of filtering out those cases.


My question: Is there a way to trigger the checkout only after entering the E-Mail field, not before? That way, we would sort out that issue.


Thank you for your help!


P.S We’re using WooCommerce


Best answer by David To 18 October 2021, 22:55

View original

1 reply

Userlevel 7
Badge +60

Hello @Mag3me,

Great question!

Thanks for being so thorough on your explanation! In most cases, a Checkout Started event is often times triggered when a contact enters their email address as part of the contact information through the checkout process and submits the form by moving onto the next page/step of the process; typically the billing or payment page. This process of providing an email and the contact information would cookie the contact. However, in the instances that contacts were already previously cookied, such as subscribing to a form prior to reaching the checkout page, coming to the website from a Klaviyo email, or in someway provide an email address prior to reaching the checkout page, this would bypass the cookieing process mentioned prior. 

For this reason, because the contact is already cookied before reaching the checkout page, the contact would trigger the Checkout Started event before even providing an email address as part of the contact information page. In addition, if a contact decides to use a different email address on this page, this would cause a new Klaviyo profile to be created as the cookie is updates to recognize and be associated with this newly entered email address. 

Since this is a behavior of your customers to want to be notified of their order on a separate email, there wouldn’t be a way to adjust how and when Klaviyo cookies a contact to consider them an active profile. That said, one work around you can use to bypass this behavior would be using custom identifications for your contacts as opposed to Klaviyo’s default method of $Email. If you do decide to go this route, keep in mind that if you choose to use your own unique identifier with the $id key, you take on the full responsibility of identity management within your Klaviyo account. 

Through the use of a custom $id, you can ensure that contacts are identified by a single ID identification even if they use a different email address. With this, you can further identify if a specific user/ID has placed an order to be excluded from a flow. Because this solution would be custom, I would suggest working with a developer you are familiar with or finding a Klaviyo partner who can further help you with this implementation and management. You can learn more about profiles and unique identifiers from the Track and Identify API Reference and Klaviyo API Documentation articles. 

I hope this helps!