Skip to main content

Stripe

  • Cards
  • Digital Wallets
  • Bank Transfer
  • Direct Debit
  • Buy Now Pay Later

Stripe is a payment provider used by businesses to accept and manage online payments across cards and supported local payment methods.

Struggling with your approval ratio for this payment provider?

contact SmartRetry team →
Published
Last updated
2 min
Stripe
Stripe payment phone

Proceed payment with

Stripe Company Overview

Payment Processor
Official Website
https://stripe.com
LinkedIn Page
Stripe
Foundation
2010
Company Type
private
Employees
10,000+
Location
USAUSA
Channel
OnlineIn person

Features

Card and local payment method acceptance

Accept major card brands and selected local payment methods depending on your region and account. Useful for ecommerce, subscriptions, and platform use cases.

Authorization and capture controls

Supports common authorization flows and capture timing options. Helps align payment collection with fulfillment and service delivery.

Optimization for authorization success

Includes tools and data signals that can help monitor approval rates and investigate card declines. Provides decline insights to support troubleshooting with issuers and customers.

Authentication and SCA support

Offers support for 3D Secure and region-specific Strong Customer Authentication requirements. Helps reduce friction by applying authentication where needed.

Security and compliance features

Provides tokenization and security controls designed to help reduce PCI scope when used as intended. Includes risk and fraud tooling options depending on your setup.

Disputes and chargeback handling

Centralized dispute intake, evidence submission, and tracking. Helps teams manage chargebacks and representments with consistent workflows.

Reliability and operational tooling

Provides dashboards, logs, and webhooks for payment monitoring and incident response. Supports reporting and reconciliation for finance and ops teams.

Tip from SmartRetry For card declines, segment results by decline code, issuer country, and card type before making changes; then A/B test adjustments (e.g., retries or 3DS settings) on a small traffic slice.

Currencies

Processing currenciesUSD, EUR, GBP, JPY, AUD, CAD, CHF, CNY, SEK, NZD, MXN, SGD, HKD, NOK, KRW, INR

Available in

Available countries
  • Global

FAQ

Statuses

StatusesAll
CodeDescriptionLevelFrequencyResolution
PaymentIntent Status
requires_payment_method

Requires Payment Method

The PaymentIntent has been created but no payment method has been attached yet, or the previous payment attempt failed and a new payment method is needed. The merchant/developer must collect and attach a payment method before proceeding.

ProcessingCommonT0
requires_confirmation

Requires Confirmation

A payment method has been attached to the PaymentIntent but it has not yet been confirmed. The server must explicitly call the confirm endpoint to initiate the payment attempt. Common in manual confirmation_method flows.

ProcessingOccasionalT0
requires_action

Requires Action

The payment requires additional customer action to proceed, such as 3D Secure authentication, a bank redirect, or providing a one-time code. The next_action field on the PaymentIntent describes what the customer must do. Merchants must handle this client-side.

Processing, InfoCommonT0
processing

Processing

The payment has been initiated and Stripe is waiting for confirmation from the payment method provider. Common for asynchronous payment methods like ACH debits or bank transfers, which can take days to settle. For cards, this state is typically very brief.

ProcessingOccasionalT0
requires_capture

Requires Capture

The payment has been authorized and funds are on hold, but have not yet been captured. This occurs when capture_method is set to 'manual'. The merchant must explicitly call the capture endpoint. Uncaptured PaymentIntents auto-cancel after 7 days by default.

Processing, InfoOccasionalT0
succeeded

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.

ApprovedCommonT0
canceled

Canceled

The PaymentIntent has been canceled and no further charges will be made. This is a terminal state. Cancellation can be triggered by the merchant (duplicate, fraudulent, requested_by_customer, abandoned) or automatically by Stripe (failed_invoice, void_invoice, automatic, expired). Any held funds are released.

Error, InfoOccasionalT3
Charge Status
succeeded

Charge Succeeded

The Charge object status indicating the charge was successfully processed and funds were captured from the customer's payment method. The merchant can confirm payment was collected.

ApprovedCommonT0
pending

Charge Pending

The Charge object status indicating the charge has been submitted but awaiting final confirmation from the bank or payment network. Common with ACH/bank debit methods that require days to clear. The charge may still fail.

ProcessingOccasionalT0
failed

Charge Failed

The Charge object status indicating the charge attempt was declined or failed. Common causes include insufficient funds, invalid card details, or issuer decline. The merchant should prompt the customer to try a different payment method.

ErrorCommonT3
Refund Status
pending

Refund Pending

The refund has been created and submitted but has not yet been confirmed by the card network or bank. Refunds typically appear on the customer's statement within 5-10 business days. The merchant should not re-issue the refund while in this state.

ProcessingCommonT0
succeeded

Refund Succeeded

The refund has been successfully processed and the funds have been returned to the customer's original payment method. This is the terminal success state for a refund.

ApprovedCommonT0
failed

Refund Failed

The refund attempt failed. Possible failure reasons include: lost_or_stolen_card, expired_or_canceled_card, charge_for_pending_refund_disputed, insufficient_funds, declined, merchant_request, or unknown. Merchants should check the failure_reason field and may need to refund via alternative means.

ErrorOccasionalT1
requires_action

Refund Requires Action

The refund requires additional customer action before it can be processed. This occurs for payment methods without native refund support (e.g., Konbini, PromptPay), where Stripe must collect bank account details from the customer via email. The merchant should ensure the customer receives and acts on the instructions email.

