Skip to content

Releases: stripe/stripe-node

v22.1.0-beta.3

16 Apr 14:56

Choose a tag to compare

v22.1.0-beta.3 Pre-release
Pre-release

Please review the changelog for 22.0.2 for more information about changes in this release.

See the changelog for more details.

v22.0.2

16 Apr 14:53

Choose a tag to compare

  • #2685 Adds parseEventNotificationAsync to match existing sync function
  • #2681 Add emitEventBodies config to include bodies in request/response events
    • Added emitEventBodies config option to include request and response bodies in request/response events.
    • Changed httpClient config type from HttpClient class to HttpClientInterface interface.
  • #2670 tolerance, receivedAt, timestamp are now optional in Webhook.ts
  • #2677 Fixed named export for Bun
    // ✅ Fixed
    import { Stripe } from 'stripe';

See the changelog for more details.

v22.1.0-alpha.3

15 Apr 20:29

Choose a tag to compare

v22.1.0-alpha.3 Pre-release
Pre-release
  • #2686 Update generated code for private-preview
    • Add support for latest_version on V2.Billing.LicenseFee, V2.Billing.PricingPlan, and V2.Billing.RateCard
    • Add support for service_interval_count and service_interval on V2.Billing.LicenseFee and V2.Billing.RateCard
  • #2682 Update generated code for private-preview
    • Add support for new resources V2.Core.WorkflowRun and V2.Core.Workflow
    • Add support for report_authorized method on resource PaymentAttemptRecord
    • Add support for list and retrieve methods on resource V2.Core.WorkflowRun
    • Add support for invoke, list, and retrieve methods on resource V2.Core.Workflow
    • Add support for next_action and status on SharedPayment.IssuedToken
    • ⚠️ Remove support for network_id on SharedPayment.IssuedToken.seller_details
    • Add support for bills on AccountSession.components
    • Add support for settlement_currencies on BalanceSettingUpdateParams.payments and BalanceSettings.payments
    • Add support for default_settlement_currency on BalanceSettings.payments
    • Add support for account_funding on Charge.payment_method_details.card
    • Add support for automatic_surcharge on Checkout.SessionCreateParams, Checkout.Session, PaymentLinkCreateParams, and PaymentLink
    • Add support for bizum on Checkout.Session.payment_method_options and Checkout.SessionCreateParams.payment_method_options
    • Add support for surcharge_cost on Checkout.Session
    • Add support for amount_surcharge on Checkout.Session.total_details
    • Add support for shared_payment_granted_token on ConfirmationTokenCreateParams.testHelpers.payment_method_data, PaymentIntentConfirmParams.payment_method_data, PaymentIntentCreateParams.payment_method_data, PaymentIntentUpdateParams.payment_method_data, SetupIntentConfirmParams.payment_method_data, SetupIntentCreateParams.payment_method_data, and SetupIntentUpdateParams.payment_method_data
    • Add support for new value email on enums Identity.VerificationReportListParams.type, Identity.VerificationSessionCreateParams.type, and Identity.VerificationSessionUpdateParams.type
    • Add support for details on Identity.VerificationReport.email
    • ⚠️ Add support for new value email on enums Identity.VerificationReport.type and Identity.VerificationSession.type
    • Add support for confirm on Identity.VerificationSessionCreateParams and Identity.VerificationSessionUpdateParams
    • Add support for subscription on InvoiceItem.parent.schedule_details
    • ⚠️ Remove support for shared_payment_granted_token on PaymentIntentConfirmParams and PaymentIntentCreateParams
    • Add support for money_services on PaymentIntent.payment_details
    • ⚠️ Remove support for external_reference on Plan
    • Change SharedPayment.GrantedToken.payment_method_details.billing_details to be required

See the changelog for more details.

v22.1.0-beta.2

08 Apr 15:25

Choose a tag to compare

v22.1.0-beta.2 Pre-release
Pre-release

Please review the changelog for 22.0.1 for more information about changes in this release.

See the changelog for more details.

v22.1.0-alpha.2

08 Apr 20:43

Choose a tag to compare

