#dmitry-zip
1 messages · Page 1 of 1 (latest)
Can I assume that if this call is successful and the created PaymentIntent has a "succeeded" status, then the payment is fully completed, and I can mark it as such in my system?
Yes,succeededstate indicates a successful payment: https://stripe.com/docs/payments/paymentintents/lifecycle
In other words, in case of a "succeeded" PaymentIntent, I don't need to wait for a webhook to see the 'final' status of the payment? (I am only using card payments)
General recommendation is to still do any post-payment logic/fulfilment in a webhook though
Yeah, I can understand that in case of a failed payment request (due to connection issues, etc), the most reliable way to know the outcome is listen to a webhook.
But if the request is successful, and I receive a "succeeded" payment intent, then this should be a 100% reliable indicator that the payment is completed, right?
Yes, but that's not the only factor that could interrupt any post-payment logic from being executed
What if your server were to go down, or there were connectivity issues after the payment? That DB write would probably fail
With the webhooks, there are retries for such issues
okay, got it
Also, in case of card payments, is it possible for the payment intent to come back in a "processing" status?
During testing, when I receive a 200 response from Stripe, the payment intent is always "succeeded".
Not for cards, no. They're synchronous. processing is relevant for async PMs, like banking methods
Okay, thanks for your help!