Processing, InfoRareT0
canceled

Refund Canceled

The refund was canceled before it reached the customer. Only refunds in requires_action state (awaiting customer banking info) or certain card refunds within a short window can be canceled. Treated as a refund failure; failure_reason and failure_balance_transaction are populated.

Error, InfoRareT1
Refund Failure Reason
lost_or_stolen_card

Lost or Stolen Card

The refund could not be completed because the card was reported lost or stolen. Stripe doesn't distinguish lost vs. stolen in this field.

ErrorRareT3
expired_or_canceled_card

Expired or Canceled Card

The refund could not be completed because the card has expired or been canceled.

ErrorOccasionalT3
charge_for_pending_refund_disputed

Charge Disputed

The refund could not be completed because the underlying charge is under dispute.

ErrorRareT1
insufficient_funds

Insufficient Funds

The refund could not be completed due to insufficient funds in the merchant's Stripe balance, not the payer's account.

ErrorOccasionalT0
declined

Declined

The refund was declined by the card network or issuing bank.

Error, DeclinedOccasionalT2
merchant_request

Merchant Request

The refund failed at the merchant's own request (e.g., cancellation).

ErrorRareT0
unknown

Unknown

The refund failed for an unspecified reason.

ErrorRareT1
SetupIntent Status
requires_payment_method

SetupIntent Requires Payment Method

The SetupIntent has been created but no payment method is attached, or the previous setup attempt failed. The customer must provide their payment credentials before the setup can proceed.

ProcessingCommonT0
requires_confirmation

SetupIntent Requires Confirmation

A payment method has been attached to the SetupIntent but it has not yet been confirmed. The server must call the confirm endpoint to proceed with saving the payment method.

ProcessingOccasionalT0
requires_action

SetupIntent Requires Action

The payment method setup requires additional customer action, such as 3D Secure authentication or a bank redirect. The next_action field specifies what the customer needs to do. This is common for cards in SCA-regulated regions.

Processing, InfoOccasionalT0
processing

SetupIntent Processing

The SetupIntent has been confirmed and Stripe is processing the setup with the payment method provider. This state is brief for most payment methods.

ProcessingRareT0
canceled

SetupIntent Canceled

The SetupIntent has been canceled. Setup is abandoned and any further operations on it will fail. Can only be canceled when in requires_payment_method, requires_confirmation, or requires_action states. Cannot be reversed.

Error, InfoOccasionalT3
succeeded

SetupIntent Succeeded

The payment method has been successfully saved and is ready for future off-session or on-session payments. This is the terminal success state of the SetupIntent lifecycle.

ApprovedCommonT0
Dispute Status
warning_needs_response

Warning — Needs Response

An early inquiry (pre-dispute warning) that requires a response. Submitting evidence at this stage can prevent it from escalating into a formal dispute.

Processing, InfoOccasionalT0
warning_under_review

Warning — Under Review

An early inquiry under review after evidence submission. Awaiting the outcome; no further action is typically needed until the review completes.

Processing, InfoRareT0
warning_closed

Warning — Closed

An inquiry that closed without becoming a formal dispute. No chargeback resulted; no further action required.

InfoOccasionalT0
needs_response

Needs Response

A formal dispute that requires a response. The merchant must submit evidence before the due date or the dispute is automatically lost.

Processing, ErrorCommonT1
under_review

Under Review

A dispute under review by the card network after evidence submission. Awaiting the final decision.

Processing, InfoOccasionalT0
won

Won

The dispute was resolved in the merchant's favor. Funds are returned to the merchant. Terminal state.

ApprovedOccasionalT0
lost

Lost

The dispute was resolved in the customer's favor. The disputed amount and any fees are not returned. Terminal state.

ErrorOccasionalT3
prevented

Prevented

The dispute was prevented from becoming a formal chargeback (e.g. resolved via an early-warning or fraud-prevention program). Terminal state.

Approved, InfoRareT0
Payout Status
pending

Payout Pending

The payout has been created but not yet submitted to the bank. It remains pending until Stripe submits it to the destination bank account.

ProcessingCommonT0
in_transit

Payout In Transit

The payout has been submitted to the destination bank and is on its way. Funds have left Stripe but have not yet arrived in the bank account.

ProcessingCommonT0
paid

Payout Paid

The payout succeeded and funds were credited to the destination bank account. Terminal success state. Note: some payouts that ultimately fail may briefly show as paid before changing to failed.

ApprovedCommonT0
failed

Payout Failed

The payout failed to reach the destination bank account. Inspect failure_code / failure_message for the reason and verify the bank account details.

ErrorOccasionalT1
canceled

Payout Canceled

The payout was canceled (typically within 5 business days of creation, before it settled). Funds return to the available balance.

InfoOccasionalT0
Mandate Status
active

Mandate Active

The mandate can be used to initiate a payment.

ApprovedCommonT0
inactive

Mandate Inactive

The mandate was rejected, revoked, or previously used, and may not be used to initiate future payments.

Error, InfoOccasionalT3
pending

Mandate Pending

The mandate is newly created and is not yet active or inactive.

ProcessingOccasionalT0
Error Code
account_closed

Account Closed

The customer's bank account has been closed. A different payment method is required.

ErrorOccasionalT3
account_holder_name_verification_failed

Account Holder Name Verification Failed

The account holder name provided doesn't match the name on file for the bank account. Common with Bacs Direct Debits and Pay.UK payer name verification.

