Skip to content

Conversation

@dependabot
Copy link

@dependabot dependabot bot commented on behalf of github Oct 1, 2025

Bumps stripe from 15.3.0 to 16.0.0.

Release notes

Sourced from stripe's releases.

v16.0.0

This release changes the pinned API version to 2025-09-30.clover and contains breaking changes (prefixed with ⚠️ below)

  • #1652 ⚠️ Deserialize inner types in resources for more detailed types

    • ⚠️ Deserialize inner classes, so inner class types will now reflect generated inner classes
      • For example, Stripe::Customer.address is deserialized to specific a Stripe::Customer::Address class instead of the generic Stripe::StripeObject, as is suggested by the static type annotations
      • This should not affect any normal use cases of the SDK, as inner types remain children of Stripe::StripeObject
  • #1649 Explicitly define methods for RBIs and ship combined RBI for Tapioca

    • Improvements for Tapioca
      • Explicitly define methods for attributes in RBIs to allow Tapioca to reflect them
      • Ship combined RBI for shorter Tapioca time
  • #1677 Move V2.Event API resources to V2.Core.Events

    • ⚠️ Move Stripe::V2::Event and Stripe::V2::EventDestination to Stripe::V2::Core::Event and Stripe::V2::Core::EventDestination respectively. They now correctly match their API path
  • #1664 Add StripeContext object

    • Add the StripeContext class. Previously you could set the stripe_context to only a string value. Now you can use the new class as well
    • ⚠️ Change EventNotification (formerly known as ThinEvent)'s context property from string to StripeContext
  • #1684 ⚠️ Drop support for Ruby < 2.6 & clarify version policy

    • Read our new language version support policy
      • ⚠️ In this release, we drop support for Ruby 2.3, 2.4, and 2.5
      • Ruby 2.6 support is deprecated and will be removed in the next scheduled major release (March 2026)
  • #1651 ⚠️ Build SDK w/ V2 OpenAPI spec

    • ⚠️ The delete methods for v2 APIs (the ones in the StripeClient.v2 namespace) now return a V2DeletedObject which has the id of the object that has been deleted and a string representing the type of the object that has been deleted.
    • ⚠️ Deeply nested param hashes with no properties no longer have classes generated for them. Instead, they're typed as T::Hash[String, T.untyped]. Because there were no params, it's unlikely you were using these classes.
  • #1650 ⚠️ Add strongly typed EventNotifications We've overhauled how V2 Events are handled in the SDK! This approach should provide a lot more information at authoring and compile time, leading to more robust integrations. As part of this process, there are a number of changes to be aware of.

    • Added matching EventNotification classes to every v2 Event
      • For example, there's now a V1BillingMeterErrorReportTriggeredEventNotification to match the existing V1BillingMeterErrorReportTriggeredEvent
      • Each notification class defines a fetch_event() method to retrieve its corresponding event
      • For events with related objects, there's a fetch_related_object() method that performs the API call and casts the response to the correct type on both the EventNotification and Event.
    • ⚠️ Rename function StripeClient.parse_thin_event to StripeClient.parse_event_notification and remove the Stripe::ThinEvent class.
      • This function now returns a Stripe::V2::Core::EventNotification (which is the shared base class that all of the more specific Stripe::Event::*EventNotification classes share) instead of Stripe::ThinEvent. When applicable, these event notifications will have the relatedObject property and a fetch_related_object() function. They also have a fetch_event() method to retrieve their corresponding Stripe::Events::*Event instance.
      • If you parse an event the SDK doesn't have types for (e.g. it's newer than the SDK you're using), you'll get an instance of Stripe::Events::UnknownEventNotification instead of a more specific type. It has both the related_object property and the fetch_related_object() function (but they may be/return nil)
    • ⚠️ Move all Event Classes into the Events module
      • For example, Stripe::V1BillingMeterErrorReportTriggeredEvent is now Stripe::Events::V1BillingMeterErrorReportTriggeredEvent
  • #1670 ⚠️ Unify resource and service method parameters into one class

    • ⚠️ Resource and service request parameter types have been moved to the top-level and are shared.
      • For example, Stripe::Account::CreateParams and Stripe::AccountService::CreateParams have moved to Stripe::AccountCreateParams
      • This change only affects users who use Sorbet types for parameters
  • #1643, #1667, #1680, #1678 Update generated code based on incoming API changes in the 2025-09-30.clover API version.

    • ⚠️ Remove support for balance_report and payout_reconciliation_report on AccountSession::Component and AccountSession::CreateParams::Component
    • Change Invoice.id to be required (i.e. not nilable).
    • Add support for new resource BalanceSettings
    • Add support for retrieve and update methods on resource BalanceSettings
    • Add support for source on Discount
    • Remove support for coupon on Discount, PromotionCode::CreateParams, and PromotionCode
    • Add support for mb_way_paymentson Account::Capability, Account::CreateParams::Capability, and Account::UpdateParams::Capability
    • Add support for trial_update_behavior on BillingPortal::Configuration::CreateParams::Feature::SubscriptionUpdate, BillingPortal::Configuration::Feature::SubscriptionUpdate, and BillingPortal::Configuration::UpdateParams::Feature::SubscriptionUpdate
    • Add support for mb_way on Charge::PaymentMethodDetail, ConfirmationToken::CreateParams::PaymentMethodDatum, ConfirmationToken::PaymentMethodPreview, PaymentIntent::ConfirmParams::PaymentMethodDatum, PaymentIntent::ConfirmParams::PaymentMethodOption, PaymentIntent::CreateParams::PaymentMethodDatum, PaymentIntent::CreateParams::PaymentMethodOption, PaymentIntent::PaymentMethodOption, PaymentIntent::UpdateParams::PaymentMethodDatum, PaymentIntent::UpdateParams::PaymentMethodOption, PaymentMethod::CreateParams, PaymentMethod, SetupIntent::ConfirmParams::PaymentMethodDatum, SetupIntent::CreateParams::PaymentMethodDatum, and SetupIntent::UpdateParams::PaymentMethodDatum
    • Add support for branding_settings and name_collection on Checkout::Session::CreateParams and Checkout::Session

