Stripe API changes, October 2026: what changed
68 entries from Stripe's public changelog, published 2026-09-05 to 2026-10-05, newest first. By type: breaking: 29, change: 1, new: 38.
Every entry belongs to the 2026-09-30.endive release and carries its release date, because Stripe entry pages have no publish date. The changes apply when you upgrade to that API version or the matching Stripe.js version; one entry, on billing addresses for non-EEA SEPA Direct Debit, says it affects all API versions. The 2026-09-30.preview release is not covered.
Only the breaking changes and deprecations: Stripe API breaking changes and deprecations, Sep 5 to Oct 5, 2026.
Read on 2026-10-05: https://docs.stripe.com/changelog
| Date | Type | Change |
|---|---|---|
| 2026-09-30 | breaking | Unifies the billing cycle anchor format across Subscriptions and Invoices In API version 2026-09-30.endive, billing_cycle_anchor on Subscription update and resume and on Invoice preview subscription_details takes an object with a type field instead of a string, enum or timestamp. |
| 2026-09-30 | new | Adds invoicing rules to Invoice Items Invoice Items gain an invoicing_rules array; the one available rule defers credit prorations until the credited items are resolved. |
| 2026-09-30 | new | Adds reference and company details parameters for Billie Optional reference and company_details parameters are available under payment_method_options.billie on PaymentIntents and Invoices, with company_details also on Subscriptions. |
| 2026-09-30 | new | Adds the ability to clear invoicing rules on Invoice Items Invoice Item update accepts invoicing_rules, where an empty string clears the rules; clearing on an item already attached to an invoice returns a 400. |
| 2026-09-30 | new | Adds proration details for Invoice Items using classic billing mode Proration invoice items in classic billing mode now expose proration_details.credited_items, linking each credit to the debit it offsets. |
| 2026-09-30 | new | Makes trial offers generally available The ProductCatalog.TrialOffer resource is generally available for flexible billing mode, with current_trial on subscription items and a billing cycle anchor setting for trial end behavior. |
| 2026-09-30 | new | Adds detailed status to explain why an Invoice is uncollectable Invoices expose status_details.uncollectible.reason, an open enum with values such as max_payment_attempts, subscription_canceled and user_forgiven. |
| 2026-09-30 | new | Adds support for scheduling Subscription cancellation as part of pending update cancel_at_period_end can now be sent together with payment_behavior=pending_if_incomplete, and pending_update reports the scheduled cancellation. |
| 2026-09-30 | new | Adds the ability to pause and resume Subscriptions on demand Flexible-billing subscriptions get a pause endpoint, a paused status with status_details, and pause schedules on Subscription Schedules; a paused subscription stops generating invoices. |
| 2026-09-30 | new | Adds the Feedback Options API A new Billing.FeedbackOption resource lets you define custom cancellation reasons and show them in the customer portal. |
| 2026-09-30 | breaking | Adds address validation errors for CMRAs and registered agents to Accounts v1 and Accounts v2 Requirement errors can now carry invalid_address_cmra_address and invalid_address_registered_agent_address on Accounts, Persons, Capabilities and bank accounts. |
| 2026-09-30 | breaking | Adds rejected status for Accounts v2 capabilities Accounts v2 capabilities can report a rejected status with eight new status_details codes that separate Stripe rejections from platform rejections. |
| 2026-09-30 | breaking | Replaces the generic fraud rejection reason with specific fraud reasons The Account reject reason becomes an enum: fraud is removed and returns a 400, replaced by specific fraud reasons plus credit, while terms_of_service and other remain. |
| 2026-09-30 | breaking | Removes the configurations parameter from the Account Links v2 API The configurations parameter is removed from the account_onboarding and account_update use cases of v2 Account Links; Stripe now determines the configurations itself. |
| 2026-09-30 | breaking | Standardizes SEPA Direct Debit payment settings in the Accounts API settings.sepa_debit_payments.creditor_id now returns Stripe's shared SEPA Creditor Identifier instead of being omitted, and a custom creditor ID can be set on account create (v1) and create or update (v2). |
| 2026-09-30 | breaking | Shows errors for eventually due requirements requirements.errors and future_requirements.errors on Accounts, Persons and Capabilities, and their updated events, can now include errors for eventually_due requirements. |
| 2026-09-30 | breaking | Distinguishes platform-initiated account rejections from Stripe rejections disabled_reason on v1 Account requirements now returns rejected.platform_fraud, rejected.platform_terms_of_service or rejected.platform_other when the platform rejected the account. |
| 2026-09-30 | new | Adds additional shared fields to customer sharing Customer and payment method sharing now also syncs fields such as description, tax IDs, preferred locales, metadata, business name, shipping, tax exemption and invoice prefix across a sharing group. |
| 2026-09-30 | breaking | Renames the countries filter to country on Financial Connections Sessions filters.countries (an array) is replaced by filters.country (a single string) on Financial Connections Sessions, and the old name is rejected. |
| 2026-09-30 | breaking | Updates Financial Connections Session defaults Financial Connections Sessions get new defaults: no account limit, manual entry disabled, no payment-method-support requirement, all account subcategories, and the merchant country as the country filter. |
| 2026-09-30 | new | Adds pending and expired statuses to Financial Connections account numbers account_numbers[].status can now be pending or expired in addition to transactable and deactivated. |
| 2026-09-30 | breaking | Removes the payment method types parameter from Checkout Sessions payment_method_types is removed from Checkout Session creation and now returns a 400; a new allowed_payment_method_types parameter filters out incompatible types without erroring. |
| 2026-09-30 | breaking | Adds support for Data Share Only for 3D Secure authentication three_d_secure.result can be data_share_only on Charges, SetupAttempts and Payment Records, and the three_d_secure object is now populated for those payments instead of null. |
| 2026-09-30 | breaking | Makes Payment Evaluation signal scores nullable Radar Payment Evaluation signal scores are nullable, with an unavailable score returned as null instead of -1; Radar Standard users get null scores and need this API version or later for Payment Evaluations. |
| 2026-09-30 | breaking | Removes PayTo-specific fields from Payment Methods The payto parameter is removed from Payment Method update and is now rejected; the values it accepted were never stored. |
| 2026-09-30 | breaking | Enforces collection of billing address parameters for non-EEA SEPA Direct Debit payments SEPA Direct Debit with non-EEA IBANs (including UK and Swiss) now requires billing address city and postal code in addition to line1 and country; the entry states this affects all API versions. |
| 2026-09-30 | breaking | Removes the payment method types parameter from Payment Intents and Setup Intents payment_method_types can no longer be written on PaymentIntents and SetupIntents (400 with payment_method_types_no_longer_supported); it stays as a read-only property. |
| 2026-09-30 | breaking | Returns specific decline codes for BLIK payment failures BLIK failures return specific decline codes such as code_invalid, code_expired, insufficient_funds and customer_declined instead of generic_decline. |
| 2026-09-30 | breaking | Deprecates the payment request button From the Endive Stripe.js version, creating a paymentRequestButton element (or the React PaymentRequestButtonElement) throws; earlier Stripe.js versions still support it. |
| 2026-09-30 | breaking | Shows pending-authorization UI for MB WAY, Bizum, and BLIK with stripe.handleNextAction stripe.handleNextAction now displays Stripe's own pending-authorization modal for MB WAY, Bizum and BLIK. |
| 2026-09-30 | breaking | Removes support for the payment method types option in Elements Setting paymentMethodTypes when creating Elements without an Intent, or in elements.update(), now throws an integration error. |
| 2026-09-30 | new | Saves Bancontact payment details for future off-session payments in Checkout Checkout accepts setup_future_usage=off_session for Bancontact, which produces a reusable SEPA Direct Debit payment method. |
| 2026-09-30 | new | Adds the Standalone 3D Secure API A new ThreeDSecure.Authentication resource lets you run 3D Secure authentication independently of a Stripe payment. |
| 2026-09-30 | new | Adds support for SeQura payments SeQura, a buy-now-pay-later method in Spain, is supported through Checkout Sessions, Payment Links and PaymentIntents for single-use payments, behind a sequra_payments capability. |
| 2026-09-30 | new | Adds card-present payment methods to allowed payment method types allowed_payment_method_types on PaymentIntents and SetupIntents now accepts card_present and interac_present for Terminal integrations. |
| 2026-09-30 | new | Adds Link funding source group details on Payment Records Payment Records and Payment Attempt Records expose payment_method_details.link.funding_source_group. |
| 2026-09-30 | new | Adds early fraud warnings and fraudulent dispute signals for Payment Evaluations Radar Payment Evaluations add early_fraud_warning and fraudulent_dispute signals, each with a risk level and score. |
| 2026-09-30 | new | Adds the ability to report canceled payments Payment Record reporting endpoints accept outcome=canceled with a canceled_at timestamp. |
| 2026-09-30 | change | Adds support for expanding the mandate on card payment method details payment_method_details.card.mandate on Charges can be expanded into the full Mandate object; without expansion it still returns the ID or null. |
| 2026-09-30 | new | Adds the Payment Record property to the Payment Intent object PaymentIntents gain an expandable payment_record property. |
| 2026-09-30 | new | Adds Link wallet details to Payment Records for card payments Card details on Payment Records can include wallet.link with its funding source group, and wallet.type can now be link. |
| 2026-09-30 | new | Adds 3D Secure versions 2.3.0 and 2.3.1 to Payment Records three_d_secure.version on Payment Records can now be 2.3.0 or 2.3.1. |
| 2026-09-30 | new | Adds support for BLIK recurring off-session payments BLIK supports recurring off-session payments in Poland through mandates, with a blik_recurring_payments capability on Accounts v1 and v2. |
| 2026-09-30 | new | Adds PayPay support for one-time online payments in Japan Eligible Japan-based accounts can accept one-time PayPay wallet payments through Payment Intents, Checkout, the Payment Element and Payment Links, with full and partial refunds. |
| 2026-09-30 | new | Exposes the network response electronic commerce indicator on card charges Charges expose payment_method_details.card.electronic_commerce_indicator for supported Visa and Mastercard authorizations; it is separate from the 3D Secure ECI and is not backfilled. |
| 2026-09-30 | new | Adds payment method type information for failed payments last_payment_error on PaymentIntents, and the payment_intent.payment_failed event, now include payment_method_type, including for capture failures. |
| 2026-09-30 | new | Adds MoMo payment method details to Payment Records Payment Records and Payment Attempt Records can include payment_method_details.momo with a fingerprint and optional mandate. |
| 2026-09-30 | breaking | Adds Failed Tax Calculation error A failed_tax_calculation error code is returned when automatic tax cannot be calculated for an undetermined reason, on tax calculations, invoice finalize and pay, and subscription create and update. |
| 2026-09-30 | new | Adds support for new tax types Stripe Tax adds three US tax types: digital_excise_tax, utility_users_tax and recycling_fee, visible in tax calculations; the first two can also be set on custom Tax Rates. |
| 2026-09-30 | new | Adds support for ticket sales to Stripe Tax Stripe Tax can tax tickets by event venue through a new Tax.Location resource and a performance_location on calculation line items, along with event-related tax types such as admissions_tax. |
| 2026-09-30 | breaking | Renames the Reserve Release reason enum value On Reserve Releases, the reason value bulk_hold_expiry is renamed to hold_expired. |
| 2026-09-30 | breaking | Adds destination property and new enum values to Reserve Plans, Holds and Releases Reserve Plans, Holds and Releases gain a destination property that separates risk reserves from settlement reserves, and Reserve Plans add manual_release and other types plus an other status. |
| 2026-09-30 | new | Adds support for received credits sent via the Real-Time Payments network Treasury financial accounts can receive funds over the RTP network; such Received Credits have network rtp and cannot be reversed. |
| 2026-09-30 | new | Exposes ACH return codes on OutboundPayments, OutboundTransfers, and InboundTransfers in v1 Treasury v1 Treasury outbound payments, outbound transfers and inbound transfers now include the raw ACH return code and reason under network_details.ach when a transfer fails or is returned. |
| 2026-09-30 | breaking | Adds page limit validation for dispute evidence Updating a Dispute with evidence whose estimated compiled page count exceeds the network limit now fails with a 400 and code dispute_evidence_page_limit_exceeded, whether or not submit is true. |
| 2026-09-30 | breaking | Rejects duplicate references for pending India card mandates Creating a PaymentIntent or SetupIntent that reuses a reference tied to a pending India recurring card mandate now returns resource_already_exists; previously only active mandates were checked. |
| 2026-09-30 | breaking | Surfaces India card mandates on Charges and SetupIntents even when inactive For India recurring card payments, the mandate on Charges and SetupIntents is returned even when registration failed and the mandate is inactive, and a new mandate can start out inactive. |
| 2026-09-30 | breaking | Sets canConfirm to false while updates are pending in Elements with Checkout Sessions In Elements with Checkout Sessions, canConfirm is now false while a server update is queued or in progress. |
| 2026-09-30 | breaking | Allows empty optional address fields in Elements with Checkout Sessions Elements with Checkout Sessions no longer applies format validation to empty optional address fields, so customers can confirm without them. |
| 2026-09-30 | breaking | Requires billing details when Payment Element collection is disabled With Elements and Checkout Sessions, checkout.confirm() throws an integration error if a required billing field set to never on the Payment Element was not supplied another way. |
| 2026-09-30 | new | Makes thin events for API v1 resources generally available Thin events now cover supported API v1 resources; their names carry a v1. prefix (for example v1.customer.created) and point to the affected resource through related_object. |
| 2026-09-30 | new | Adds Satispay payments capability to Accounts v2 Accounts v2 adds a satispay_payments merchant capability that can be requested on account create or update. |
| 2026-09-30 | new | Adds an expiration timestamp to the Swish QR code object The Swish QR code in a PaymentIntent next_action now includes expires_at as a Unix timestamp. |
| 2026-09-30 | new | Adds a new outcome type for rerouted payments to Payment Evaluations Radar Payment Evaluations can return outcome.type rerouted when a reroute rule fires on a bank payment. |
| 2026-09-30 | new | Adds Balance Transaction types for provisional credits for Issuing disputes Balance Transactions add the types issuing_dispute_provisional_credit and issuing_dispute_provisional_credit_reversal, each with its own reporting category. |
| 2026-09-30 | new | Adds India-specific mandate details to card payment method responses The Mandate object adds India-specific card details, including inactive_reason, which says why a mandate became inactive. |
| 2026-09-30 | new | Adds the option to automatically pause subscriptions after payment failures Stripe Billing can automatically pause eligible flexible-billing subscriptions after the first failed renewal payment or once retries are exhausted, and optionally resume them when the invoice is settled. |
| 2026-09-30 | new | Adds the Install API for Stripe Apps A new Apps.Install resource lets you list, create, retrieve, reauthorize and uninstall Stripe App installs through the API, with apps.install.created, updated and deleted events. |
What the paid brief adds
This page is the free list. The paid issue covers these 68 Stripe entries and the other three vendors (142 entries in all) and adds:
- the action checklist: what to do for each entry, or a plain "none" when the change needs nothing from you;
- an "Act first" section: the 46 breaking changes and deprecations and nothing else, grouped by vendor, each with what to do;
- a source link for every entry;
- a CSV file with all entries, one row each, to filter or import.
Issue 1, a one-time $7 download: an HTML brief plus a CSV. A short README text file comes with them. The issue covers 2026-09-05 to 2026-10-05. You pay once for this one dated issue: nothing is billed again, and no later issue or update is included. The price and terms are shown on the Gumroad page before you pay.