Breaking changes
HTTP Accept headers for webhooks now specify JSON during Issuing authorizations Breaking changes
What’s new
Webhooks emitted for Issuing real-time authorizations now specify application/json in the request Accept header. This change improves the clarity of content negotiation, because real-time authorization webhooks require a JSON response from your integration.
Why is this a breaking change?
Your webhook handler might return an HTTP response code 406 if it doesn’t support JSON as a response format. These errors are visible in Workbench. If you use Issuing real-time authorizations, a response code other than 200 might cause your authorizations to decline.
Impact
Issuing real-time authorizations require JSON responses to issuing_authorization.request webhooks. Those webhooks’ Accept headers now specify application/json in order to align with that requirement.
Upgrade
- View your current API version in Workbench.
- If you use an SDK, upgrade to the corresponding SDK version for this API version.
- If you don’t use an SDK, update your API requests to include Stripe-Version: 2025-03-31. basil
- Upgrade the API version used for webhook endpoints .
- Test your integration against the new version.
- If you use Connect, test your Connect integration .
- In Workbench, perform the upgrade . You can roll back the version for 72 hours.
Learn more about Stripe API upgrades.
