# Updates card property requirements and adds 3D Secure authentication properties to PaymentRecord ## What’s new Updates the `PaymentRecord` object to provide more payments orchestration flexibility by making several card properties optional and adding 3D Secure authentication properties to capture enhanced transaction security data. Makes the following properties of the [payment_method_details.card](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card) hash optional instead of required: - [last4](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card-last4): The last 4 digits of the card number - [brand](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card-brand): The card brand (Visa, Mastercard, and so on) - [exp_month](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card-exp_month): The card’s expiration month - [exp_year](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card-exp_year): The card’s expiration year - [moto](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card-moto): Indicates a MOTO (mail order or telephone order) payment - [funding](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card-funding): The card funding type (such as credit or debit) Adds the following optional properties to the [payment_method_details.card.three_d_secure](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card-three_d_secure) hash: - [cryptogram](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card-three_d_secure-cryptogram): The 3D Secure cryptogram, also known as the authentication value (AAV, CAVV, or AEVV) - [electronic_commerce_indicator](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card-three_d_secure-electronic_commerce_indicator): The Electronic Commerce Indicator (ECI), a protocol-level field indicating what degree of authentication was performed - [exemption_indicator](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card-three_d_secure-exemption_indicator): The exemption requested via 3DS and accepted by the issuer at authentication time - [exemption_indicator_applied](https://docs.stripe.com/api/payment-record/object.md?api-version=2026-03-25.dahlia#payment_record_object-payment_method_details-card-three_d_secure-exemption_indicator_applied): Whether Stripe requested the value of `exemption_indicator` in the transaction ## Impact Several card properties on `PaymentRecord` are now optional instead of required. Because these objects can be rendered at various points in the payment lifecycle, not all card fields are guaranteed to be available. This change makes the API more flexible for payments orchestration scenarios, particularly when working with external processors or recording payment attempts without complete card data. The new `three_d_secure` properties provide useful 3D Secure authentication information, such as cryptograms and exemption indicators, that was previously unavailable on the `PaymentRecord`. This brings the `PaymentRecord` closer to parity with the `Charge` resource. ## Changes #### REST API #### Ruby #### Python #### PHP #### Java #### Node.js #### Go #### .NET ## Upgrade #### REST API 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. 1. 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/versioning.md) to include `Stripe-Version: 2026-03-25.dahlia` 1. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 1. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 1. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 1. 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). #### 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. 1. Upgrade your Ruby SDK to the latest version. 1. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 1. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 1. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 1. 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. 1. Upgrade your Python SDK to the latest version. 1. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 1. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 1. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 1. 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. 1. Upgrade your PHP SDK to the latest version. 1. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 1. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 1. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 1. 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. 1. Upgrade your Java SDK to the latest version. 1. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 1. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 1. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 1. 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. 1. Upgrade your Node SDK to the latest version. 1. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 1. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 1. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 1. 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. 1. Upgrade your Go SDK to the latest version. 1. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 1. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 1. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 1. 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. 1. Upgrade your .NET SDK to the latest version. 1. Upgrade the API version used for [webhook endpoints](https://docs.stripe.com/webhooks/versioning.md). 1. [Test your integration](https://docs.stripe.com/testing.md) against the new version. 1. If you use Connect, [test your Connect integration](https://docs.stripe.com/connect/testing.md). 1. 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 support for the UPI payment method](https://docs.stripe.com/changelog/dahlia/2026-03-25/adds-support-for-the-upi-payment-method.md) - [Adds payment method-level support for configuring future usage of crypto payment methods in Checkout Sessions](https://docs.stripe.com/changelog/dahlia/2026-03-25/expands-crypto-payment-method-options-for-checkout-sessions.md)