Stripe Status succeeded: Charge Succeeded
The payment has been successfully completed and funds are secured in the merchant's Stripe account. This is a terminal success state. The merchant can now safely fulfill the order. No further action is needed on the PaymentIntent.
What it means
In Stripe's API, the succeeded status is not a decline, but rather an explicit approval signal. It indicates that a charge was successfully processed, authorized by the issuer, and funds were captured from the customer's payment method.
Classification & retryability
Common causes
- The customer provided a valid payment method that was successfully authorized by their issuing bank.
- Stripe successfully captured the authorized funds according to your payment configuration.
- The transaction reached its terminal success state within the PaymentIntent or Charge lifecycle.
How to resolve it
Because this status represents a successful payment, there is no error to resolve. Applications should listen for the charge.succeeded or payment_intent.succeeded webhooks to safely trigger downstream business logic. Upon receiving this status, update your database to mark the invoice or order as paid, and proceed with provisioning the goods or services.
For merchants
Treat this status as the canonical source of truth that payment was collected and fulfill the customer's order. Never attempt to retry a payment that has succeeded, as doing so will result in duplicate charges and potential disputes. If a customer requests their money back or an adjustment is needed, initiate a transaction reversal through the Stripe Refunds API.
For customers
No further action is required from the customer. Their payment was successful, and they should expect to receive an order confirmation or receipt.