v22.1.0-alpha.2 Pre-release
Pre-release
  • #2657 Update generated code for private-preview
    • Add support for payment_record on ApplicationFee.fee_source
    • Add support for beneficiary_account, beneficiary_details, sender_account, and sender_details on ChargeCaptureParams.payment_details.money_services.account_funding, ChargeUpdateParams.payment_details.money_services.account_funding, PaymentIntentCaptureParams.payment_details.money_services.account_funding, PaymentIntentConfirmParams.payment_details.money_services.account_funding, PaymentIntentCreateParams.payment_details.money_services.account_funding, and PaymentIntentUpdateParams.payment_details.money_services.account_funding
    • Change type of ChargeCaptureParams.payment_details.money_services.transaction_type, ChargeUpdateParams.payment_details.money_services.transaction_type, PaymentIntentCaptureParams.payment_details.money_services.transaction_type, PaymentIntentConfirmParams.payment_details.money_services.transaction_type, PaymentIntentCreateParams.payment_details.money_services.transaction_type, and PaymentIntentUpdateParams.payment_details.money_services.transaction_type from literal('account_funding') to emptyable(literal('account_funding'))
    • Add support for bizum on Invoice.payment_settings.payment_method_options, InvoiceCreateParams.payment_settings.payment_method_options, InvoiceUpdateParams.payment_settings.payment_method_options, QuotePreviewInvoice.payment_settings.payment_method_options, Subscription.payment_settings.payment_method_options, SubscriptionCreateParams.payment_settings.payment_method_options, and SubscriptionUpdateParams.payment_settings.payment_method_options
    • ⚠️ Add support for new value bizum on enums Invoice.payment_settings.payment_method_types, InvoiceCreateParams.payment_settings.payment_method_types, InvoiceUpdateParams.payment_settings.payment_method_types, QuotePreviewInvoice.payment_settings.payment_method_types, Subscription.payment_settings.payment_method_types, SubscriptionCreateParams.payment_settings.payment_method_types, and SubscriptionUpdateParams.payment_settings.payment_method_types
    • Add support for quantity_precision on PaymentIntentAmountDetailsLineItem, PaymentIntentCaptureParams.amount_details.line_items[], PaymentIntentConfirmParams.amount_details.line_items[], PaymentIntentCreateParams.amount_details.line_items[], PaymentIntentDecrementAuthorizationParams.amount_details.line_items[], PaymentIntentIncrementAuthorizationParams.amount_details.line_items[], and PaymentIntentUpdateParams.amount_details.line_items[]
    • Add support for liquid_asset and wallet on PaymentIntentConfirmParams.payment_method_options.card.payment_details.money_services.account_funding, PaymentIntentConfirmParams.payment_method_options.card_present.payment_details.money_services.account_funding, PaymentIntentCreateParams.payment_method_options.card.payment_details.money_services.account_funding, PaymentIntentCreateParams.payment_method_options.card_present.payment_details.money_services.account_funding, PaymentIntentUpdateParams.payment_method_options.card.payment_details.money_services.account_funding, and PaymentIntentUpdateParams.payment_method_options.card_present.payment_details.money_services.account_funding
    • Add support for shared_payment_granted_token on PaymentMethod
    • ⚠️ Change type of Radar.CustomerEvaluation.event_type from string to enum('login'|'registration')
    • ⚠️ Change type of Radar.CustomerEvaluation.signals.account_sharing.risk_level and Radar.CustomerEvaluation.signals.multi_accounting.risk_level from string to enum
    • Add support for data on Radar.PaymentEvaluation.client_device_metadata_details and Radar.PaymentEvaluationCreateParams.client_device_metadata_details
    • Add support for sunbit on SharedPayment.GrantedToken.payment_method_details
    • ⚠️ Add support for new value sunbit on enum SharedPayment.GrantedToken.payment_method_details.type
    • ⚠️ Remove support for values bm_crn, bo_tin, bt_tpn, co_nit, ec_ruc, eg_tin, gh_tin, gy_tin, hn_rtn, jm_trn, jo_crn, ke_pin, ky_crn, lk_tin, mo_tin, mv_tin, ng_tin, pa_ruc, ph_tin, py_ruc, sl_tin, sv_nit, uy_ruc, vg_cn, and za_tin from enums V2.Core.Account.identity.business_details.id_numbers[].type, V2.Core.AccountCreateParams.identity.business_details.id_numbers[].type, V2.Core.AccountTokenCreateParams.identity.business_details.id_numbers[].type, and V2.Core.AccountUpdateParams.identity.business_details.id_numbers[].type
    • ⚠️ Remove support for values bm_pp, bo_ci, bt_cid, eg_tin, gh_pin, gy_tin, hn_rtn, jm_trn, jo_pin, ky_pp, lk_nic, mo_bir, mt_nic, mv_tin, pa_ruc, ph_tin, py_ruc, si_pin, sv_nit, and vg_pp from enums V2.Core.Account.identity.individual.id_numbers[].type, V2.Core.AccountCreateParams.identity.individual.id_numbers[].type, V2.Core.AccountPerson.id_numbers[].type, V2.Core.AccountPersonCreateParams.id_numbers[].type, V2.Core.AccountPersonTokenCreateParams.id_numbers[].type, V2.Core.AccountPersonUpdateParams.id_numbers[].type, V2.Core.AccountTokenCreateParams.identity.individual.id_numbers[].type, and V2.Core.AccountUpdateParams.identity.individual.id_numbers[].type
    • Add support for error type CannotProceedError

