# Adds the ability to update payment intent data on Checkout Sessions

## What’s new

You can pass [payment_intent_data](https://docs.stripe.com/api/checkout/sessions/update.md?api-version=2026-09-30.preview#update_checkout_session-payment_intent_data) when [updating a Checkout Session](https://docs.stripe.com/api/checkout/sessions/update.md?api-version=2026-09-30.preview) in [payment mode](https://docs.stripe.com/api/checkout/sessions/object.md?api-version=2026-09-30.preview#checkout_session_object-mode). This lets you update the PaymentIntent configuration, including `description`, `metadata`, `setup_future_usage`, `statement_descriptor`, and `statement_descriptor_suffix`, after creating a Checkout Session and before confirming the payment. The Checkout Session must use `ui_mode=elements` and be in an active state.

## Impact

If you use [Elements with Checkout Sessions](https://docs.stripe.com/payments/accept-a-payment.md?payment-ui=elements&api-integration=checkout) in payment mode, you can modify PaymentIntent parameters on the Checkout Session without needing to recreate the session. This is useful for updating statement descriptors based on order details, toggling future payment method saving, or attaching order metadata before confirmation.

## Changes

#### REST API

| Parameter | Change | Resources or endpoints |
| --- | --- | --- |
| `payment_intent_data` | Added | [Checkout.Session#update](/api/checkout/sessions/update?api-version=2026-09-30.preview#update_checkout_session) |

#### Ruby

| Parameter | Change | Resources or methods |
| --- | --- | --- |
| `payment_intent_data` | Added | [Checkout::SessionUpdateParams](/api/checkout/sessions/update?api-version=2026-09-30.preview#update_checkout_session) |

#### Python

| Parameter | Change | Resources or methods |
| --- | --- | --- |
| `payment_intent_data` | Added | [checkout.SessionModifyParams](/api/checkout/sessions/update?api-version=2026-09-30.preview#update_checkout_session) |

#### PHP

| Parameter | Change | Resources or methods |
| --- | --- | --- |
| `payment_intent_data` | Added | [Checkout\Session.update().$params](/api/checkout/sessions/update?api-version=2026-09-30.preview#update_checkout_session) |

#### Java

| Parameter | Change | Resources or methods |
| --- | --- | --- |
| `paymentIntentData` | Added | [checkout.SessionUpdateParams](/api/checkout/sessions/update?api-version=2026-09-30.preview#update_checkout_session) |

#### Node.js

| Parameter | Change | Resources or methods |
| --- | --- | --- |
| `payment_intent_data` | Added | [Checkout.SessionUpdateParams](/api/checkout/sessions/update?api-version=2026-09-30.preview#update_checkout_session) |

#### Go

| Parameter | Change | Resources or methods |
| --- | --- | --- |
| `PaymentIntentData` | Added | [CheckoutSessionParams](/api/checkout/sessions/update?api-version=2026-09-30.preview#update_checkout_session) |

#### .NET

| Parameter | Change | Resources or methods |
| --- | --- | --- |
| `PaymentIntentData` | Added | [Checkout.SessionUpdateOptions](/api/checkout/sessions/update?api-version=2026-09-30.preview#update_checkout_session) |

## Upgrade

#### REST API

1. [View your current API version](https://docs.stripe.com/workbench/guides.md#view-api-versions) in Workbench.
2. 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](https://docs.stripe.com/api-versions.md#how-versions-are-specified-in-requests) to include `Stripe-Version: 2026-09-30.preview`
3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md).
4. [Test your integration](https://docs.stripe.com/testing.md) against the new version.
5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md).

Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md).

#### Ruby

1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench.
2. Upgrade your Ruby SDK to the latest version.
3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md).
4. [Test your integration](https://docs.stripe.com/testing.md) against the new version.
5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md).
6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours.

Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md).

#### Python

1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench.
2. Upgrade your Python SDK to the latest version.
3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md).
4. [Test your integration](https://docs.stripe.com/testing.md) against the new version.
5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md).
6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours.

Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md).

#### PHP

1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench.
2. Upgrade your PHP SDK to the latest version.
3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md).
4. [Test your integration](https://docs.stripe.com/testing.md) against the new version.
5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md).
6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours.

Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md).

#### Java

1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench.
2. Upgrade your Java SDK to the latest version.
3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md).
4. [Test your integration](https://docs.stripe.com/testing.md) against the new version.
5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md).
6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours.

Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md).

#### Node.js

1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench.
2. Upgrade your Node SDK to the latest version.
3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md).
4. [Test your integration](https://docs.stripe.com/testing.md) against the new version.
5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md).
6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours.

Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md).

#### Go

1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench.
2. Upgrade your Go SDK to the latest version.
3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md).
4. [Test your integration](https://docs.stripe.com/testing.md) against the new version.
5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md).
6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours.

Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md).

#### .NET

1. [View your current API version](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-available-upgrade-in-workbench) in Workbench.
2. Upgrade your .NET SDK to the latest version.
3. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md).
4. [Test your integration](https://docs.stripe.com/testing.md) against the new version.
5. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md).
6. In Workbench, [perform the upgrade](https://docs.stripe.com/upgrades.md#perform-the-upgrade). You can [roll back the version](https://docs.stripe.com/upgrades.md#roll-back-your-api-version) for 72 hours.

Learn more about [Stripe API upgrades](https://docs.stripe.com/upgrades.md).

## Related changes

- [Adds page limit validation for dispute evidence](https://docs.stripe.com/changelog/endive/2026-09-30/page-limit-validation-for-dispute-evidence.md)
- [Removes the capture method parameter for PayPay payments](https://docs.stripe.com/changelog/endive/2026-09-30/removes-capture-method-parameter-for-paypay-payments.md)
- [Adds support for submitting evidence to appeal a dispute decision](https://docs.stripe.com/changelog/endive/2026-09-30/submit-evidence-to-appeal-dispute-decision.md)
- [Adds support for specifying card-on-file usage when saving and charging saved cards](https://docs.stripe.com/changelog/endive/2026-09-30/add-card-on-file-usage-indicators.md)
