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

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

Stripe is commonly used as a payment provider/PSP that helps merchants accept payments and connects to acquiring and processing capabilities through its platform. The exact roles can vary by region and product configuration.
Start by reviewing decline codes and issuer response patterns, then check data quality (billing details, customer info) and authentication settings like 3D Secure. Use Stripe’s reporting to compare approval rates by country, card type, and
Many declines are issuer-driven and can relate to fraud checks, card restrictions, mismatched billing details, or authentication requirements. Reviewing decline codes and prompting customers to contact their issuer can help resolve issuer-
Yes, Stripe supports 3D Secure and can help merchants meet SCA requirements where applicable. Availability and recommended settings depend on your region, business model, and payment method mix.
Stripe surfaces disputes in the dashboard and allows you to submit evidence and track outcomes. Fees, timeframes, and win rates depend on the card network rules, issuer decisions, and the quality of evidence provided.
Stripe operates across many countries, but onboarding availability and supported payment methods vary by region. Check Stripe’s global availability page for the latest coverage and limitations.

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.

PendingCommonT0
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.

PendingOccasionalT0
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.

Pending, 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.

PendingOccasionalT0
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.

Pending, 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.

SuccessCommonT0
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, InfoOccasionalT0
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.

SuccessCommonT0
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.

PendingOccasionalT0
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.

ErrorCommonT2
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.

PendingCommonT0
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.

SuccessCommonT0
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.

Pending, 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, InfoRareT0
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.

PendingCommonT0
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.

PendingOccasionalT0
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.

Pending, 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.

PendingRareT0
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, InfoOccasionalT0
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.

SuccessCommonT0
Error & Decline Codes
account_closed

Account Closed

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

Error, Hard declineOccasionalT3
account_country_invalid_address

Account Country Invalid Address

The country of the business address provided doesn't match the country of the Stripe account. Businesses must be located in the same country as their account.

ErrorRareT1
account_error_country_change_requires_additional_steps

Account Country Change Requires Steps

The account has already onboarded as a Connect platform. Changing the country requires contacting Stripe support.

ErrorRareT1
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, DeclineOccasionalT0
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
alipay_upgrade_required

Alipay Upgrade Required

This method for creating Alipay payments is no longer supported. Upgrade the integration to use Sources.

ErrorRareT1
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
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.

Decline, Soft declineCommonT0
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, DeclineOccasionalT0
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, DeclineRareT2
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.

Error, Hard declineRareT3
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
bitcoin_upgrade_required

Bitcoin Upgrade Required

This method for creating Bitcoin payments is no longer supported. Upgrade the integration to use Sources.

ErrorRareT1
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.

Error, Hard declineOccasionalT2
card_declined

Card Declined

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

DeclineCommonT2
cardholder_phone_number_required

Cardholder Phone Number Required

A phone_number on file is required for Issuing Cardholders creating EU cards due to 3DS requirements.

ErrorRareT0
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
country_unsupported

Country Unsupported

The platform attempted to create a custom Connect account in an unsupported country.

ErrorRareT3
coupon_expired

Coupon Expired

The coupon applied to the subscription or order has expired. Create a new coupon or use a valid one.

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
customer_max_subscriptions

Customer Max Subscriptions

The maximum number of subscriptions for a customer has been reached. Contact Stripe support.

ErrorRareT1
customer_tax_location_invalid

Customer Tax Location Invalid

The customer address is missing or invalid for tax calculation purposes. Provide at minimum a country and postal code.

ErrorOccasionalT0
debit_not_authorized

Debit Not Authorized

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

Decline, Hard declineOccasionalT2
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.

Decline, Hard declineCommonT3
financial_connections_account_inactive

Financial Connections Account Inactive

Data can't be refreshed on inactive Financial Connections accounts.

ErrorRareT2
financial_connections_no_successful_transaction_refresh

Financial Connections No Transaction Refresh

Transaction data can only be retrieved for accounts that have had at least one successful transaction refresh.

ErrorRareT0
forwarding_api_inactive

Forwarding API Inactive