See the changelog for more details.

v22.0.1

08 Apr 15:23

Choose a tag to compare

  • #2669 Add constructor based initialization for CJS based TypeScript imports
    • Initialization of Stripe class with new keyword is now possible for CJS based TypeScript project. Resolves: 2660
    import Stripe = require('stripe');
    // ✅ Both statements work
    const stripeNew: Stripe.Stripe = new Stripe('sk_test_...');
    const stripeCalled: Stripe.Stripe = Stripe('sk_test_...');
  • #2664 Fixed nested service param exports in the Stripe namespace
  • #2667 Add type safety to Stripe constructor config (no runtime change)
    • Fixed some compile-time checks (no runtime changes)
      • Fixed Stripe constructor config parameter to use StripeConfig type instead of Record<string, unknown>, restoring compile-time type safety.
      • Added missing authenticator property to StripeConfig.
      • Fixed Stripe.API_VERSION to retain the literal API version type.
      • Fixed StripeConfig.stripeContext to accept StripeContext objects in addition to strings.
  • #2663 Throw a more descriptive error when calling rawRequest with absolute urls
  • #2652 Added string[] to WebhookHeader type for compatibility with express
    • Added string[] to the type of signature param in stripe.webhooks.construct_event method.

See the changelog for more details.

v22.1.0-beta.1

03 Apr 00:06

Choose a tag to compare

v22.1.0-beta.1 Pre-release
Pre-release

Please review the changelog for 22.0.0 for more information about changes in this release.

See the changelog for more details.

v22.1.0-alpha.1

03 Apr 00:09

Choose a tag to compare

v22.1.0-alpha.1 Pre-release
Pre-release