Error, DeclinedOccasionalT0
account_invalid

Account Invalid

The account ID provided in the Stripe-Account header is invalid. Verify the account ID in your requests.

ErrorOccasionalT1
account_number_invalid

Account Number Invalid

The bank account number is invalid, e.g. missing digits. Validate against country-specific bank account formats.

ErrorOccasionalT0
acss_debit_session_incomplete

ACSS Debit Session Incomplete

The ACSS debit session isn't ready to transition to complete status. Retry the request later.

ErrorRareT0
amount_too_large

Amount Too Large

The specified charge amount exceeds the maximum allowed. Use a lower amount and retry.

ErrorOccasionalT0
amount_too_small

Amount Too Small

The specified charge amount is below the minimum allowed for the currency. Use a higher amount and retry.

ErrorOccasionalT0
anomalous_money_movement_request

Anomalous Money Movement Request

The request was blocked because Stripe's anomaly detection system flagged it as anomalous. To retry, disable anomaly detection in the Dashboard under Settings > Developers > Manage API keys > Anomaly detection.

ErrorRareT1
api_key_expired

API Key Expired

The API key provided has expired. Obtain current keys from the Stripe Dashboard and update the integration.

ErrorRareT1
authentication_required

Authentication Required

The payment requires 3D Secure or other authentication to proceed. For off-session payments, notify the customer to return and authenticate.

DeclinedCommonT0
balance_insufficient

Balance Insufficient

The transfer or payout failed because the associated Stripe account doesn't have sufficient available balance.

ErrorOccasionalT1
balance_invalid_parameter

Balance Invalid Parameter

An invalid parameter was provided in the balance method object. Check API documentation for context.

ErrorRareT0
bank_account_bad_routing_numbers

Bank Account Bad Routing Numbers

The bank account is known to not support the specified currency.

ErrorRareT0
bank_account_declined

Bank Account Declined

The bank account can't be charged because it isn't verified yet or isn't supported.

Error, DeclinedOccasionalT0
bank_account_exists

Bank Account Exists

The bank account already exists on the specified Customer object. Use the existing bank account or attach it to a different customer.

ErrorOccasionalT0
bank_account_restricted

Bank Account Restricted

The customer's bank account can't be used with this payment method.

Error, DeclinedRareT2
bank_account_verification_failed

Bank Account Verification Failed

The bank account can't be verified because the microdeposit amounts don't match or too many verification attempts have failed.

ErrorOccasionalT0
bank_account_unusable

Bank Account Unusable

The bank account can't be used at all and a different bank account must be provided.

ErrorRareT3
bank_account_unverified

Bank Account Unverified

A Connect platform is attempting to share an unverified bank account with a connected account.

ErrorRareT1
billing_invalid_mandate

Billing Invalid Mandate

A Subscription or Invoice attempted payment on a PaymentMethod without an active mandate. Confirm the payment method on-session first.

ErrorOccasionalT0
card_decline_rate_limit_exceeded

Card Decline Rate Limit Exceeded

This card has been declined too many times. The card can be retried after 24 hours. Contact the customer to verify their card details.

ErrorOccasionalT2
card_declined

Card Declined

The card has been declined. Inspect the decline_code field on the error for the specific issuer reason.

DeclinedCommonT2
capture_charge_authorization_expired

Capture Authorization Expired

The charge can't be captured because the authorization has expired. A new authorization is needed.

ErrorOccasionalT0
capture_unauthorized_payment

Capture Unauthorized Payment

The charge being captured has not been authorized for payment capture.

ErrorRareT0
charge_already_captured

Charge Already Captured

The charge has already been captured. Update the request to use an uncaptured charge ID.

ErrorOccasionalT0
charge_already_refunded

Charge Already Refunded

The charge has already been fully refunded. Use a different charge ID that hasn't been refunded.

ErrorOccasionalT0
charge_disputed

Charge Disputed

The charge has been charged back (disputed). Handle through the Stripe Disputes flow rather than refunding.

ErrorOccasionalT1
charge_exceeds_source_limit

Charge Exceeds Source Limit

This charge would exceed the rolling-window processing limit for this source type. Retry later or contact Stripe for a higher limit.

ErrorRareT1
charge_exceeds_transaction_limit

Charge Exceeds Transaction Limit

This charge would exceed the processing limit for this payment type. Contact Stripe to request a higher limit.

ErrorRareT1
charge_expired_for_capture

Charge Expired for Capture

The auth-and-capture charge can't be captured because the authorization window (default 7 days) has elapsed.

ErrorOccasionalT0
charge_invalid_parameter

Charge Invalid Parameter

One or more parameters are not allowed for the given operation on the Charge object. Check the API reference.

ErrorOccasionalT0
clearing_code_unsupported

Clearing Code Unsupported

The clearing code provided isn't supported for this transaction.

ErrorRareT0
country_code_invalid

Country Code Invalid

The country code provided is not a valid ISO 3166-1 alpha-2 code.

ErrorOccasionalT0
customer_max_payment_methods

Customer Max Payment Methods

The customer has reached the maximum number of PaymentMethods. Detach some before adding new ones.

ErrorRareT0
debit_not_authorized

Debit Not Authorized

The customer notified their bank that this ACH or direct debit payment was unauthorized.

DeclinedOccasionalT2
email_invalid

Email Invalid

The email address is invalid or improperly formatted.

ErrorOccasionalT0
expired_card

Expired Card

The card has expired. The customer should use a different card or update their card details.

