
Upgrade Stripe
- 54.6k installs
- 1.7k repo stars
- Updated July 31, 2026
- stripe/ai
upgrade-stripe is a skill for managing Stripe API version upgrades and SDK compatibility across programming languages.
About
This skill guides developers through upgrading Stripe API versions and SDKs across different languages. It explains Stripe's date-based versioning system (e.g., 2026-06-24.dahlia), distinguishes between backward-compatible and breaking changes, and provides language-specific guidance for dynamic languages (Ruby, Python, PHP, Node.js) and strongly-typed languages (Java, Go, .NET).
- Upgrade Stripe API versions using date-based versioning scheme
- Configure API versions globally or per-request across dynamic and strongly-typed SDKs
- Navigate backward-compatible vs breaking changes with official Stripe Changelog
Upgrade Stripe by the numbers
- 54,619 all-time installs (skills.sh)
- +2,435 installs in the week ending Aug 2, 2026 (Skillselion tracking)
- Ranked #2 of 1,106 Finance & Trading skills by installs in the Skillselion catalog
- Security screen: HIGH risk (skills.sh audit)
- Data as of Aug 3, 2026 (Skillselion catalog sync)
npx skills add https://github.com/stripe/ai --skill upgrade-stripeAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 54.6k |
|---|---|
| repo stars | ★ 1.7k |
| Security audit | 2 / 3 scanners passed |
| Last updated | July 31, 2026 |
| Repository | stripe/ai ↗ |
How do you upgrade Stripe API version safely?
Upgrade Stripe API versions and SDKs while managing breaking changes across different programming languages.
Who is it for?
Backend and full-stack developers maintaining production Stripe integrations facing a dated API version or SDK mismatch.
Skip if: Greenfield Stripe Checkout setup with no existing API version or teams only configuring Dashboard products.
When should I use this skill?
User asks to upgrade Stripe API version, stripe-node, Stripe.js, or mobile Stripe SDKs and avoid breaking changes.
What you get
Target API version plan, SDK version bumps, and breaking-change migration checklist
- API version migration plan
- SDK bump checklist
- Breaking-change remediation steps
By the numbers
- Latest documented Stripe API version: 2026-05-27.dahlia
- Covers server SDKs, Stripe.js, and mobile SDK upgrades
Files
The latest Stripe API version is 2026-06-24.dahlia - use this version when upgrading unless the user specifies a different target version.
Upgrading Stripe Versions
This guide covers upgrading Stripe API versions, server-side SDKs, Stripe.js, and mobile SDKs.
Understanding Stripe API Versioning
Stripe uses date-based API versions (e.g., 2026-06-24.dahlia, 2025-08-27.basil, 2024-12-18.acacia). Your account’s API version determines request/response behavior.
Types of Changes
Backward-Compatible Changes (don’t require code updates):
- New API resources
- New optional request parameters
- New properties in existing responses
- Changes to opaque string lengths (e.g., object IDs)
- New webhook event types
Breaking Changes (require code updates):
- Field renames or removals
- Behavioral modifications
- Removed endpoints or parameters
Review the API Changelog for all changes between versions.
Server-Side SDK Versioning
See SDK Version Management for details.
Dynamically-Typed Languages (Ruby, Python, PHP, Node.js)
These SDKs offer flexible version control:
Global Configuration:
import stripe
stripe.api_version = '2026-06-24.dahlia'Stripe.api_version = '2026-06-24.dahlia'const stripe = require('stripe')('sk_test_xxx', {
apiVersion: '2026-06-24.dahlia'
});Per-Request Override:
stripe.Customer.create(
email="customer@example.com",
stripe_version='2026-06-24.dahlia'
)Strongly-Typed Languages (Java, Go, .NET)
These use a fixed API version matching the SDK release date. Don’t set a different API version for strongly-typed languages because response objects might not match the strong types in the SDK. Instead, update the SDK to target a new API version.
Best Practice
Always specify the API version you’re integrating against in your code instead of relying on your account’s default API version:
// Good: Explicit version
const stripe = require('stripe')('sk_test_xxx', {
apiVersion: '2026-06-24.dahlia'
});
// Avoid: Relying on account default
const stripe = require('stripe')('sk_test_xxx');Stripe.js Versioning
See Stripe.js Versioning for details.
Stripe.js uses an evergreen model with major releases (Acacia, Basil, Clover, Dahlia) on a biannual basis.
Loading Versioned Stripe.js
Via Script Tag:
<script src="https://js.stripe.com/dahlia/stripe.js"></script>Via npm:
npm install @stripe/stripe-jsMajor npm versions correspond to specific Stripe.js versions.
API Version Pairing
Each Stripe.js version automatically pairs with its corresponding API version. For instance:
- Dahlia Stripe.js uses
2026-06-24.dahliaAPI - Acacia Stripe.js uses
2024-12-18.acaciaAPI
You can’t override this association.
Migrating from v3
1. Identify your current API version in code 2. Review the changelog for relevant changes 3. Consider gradually updating your API version before switching Stripe.js versions 4. Stripe continues supporting v3 indefinitely
Mobile SDK Versioning
See Mobile SDK Versioning for details.
iOS and Android SDKs
Both platforms follow semantic versioning (MAJOR.MINOR.PATCH):
- MAJOR: Breaking API changes
- MINOR: New functionality (backward-compatible)
- PATCH: Bug fixes (backward-compatible)
New features and fixes release only on the latest major version. Upgrade regularly to access improvements.
React Native SDK
Uses a different model (0.x.y schema):
- Minor version changes (x): Breaking changes AND new features
- Patch updates (y): Critical bug fixes only
Backend Compatibility
All mobile SDKs work with any Stripe API version you use on your backend unless documentation specifies otherwise.
Upgrade Checklist
1. Review the API Changelog for changes between your current and target versions 2. Check Upgrades Guide for migration guidance 3. Update server-side SDK package version (e.g., npm update stripe, pip install --upgrade stripe) 4. Update the apiVersion parameter in your Stripe client initialization 5. Test your integration against the new API version using the Stripe-Version header 6. Update webhook handlers to handle new event structures 7. Update Stripe.js script tag or npm package version if needed 8. Update mobile SDK versions in your package manager if needed 9. Store Stripe object IDs in databases that accommodate up to 255 characters (case-sensitive collation)
Testing API Version Changes
Use the Stripe-Version header to test your code against a new version without changing your default:
curl https://api.stripe.com/v1/customers \
-u sk_test_xxx: \
-H "Stripe-Version: 2026-06-24.dahlia"Or in code:
const stripe = require('stripe')('sk_test_xxx', {
apiVersion: '2026-06-24.dahlia' // Test with new version
});Important Notes
- Your webhook listener should handle unfamiliar event types gracefully
- Test webhooks with the new version structure before upgrading
- Breaking changes are tagged by affected product areas (Payments, Billing, Connect, etc.)
- Multiple API versions coexist simultaneously, enabling staged adoption
Related skills
Forks & variants (4)
Upgrade Stripe has 4 known copies in the catalog totaling 389 installs. They canonicalize to this original listing.
How it compares
Pick upgrade-stripe for versioned API and multi-SDK migration planning instead of initial Stripe Checkout integration guides.
FAQ
Which Stripe API version does upgrade-stripe recommend?
upgrade-stripe recommends using the latest documented Stripe API version, 2026-05-27.dahlia, unless the developer specifies a different target date-based version such as 2025-08-27.basil or 2024-12-18.acacia.
What SDKs does the upgrade-stripe skill cover?
upgrade-stripe covers upgrading Stripe API versions plus server-side SDKs, Stripe.js, and mobile Stripe SDKs, with guidance on backward-compatible additions versus breaking request and response changes.
Is Upgrade Stripe safe to install?
skills.sh reports 2 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.