#svetoslav_pricingtable-event
1 messages ยท Page 1 of 1 (latest)
๐ Welcome to your new thread!
โฒ๏ธ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.
โฑ๏ธ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.
๐ This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1446171743520686080
๐ Have more to share? Add more details, code, screenshots, videos, etc. below.
Hello, thanks for the info. Not immediately sure why this may be happening. I thought this may be an API Version issue because that field was removed in a recent API version, but your endpoint is using an earlier version than that so it should still have the field.
Can you send me the ID of an event from one of your other prod accounts where this field is still being populated on these payment_intent.succeeded events?
yes, 1 sec. But before that, just to clarify that in the other environments the order of the events also seems different - the invoice created event is first and then the paiment intent succeeded, while here it is reversed
evt_3Saf3yJGtlvk1doh1sJJmyiH
this is one of the latest. And again, it is with this order - invoice created and then payment intent succeeded
We don't guarantee event ordering with webhook events so that is expected behavior. In this situation multiple things that trigger events happen at roughly the same time, so they may usually happen in an order but because we don't enforce an order some processes may finish before others. We should still be consistent in what the objects in the events say but the ordering being different is something we say that integrations should be prepare to handle.
Thanks for the event!
oh ok, so it must be something else? We still need to have the invoice id, right? And I guess it is not possible to be related to the pricing table?
svetoslav_basil-apiversion
@slate moth when you say
But in our other 10+ prod environments we never had this issue.
do you mean you have 10 different Stripe accounts?
Because what you described looks like an API version change we released at the beginning of the year and documented here
So if you have N Stripe accounts and they are each on a different API version you get different behaviour on each Event
no, all our prod environments point to the same Stripe account
Ah gotcha, I wasn't sure what that meant.
Do you have an example Event id that "works" so I can have a look?
svetoslav_pricingtable-event
yes, this one has the invoice id in it:
evt_3Saf3yJGtlvk1doh1sJJmyiH
perfect and are they each for a different PricingTable? If so can you share both ids?
you mean the pricing table ids?
this is the event id from our new environment that doesn't have the invoice id:
evt_3SXfxkJGtlvk1doh1jQSCsGU
yes I need the PricingTable id for each Event to compare
this is the pricing table id of the new environment (with the issue):
prctbl_1SIuQAJGtlvk1dohnGrrG7up
the other one must be from this pricing table:
prctbl_1QNLoNJGtlvk1dohpJoTiS0i
ahh sorry, then one that worked (had the invoice) is from this one prctbl_1QEvZrJGtlvk1dohCDFVajlJ
Thanks that helped! And yeah I can see why. I think the prctbl_1SIuQAJGtlvk1dohnGrrG7up is new and when it was created it uses our "newer integration path" (related to that API version change I linked earlier) where we don't have a direct link between the PaymentIntent and Invoice anymore.
I think you need to write in to support https://support.stripe.com/contact to ask if there;s a way to get you on the "older" integration path.
But my gut is no and you will need to change your integration to adjust unfortunately (but definitely weird we didn't warn you)
ahhh ok! BIG Thank you! You saved me!
It's all invisible which is not great ๐
The assumption is that most people using PricingTables don't really rely on those Events
usually we expect developers to use the checkout.session.completed Event for this
yeah, it makes sense. We really need to migrate. Thank you!
sure thing! Have a great day!