The Vault and Forward API is not accessible with this account configuration. Contact Stripe support.

ErrorRareT1
forwarding_api_invalid_parameter

Forwarding API Invalid Parameter

An invalid parameter was provided in a Vault and Forward API request.

ErrorRareT0
forwarding_api_retryable_upstream_error

Forwarding API Retryable Upstream Error

The destination endpoint is offline or unresponsive. Retry the request later.

ErrorRareT0
forwarding_api_upstream_connection_error

Forwarding API Upstream Connection Error

Stripe received no response from the destination endpoint, likely a problem with the destination.

ErrorRareT1
forwarding_api_upstream_connection_timeout

Forwarding API Upstream Timeout

The request to the destination endpoint timed out, likely a problem with the destination.

ErrorRareT1
forwarding_api_upstream_error

Forwarding API Upstream Error

The destination endpoint is offline or unresponsive. Bytes may have been sent; check third-party state before retrying.

ErrorRareT1
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.

Decline, Soft declineCommonT0
incorrect_cvc

Incorrect CVC

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

Decline, Soft declineCommonT0
incorrect_number

Incorrect Number

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

Decline, Hard declineCommonT0
incorrect_zip

Incorrect ZIP

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

Decline, Soft declineCommonT0
instant_payouts_config_disabled

Instant Payouts Config Disabled

The connected account isn't eligible for Instant Payouts. The platform must enable Instant Payouts for the account.

ErrorRareT1
instant_payouts_limit_exceeded

Instant Payouts Limit Exceeded

The daily processing limit for Instant Payouts has been reached.

ErrorOccasionalT2
instant_payouts_unsupported

Instant Payouts Unsupported

Instant Payouts aren't available for this request. Check Stripe's Instant Payout requirements and supported configurations.

ErrorRareT3
insufficient_funds

Insufficient Funds

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

Decline, Soft declineCommonT3
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

-

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.

Decline, Soft declineCommonT0
invalid_expiry_month

Invalid Expiry Month

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

Decline, ErrorOccasionalT0
invalid_expiry_year

Invalid Expiry Year

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

Decline, 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.

Decline, 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
invalid_tax_location

Invalid Tax Location

The location specified is invalid for tax calculation. Check Stripe's supported address formats.

ErrorOccasionalT0
invoice_no_customer_line_items

Invoice No Customer Line Items

An invoice can't be generated for this customer because there are no pending invoice items.

ErrorRareT0
invoice_no_payment_method_types

Invoice No Payment Method Types

An invoice can't be finalized because no payment method types are available due to invoice template or payment settings restrictions.

ErrorRareT1
invoice_no_subscription_line_items

Invoice No Subscription Line Items

An invoice can't be generated for this subscription because there are no pending invoice items.

ErrorRareT0
invoice_not_editable

Invoice Not Editable

The invoice can no longer be edited. Add invoice items to the next billing cycle instead.

ErrorOccasionalT0
invoice_on_behalf_of_not_editable

Invoice On-Behalf-Of Not Editable

The on_behalf_of property of an invoice can't be updated after the invoice has been assigned a number.

ErrorRareT0
invoice_payment_intent_requires_action

Invoice Payment Intent Requires Action

The invoice payment requires additional customer action (e.g., 3DS). Complete via the associated PaymentIntent.

Error, Soft declineOccasionalT0
invoice_upcoming_none

Invoice Upcoming None

There is no upcoming invoice to preview for this customer. Only customers with active subscriptions or pending items have previewable invoices.

ErrorRareT0
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, DeclineOccasionalT0
not_allowed_on_standard_account

Not Allowed on Standard Account

Transfers and payouts on behalf of Standard connected accounts aren't permitted.

ErrorRareT1
out_of_inventory

Out of Inventory

One or more line items are out of stock. Update inventory quantities before retrying.

ErrorOccasionalT0
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.

Error, Soft declineOccasionalT0
payment_intent_authentication_failure

Payment Intent Authentication Failure

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

Decline, Soft declineOccasionalT0
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.