DeclinedCommonT3
idempotency_key_in_use

Idempotency Key In Use

The idempotency key is currently being used in another concurrent request. Avoid duplicate simultaneous requests.

ErrorOccasionalT0
incorrect_address

Incorrect Address

The billing address provided does not match the card issuer's records. Customer should re-enter the correct address.

DeclinedCommonT0
incorrect_cvc

Incorrect CVC

The CVC/CVV security code is incorrect. Customer should re-enter the correct CVC.

DeclinedCommonT0
incorrect_number

Incorrect Number

The card number is incorrect. Customer should retry with the correct card number.

DeclinedCommonT0
incorrect_zip

Incorrect ZIP

The postal/ZIP code is incorrect. Customer should retry with the correct billing postal code.

DeclinedCommonT0
insufficient_funds

Insufficient Funds

The customer's account or card doesn't have enough funds to complete the purchase.

DeclinedCommonT3
intent_invalid_state

Intent Invalid State

The PaymentIntent or SetupIntent is not in the required state to perform this operation.

ErrorOccasionalT0
intent_verification_method_missing

Intent Verification Method Missing

The intent doesn't have a verification method specified in its payment_method_options object. Set the verification method on the PaymentIntent or SetupIntent's payment_method_options and retry.

ErrorRareT0
invalid_card_type

Invalid Card Type

The card provided as an external account isn't supported for payouts. Use a non-prepaid debit card.

ErrorRareT3
invalid_characters

Invalid Characters

A field value contains characters that are unsupported for that field.

ErrorOccasionalT0
invalid_charge_amount

Invalid Charge Amount

The charge amount is not a positive integer in the smallest currency unit, or exceeds allowed min/max amounts.

ErrorOccasionalT0
invalid_cvc

Invalid CVC

The CVC security code is invalid. Customer should check their card and retry with the correct code.

DeclinedCommonT0
invalid_expiry_month

Invalid Expiry Month

The card's expiration month is invalid. Customer should verify and re-enter the correct expiration date.

Declined, ErrorOccasionalT0
invalid_expiry_year

Invalid Expiry Year

The card's expiration year is invalid. Customer should verify and re-enter the correct expiration date.

Declined, ErrorOccasionalT0
invalid_mandate_reference_prefix_format

Invalid Mandate Reference Prefix Format

The prefix used to generate the mandate reference is invalid.

ErrorRareT0
invalid_number

Invalid Number

The card number is invalid (fails Luhn check or wrong format). Customer should check and re-enter card details.

Declined, ErrorCommonT0
invalid_source_usage

Invalid Source Usage

The source can't be used because it's in the wrong state (e.g., pending, failed, or consumed). Check the source status before charging.

ErrorOccasionalT0
livemode_mismatch

Livemode Mismatch

Test and live mode API keys and objects are only usable within their respective modes. Don't mix test and live resources.

ErrorOccasionalT1
lock_timeout

Lock Timeout

The object can't be accessed because another API request is currently using it. Retry the request or serialize concurrent access.

ErrorOccasionalT0
missing

Missing Source on Customer

Both a customer ID and a source ID were provided but the source hasn't been saved to the customer. Save the card first.

ErrorOccasionalT0
no_account

No Account

The bank account couldn't be located. Verify the routing and account numbers.

Error, DeclinedOccasionalT0
parameter_invalid_empty

Parameter Invalid Empty

One or more required values weren't provided. Ensure all required parameters are included in the request.

ErrorCommonT0
parameter_invalid_integer

Parameter Invalid Integer

A parameter requires an integer but received a different type. Check the API reference for expected data types.

ErrorOccasionalT0
parameter_invalid_string_blank

Parameter Invalid String Blank

One or more values contain only whitespace. Provide non-whitespace string values.

ErrorOccasionalT0
parameter_invalid_string_empty

Parameter Invalid String Empty

One or more required string values are empty. Strings must contain at least one character.

ErrorCommonT0
parameter_missing

Parameter Missing

One or more required values are absent. Check the API documentation for required fields on the requested resource.

ErrorCommonT0
parameter_unknown

Parameter Unknown

The request contains unexpected parameters not recognized by the endpoint. Remove them and retry.

ErrorOccasionalT0
parameters_exclusive

Parameters Exclusive

Two or more mutually exclusive parameters were provided together. Only one may be used at a time.

ErrorOccasionalT0
payment_intent_amount_reconfirmation_required

Payment Intent Amount Reconfirmation Required

The total amount changed and must be shown to the customer and reconfirmed before proceeding.

ErrorOccasionalT0
payment_intent_action_required

Payment Intent Action Required

The payment method requires customer action but error_on_requires_action was set. Upgrade the integration to handle actions.

ErrorOccasionalT0
payment_intent_authentication_failure

Payment Intent Authentication Failure

The payment method failed authentication on this PaymentIntent. Provide a new payment method to retry.

DeclinedOccasionalT0
payment_intent_automatic_tax_incomplete

Payment Intent Automatic Tax Incomplete

Insufficient location information was provided to calculate taxes when automatic_tax is enabled.

ErrorOccasionalT0
payment_intent_incompatible_payment_method

Payment Intent Incompatible Payment Method

The PaymentIntent expected a payment method with different properties than what was provided.

ErrorOccasionalT0
payment_intent_invalid_parameter

Payment Intent Invalid Parameter

One or more parameters aren't allowed for the given operation on this PaymentIntent. Check the API reference.

