#d0mr_api
1 messages · Page 1 of 1 (latest)
đź‘‹ Welcome to your new thread!
⏲️ We'll be here soon! We typically respond in a few minutes, but in some cases we might need a bit more time (e.g., server's busy, you've got a complex question, etc.).
⏱️ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can 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/1259817655699771474
📝 Have more to share? Add details, code, screenshots, videos, etc. below.
đź‘‹
Check this guide:
https://docs.stripe.com/payments/paymentintents/lifecycle#:~:text=requires_action1.-,processing,-After required actions
It explains this.
hi @bleak halo are you sure?
After required actions are handled, the PaymentIntent moves to processing for asynchronous payment methods, such as bank debits. These types of payment methods can take up to a few days to process. Other payment methods, such as cards, are processed more quickly and don’t go into the processing status.
If you’re separately authorizing and capturing funds, your PaymentIntent can instead move to requires_capture. In that case, attempting to capture the funds moves it to processing.
is cardholder present an asynchronous payment method?
Other payment methods, such as cards, are processed more quickly and don’t go into the processing status.
If you’re separately authorizing and capturing funds, your PaymentIntent can instead move to requires_capture. In that case, attempting to capture the funds moves it to processing.
This is what we are expecting to happen
Capture are automatic_async by default now:
https://docs.stripe.com/api/payment_intents/create#create_payment_intent-capture_method
So maybe that's what is causing the behavior you are facing
Hi, the capture method was set to manual for this payment intent
pi_3PTnlCCFtRqWQULy0oqUw2PE
It's because you're doing capture_method: 'manual': https://dashboard.stripe.com/logs/req_9rVllecFrObIxY
If you’re separately authorizing and capturing funds, your PaymentIntent can instead move to requires_capture. In that case, attempting to capture the funds moves it to processing.
hi @vale quarry, I'm not following, the problem was that the payment intent was moved to a state of "processing" upon being confirmed, not "requires_capture" as we would expect
it stayed in "processing" for at least 15 seconds, which caused an issue because we couldnt then update/capture it during this time
from bottom to top, you can see it moves to processing, we try to update it which fails, it then moves to requires_capture 2 whole minutes later
Checking
thank you 🙂
AFAIK this is just expected in Terminal scenarios where capture_method: 'manual' as I explained. It transitions to that state and internally we make additional API calls (under the hood) which thn triggers the intent into requires_capture. Not sure if this is captured anywhere explicitly in the public docs, but you'd just need to adjust your integration accordingly (i.e. listen for charge.updated or payment_intent.amount_capturable_updated events and then make your update request)
thats fine, i think there is another problem here though, why is it taking 2 minutes to go from processing to requires capture?
our integration is "synchronous" and relies on knowing the payment is captured
we can't have a payment processing wheel spinning for 2 minutes until the payment can be captured
Out of interest, why are you using capture_method: 'manual'? It's no longer necessary for Terminal payments
Yes, not sure about the timings really. Is this evident on multiple payments?
unfortunately, there is validation we have to do on the state of the order between pre-auth and capture
just checking on this
Any updates?