Decline, 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, DeclineCommonT2
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.

Error, Hard declineRareT1
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.

Decline, Soft declineOccasionalT3
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.

Error, Hard declineRareT1
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.

Error, Hard declineOccasionalT1
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.

Error, Soft declineOccasionalT0
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.

Decline, Soft declineCommonT2
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.

Error, Soft declineOccasionalT0
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
payouts_limit_exceeded

Payouts Limit Exceeded

The daily processing limit for this payout type has been reached.

ErrorOccasionalT2
payouts_not_allowed

Payouts Not Allowed

Payouts are disabled on the connected account, possibly due to pending identity verification or another compliance issue.

ErrorOccasionalT1
platform_account_required

Platform Account Required

Only Stripe Connect platforms can work with other accounts. Set up a Connect platform in the Dashboard.

ErrorRareT1
platform_api_key_expired

Platform API Key Expired

The API key provided by the Connect platform has expired, possibly because a new key was generated or the account was disconnected.

ErrorRareT1
postal_code_invalid

Postal Code Invalid

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

Decline, Soft declineCommonT0
processing_error

Processing Error

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

Error, Soft declineOccasionalT0
product_inactive

Product Inactive

The product this SKU belongs to is no longer available for purchase.

ErrorRareT3
progressive_onboarding_limit_exceeded

Progressive Onboarding Limit Exceeded

The progressive onboarding limit for the Connect platform has been reached.

ErrorRareT1
promotion_code_customer_missing_first_time

Promotion Code Customer Missing First Time

A customer must be specified when redeeming a promotion code restricted to first-time transactions.

ErrorRareT0
promotion_code_customer_not_first_time

Promotion Code Not First Time

The promotion code can't be redeemed because the customer has prior transactions and the code is restricted to first-time customers.

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.

Decline, Hard declineOccasionalT2
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, DeclineOccasionalT0
setup_intent_authentication_failure

Setup Intent Authentication Failure

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

Decline, Soft declineOccasionalT0
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
shipping_calculation_failed

Shipping Calculation Failed

Shipping calculation failed because the provided information was incorrect or couldn't be verified.

ErrorOccasionalT0
sku_inactive

SKU Inactive

The SKU is inactive and no longer available for purchase. Use a different SKU or reactivate the current one.

ErrorRareT3
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
stripe_tax_inactive

Stripe Tax Inactive

Stripe Tax hasn't been activated on the account. Complete the Stripe Tax setup in the Dashboard.

ErrorRareT1
tax_id_invalid

Tax ID Invalid

The tax ID number is invalid, e.g., missing digits. Must be at least 9 digits.

ErrorOccasionalT0
tax_id_prohibited

Tax ID Prohibited

A tax identifier may not be provided on this payment method as it isn't required.

ErrorRareT0
taxes_calculation_failed

Taxes Calculation Failed

Tax calculation for the order failed. Verify the tax configuration and customer address.

ErrorOccasionalT0
terminal_location_country_unsupported

Terminal Location Country Unsupported

Stripe Terminal isn't available in the account's country. Terminal locations can't be created in live mode for this country.

ErrorRareT3
terminal_reader_busy

Terminal Reader Busy

The card reader is currently processing another request. Implement proper error handling per Terminal integration guide.

ErrorOccasionalT0
terminal_reader_hardware_fault

Terminal Reader Hardware Fault

An unrecoverable hardware fault has been detected on the reader. Contact Stripe support with the reader's serial number for replacement.

Error, Hard declineRareT1
terminal_reader_invalid_location_for_activation

Terminal Reader Invalid Location for Activation

The reader can't be activated at its currently registered location. Register it to a new location.

ErrorRareT1
terminal_reader_invalid_location_for_payment

Terminal Reader Invalid Location for Payment

The reader can't accept payments at its currently registered location. Register it to a new valid location.

ErrorRareT1
terminal_reader_offline

Terminal Reader Offline

The reader is offline. Ensure it's powered on and connected to the internet before retrying.

ErrorOccasionalT0
terminal_reader_timeout