This release changes the pinned API version to 2026-04-01.preview and contains additional breaking changes. See the GA changelog for more information.

  • #2629 Update generated code for private-preview
    • Add support for new resources SharedPayment.IssuedToken and V2.Data.Reporting.QueryRun
    • Add support for create and retrieve methods on resource V2.Data.Reporting.QueryRun
    • Add support for pause and resume methods on resource V2.Payments.OffSessionPayment
    • Add support for tenant_keys, tenant_operator, and tenant_values on Billing.MeterListMeterEventSummariesParams
    • Add support for fleet_data on ChargeCaptureParams.payment_details, ChargeUpdateParams.payment_details, PaymentIntent.payment_details, PaymentIntentAmountDetailsLineItem.payment_method_options.card, PaymentIntentCaptureParams.amount_details.line_items[].payment_method_options.card, PaymentIntentCaptureParams.payment_details, PaymentIntentConfirmParams.amount_details.line_items[].payment_method_options.card, PaymentIntentConfirmParams.payment_details, PaymentIntentCreateParams.amount_details.line_items[].payment_method_options.card, PaymentIntentCreateParams.payment_details, PaymentIntentDecrementAuthorizationParams.amount_details.line_items[].payment_method_options.card, PaymentIntentIncrementAuthorizationParams.amount_details.line_items[].payment_method_options.card, PaymentIntentUpdateParams.amount_details.line_items[].payment_method_options.card, and PaymentIntentUpdateParams.payment_details
    • Add support for money_services on ChargeCaptureParams.payment_details, ChargeUpdateParams.payment_details, PaymentIntentCaptureParams.payment_details, PaymentIntentConfirmParams.payment_details, PaymentIntentCreateParams.payment_details, and PaymentIntentUpdateParams.payment_details
    • Add support for payment_method_options on DelegatedCheckout.RequestedSessionCreateParams, DelegatedCheckout.RequestedSessionUpdateParams, and DelegatedCheckout.RequestedSession
    • ⚠️ Remove support for payment_method_data on DelegatedCheckout.RequestedSessionConfirmParams, DelegatedCheckout.RequestedSessionCreateParams, and DelegatedCheckout.RequestedSessionUpdateParams
    • Add support for card_brands and payment_method_types on DelegatedCheckout.RequestedSession.seller_details
    • ⚠️ Change type of DelegatedCheckout.RequestedSession.shared_payment_issued_token from string to expandable(SharedPayment.IssuedToken)
    • ⚠️ Add support for new value requires_action on enum DelegatedCheckout.RequestedSession.status
    • Add support for check_scan on Invoice.payment_settings.payment_method_options, InvoiceCreateParams.payment_settings.payment_method_options, InvoiceUpdateParams.payment_settings.payment_method_options, QuotePreviewInvoice.payment_settings.payment_method_options, Subscription.payment_settings.payment_method_options, SubscriptionCreateParams.payment_settings.payment_method_options, and SubscriptionUpdateParams.payment_settings.payment_method_options
    • ⚠️ Add support for new value check_scan on enums Invoice.payment_settings.payment_method_types, InvoiceCreateParams.payment_settings.payment_method_types, InvoiceUpdateParams.payment_settings.payment_method_types, QuotePreviewInvoice.payment_settings.payment_method_types, Subscription.payment_settings.payment_method_types, SubscriptionCreateParams.payment_settings.payment_method_types, and SubscriptionUpdateParams.payment_settings.payment_method_types
    • Add support for processor_details on PaymentAttemptRecordReportFailedParams, PaymentAttemptRecordReportGuaranteedParams, PaymentRecordReportPaymentAttemptFailedParams, PaymentRecordReportPaymentAttemptGuaranteedParams, PaymentRecordReportPaymentAttemptParams.failed, PaymentRecordReportPaymentAttemptParams.guaranteed, PaymentRecordReportPaymentParams.failed, and PaymentRecordReportPaymentParams.guaranteed
    • Add support for payment_details on PaymentIntentConfirmParams.payment_method_options.card_present, PaymentIntentConfirmParams.payment_method_options.card, PaymentIntentCreateParams.payment_method_options.card_present, PaymentIntentCreateParams.payment_method_options.card, PaymentIntentUpdateParams.payment_method_options.card_present, and PaymentIntentUpdateParams.payment_method_options.card
    • ⚠️ Remove support for bill_from on QuotePreviewSubscriptionSchedule.billing_schedules[], Subscription.billing_schedules[], and SubscriptionSchedule.billing_schedules[]
    • Add support for agent_details, payment_method_details, and risk_details on SharedPayment.GrantedToken
    • Add support for paper_checks on V2.Account.configuration.recipient_data.features, V2.AccountCreateParams.configuration.recipient_data.features, V2.AccountUpdateParams.configuration.recipient_data.features, V2.Core.Account.configuration.recipient.capabilities, V2.Core.Account.configuration.storer.capabilities.outbound_payments, V2.Core.AccountCreateParams.configuration.recipient.capabilities, V2.Core.AccountCreateParams.configuration.storer.capabilities.outbound_payments, V2.Core.AccountUpdateParams.configuration.recipient.capabilities, and V2.Core.AccountUpdateParams.configuration.storer.capabilities.outbound_payments
    • ⚠️ Add support for new value paper_checks on enum V2.Account.configuration.supportable_features.recipient_data
    • ⚠️ Add support for new value paper_checks on enum V2.Account.requirements[].impact.required_for_features
    • ⚠️ Change type of V2.Billing.Cadence.settings_data.collection.payment_method_options.konbini, V2.Billing.CollectionSetting.payment_method_options.konbini, V2.Billing.CollectionSettingCreateParams.payment_method_options.konbini, V2.Billing.CollectionSettingUpdateParams.payment_method_options.konbini, and V2.Billing.CollectionSettingVersion.payment_method_options.konbini from map(string: dynamic) to an object
    • ⚠️ Change type of V2.Billing.Cadence.settings_data.collection.payment_method_options.sepa_debit, V2.Billing.CollectionSetting.payment_method_options.sepa_debit, V2.Billing.CollectionSettingCreateParams.payment_method_options.sepa_debit, V2.Billing.CollectionSettingUpdateParams.payment_method_options.sepa_debit, and V2.Billing.CollectionSettingVersion.payment_method_options.sepa_debit from map(string: dynamic) to an object
    • Add support for id on V2.Billing.CadenceSpendModifier.max_billing_period_spend.amount.custom_pricing_unit, V2.Billing.IntentAction.apply.spend_modifier_rule.max_billing_period_spend.amount.custom_pricing_unit, and V2.Billing.IntentCreateParams.actions[].apply.spend_modifier_rule.max_billing_period_spend.amount.custom_pricing_unit
    • ⚠️ Add support for new values outbound_payments.paper_checks and paper_checks on enums V2.Core.Account.future_requirements.entries[].impact.restricts_capabilities[].capability and V2.Core.Account.requirements.entries[].impact.restricts_capabilities[].capability
    • ⚠️ Add support for new values bm_crn, bo_tin, bt_tpn, co_nit, ec_ruc, eg_tin, gh_tin, gy_tin, hn_rtn, jm_trn, jo_crn, ke_pin, ky_crn, lk_tin, mo_tin, mv_tin, ng_tin, pa_ruc, ph_tin, py_ruc, sl_tin, sv_nit, uy_ruc, vg_cn, and za_tin on enums V2.Core.Account.identity.business_details.id_numbers[].type, V2.Core.AccountCreateParams.identity.business_details.id_numbers[].type, V2.Core.AccountTokenCreateParams.identity.business_details.id_numbers[].type, and V2.Core.AccountUpdateParams.identity.business_details.id_numbers[].type
    • ⚠️ Add support for new values bm_pp, bo_ci, bt_cid, eg_tin, gh_pin, gy_tin, hn_rtn, jm_trn, jo_pin, ky_pp, lk_nic, mo_bir, mt_nic, mv_tin, pa_ruc, ph_tin, py_ruc, si_pin, sv_nit, and vg_pp on enums V2.Core.Account.identity.individual.id_numbers[].type, V2.Core.AccountCreateParams.identity.individual.id_numbers[].type, V2.Core.AccountPerson.id_numbers[].type, V2.Core.AccountPersonCreateParams.id_numbers[].type, V2.Core.AccountPersonTokenCreateParams.id_numbers[].type, V2.Core.AccountPersonUpdateParams.id_numbers[].type, V2.Core.AccountTokenCreateParams.identity.individual.id_numbers[].type, and V2.Core.AccountUpdateParams.identity.individual.id_numbers[].type
    • ⚠️ Change type of V2.Core.Event.reason.request.client.stripe_action from map(string: dynamic) to an object
    • ⚠️ Change type of V2.MoneyManagement.InboundTransfer.transfer_history[].bank_debit_processing from map(string: dynamic) to an object
    • ⚠️ Change type of V2.MoneyManagement.InboundTransfer.transfer_history[].bank_debit_queued from map(string: dynamic) to an object
    • ⚠️ Change type of V2.MoneyManagement.InboundTransfer.transfer_history[].bank_debit_succeeded from map(string: dynamic) to an object
    • ⚠️ Add support for new values paper_check_attachment_too_large, paper_check_expired, and paper_check_undeliverable on enum V2.MoneyManagement.OutboundPayment.status_details.failed.reason
    • ⚠️ Remove support for town on V2.MoneyManagement.OutboundPayment.tracking_details.paper_check.mailing_address
    • Change V2.MoneyManagement.OutboundPayment.delivery_options.paper_check.memo to be required
    • ⚠️ Add support for new value payout_method_amount_limit_exceeded on enum V2.MoneyManagement.OutboundTransfer.status_details.failed.reason
    • Add support for application_fee_amount_requested on V2.Payments.OffSessionPayment
    • ⚠️ Remove support for compartment_id on V2.Payments.OffSessionPayment
    • ⚠️ Add support for new value exceeded_retry_window on enum V2.Payments.OffSessionPayment.failure_reason
    • Add support for retry_until on V2.Payments.OffSessionPayment.retry_details
    • ⚠️ Add support ...
