#Tong
1 messages · Page 1 of 1 (latest)
hello! you may want to take a look at this section : https://stripe.com/docs/payments/checkout/fulfill-orders#delayed-notification
Hi~sorry to bother you. We are the payment department of a cross-border e-commerce saas platform. Now we are connecting to ACH Direct Debit through the checkout session interface. There are a few questions I want to confirm with you.
- The user selects ACH on our payment checkout page, and after clicking Confirm, will the payment intent be created while jumping to the checkout session?
Subsequent transaction status only needs to pay attention to the status and notification of the payment intent, and do not need to pay attention to the checkout session.
- Because ACH is a delayed payment, I want to confirm whether the transaction status is the situation below.
After the user submits successfully on the checkout session page, the corresponding status is processing. After 2-5 days, the final status of the transaction is confirmed: failed/succeeded.
And do we only need to judge based on the received payment_intent_payment_succeeded?
- For the webhook event, can we also only monitor payment_intent-related events, not checkout session-related events?
- The user selects ACH on our payment checkout page, and after clicking Confirm, will the payment intent be created while jumping to the checkout session?
From API version 2022-08-01 :
A PaymentIntent is no longer created during Checkout Session creation in payment mode. Instead, a PaymentIntent will be created when the Session is confirmed.
Why do you need the PaymentIntent though? In most cases, you can just listen to the checkout.session.* events
- Because ACH is a delayed payment, I want to confirm whether the transaction status is the situation below.
After the user submits successfully on the checkout session page, the corresponding status is processing. After 2-5 days, the final status of the transaction is confirmed: failed/succeeded.
And do we only need to judge based on the received payment_intent_payment_succeeded?
- For the webhook event, can we also only monitor payment_intent-related events, not checkout session-related events?
If you want to, you can listen for the payment_intent.succeeded events.
how to define when the Session is confirmed?
that's when the customer submits the payment
on checkout session page?
yep
Woc, so we just need to listen to the four checkout session statuses.
But...
-
So we can only get the payment result by listening to the checkout session, can we actively retrieve it? Because the object has a return parameter: payment intent
-
The transaction status corresponding to the checkout session is not enough I guess. I want to confirm how to confirm the transaction status. So After the user submits, we can only listen to payment intent events?
The user submits the payment on the checkout session page. At this time, the transaction status is payment intent_processing. Later becomes payment intent_failed/succeeded?
yes you can retrieve a checkout session - https://stripe.com/docs/api/checkout/sessions/retrieve
👍
- The transaction status corresponding to the checkout session is not enough I guess. I want to confirm how to confirm the transaction status. So After the user submits, we can only listen to payment intent events?
Have you taken a look at this section? https://stripe.com/docs/payments/checkout/fulfill-orders#delayed-notification - it provides an example of how to validate if payment is successful
yes, just want to confirm , so we just follow this section is enough , right? do not need to care about payment intent status and webhooks. Because we always only listen to payment intent before
yes, but as with everything, please test it throughly
thanks~
hi,sorry~But when our backend calls the checkout session interface, it sees the payment intent has been created successfully.
so confused lol
but the customer has already submitted payment irght?
can you share the checkout session request id?
customer just submitted payment on our own page, not your checkout session page
at this time, payment intent is created
so you're not using Checkout Session?
if you're not using Stripe Checkout, then you only need to listen for payment_intent.succeeded events
Our backend is testing. After the user selects ACH on our settlement page, the backend calls Stripe's create checkout session interface. At this point, it will jump to your checkout session page and create a payment intent at the same time. At this time, the user has not gone to the session page to operate and submit
then can you share the checkout session id?
i need an id so that i can look into this further
it'll look like cs_test_...
cs_test_b1ohTVyDHV8UolbGpWtkuEiqXm7N3lI5oX7xggNxWacdnftiwJvIPdu1ZQ
you're using API version 2020-08-27. the change which i mentioned is on API version 2022-08-01 :
A PaymentIntent is no longer created during Checkout Session creation in payment mode. Instead, a PaymentIntent will be created when the Session is confirmed.
?haaa
regardless, you shouldn't depend on the creation of the Checkout Session returning the PaymentIntent in the response. So then when you upgrade in the future, you don't have to worry about ^
So we can use the old version of the solution now, and my test is also correct. can do this first
later we can upgrade
sure, it's up to you
so in the 2020 version, we do not need to care about checkout session status and event. just use payment intent
personally, i would suggest that you use Checkout Session as mentioned in our documentation here : https://stripe.com/docs/payments/checkout/fulfill-orders#delayed-notification
we already have an example for you to refer to
and if you do it right, then you will have one less thing to worry about when upgrading in the future
but if you really want to, then sure, you can use PaymentIntents