Terminal Reader Timeout

The command to the reader timed out. Handle as per the Terminal integration guide.

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
transfer_source_balance_parameters_mismatch

Transfer Source Balance Parameters Mismatch

When creating a Transfer with issuing balance type, the payments parameter in source_balance must not be passed.

ErrorRareT0
transfers_not_allowed

Transfers Not Allowed

The requested transfer can't be created. Contact Stripe support for assistance.

ErrorRareT1
url_invalid

URL Invalid

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

ErrorOccasionalT0
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.

Decline, Soft declineOccasionalT0
approve_with_id

Approve With ID

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

Decline, Soft declineRareT2
call_issuer

Call Issuer

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

Decline, Hard declineOccasionalT2
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.

Decline, Hard declineOccasionalT3
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.

Decline, Soft declineCommonT2
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.

Decline, Hard declineOccasionalT3
do_not_honor

Do Not Honor

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

Decline, Hard declineCommonT2
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.

Decline, Hard declineRareT2
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.

Decline, ErrorOccasionalT0
fraudulent

Fraudulent

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

Decline, Hard declineOccasionalT3
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.

Decline, Soft declineCommonT2
incorrect_pin

Incorrect PIN

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

Decline, Soft declineOccasionalT0
invalid_account

Invalid Account

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

Decline, Hard declineOccasionalT2
invalid_amount

Invalid Amount

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

Decline, ErrorOccasionalT0
invalid_pin

Invalid PIN

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

Decline, Soft declineOccasionalT0
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.

Decline, Soft declineOccasionalT0
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.

Decline, Hard declineRareT3
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.

Decline, Hard declineOccasionalT1
new_account_information_available

New Account Information Available

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

Decline, Soft declineRareT2
no_action_taken

No Action Taken

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

Decline, Soft declineRareT2
not_permitted

Not Permitted

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

Decline, Hard declineOccasionalT2
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.

Decline, Soft declineRareT0
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.

Decline, Soft declineRareT0
pickup_card

Pickup Card

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

Decline, Hard declineRareT3
pin_try_exceeded

PIN Try Exceeded

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

Decline, Hard declineRareT3
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.

Decline, Soft declineRareT0
restricted_card

Restricted Card

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

Decline, Hard declineRareT2
revocation_of_all_authorizations

Revocation of All Authorizations

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

Decline, Hard declineRareT2
revocation_of_authorization

Revocation of Authorization

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

Decline, Hard declineRareT2
security_violation

Security Violation

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

Decline, Hard declineRareT2
service_not_allowed

Service Not Allowed

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

Decline, Hard declineOccasionalT2
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.

Decline, Hard declineRareT3
stop_payment_order

Stop Payment Order

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

Decline, Hard declineRareT2
testmode_decline

Test Mode Decline

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

Decline, ErrorOccasionalT1
transaction_not_allowed

Transaction Not Allowed

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

Decline, Hard declineOccasionalT2
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.

Decline, Soft declineRareT0
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.

Decline, Soft declineOccasionalT2
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.

Decline, Soft declineRareT0
partner_generic_decline

LPM Partner Generic Decline

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

Decline, Soft declineOccasionalT2
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.

Decline, Soft declineOccasionalT2
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.

Decline, Soft declineOccasionalT2
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.

Decline, Hard declineRareT3
invalid_business_account

LPM Invalid Business Account

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

Decline, Hard declineRareT1
partner_high_risk_customer

LPM Partner High Risk Customer

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

Decline, Hard declineRareT3
compliance_violation

LPM Compliance Violation

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

Decline, Hard declineRareT3
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.

Decline, ErrorRareT1
invalid_authorization

LPM Invalid Authorization

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

Decline, Hard declineRareT3
invalid_payment_information

LPM Invalid Payment Information

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

Decline, Hard declineRareT0
partner_payment_not_found

LPM Partner Payment Not Found

The LPM provider can't locate this payment.

Decline, 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.

Decline, Soft declineOccasionalT3
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.

Decline, Hard declineRareT3

Articles you may find interesting:

View all