... (truncated)

Changelog

Sourced from stripe's changelog.

16.0.0 - 2025-09-30

This release changes the pinned API version to 2025-09-30.clover and contains breaking changes (prefixed with ⚠️ below)

  • #1652 ⚠️ Deserialize inner types in resources for more detailed types

    • ⚠️ Deserialize inner classes, so inner class types will now reflect generated inner classes
      • For example, Stripe::Customer.address is deserialized to specific a Stripe::Customer::Address class instead of the generic Stripe::StripeObject, as is suggested by the static type annotations
      • This should not affect any normal use cases of the SDK, as inner types remain children of Stripe::StripeObject
  • #1649 Explicitly define methods for RBIs and ship combined RBI for Tapioca

    • Improvements for Tapioca
      • Explicitly define methods for attributes in RBIs to allow Tapioca to reflect them
      • Ship combined RBI for shorter Tapioca time
  • #1677 Move V2.Event API resources to V2.Core.Events

    • ⚠️ Move Stripe::V2::Event and Stripe::V2::EventDestination to Stripe::V2::Core::Event and Stripe::V2::Core::EventDestination respectively. They now correctly match their API path
  • #1664 Add StripeContext object

    • Add the StripeContext class. Previously you could set the stripe_context to only a string value. Now you can use the new class as well
    • ⚠️ Change EventNotification (formerly known as ThinEvent)'s context property from string to StripeContext
  • #1684 ⚠️ Drop support for Ruby < 2.6 & clarify version policy

    • Read our new language version support policy
      • ⚠️ In this release, we drop support for Ruby 2.3, 2.4, and 2.5
      • Ruby 2.6 support is deprecated and will be removed in the next scheduled major release (March 2026)
  • #1651 ⚠️ Build SDK w/ V2 OpenAPI spec

    • ⚠️ The delete methods for v2 APIs (the ones in the StripeClient.v2 namespace) now return a V2DeletedObject which has the id of the object that has been deleted and a string representing the type of the object that has been deleted.
    • ⚠️ Deeply nested param hashes with no properties no longer have classes generated for them. Instead, they're typed as T::Hash[String, T.untyped]. Because there were no params, it's unlikely you were using these classes.
  • #1650 ⚠️ Add strongly typed EventNotifications We've overhauled how V2 Events are handled in the SDK! This approach should provide a lot more information at authoring and compile time, leading to more robust integrations. As part of this process, there are a number of changes to be aware of.

    • Added matching EventNotification classes to every v2 Event
      • For example, there's now a V1BillingMeterErrorReportTriggeredEventNotification to match the existing V1BillingMeterErrorReportTriggeredEvent
      • Each notification class defines a fetch_event() method to retrieve its corresponding event
      • For events with related objects, there's a fetch_related_object() method that performs the API call and casts the response to the correct type on both the EventNotification and Event.
    • ⚠️ Rename function StripeClient.parse_thin_event to StripeClient.parse_event_notification and remove the Stripe::ThinEvent class.
      • This function now returns a Stripe::V2::Core::EventNotification (which is the shared base class that all of the more specific Stripe::Event::*EventNotification classes share) instead of Stripe::ThinEvent. When applicable, these event notifications will have the relatedObject property and a fetch_related_object() function. They also have a fetch_event() method to retrieve their corresponding Stripe::Events::*Event instance.
      • If you parse an event the SDK doesn't have types for (e.g. it's newer than the SDK you're using), you'll get an instance of Stripe::Events::UnknownEventNotification instead of a more specific type. It has both the related_object property and the fetch_related_object() function (but they may be/return nil)
    • ⚠️ Move all Event Classes into the Events module
      • For example, Stripe::V1BillingMeterErrorReportTriggeredEvent is now Stripe::Events::V1BillingMeterErrorReportTriggeredEvent
  • #1670 ⚠️ Unify resource and service method parameters into one class

    • ⚠️ Resource and service request parameter types have been moved to the top-level and are shared.
      • For example, Stripe::Account::CreateParams and Stripe::AccountService::CreateParams have moved to Stripe::AccountCreateParams
      • This change only affects users who use Sorbet types for parameters
  • #1643, #1667, #1680, #1678 Update generated code based on incoming API changes in the 2025-09-30.clover API version.

    • ⚠️ Remove support for balance_report and payout_reconciliation_report on AccountSession::Component and AccountSession::CreateParams::Component
    • Change Invoice.id to be required (i.e. not nilable).
    • Add support for new resource BalanceSettings
    • Add support for retrieve and update methods on resource BalanceSettings
    • Add support for source on Discount
    • Remove support for coupon on Discount, PromotionCode::CreateParams, and PromotionCode
    • Add support for mb_way_paymentson Account::Capability, Account::CreateParams::Capability, and Account::UpdateParams::Capability
    • Add support for trial_update_behavior on BillingPortal::Configuration::CreateParams::Feature::SubscriptionUpdate, BillingPortal::Configuration::Feature::SubscriptionUpdate, and BillingPortal::Configuration::UpdateParams::Feature::SubscriptionUpdate
    • Add support for mb_way on Charge::PaymentMethodDetail, ConfirmationToken::CreateParams::PaymentMethodDatum, ConfirmationToken::PaymentMethodPreview, PaymentIntent::ConfirmParams::PaymentMethodDatum, PaymentIntent::ConfirmParams::PaymentMethodOption, PaymentIntent::CreateParams::PaymentMethodDatum, PaymentIntent::CreateParams::PaymentMethodOption, PaymentIntent::PaymentMethodOption, PaymentIntent::UpdateParams::PaymentMethodDatum, PaymentIntent::UpdateParams::PaymentMethodOption, PaymentMethod::CreateParams, PaymentMethod, SetupIntent::ConfirmParams::PaymentMethodDatum, SetupIntent::CreateParams::PaymentMethodDatum, and SetupIntent::UpdateParams::PaymentMethodDatum
    • Add support for branding_settings and name_collection on Checkout::Session::CreateParams and Checkout::Session

