Breaking Change: Method Renamed
Stripe has renamed the stripe.initCheckout() method to stripe.initCheckoutElementsSdk() in Stripe.js. Calling the old method will now throw an IntegrationError, so any integration using this method requires immediate updates.
What Developers Need to Do
The update process varies by your implementation approach:
For HTML + JS integrations: Replace the method call directly:
// Old
const checkout = stripe.initCheckout({clientSecret});
// New
const checkout = stripe.initCheckoutElementsSdk({clientSecret});
For React integrations: Replace the provider component:
// Old
import {CheckoutProvider} from '@stripe/react-stripe-js/checkout';
// New
import {CheckoutElementsProvider} from '@stripe/react-stripe-js/checkout';
The new method accepts the same options and returns the same Checkout object, so only the name and provider need to change.
Rationale
The rename clarifies that initCheckoutElementsSdk() is specifically the entry point for integrations that compose individual Elements (Payment Element, Address Element, etc.) on your checkout page using the Checkout Sessions API. This distinction helps developers understand which checkout implementation method they're using.
Related Breaking Changes
This is part of a larger set of breaking changes in this release, including renamed Embedded Checkout methods, removal of deprecated Payment Intents/Setup Intents/Sources methods, and changes to Address Element formatting and layout options.