Solved

Manually trigger "Started Checkout" event through Klaviyo rest api

  • 26 May 2021
  • 7 replies
  • 1793 views

Badge +2

Hi, 

 

I am working on a custom website that connects to Woocommerce using the rest API, the website also uses the Klaviyo integration and the connection on our custom website uses the Klaviyo rest API but I am running into an issue where I am unsure of how I trigger the “Started Checkout” event. I need something like an event and event_id but I am unsure where to get those.

Is it it even possible to trigger “Woocommerce” flow triggers through the Klaviyo rest api? 

 

Kind regards,

Robbert

icon

Best answer by David To 27 May 2021, 17:34

View original

7 replies

Userlevel 7
Badge +60

Hello @CPKlantenservice,

Was there any particiular reason for connecting both WooCommerce and an alternative custom ecommerce integration with the same Klaviyo account? 

Klaviyo only supports one integration of any type within a single Klaviyo account. Klaviyo is not currently optimized to support more than one ecommerce store per Klaviyo instance, so If you have more than one ecommerce store of the same type, we recommend you create a separate Klaviyo account for each store.

If you have more than one store, and each is supported by a different platform, it is technically possible to integrate all stores with the same Klaviyo instance. We highly recommend against this, however, in order to streamline data analysis and prevent confusion amongst metrics with flows and segments. We don't provide a way to separate stores within a single Klaviyo account. This also includes custom integrations with an existing standard integration with a Klaviyo account. 

With this setup of having both WooCommerce and a custom integration with Klaviyo, you would not be able to leverage Klaviyo’s API to trigger a WooCommerce Started Checkout event. Whenever you are pushing events through Klaviyo’s API, Klaviyo would recognize these events as custom, as denoted by a gear icon; even if you are using the same name and metric ID as an event shared from a standard ecommerce integration’s (Shopify, BigCommerce, WooCommerce, Magento, etc). 

You can also find instructions on how to create this custom Started Checkout metric and further understand how Klaviyo’s API functions ffrom the following articles:

Thanks for sharing your question and being a member of the Klaviyo Community!

David

Userlevel 7
Badge +61

Hello @CPKlantenservice,

Thank you for sharing your question with the Klaviyo Community. In addition to the points made by @david.to, keep in mind that in order to send a “Started Checkout” event to Klaviyo, you will have to use our Track API. We have a great article including an example request for Started Checkout using the API here.  Our Track & Identify API do not follow the standard REST API practices. Additionally, it is not required to use an $event_id in this circumstance, it will automatically be created for you when you send the event.

Thanks and have a great day.

Badge +2

Hello @CPKlantenservice,

Thank you for sharing your question with the Klaviyo Community. In addition to the points made by @david.to, keep in mind that in order to send a “Started Checkout” event to Klaviyo, you will have to use our Track API. We have a great article including an example request for Started Checkout using the API here.  Our Track & Identify API do not follow the standard REST API practices. Additionally, it is not required to use an $event_id in this circumstance, it will automatically be created for you when you send the event.

Thanks and have a great day.

So if I understand correctly, I can’t do this with the rest api? The started checkout example is not how I currently have everything setup. Is there no example of event’s and flows using the rest api? 

Badge +2

Hello @CPKlantenservice,

Was there any particiular reason for connecting both WooCommerce and an alternative custom ecommerce integration with the same Klaviyo account? 

Klaviyo only supports one integration of any type within a single Klaviyo account. Klaviyo is not currently optimized to support more than one ecommerce store per Klaviyo instance, so If you have more than one ecommerce store of the same type, we recommend you create a separate Klaviyo account for each store.

If you have more than one store, and each is supported by a different platform, it is technically possible to integrate all stores with the same Klaviyo instance. We highly recommend against this, however, in order to streamline data analysis and prevent confusion amongst metrics with flows and segments. We don't provide a way to separate stores within a single Klaviyo account. This also includes custom integrations with an existing standard integration with a Klaviyo account. 

