Breaking changes
HTTP Accept headers for webhooks now specify JSON during Issuing authorisations Breaking changes
What’s new
Webhooks emitted for Issuing real-time authorisations now specify application/json in the request Accept header. This change improves the clarity of content negotiation, because real-time authorisation 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 authorisations, a response code other than 200 might cause your authorisations to decline.
Impact
Issuing real-time authorisations 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 .
Learn more about Stripe API upgrades.