Hello guys! I really hope you can help me with this big issue..
We are selling our products on WooCommerce and send transactional E-Mails over Klaviyo. Everything works well except the one payment method called 'awaiting payment'. This is a common payment method in Germany - So the customer places the order but has to pay it manually at his bank (a lot of people still don't have online banking). The problem is that Klaviyo doesn't recognize this type of order as an actual order so it doesn't trigger my transactional email. Actually Klaviyo things these customers have abandoned their cart and they are all landing in my abandoned cart flow on top of that :(
So Klaviyo sends Order confirmations to customers that are marked as ‘’processing’ in my Woocommerce, but not to customers that are marked as ‘On Hold’ (this is where they land with this specific payment method - I then have to mark them as payed manually later when I checked my bank).
So customers that have to pay manually don’t even know where to send the money because they are all waiting for an Email saying where to send it. But I am not able to create a flow or an transactional mail for them because there is no segmentation for pending payments.
Does anyone have an idea how to solve this problem?
Thanks in advance,
Best answer by retentionView original
@Spryke, welcome to the community.
I’m not as familiar with WooCommerce as I am with Shopify’s platform, but looking at Klaviyo’s WooCommerce Data article, I see that you’re right that there isn’t really a built-in “Event” for what you’re describing as an order that you mark as “On Hold.”
In other words, the native Klaviyo to WooCommerce integration only has “Ordered Product” and then “Fulfilled Order” and no events fire in between those two events (as far as I can tell).
You have a few options to go from here:
Create a Custom Event with Klaviyo’s API
If you are a developer or have access to one, you can create your own custom Metric (aka Event) that you can label as “Order On Hold” and pass the appropriate event properties (e.g. Email, Items, Order Amount, Payment Instructions, etc) to Klaviyo.
You can reference Klaviyo’s official PHP API on Github: klaviyo/php-klaviyo. A more generic introduction to Klaviyo’s API reference is also available here: API Reference.
Although more technical and perhaps more difficult to implement, you will be sending your Custom Events in the same way that Klaviyo’s Integration work.
Create a Custom Event with a 3rd Party Middleware Tool like Zapier
If you’re comfortable with a third party tool, you can use a middleware tool like Zapier that can connect WooCommerce with Klaviyo. Specifically for Zapier, I think you can use the Zapier → WooCommerce → Order Trigger → (Filtering for the Status for “On Hold”) and then pass it as a Custom Event you can label as “Order On Hold” using the Zapier → Klaviyo → Create Event Action. Of course there’s a lot of details and steps to step through but I think it can reasonably be done.
Just note that Zapier would be an intermediary tool so it may need to be maintained and monitored and has its own pricing/fees - probably sufficient for a small or medium traffic site. Unless you’re doing huge volumes of orders, you may want to go with the custom development method above which I find most WooCommerce folks prefer to do anyways.
Finally, once you have your Custom Metric “Order On Hold” in Klaviyo, you can then create a new Flow that triggers on it to send that automated message you mentioned to help customers fulfill their payment manually.
Furthermore, you can use that same Custom Metric to be excluded as a Flow Filter in your Cart Abandonment Flow so that anyone who is in that scenario doesn’t get a Cart Abandonment email.
There might be other WooCommerce gurus here in the community that can give a better solution, but I hope this helps!
Thank you for your help Joseph. That’s what I was thinking as well. Creatin a custom event with Klaviyos API. Problem is I don’t know anyone that is able to do such thing. I searched in Fiverr yesterday for someone but it is really hard to describe what I need so the people there either don’t get the problem or are not able to :(
Someone here maybe actually able to help out on this side? Not for free of course!
Glad you could receive assistance from
@retention on your question! If you were looking for some assistance, I would recommend checking out our Klaviyo Partner Directory to find someone to work with!
Have a good day :)
Hi @retention! We’re trying to do something similar with our Shopify store, would you have any advice on how to do this or the best way to learn about API dev for klaviyo and shopify?
I’m sure that
@retention has other methods for learning about API dev for those platforms. For the time being, I can provide some links to our own API docs as well as a link to the Shopify API references so you can take a look for yourself too!
Additionally, here is a link to our Klaviyo getting started with API Help Center article.
Hope this gave you a good base to start!
I send an email to support and they changed the “awaiting payment” or “on hold” status to being the same as placed order. This solved the issue.