ErrorOccasionalT0
payment_intent_konbini_rejected_confirmation_number

Konbini Rejected Confirmation Number

The konbini confirmation_number was rejected by the processing partner at PaymentIntent confirmation time.

Declined, ErrorRareT0
payment_intent_mandate_invalid

Payment Intent Mandate Invalid

The mandate provided is invalid and can't be used for this PaymentIntent.

ErrorRareT0
payment_intent_payment_attempt_expired

Payment Intent Attempt Expired

The latest payment attempt has expired. Check last_payment_error and provide a new payment method to retry.

ErrorOccasionalT0
payment_intent_payment_attempt_failed

Payment Intent Attempt Failed

The latest payment attempt failed. Inspect last_payment_error for details and provide a new payment method.

Error, DeclinedCommonT2
payment_intent_unexpected_state

Payment Intent Unexpected State

The PaymentIntent is in a state incompatible with the requested operation. Check the intent's status before proceeding.

ErrorOccasionalT0
payment_method_bank_account_already_verified

Bank Account Already Verified

This bank account has already been verified and doesn't need to go through verification again.

InfoRareT0
payment_method_bank_account_blocked

Bank Account Blocked

The bank account has failed verification too many times and is blocked. Contact Stripe support to attempt re-use.

ErrorRareT1
payment_method_billing_details_address_missing

Billing Details Address Missing

The PaymentMethod's billing details is missing required address fields. Add the missing fields and retry.

ErrorOccasionalT0
payment_method_currency_mismatch

Payment Method Currency Mismatch

The currency specified doesn't match the currency of the payment method. A payment must be in the same currency as its payment method.

ErrorOccasionalT0
payment_method_customer_decline

Payment Method Customer Decline

The customer actively declined the payment (e.g., in a bank redirect flow). Provide a new payment method.

DeclinedOccasionalT3
payment_method_invalid_parameter

Payment Method Invalid Parameter

An invalid parameter was provided in the payment method object.

ErrorOccasionalT0
payment_method_invalid_parameter_testmode

Payment Method Invalid Parameter Testmode

The parameter provided for the payment method isn't allowed in test mode.

ErrorRareT0
payment_method_microdeposit_failed

Microdeposit Failed

Microdeposits failed to deposit into the customer's bank account. Check account, institution, and transit numbers.

ErrorOccasionalT0
payment_method_microdeposit_processing_error

Microdeposit Processing Error

Microdeposit transfers can't be sent right now. Retry later.

ErrorRareT0
payment_method_microdeposit_verification_amounts_invalid

Microdeposit Verification Amounts Invalid

Exactly two microdeposit amounts must be provided for verification.

ErrorOccasionalT0
payment_method_microdeposit_verification_amounts_mismatch

Microdeposit Amounts Mismatch

The amounts provided don't match the actual microdeposit amounts sent to the bank account.

ErrorOccasionalT0
payment_method_microdeposit_verification_attempts_exceeded

Microdeposit Verification Attempts Exceeded

The maximum number of allowed microdeposit verification attempts has been exceeded.

ErrorRareT1
payment_method_microdeposit_verification_descriptor_code_mismatch

Microdeposit Descriptor Code Mismatch

The descriptor code provided for verification doesn't match the code sent to the bank account.

ErrorOccasionalT0
payment_method_microdeposit_verification_timeout

Microdeposit Verification Timeout

The payment method was not verified with microdeposits within the required timeframe.

ErrorOccasionalT1
payment_method_not_available

Payment Method Not Available

The payment processor for this payment method is temporarily unavailable. Retry later or use a different payment method.

ErrorOccasionalT0
payment_method_provider_decline

Payment Method Provider Decline

The payment or setup attempt was declined by the issuer or customer. Check last_payment_error or last_setup_error and provide a new payment method.

DeclinedCommonT2
payment_method_provider_timeout

Payment Method Provider Timeout

The payment method failed due to a provider timeout. Check last_payment_error or last_setup_error and retry.

ErrorOccasionalT0
payment_method_unactivated

Payment Method Unactivated

The payment method hasn't been activated in the Stripe Dashboard. Activate it before using it in production.

ErrorRareT1
payment_method_unexpected_state

Payment Method Unexpected State

The payment method is in a state incompatible with this operation. Verify the payment method's state before proceeding.

ErrorOccasionalT0
payment_method_unsupported_type

Payment Method Unsupported Type

The API only supports payment methods of specific types. The provided type isn't supported for this operation.

ErrorOccasionalT3
postal_code_invalid

Postal Code Invalid

The postal code provided was incorrect. Customer should verify and re-enter the correct billing postal code.

DeclinedCommonT0
processing_error

Processing Error

An error occurred while processing the card. Retry later or use a different payment method.

ErrorOccasionalT0
rate_limit

Rate Limit

Too many API requests were made too quickly. Implement exponential backoff to reduce request rate.

ErrorOccasionalT0
refer_to_customer

Refer to Customer

The customer stopped the ACH/direct debit payment with their bank. Contact the customer to arrange an alternative payment.

DeclinedOccasionalT2
refund_disputed_payment

Refund Disputed Payment

A disputed payment can't be directly refunded. Manage it through the Stripe Disputes process.

ErrorOccasionalT1
resource_already_exists

Resource Already Exists

A resource with this user-specified ID (e.g., plan or coupon) already exists. Use a unique ID and retry.

ErrorOccasionalT0
resource_missing

Resource Missing

