Skip to main content
Question

Stripe: Unexpected test data for Checkout Session Completed trigger

  • November 27, 2023
  • 7 replies
  • 234 views

cdwyer
Forum|alt.badge.img

The Stripe trigger for Checkout Session Completed should, in my mind, only include `CheckoutSession` objects where the `status` is complete. Currently trying to update a Zap with this trigger, and all the test records have a `status` of open and a `payment_status` of unpaid. Maybe a bug? 🤔

Setup is kinda impossible, since none of the test records have the right fields populated (as they’re all incomplete). TIA for any help you can offer, here!

 

 

This post has been closed for comments. Please create a new post if you need help or have a question about this topic.

7 replies

Troy Tessalone
Zapier Orchestrator & Solution Partner
Forum|alt.badge.img+14
  • Zapier Orchestrator & Solution Partner
  • 34081 replies
  • November 27, 2023

Hi @cdwyer 

Good question.

I can confirm I’ve seen the same results when testing.

Try completing a successful checkout sessions, then click the button to [Find new records].

Also, you can submit feedback/feature request to Zapier Support to be logged: https://zapier.com/app/get-help


ken.a
Forum|alt.badge.img+6
  • Zapier Staff
  • 6780 replies
  • December 8, 2023

Hi there @cdwyer,

I’m jumping in to see if I can help!

Looking at the API documentation of Stripe the “status” data also includes “open”. Maybe Stripe includes Pending or Incomplete Sessions as well.

https://stripe.com/docs/api/checkout/sessions/retrieve

d5d741866f9a36ac7acea9364a372da9.png
(view larger)

Hopefully, this helps.


cdwyer
Forum|alt.badge.img
  • Author
  • Tinkerer
  • 12 replies
  • December 11, 2023

Hi there @cdwyer,

I’m jumping in to see if I can help!

Looking at the API documentation of Stripe the “status” data also includes “open”. Maybe Stripe includes Pending or Incomplete Sessions as well.

https://stripe.com/docs/api/checkout/sessions/retrieve

d5d741866f9a36ac7acea9364a372da9.png
(view larger)

Hopefully, this helps.

Yep, that’s correct! But by definition, I would have expected the Checkout Session Completed trigger to automatically ignore/filter out Open, Incomplete, etc. sessions from the test data. Not a huge deal, just felt like a bug or small oversight.


ken.a
Forum|alt.badge.img+6
  • Zapier Staff
  • 6780 replies
  • December 12, 2023

Hi @cdwyer,

I completely agree that the Checkout Session Completed trigger should not include incomplete sessions or have an option to not include them.

I’d recommend reaching out to our Support Team to create a feature request on your behalf. You can reach our Support Team here: https://zapier.com/app/get-help

In the meantime, you might be able to filter out those incomplete sessions by adding a filter step to your Zap. You can learn more about Filter by Zapier here: https://help.zapier.com/hc/en-us/articles/8496276332557-Add-conditions-to-Zaps-with-filters

Hopefully, this helps! 

 


  • New
  • 2 replies
  • December 19, 2024

Hey,

Yeah - just to reiterate, there the action is just built wrong.

I believe that the intention is to mimic exactly the Stripe event checkout.session.completed, which when viewing this event in Stripe, it does not fire on anything but completed sessions.

It’s crazy that this hasn’t been fixed after over a year. I’ve got a zap with Checkout Session Completed, and zapier still fires fires on this trigger when a checkout session is Created, not Completed. It’s totally mislabelled, or totally built wrong.

Please can someone escalate this issue as without robust testing and technical knownledge, this may not be noticed.

Thanks


Forum|alt.badge.img
  • Beginner
  • 2 replies
  • March 9, 2025

True! It took me a couple of hours to figure that out. Can someone please advice how to overcome this issue? Filtering to “paid” ones only before continuing with the automatisation?

 

Thanks and Regards


  • New
  • 2 replies
  • March 11, 2025

True! It took me a couple of hours to figure that out. Can someone please advice how to overcome this issue? Filtering to “paid” ones only before continuing with the automatisation?

 

Thanks and Regards


I found that even when using a “Paid” filter after the broken “Stripe Checkout Completed” zap, it wouldn’t reliably work.

It seems like it was always trigger on checkout.session.created, but checkout.session.completed never reliably triggered the zap.

My solution was to use a Zapier webhook as the trigger, and in Stripe, setup a webhook endpoint for checkout.session.completed events and put your zapier webhook endpoint (URL) as the desintation for the data. Basically, when checkout.session.completed event is fired in Stripe, it will send the json to your zapier webhook endpoint, which will trigger your zap.

You can then reliably filter on any of that data, or continue as you wish.