Stripe::PaymentIntent::Status
Inherits Enum < Comparable < Value < Object
Status of a PaymentIntent. Read more about each PaymentIntent status.
Constants
You can cancel a PaymentIntent at any point before it’s in a Processing or Succeeded state. Canceling it invalidates the PaymentIntent for future payment attempts, and can’t be undone. If any funds have been held, cancellation releases them.
PaymentIntents might also be automatically transitioned to the canceled state after they have been confirmed too many times.
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 RequiresCapture. In that case, attempting to capture the funds moves it to processing.
If the payment requires additional actions, such as authenticating with 3D Secure, the PaymentIntent has a status of requires_action.
After the customer provides their payment information, the PaymentIntent is ready to be confirmed.
In most integrations, this state is skipped because payment method information is submitted at the same time that the payment is confirmed.
When the PaymentIntent is created, it has a status of requires_payment_method1 until a payment method is attached.
We recommend creating the PaymentIntent as soon as you know how much you want to charge, so that Stripe can record all the attempted payments.
A PaymentIntent with a status of succeeded means that the payment flow it is driving is complete.
The funds are now in your account and you can confidently fulfill the order. If you need to refund the customer, you can use the Refunds API.