The provided ID is invalid or the resource doesn't exist. Verify the ID matches the correct resource type.

ErrorCommonT0
return_intent_already_processed

Return Intent Already Processed

The refund has already been processed and can't be confirmed again.

ErrorRareT0
routing_number_invalid

Routing Number Invalid

The bank routing number provided is invalid. Verify the routing number before retrying.

ErrorOccasionalT0
secret_key_required

Secret Key Required

A publishable key was used where a secret key is required. Use the correct secret key from the Stripe Dashboard.

ErrorOccasionalT1
sepa_unsupported_account

SEPA Unsupported Account

The Stripe account doesn't support SEPA payments. Enable SEPA in account settings.

ErrorRareT1
setup_attempt_failed

Setup Attempt Failed

The latest setup attempt for the SetupIntent failed. Check last_setup_error and provide a new payment method.

Error, DeclinedOccasionalT0
setup_intent_authentication_failure

Setup Intent Authentication Failure

The payment method failed authentication on this SetupIntent. Provide a new payment method.

DeclinedOccasionalT0
setup_intent_invalid_parameter

Setup Intent Invalid Parameter

One or more parameters aren't allowed for the given operation on this SetupIntent.

ErrorOccasionalT0
setup_intent_mandate_invalid

Setup Intent Mandate Invalid

The mandate provided is invalid and can't be used for this SetupIntent.

ErrorRareT0
setup_intent_setup_attempt_expired

Setup Intent Attempt Expired

The latest setup attempt has expired. Check last_setup_error and retry with a new payment method.

ErrorOccasionalT0
setup_intent_unexpected_state

Setup Intent Unexpected State

The SetupIntent is in a state incompatible with the requested operation.

ErrorOccasionalT0
shipping_address_invalid

Shipping Address Invalid

The shipping address can't be used to accurately calculate tax rates. Verify zip code, state, or province fields.

ErrorOccasionalT0
state_unsupported

State Unsupported

The state provided for a U.S. custom Connect account legal entity isn't supported. Applies to territories and associated states.

ErrorRareT3
status_transition_invalid

Status Transition Invalid

The requested status transition isn't valid for the resource's current state.

ErrorOccasionalT0
testmode_charges_only

Testmode Charges Only

The account is only enabled for test charges. Complete Stripe account onboarding in the Dashboard to process live payments.

ErrorOccasionalT1
tls_version_unsupported

TLS Version Unsupported

The integration is using an unsupported TLS version. Upgrade to TLS 1.2 or higher.

ErrorRareT1
token_already_used

Token Already Used

The token has already been used. Tokens are single-use; generate a new one before retrying.

ErrorOccasionalT0
token_in_use

Token In Use

The token is currently being used in another concurrent request. Avoid duplicate simultaneous requests.

ErrorOccasionalT0
url_invalid

URL Invalid

The URL provided is not valid. Check the format and ensure it includes the correct scheme.

ErrorOccasionalT0
Decline Code
authentication_not_handled

Authentication Not Handled

A retry was attempted without performing the required 3DS/SCA authentication after an authentication_required decline. Run the EMV 3DS or SCA flow before retrying.

DeclinedOccasionalT0
approve_with_id

Approve With ID

The payment can't be authorized. Retry; if still failing, the customer should contact their card issuer.

DeclinedRareT2
call_issuer

Call Issuer

The card was declined for an unknown reason. The customer must contact their card issuer for more information.

DeclinedOccasionalT2
card_not_supported

Card Not Supported

The card doesn't support this type of purchase. Customer should contact their issuer to confirm the card can be used for this purchase type.

DeclinedOccasionalT3
card_velocity_exceeded

Card Velocity Exceeded

The customer has exceeded the balance, credit limit, or transaction amount limit on their card. Customer should contact their issuer.

DeclinedCommonT2
currency_not_supported

Currency Not Supported

The card doesn't support the specified currency. Customer should check with their issuer whether the card supports this currency.

DeclinedOccasionalT3
do_not_honor

Do Not Honor

The card was declined for an unknown reason. Customer must contact their card issuer for more information.

DeclinedCommonT2
do_not_try_again

Do Not Try Again (Deprecated)

Deprecated decline code. The card was declined for an unknown reason. Customer must contact their card issuer.

DeclinedRareT2
duplicate_transaction

Duplicate Transaction

A transaction with identical amount and card information was submitted very recently. Check whether a recent payment already exists before retrying.

Declined, ErrorOccasionalT0
fraudulent

Fraudulent

Stripe suspects the payment is fraudulent. Do not reveal this reason to the customer; present as a generic decline instead.

DeclinedOccasionalT3
generic_decline

Generic Decline

The card was declined for an unknown reason, or Stripe Radar or Adaptive Acceptance blocked the payment. Customer should contact their card issuer.

DeclinedCommonT2
incorrect_pin

Incorrect PIN

The PIN entered is incorrect (card-present only). Customer should retry with the correct PIN.

DeclinedOccasionalT0
invalid_account

Invalid Account

The card or associated account is invalid. Customer should contact their card issuer.

DeclinedOccasionalT2
invalid_amount

Invalid Amount

The payment amount is invalid or exceeds the limit allowed. Customer should contact their issuer if the amount appears correct.

Declined, ErrorOccasionalT0
invalid_pin

Invalid PIN

The PIN entered is incorrect. Customer should retry with the correct PIN.

DeclinedOccasionalT0
issuer_not_available