... (truncated)

Commits
  • d7bf6d6 Bump version to 16.0.0
  • fd4368d ⚠️ Drop support for Ruby < 2.6 & clarify version policy (#1684)
  • 3919242 ⚠️ Unify resource and service method parameters into one class (#1670)
  • af31acc Update generated code for v2028 and 2025-09-30.clover (#1680)
  • 48cacc1 Update generated code (#1678)
  • 3b456cb Update generated code for v2026 and 2025-09-30.clover (#1673)
  • 7ce6ec4 updated generated and manually maintained code to move V2::Event, V2::EventDe...
  • 8330a2b Add comment on retrieve on how to pass parameters (#1676)
  • 71858a8 Add StripeContext object (#1664)
  • 0f9faf2 Update generated code for v2025 and 2025-09-30.clover (#1667)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [stripe](https://github.com/stripe/stripe-ruby) from 15.3.0 to 16.0.0.
- [Release notes](https://github.com/stripe/stripe-ruby/releases)
- [Changelog](https://github.com/stripe/stripe-ruby/blob/master/CHANGELOG.md)
- [Commits](stripe/stripe-ruby@v15.3.0...v16.0.0)

---
updated-dependencies:
- dependency-name: stripe
  dependency-version: 16.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file ruby Pull requests that update Ruby code labels Oct 1, 2025
@dependabot @github
Copy link
Author

dependabot bot commented on behalf of github Oct 9, 2025

Superseded by #136.

@dependabot dependabot bot closed this Oct 9, 2025
@dependabot dependabot bot deleted the dependabot/bundler/stripe-16.0.0 branch October 9, 2025 21:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file ruby Pull requests that update Ruby code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant