#altairsama69
1 messages · Page 1 of 1 (latest)
Hello
hey
You can listen for payment_intent.payment_failed Events if you want via your Webhook handler. But mostly when a payment fails you would just not see anything -- we will display the error in the Checkout UI.
hey, I'm not creating a payment intent explicitly as per this guide https://stripe.com/docs/payments/ach-debit/accept-a-payment
its a little different than normal bank transfer since bank transfer wants a payment intent specifically
will it still fire the payment intent failed event
if the intent is created implicitly?
If they attempt to complete the payment and it fails then yes the Event will fire
So if they hit the "Pay" button
Then yes
Hmm actually sorry.
You are specifically asking about network issues?
and if in the middle any authentication errors come up with the bank account, nothing for that?
anything which wont let them successfully complete a checkout session
basically anything that'll stop checkout.session.completed event from firing
Hmm okay then yeah no not really.
You don't really have insight from your end into what happens on the Checkout Session page unless the customer attempts a payment itself and it is declined/fails.
That said, this won't really happen with ACH
Since it is an async payment method
It will go into processing before it would fail
yeah so issue is
So that would happen later after the customer left the page
we want to generate a new checkout link for them
or have an ops team member guide them for the payment
and for that we need to know whether they encountered an error
also the expires_at flag asks about Epoch seconds
do I just need to convert my desired interval into seconds?
and do we have an option to have the expiry to be lower than 30mins?
and one last thing, will stripe not fire a payment intent created event if we just create a checkout session
without first creating the payment method?
*intent
also the expires_at flag asks about Epoch seconds
do I just need to convert my desired interval into seconds?
All of our timestamps require UNIX/Epoch so yes you will need to calculate the correct time into the future and submit that in UNIX
do I just need to convert my desired interval into seconds?
and do we have an option to have the expiry to be lower than 30mins?
No that's not possible
and one last thing, will stripe not fire a payment intent created event if we just create a checkout session
without first creating the payment method?
No this won't create a PaymentIntent unless they actually attempt payment
ah so calcuate when exactly you want it to expire and convert it to unix time stamp?
So unless they hit the "buy" button
Yes
so when they get a checkout url and are redirected to it
unless they click on pay
we wont get a payment intent evebnt?
Correct
and then it'll follow the whole life cycle proces starting from payment intent created? so it'll be better if we explicitly create the payment intent for better tracking?
because it doesnt make sense we get a payment intent event after they have paid through checkout
The idea with Stripe Checkout is that it is simple and you let Stripe basically take care of everything. All you need to pay attention to is if you get a checkout.session.succeeded Event and then handle fulfillment.
What you are describing is a more complex and custom checkout flow.
This is not something you would really use Stripe Checkout for if you want the level of control you are talking about.
In that case you would build your own flow using something like Payment Element
gotcha, we just wanted to avoid frontend integration for now, we will do an Element integration soon, but in this case creating a payment intent and then passing it to a checkout session will be better right?
for better tracking of the lifecycle of that payment
You can't do that
Checkout Sessions create PaymentIntents.
You can't create one up front and use it with a Checkout Session
That's not how the integration works
ah gotcha thanks
this thing wont be possible with checkout then?
because in this flow, we need to explicitly create a payment intent
Yes bank transfers are supported with Checkout
according to docs
They are the customer_balance payment method type
ah got it, then we just need to specify the payment method
like in stripe?
*ach debit
You either turn it on via your settings at https://dashboard.stripe.com/test/settings/payment_methods
Or you specify via https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-payment_method_types
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
gotcha thanks for the help!