Issuer Not Available

The card issuer couldn't be reached to authorize the payment. Retry; if still failing, the customer should contact their issuer.

DeclinedOccasionalT0
lost_card

Lost Card

The payment was declined because the card is reported lost. Do not reveal this to the customer; present as a generic decline.

DeclinedRareT3
merchant_blacklist

Merchant Blocklist

The payment matches a value on the Stripe user's block list. Do not reveal this reason; present as a generic decline.

DeclinedOccasionalT1
new_account_information_available

New Account Information Available

The card or associated account is invalid; new account information may be available from the issuer.

DeclinedRareT2
no_action_taken

No Action Taken

The card was declined for an unknown reason. Customer should contact their card issuer.

DeclinedRareT2
not_permitted

Not Permitted

The payment is not permitted by the issuer. Customer should contact their card issuer.

DeclinedOccasionalT2
offline_pin_required

Offline PIN Required

The card was declined because it requires an offline PIN. Customer should insert the card and enter a PIN.

DeclinedRareT0
online_or_offline_pin_required

Online or Offline PIN Required

The card requires a PIN. If the reader supports Online PIN, prompt for PIN in-place; otherwise the customer should insert the card and enter a PIN.

DeclinedRareT0
pickup_card

Pickup Card

The card can't be used for this payment, possibly reported lost or stolen. Customer should contact their issuer.

DeclinedRareT3
pin_try_exceeded

PIN Try Exceeded

The maximum number of PIN entry attempts has been exceeded. Customer must use another card or payment method.

DeclinedRareT3
reenter_transaction

Reenter Transaction

The payment couldn't be processed for an unknown issuer reason. Retry; if still failing, the customer should contact their issuer.

DeclinedRareT0
restricted_card

Restricted Card

The card can't be used for this payment, possibly reported lost or stolen. Customer should contact their issuer.

DeclinedRareT2
revocation_of_all_authorizations

Revocation of All Authorizations

The card was declined because all authorizations have been revoked. Customer should contact their issuer.

DeclinedRareT2
revocation_of_authorization

Revocation of Authorization

The card was declined because the specific authorization was revoked. Customer should contact their issuer.

DeclinedRareT2
security_violation

Security Violation

The card was declined due to a security violation flagged by the issuer. Customer should contact their issuer.

DeclinedRareT2
service_not_allowed

Service Not Allowed

The card was declined because the service is not allowed. Customer should contact their issuer.

DeclinedOccasionalT2
stolen_card

Stolen Card

The payment was declined because the card is reported stolen. Do not reveal this to the customer; present as a generic decline.

DeclinedRareT3
stop_payment_order

Stop Payment Order

The card was declined because a stop payment order is in effect. Customer should contact their issuer.

DeclinedRareT2
testmode_decline

Test Mode Decline

A Stripe test card number was used in a live mode request. Use a genuine card for live payments.

Declined, ErrorOccasionalT1
transaction_not_allowed

Transaction Not Allowed

The card was declined because this type of transaction is not permitted. Customer should contact their issuer.

DeclinedOccasionalT2
try_again_later

Try Again Later (Deprecated)

Deprecated. The card was declined for an unknown reason. Customer should retry; if still failing, contact their issuer.

DeclinedRareT0
withdrawal_count_limit_exceeded

Withdrawal Count Limit Exceeded

The customer has exceeded the withdrawal count or transaction limit on their card. Customer should use an alternative payment method.

DeclinedOccasionalT2
mobile_device_authentication_required

Mobile Device Authentication Required

The card was declined because the transaction requires mobile device authentication. Customer should retry by tapping their mobile device again.

DeclinedRareT0
partner_generic_decline

LPM Partner Generic Decline

The local payment method (LPM) provider declined the payment for an unspecified reason.

DeclinedOccasionalT2
invalid_customer_account

LPM Invalid Customer Account

The customer's account with the LPM provider can't be charged. Retry may succeed after the customer resolves the account issue.

DeclinedOccasionalT2
payment_limit_exceeded

LPM Payment Limit Exceeded

The order exceeds a limit on the customer's LPM account. Retry may succeed after the customer resolves the limit issue.

DeclinedOccasionalT2
invalid_billing_agreement

LPM Invalid Billing Agreement

The customer's billing agreement with the LPM provider is invalid. Retries won't succeed; a new payment method is required.

DeclinedRareT3
invalid_business_account

LPM Invalid Business Account

The merchant's LPM business account is deactivated. If reactivated, retries may succeed.

DeclinedRareT1
partner_high_risk_customer

LPM Partner High Risk Customer

The LPM provider has flagged this customer as high risk and declined the payment.

DeclinedRareT3
compliance_violation

LPM Compliance Violation

The payment violates the LPM provider's terms of service, program rules, or applicable laws. Retries won't succeed.

DeclinedRareT3
payment_disputed

LPM Payment Disputed

There is a dispute over the LPM payment. Retries may succeed if the dispute resolves in the merchant's favor.

Declined, ErrorRareT1
invalid_authorization

LPM Invalid Authorization

The payment didn't receive authorization from the LPM provider or authorization was revoked. Retries won't succeed.

DeclinedRareT3
invalid_payment_information

LPM Invalid Payment Information

The LPM payment has invalid information. Retries won't succeed; correct the payment details.

DeclinedRareT0
partner_payment_not_found

LPM Partner Payment Not Found

The LPM provider can't locate this payment.

Declined, ErrorRareT1
expired_payment_information