Read more

v22.0.0

03 Apr 00:04

Choose a tag to compare

This release uses the same pinned API version to 2026-03-25.dahlia as the last major release. The breaking changes in this release are prefixed with ⚠️ below. There's also a detailed migration guide to simplify your upgrade process.

  • #2619 Improved TypeScript support in the Node SDK
    • Moved the types from the partially manually maintained and partially generated types folder to be inline with the implementation in TypeScript files.
    • Removed top-level “stripe” ambient module. This allows import aliasing for the stripe package.
    • ⚠️ Stripe.StripeContext is no longer exported as a type. Use Stripe.StripeContextType instead.
    • ⚠️ Stripe.errors.StripeError is no longer a type. Use typeof Stripe.errors.StripeError or Stripe.ErrorType instead.
    • ⚠️ CJS entry point no longer exports .default or .Stripe as separate properties.
    • ⚠️ Stripe import is now a true ES6 class. Use new Stripe() to create a StripeClient instead of calling it:
// Before
const stripeClient = Stripe("sk_test_...");

// After
const stripeClient = new Stripe("sk_test_...");
  • #2645 ⚠️ Remove stripeMethod and standardize how function args are handled (including removing callback support)

    • ⚠️ Refactor how incoming method arguments are parsed. Type signatures for API methods should be much more accurate and reliable now
      • ⚠️ Remove support for providing callbacks to API methods. Use async / await instead
      • ⚠️ Remove support for passing a plain API key as a function arg. If supplied on a per-request basis, it should be in the RequestOptions under the apiKey property
      • ⚠️ Keys from params and options objects are no longer mixed. If present on a method, RequestParams must always come first and RequestOptions must always come second. To supply options without params, pass undefined as the first argument explicitly
      • ⚠️ Removed methods from StripeResource: createFullPath, createResourcePathWithSymbols, extend, method and _joinUrlParts. These were mostly intended for internal use and we no longer need them

    As a result, the following call patterns are no longer supported:

    stripe.customers.retrieve('cus_123', 'sk_test_123')
    stripe.customers.create({name: 'david', host: 'example.com'}, 'sk_test_123')
    stripe.customers.create({apiKey: 'sk_test_123'})
    stripe.customers.list(customers => {
      // do something with customers
    })
  • #2643 ⚠️ Removed per-request host override. To use a custom host, set it in the client configuration. All requests from that client will use that host.

    Before:

    import Stripe from 'stripe';
    const stripe = new Stripe('sk_test_...');
    
    const customer = await stripe.customers.create({
      email: 'customer@example.com',
    }, {host: 'example.com'});

    After:

    import Stripe from 'stripe';
    const stripe = new Stripe('sk_test_...', {host: 'example.com'});
    
    // goes to example.com
    const customer = await stripe.customers.create({
      email: 'customer@example.com',
    });
  • #2638 Converted V2/Amount.ts to V2/V2Amount.ts

See the changelog for more details.

v21.1.0-beta.2

26 Mar 17:25

Choose a tag to compare

v21.1.0-beta.2 Pre-release
Pre-release
  • #2627 Fix export for Stripe.Decimal in CJS and ESM. Resolves #2625

See the changelog for more details.