With this setup of having both WooCommerce and a custom integration with Klaviyo, you would not be able to leverage Klaviyo’s API to trigger a WooCommerce Started Checkout event. Whenever you are pushing events through Klaviyo’s API, Klaviyo would recognize these events as custom, as denoted by a gear icon; even if you are using the same name and metric ID as an event shared from a standard ecommerce integration’s (Shopify, BigCommerce, WooCommerce, Magento, etc). 

You can also find instructions on how to create this custom Started Checkout metric and further understand how Klaviyo’s API functions ffrom the following articles:

Thanks for sharing your question and being a member of the Klaviyo Community!

David

Its not another ecommerce integration. Its our framework with a connection to Woocommerce which has Klaviyo already integrated. Seeing that Klaviyo uses custom tracking events, I need to somehow either use the same events as woocommerce or create a custom flow which makes it so customers get the abandoned checkout mails. 

Userlevel 7
Badge +61

Hi @CPKlantenservice,

Hello @CPKlantenservice,

Thank you for sharing your question with the Klaviyo Community. In addition to the points made by @david.to, keep in mind that in order to send a “Started Checkout” event to Klaviyo, you will have to use our Track API. We have a great article including an example request for Started Checkout using the API here.  Our Track & Identify API do not follow the standard REST API practices. Additionally, it is not required to use an $event_id in this circumstance, it will automatically be created for you when you send the event.

Thanks and have a great day.

So if I understand correctly, I can’t do this with the rest api? The started checkout example is not how I currently have everything setup. Is there no example of event’s and flows using the rest api? 

That is correct. Some of our APIs like Metrics, Profiles, Campaigns and Lists API all follow the REST API principles but our Track & Identify API do not follow these REST API principles and these (Track and Identify) APIs are used for tracking people and the events or actions they do. For more information I recommend checking out Klaviyo’s Track and Identify API Reference guide.

Thanks and have a great weekend.

Badge +2

Hi @CPKlantenservice,

Hello @CPKlantenservice,

Thank you for sharing your question with the Klaviyo Community. In addition to the points made by @david.to, keep in mind that in order to send a “Started Checkout” event to Klaviyo, you will have to use our Track API. We have a great article including an example request for Started Checkout using the API here.  Our Track & Identify API do not follow the standard REST API practices. Additionally, it is not required to use an $event_id in this circumstance, it will automatically be created for you when you send the event.

Thanks and have a great day.

So if I understand correctly, I can’t do this with the rest api? The started checkout example is not how I currently have everything setup. Is there no example of event’s and flows using the rest api? 

That is correct. Some of our APIs like Metrics, Profiles, Campaigns and Lists API all follow the REST API principles but our Track & Identify API do not follow these REST API principles and these (Track and Identify) APIs are used for tracking people and the events or actions they do. For more information I recommend checking out Klaviyo’s Track and Identify API Reference guide.

Thanks and have a great weekend.

Okay, ill see if I can get the javascript example working. But quick question. In the ”started checkout” example it does not specify which user started the checkout, so how does Klaviyo know who started the checkout and who receives the email ? 

Userlevel 7
Badge +60

Hello @CPKlantenservice,

Thanks for the additional clarification @dov.derin

Since the “Started Checkout” event is utilizing Klaviyo’s Track API principle, these contacts would be identified through Klaviyo’s Web Tracking Snippet

This Web Tracking snippet, on top of allowing signup form publishing, and enables the "Active on Site" event to track, it automatically adds the _learnq object that can then be leveraged by any additional Identify or Track snippets you may want to add on the front-end. This includes the Started Checkout event. 

The most common ways contacts are identified would be through subscribing to a list through a signup form or entering their contact information, including their email address, at the checkout page of your site. You can find more information about how Klaviyo’s Web Tracking through the Guide to Klaviyo Web Tracking and About Cookies in Klaviyo articles. 

-David

Reply