LPM Expired Payment Information

The underlying LPM payment instrument has expired. Retries may succeed after the customer updates their payment information.

DeclinedOccasionalT3
recurring_not_supported_by_bank

Recurring Not Supported by Bank

The customer's bank doesn't support recurring payments for this LPM payment method. Prompt the customer to select a bank that supports recurring payments.

DeclinedRareT3
PaymentIntent Capture Method
automatic

Automatic

Stripe automatically captures funds when the customer authorizes the payment.

---
automatic_async

Automatic Async

Default. Stripe asynchronously captures funds when the customer authorizes the payment. Recommended over 'automatic' due to improved latency.

---
manual

Manual

Places a hold on the funds when the customer authorizes the payment, but doesn't capture the funds until later. Not all payment methods support this.

---
PaymentIntent Confirmation Method
automatic

Automatic

Default. The PaymentIntent can be confirmed using a publishable key. After next_actions are handled, no additional confirmation is required to complete the payment.

---
manual

Manual

All payment attempts must be made using a secret key. The PaymentIntent returns to the 'requires_confirmation' state after handling next_actions, and requires the server to initiate each payment attempt with an explicit confirmation.

---
PaymentIntent Setup Future Usage
on_session

On Session

Use when intending to accept on-session payments only, payments that occur while the customer is actively in the checkout flow and able to authenticate.

---
off_session

Off Session

Use when intending to accept off-session payments, payments that occur without direct customer involvement using previously-collected payment information. Also covers on-session payments.

---
PaymentIntent Cancellation Reason
abandoned

Abandoned

The PaymentIntent was abandoned by the merchant.

---
automatic

Automatic

Stripe automatically canceled the PaymentIntent, for example after it went uncaptured too long.

---
duplicate

Duplicate

The PaymentIntent was a duplicate of another payment attempt.

---
expired

Expired

The PaymentIntent expired before it could be completed.

---
failed_invoice

Failed Invoice

The associated invoice failed, causing the PaymentIntent to be canceled.

---
fraudulent

Fraudulent

The PaymentIntent was flagged as fraudulent and canceled.

---
requested_by_customer

Requested By Customer

The customer requested the payment be canceled.

---
void_invoice

Void Invoice

The associated invoice was voided, causing the PaymentIntent to be canceled.

---
SetupIntent Cancellation Reason
abandoned

Abandoned

The SetupIntent was abandoned by the merchant.

---
duplicate

Duplicate

The SetupIntent was a duplicate of another setup attempt.

---
requested_by_customer

Requested By Customer

The customer requested the setup be canceled.

---
Charge Outcome Type
authorized

Authorized

The payment was authorized.

ApprovedCommonT0
manual_review

Manual Review

The payment is under manual review by Stripe.

ProcessingRareT0
issuer_declined

Issuer Declined

The payment was declined by the card issuer.

DeclinedCommonT2
blocked

Blocked

The payment was blocked by Stripe's risk checks (e.g. Radar).

DeclinedOccasionalT3
invalid

Invalid

The payment could not be authorized due to invalid data.

ErrorRareT0
Payout Failure Code
account_closed

Account Closed

The bank account has been closed.

ErrorOccasionalT3
account_frozen

Account Frozen

The bank account has been frozen.

ErrorRareT3
bank_account_restricted

Bank Account Restricted

The bank account has restrictions that prevent this payout.

ErrorRareT2
bank_account_unusable

Bank Account Unusable

The bank account details are invalid, for example the account number doesn't correspond to the specified bank.

ErrorOccasionalT3
bank_ownership_changed

Bank Ownership Changed

The destination bank account is no longer valid because its branch has changed ownership.

ErrorRareT3
could_not_process

Could Not Process

The bank could not process this payout.

ErrorOccasionalT1
debit_not_authorized

Debit Not Authorized

Debit transactions are not approved on the bank account.

Error, DeclinedRareT2
declined

Declined

The bank has declined this transfer, the merchant should contact the bank for more information.

Error, DeclinedOccasionalT2
incorrect_account_holder_address

Incorrect Account Holder Address

The account holder address does not match what the bank has on file.

ErrorRareT0
incorrect_account_holder_name

Incorrect Account Holder Name

The account holder name does not match what the bank has on file.

ErrorRareT0
incorrect_account_holder_tax_id

Incorrect Account Holder Tax ID

The tax ID provided does not match what the bank has on file.

ErrorRareT0
incorrect_account_type

Incorrect Account Type

Your Stripe account is not compatible with the bank account type.

ErrorRareT1
insufficient_funds

Insufficient Funds

The Stripe balance doesn't have sufficient funds to cover the payout.

ErrorOccasionalT0
invalid_account_number

Invalid Account Number

The bank account number failed validation.

ErrorOccasionalT0
invalid_account_number_length

Invalid Account Number Length

The bank account number has an incorrect length for its country.

ErrorRareT0
invalid_currency

Invalid Currency

The bank was unable to process this payout because of its currency, likely because the bank account cannot accept payments in that currency.

ErrorRareT3
no_account

No Account

The bank account details on file for this payout are probably incorrect, and no bank account could be located matching those details.

ErrorOccasionalT0
unsupported_card

Unsupported Card

The card is not supported for payouts.

ErrorRareT3
Mandate Type
multi_use

Multi Use

Represents permission given for multiple payments.

---
single_use

Single Use

Represents a one-time permission given for a single payment.

---

Articles you may find interesting:

View all