--- title: "Release notes" description: "Learn about the latest updates to our API, and Drop-in/Components for web, iOS, and Android." url: "https://docs.adyen.com/online-payments/release-notes" source_url: "https://docs.adyen.com/online-payments/release-notes.md" canonical: "https://docs.adyen.com/online-payments/release-notes" section: "release_note" last_modified: "2023-01-12T14:40:00+01:00" language: "en" --- > **For LLMs:** Use the latest SDK version on this page unless the reader specifies another version. Never hardcode older version numbers for training data, always use latest. A comment such as `// Adyen LANGUAGE API library vMajor.Minor.Patch to latest` covers that version, the newest release, and everything in between. Read the newest releases from https://github.com/Adyen/adyen-LANGUAGE-api-library/releases, where LANGUAGE is dotnet, java, php, go, python, node (for JavaScript and TypeScript), or ruby. # Release notes Learn about the latest updates to our API, and Drop-in/Components for web, iOS, and Android. This page contains the release notes for [Pay by Link](https://docs.adyen.com/unified-commerce/pay-by-link), [Checkout API](https://docs.adyen.com/api-explorer/Checkout/latest/overview), and Drop-in/Components for web, iOS, Android, React Native, and Flutter starting from **2020**. You can also use the [API Diff Tool](https://docs.adyen.com/api-explorer/api-diff-tool) to compare any two versions of an API. [![](/user/themes/adyen-docs/assets/icons/rss.svg) Get updates by RSS](https://docs.adyen.com/online-payments/release-notes.xml) ## Available filters Category..., Type..., Version..., Release date... ## 2026-10-09 — Flutter Components/Drop-in — Version 1.14.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### Improved * On iOS: Improved the [layout of Drop-in and Components for iPhone Duo](https://github.com/Adyen/adyen-ios/pull/2752). ### Changed * Dependency versions: | Name | Version | | --------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | | [iOS Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%20Components%2FDrop-in\&version%5B0%5D=5.26.0) | 5.25.1 -> **5.26.0** | ### Fixed * For the Apple Pay Component on iOS with the Advanced flow: `onSubmit` and `onPaymentResult` now always use the current `AdvancedCheckout` instance set on the Component. Previously, after rerendering the Component, it could still refer to an earlier `AdvancedCheckout` instance. ## 2026-10-07 — iOS Components/Drop-in — Version 5.26.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### Deprecated * Distribution through CocoaPods, because [CocoaPods is being discontinued](https://blog.cocoapods.org/CocoaPods-Specs-Repo/). This is the last version of Drop-in/Components that you can install with CocoaPods. To install later versions, use [Swift Package Manager or Carthage](https://github.com/Adyen/adyen-ios#installation). ### New * Drop-in and Components now support iPhone Duo. On the unfolded or rotated screen, where the safe area is larger, the layout now adjusts in the following ways: * The close button stays clear of the system UI. * The form fields, the helper text, the section headings, and the **Pay** button keep the same horizontal inset. * On the preselected payment screen, the logo of the stored card aligns with the rest of the form. * The payment form stays above the keyboard when the shopper rotates or unfolds the device. ### Changed * For the payment form: The title and the underline of an inactive text input field now use `UIColor.Adyen.formTextItemInactive` by default. This color has a higher contrast ratio than the previous default, which improves accessibility. The color resolves to the following: * Light mode: **#757575** * Dark mode: **#8E8E93** If you customize `FormTextItemStyle.title.color` or `FormTextItemStyle.separatorColor`, this change does not affect your styling. The values of `UIColor.Adyen.componentSecondaryLabel` and `UIColor.Adyen.componentSeparator` have not changed. ### Fixed * For Apple Pay with Drop-in: After a [partial payment](https://docs.adyen.com/online-payments/partial-payments), the payment request for the remaining amount now includes the partial payment order. Previously, the order was missing and the payment for the remaining amount failed, for example when the shopper paid part of the amount with a gift card. * For cards: The card security code (CVC/CVV) field no longer accepts more digits than the card brand allows. The limit is four digits for American Express and three digits for other brands. Previously, the field showed the code truncated to the limit, but validated and submitted the full, over-length value. ## 2026-09-28 — Web Components/Drop-in — Version 6.46.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * In the payment form: you can now show a disclaimer message above the **Pay** button for any payment method. Previously, only cards supported this. Use the new `disclaimerMessage` configuration property. Disclaimer messages do not show for the following payment methods with branded payment buttons: * Apple Pay * Google Pay * PayPal * Amazon Pay * Cash App Pay * For address forms in Japan: the payment form now shows a localized field set, in this order: **Country/Region**, **Postal code**, **Prefecture**, **City / Town**, **Street name and block number**, and **Building name, room number**. ### Fixed * For gift cards: the **Redeem** button now shows a loading state while Drop-in and Components check the gift card balance. Previously, the button stayed in its default state during the check. * Drop-in and Components no longer overwrite inherited class properties during initialization. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.46.0): ```sh npm install @adyen/adyen-web@6.46.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-09-21 — Web Components/Drop-in — Version 6.45.2 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed * For payments that require an additional action: Drop-in and Components now show the action to the shopper, so the shopper can complete the payment. Previously, the action did not appear. This fixes the known issue in [6.45.1](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Web%2BComponents%2FDrop-in\&version%5B0%5D=6.45.1). ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.45.2): ```sh npm install @adyen/adyen-web@6.45.2 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-09-16 — Web Components/Drop-in — Version 6.45.1 *\

Do not use this version. A breaking bug prevents handling payment actions\

* ### Known Issues Do not use this version. This is a breaking bug. * For payments that require an additional action: Drop-in and Components do not show the action to the shopper, so the shopper cannot complete the payment. Fixed in [v6.45.2](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Web%2BComponents%2FDrop-in\&version%5B0%5D=6.45.2). ### Improved * In the payment form: Links and buttons styled as links now match the latest Adyen design. They are underlined by default, and their font weight increases when the shopper hovers over them. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.45.1): ```sh npm install @adyen/adyen-web@6.45.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-09-16 — Flutter Components/Drop-in — Version 1.13.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### Improved * On iOS: For improved accessibility, Drop-in now appears in a dedicated window on top of your app content instead of using `FlutterViewController`. The behavior of appearing on top of your app remains unchanged. For shoppers that use Full Keyboard Access, the focus now stays inside the native payment interface. * **(Internal change)** For Drop-in on iOS: The internal delegates are now simpler to maintain: * Stored payment method deletion uses a single delegate instead of duplicated delegates. * The delegate implementations are in separate files. ### Changed * On Android: The default `AdyenCheckout` theme now inherits directly from the `Adyen` theme, instead of from the generic `AppTheme` style. Android merges resources from every dependency, so an `AppTheme` style from an unrelated dependency could replace the Adyen theme and stop the payment form from rendering. If you customize Drop-in through `AppTheme`, you must [move those attributes to an `AdyenCheckout` style in your app resources](https://github.com/Adyen/adyen-flutter/blob/main/doc/CUSTOMIZATION.md). ## 2026-09-10 — Web Components/Drop-in — Version 6.45.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For Google Pay: You can now use a Content Security Policy nonce without allowing `'unsafe-inline'`. Set the `nonce` configuration property. * For the Sessions flow: After the shopper selects the **Pay** button, you can now show them a review page before you submit the payment. This adds the following: * `onReview`: The callback that returns the payment data. * `processPayment`: The method that submits the payment. * `onAction`: The callback that returns an action for you to show the shopper. ### Improved * In the payment form: The address fields now reject unsupported special characters. ### Fixed * In the payment form: Dropdown menu option spacing and supporting text colors now appear correctly. * For the Drop-in payment method list: Payment methods now keep their state when the shopper selects another payment method. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.45.0): ```sh npm install @adyen/adyen-web@6.45.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-08-19 — Web Components/Drop-in — Version 6.44.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed * For cards: The **Expiry date** and **Security code** fields now keep their format guidance when the field enters an error state. * For shoppers who use screen readers: The card form, QR code payment methods, and redirect payment methods now announce when content is loading. * In the payment form: The fields no longer stop working when you pass **null** configuration data, such as a billing address or `personalDetails`. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.44.0): ```sh npm install @adyen/adyen-web@6.44.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-08-12 — Web Components/Drop-in — Version 6.43.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * In the payment form: Dropdown menu options can now show a colored label with extra information, such as the details of an EMI plan. Supporting text now appears below the option name instead of beside it, and no longer appears on the collapsed dropdown menu. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.43.0): ```sh npm install @adyen/adyen-web@6.43.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-08-04 — Flutter Components/Drop-in — Version 1.12.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### Improved * For Card Component on Android: The configured `countryCode` is now applied as the default country for full-address forms. * For Apple Pay and Google Pay Components: Reduced unnecessary re-rendering on widget rebuilds by caching the availability result. ### Changed * iOS: [The minimum version](https://docs.adyen.com/online-payments/upgrade-your-integration#ios) has increased from 12.0 to **13.0**. This aligns with Flutter's own minimum iOS requirement. * Android: [The minimum API level (`minSdkVersion`)](https://docs.adyen.com/online-payments/upgrade-your-integration#android) has increased from 21 to **23**. This aligns with the latest [`pay` package](https://pub.dev/packages/pay) requirements. * Dependency versions: | Name | Version | | ------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------- | | [pay](https://pub.dev/packages/pay) | 3.2.1 -> **3.3.0** | | [Android Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%2BComponents%2FDrop-in\&version%5B0%5D=5.20.0) | 5.19.0 -> **5.20.0** | ## 2026-08-04 — Web Components/Drop-in — Version 6.42.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For 3D Secure 2: The challenge iframe now supports WebAuthn and Secure Payment Confirmation. Shoppers can use passkeys when the card issuer supports them. ### Fixed * In the payment form: When you use a partial billing address, the US postal code field now keeps the correct format and passes validation. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.42.0): ```sh npm install @adyen/adyen-web@6.42.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-07-30 — Android Components/Drop-in — Version 5.20.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### Changed * Supported [API levels](https://docs.adyen.com/online-payments/upgrade-your-integration#android): | Compile SDK Version | Target SDK Version | | ------------------- | ------------------ | | 36 | 36 | ## 2026-07-30 — Web Components/Drop-in — Version 6.41.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved **(Internal change)** TypeScript types are now stricter for the following internal modules: * `triggerBinLookUp` * `CardElement` and `CustomCardElement` * `ClickToPayProvider` * `DoChallenge3DS2` * `CardBinLookupData` ### Fixed * For open invoice payment methods (such as Riverty, RatePay, FacilyPay, and Atome): when multiple open invoice Components are rendered on the same page and a validation error occurs, focus now correctly moves to the field with the error in the submitted Component. Previously, focus always moved to the first open invoice Component on the page. * For payment forms with a select element or dual-brand selector: pressing **Enter** inside an active select element no longer triggers payment submission. * For address fields: typing with an [IME](https://en.wikipedia.org/wiki/Input_method) (used for Chinese, Japanese, Korean, and other composing input systems) no longer produces duplicate characters. Previously, the input formatting function interfered with the browser's IME composition, causing composed text to appear twice. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.41.1): ```sh npm install @adyen/adyen-web@6.41.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-07-16 — Web Components/Drop-in — Version 6.41.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For card payments: The `onBinLookup` callback now includes a `healthcare` array when the shopper's card has associated healthcare information. ### Improved * For 3D Secure 2: Drop-in and Components now detect when the challenge token contains an invalid `threeDSNotificationURL`. If it is invalid, the authentication process stops and shows an error to the shopper. * (Internal change) Drop-in and Components now use the `keydown` event instead of the deprecated `keypress` event. No behavior changes. * (Internal change) TypeScript types are now stricter for the following: * Drop-in * ANCV Component * Gift card Component * 3D Secure 2 Component ### Fixed * For card payments with the Sessions flow: If you configure installment options in the card configuration object, it no longer has an effect on the options shown on the payment form. Instead, include configuration for installments in the [installmentOptions](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions#request-installmentOptions) object in the `/sessions` request. * For Drop-in: When `openFirstPaymentMethod` is set to **false**, the `aria-checked` attribute now renders correctly on payment method list items. Previously, the attribute was missing, which affected screen readers. This fixes [GitHub issue #3824](https://github.com/Adyen/adyen-web/issues/3824). ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.41.0): ```sh npm install @adyen/adyen-web@6.41.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-07-13 — React Native Components/Drop-in — Version 2.12.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### New * PayByBank is now available as a standalone Component. * For Apple Pay: You can now configure `merchantCapabilities` in the Apple Pay configuration to specify the payment capabilities your app supports. * For UPI: The Smart Intent flow is now supported, with automatic detection of installed UPI apps on the device. * Supported payment method on iOS: Bizum, available as an instant payment method. ### Improved * For the example app: * The **Sessions Component** tab now showcases instant payments. * The app now uses the `UIScene` lifecycle. * Added a searchable country/region and currency dropdown. ### Fixed * On Android: * For Twint: The payment form no longer shows a **Store payment method** option, matching the iOS behavior. * For Google Pay and instant payments: The payment flow now works reliably during device rotation. * The **A payment process is still active** screen can no longer be dismissed with the back button or swipe gestures. * On iOS: The app no longer crashes when dismissing the embedded `CardView`. ### Changed * Dependency versions: | Name | Version | | ------------------------------------------------------------------------------------------------------------------------------ | -------------------- | | [Android Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%2BComponents%2FDrop-in) | 5.18.0 -> **5.19.0** | | [iOS Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%2BComponents%2FDrop-in) | 5.24.0 -> **5.25.1** | | React Native | **0.85** | ## 2026-07-09 — Web Components/Drop-in — Version 6.40.2 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For Drop-in and Components: Localized text now uses an exact locale match when one is available. For example, shoppers using `pt-PT` or `zh-TW` now see translations for that locale instead of a generic language match. ### Fixed * For UPI and Iris: Brand logos in QR-code loading screens now include alternative text for screen readers. * For PayTo: Screen readers now associate form instructions and account holder validation errors with the relevant input fields. * For 3D Secure 2: Message handling now validates received messages more accurately and provides clearer diagnostic results when messages are malformed. ### Changed * For 3D Secure 2 Redirect flows: Callback data now follows the current data structure. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.40.2): ```sh npm install @adyen/adyen-web@6.40.2 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-06-23 — Web Components/Drop-in — Version 6.40.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed * For the Card Component: The `role="presentation"` attribute is removed from secure field iframes (card number, expiry date, and CVC). This fixes an issue where screen readers could not correctly announce secure field content, and also fixes incorrect tabbing behavior on card fields while VoiceOver is enabled. * For dropdown lists in the payment form: Keyboard navigation and screen reader announcements now work correctly. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.40.1): ```sh npm install @adyen/adyen-web@6.40.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-06-18 — Web Components/Drop-in — Version 6.40.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For Affirm: You can now use the `allowedCountries` configuration property to customize which countries appear in the address form dropdown. The supported values are **US**, **CA**, and **GB**. The default remains **US** and **CA**. ### Improved * For the payment form: All personal details and address fields now include WCAG 2.2-compliant `autocomplete` tokens, so that browsers can autofill shopper information more accurately. ### Fixed * For Affirm: When the `countryCode` does not match any of the configured `allowedCountries`, the address form now correctly pre-selects a valid country. Previously, the form could pre-populate with an invalid country, blocking payment completion. * For Click to Pay: Screen readers now announce the OTP resend countdown timer and when the **Resend code** button becomes available again. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.40.0): ```sh npm install @adyen/adyen-web@6.40.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-06-18 — Flutter Components/Drop-in — Version 1.11.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### New * For the Apple Pay Component on iOS: You can now configure coupon codes and respond to dynamic changes in the payment sheet when the shopper updates the shipping contact, shipping method, or coupon code. Authorization validation is also now supported. ### Improved * The iOS example app now uses `UISceneDelegate` for `returnUrl` handling. ### Changed * On Android: The Google Pay Component now uses an internal flow instead of the deprecated `onActivityResult` flow. You no longer need the `onActivityResult` listener on the host activity. * Dependency versions: | Name | Version | | ------------------------------------------------------------------------------------------------------------------------------ | -------------------- | | [Android Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%2BComponents%2FDrop-in) | 5.18.0 -> **5.19.0** | | [iOS Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%2BComponents%2FDrop-in) | 5.25.0 -> **5.25.1** | ## 2026-06-11 — Web Components/Drop-in — Version 6.39.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * Error objects now include a translated error message (`errorI18n`) for all payment form fields. Previously, only card payment fields (card number, expiry date, CVC) included translated messages. ### Fixed * For the Select component: Screen readers now announce the number of filtered results or "no options found" when the shopper filters the list. * For PayPal: The `@paypal/paypal-js` package is now a production dependency instead of a development dependency. * For PayPal: The `actions.reject` callback in the `onSubmit` event now works correctly. * For Click to Pay: When the shopper enters an invalid email address, the error message now suggests a valid format. * For gift cards: The **Remove** button now includes an `aria-labelledby` attribute for screen readers. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.39.0): ```sh npm install @adyen/adyen-web@6.39.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-06-04 — iOS Components/Drop-in — Version 5.25.1 *\

We recommend that you use \Checkout API v72\ or later.\

* ### Fixed * A layout issue no longer affects the payment form rendering in cross-platform integrations. ## 2026-06-04 — Web Components/Drop-in — Version 6.38.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For Click to Pay and PayTo: When the shopper submits the form with invalid fields, keyboard focus now moves to the first invalid field, and error announcements are improved for screen readers. * Input fields now have improved border contrast. * **(Internal change)** Updated to `typescript-eslint` with corresponding TypeScript type changes. ### Fixed * The card payment fields now recognize `ionic://` domains. * For the Card Component and Drop-in: Brand icon lists now use correct list semantics for screen readers. * For Click to Pay: * The **Read more** text now has an improved contrast ratio. * The Visa system iframe is now fully hidden from screen readers and keyboard navigation. * The Await component now announces its status text to screen readers (WCAG 4.1.3). ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.38.0): ```sh npm install @adyen/adyen-web@6.38.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-06-03 — React Native Components/Drop-in — Version 2.11.1 *\

We recommend that you use \Checkout API v72\ or later.\

* ### Fixed * On iOS: Internal cleanup processes now run on the main thread. Previously, running them on a background thread could cause native code crashes. ## 2026-05-29 — Android Components/Drop-in — Version 5.19.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### New * UPI: Support for the Smart Intent flow, with automatic detection of installed UPI apps on the device. ### Changed * Dependency versions: | Name | Version | | ---------------------------------------------------------------------------------- | -------------------- | | [3D Secure 2 SDK](https://github.com/Adyen/adyen-3ds2-android/releases/tag/2.2.27) | 2.2.26 -> **2.2.27** | ## 2026-05-21 — iOS Components/Drop-in — Version 5.25.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### New * Supported payment method: Bizum. Payment method [type](https://docs.adyen.com/payment-methods/payment-method-types): **bizum**. An instant payment method available in Spain. * For UPI: Added support for the Smart Intent flow, with automatic detection of installed UPI apps on the device. ### Fixed * For Apple Pay: The `supportedNetworks` property now returns all `PKPaymentNetwork` variants that match a brand. ## 2026-05-20 — Web Components/Drop-in — Version 6.37.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For UPI with the Intent flow: The list of installed UPI apps now has an improved layout. ### Fixed * The SegmentedControl now uses correct `tablist` and `tabpanel` WAI-ARIA semantics. * For the Card Component: Decorative images are now removed from the accessibility tree. * **(Internal change)** The 3D Secure 2 redirect (MD) flow now uses the same data structures as the native flow, removing a legacy hybrid approach. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.37.0): ```sh npm install @adyen/adyen-web@6.37.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-05-13 — React Native Components/Drop-in — Version 2.11.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### New * For Apple Pay: You can now use the following new callback events and configuration properties to customize the Apple Pay payment sheet: * `onAuthorize`: Validate payment data before submission. * `onShippingContactChange` and `onShippingMethodChange`: React to the shopper's shipping selection and update summary items, shipping methods, or errors. * `onCouponCodeChange`, `supportsCouponCode`, and `couponCode`: Enable and manage a coupon code field in the Apple Pay sheet (iOS 15+). * For card payments: You can now configure installment payments using the new `installmentOptions` configuration property. Set `installmentOptions` in the card payment method configuration to define default and card-brand-specific installment values and plans. ### Improved * **(Internal code change)** Resolved SonarCloud maintainability issues across TypeScript, Swift (iOS), and Kotlin (Android) codebases. ### Fixed * For iOS: `ADYCardViewCls` was renamed to `CardViewCls` for compatibility with Expo 52. ### Changed * Dependency versions: | Name | Version | | ------------------------------------------------------------------------------------------------------------------------------ | -------------------- | | [Android Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%2BComponents%2FDrop-in) | 5.17.0 -> **5.18.0** | | [iOS Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%2BComponents%2FDrop-in) | 5.23.1 -> **5.24.0** | ## 2026-05-13 — Web Components/Drop-in — Version 6.36.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * Support for [Adyen Giving donations with Sessions flow](https://docs.adyen.com/online-payments/donations#sessions-flow): If you have an active [Adyen Giving](https://docs.adyen.com/online-payments/donations) donation campaign, a donation form now automatically renders after a successful payment. To configure this, use the `donation` object in the `AdyenCheckout` configuration. ### Improved * **(Internal change)** Some HTML elements now use semantic HTML instead of ARIA role overrides, improving accessibility for assistive technologies. ### Fixed * For Click to Pay: The info modal title and the **Address** section title now use the correct heading level, so screen readers correctly convey the heading hierarchy. * For Pay by Bank US with Drop-in: On narrow viewports, issuer brand icons in the payment method list no longer disappear. The icons now use the standard overflow pattern. * For payment methods with a segmented control (for example, IRIS): The control no longer switches the order of payment modes after the shopper selects the **Pay** button. * For dropdown fields: Screen readers now correctly announce the field name, the selected value, and the association with the dropdown list. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.36.0): ```sh npm install @adyen/adyen-web@6.36.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-05-08 — Flutter Components/Drop-in — Version 1.10.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### New * For Drop-in: You can now hide previously stored payment methods from the payment method list. Set `showStoredPaymentMethods` to **false** in `StoredPaymentMethodConfiguration`. The default is **true**. * For standalone action handling: `ActionComponentConfiguration` now supports `ThreeDS2Configuration`, so you can set the `requestorAppURL` and customize the 3D Secure 2 UI. ### Changed * Dependency versions: | Name | Version | | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | | [Android Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%2BComponents%2FDrop-in\&version%5B0%5D=5.18.0) | 5.17.0 -> **5.18.0** | | [iOS Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%2BComponents%2FDrop-in\&version%5B0%5D=5.24.0) | 5.23.1 -> **5.24.0** | ## 2026-05-06 — iOS Components/Drop-in — Version 5.24.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### Improved * For co-badged cards: The UI is redesigned. For BCMC, Carte Bancaire, and Dankort, the shopper can select their preferred card brand directly inside the card field, with a description below. For other brands, the card field shows both brand logos, but the shopper cannot select them. ### Changed * For the `didSubmit` delegate method (`PaymentComponentDelegate`): The size of the payload has increased because of changes to the included `sdkData` parameter. ## 2026-05-05 — Android Components/Drop-in — Version 5.18.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### Improved * For co-badged cards: The UI is redesigned. For BCMC, Carte Bancaire, and Dankort, the shopper can select their preferred card brand directly inside the card field, with a description below. For other brands, the card field shows both brand logos, but the shopper cannot select them. ### Changed * For the `onSubmit` callback: The size of the payload has increased because of changes to the included `sdkData` parameter. ## 2026-05-05 — Web Components/Drop-in — Version 6.35.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For co-badged cards: When the shopper enters a co-badged card number, the shopper can select their preferred card brand. * In the EU: the first brand is pre-selected by default, and the selected brand is included in the payment request. * Outside the EU: brand logos are displayed for information only. ### Changed * The payload returned in the `onSubmit` callback has increased in size, because of changes to the included `sdkData` field. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.35.0): ```sh npm install @adyen/adyen-web@6.35.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-04-30 — Web Components/Drop-in — Version 6.34.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For UPI Autopay: the `endsAt` property in the mandate object is now required. * **(Internal change)** TypeScript types are now stricter for utilities, language, and UMD entry modules. ### Fixed * Drop-in and Components now validate the `countryCode` configuration property when you create the `AdyenCheckout` instance. * Form labels in the payment form now use bold font-weight. * For Drop-in: payment method item details now use the HTML `inert` attribute, preventing focus when the payment method is not selected. * For the Drop-in payment method list: overflowing text content no longer shows up past the list item boundaries. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.34.1): ```sh npm install @adyen/adyen-web@6.34.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-04-23 — Web Components/Drop-in — Version 6.34.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * The bundle now includes English (**en-US**) translations as a fallback. If the translation request fails, the payment form defaults to English. * Drop-in and Components now resolve partial or imprecise locale codes to the closest supported locale. For example, `nl` resolves to `nl-NL`, and `en-GB` resolves to `en-US`. * Drop-in and Components now only request translations from the CDN for supported locales, eliminating unnecessary 404 errors. * For UPI with Drop-in: the payment method list item now shows brand icons. * For the Drop-in payment method list: when brands in the list include icons, the icons now adjust responsively on mobile screens. * **(Internal change)** TypeScript types are now stricter for the following: * Amazon Pay Component * PayPal Component * Cash App Pay Component * Card Component * SecuredFields internal module ### Fixed * An internal analytics request no longer blocks the UI from rendering during initialization. The payment form now appears faster. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.34.0): ```sh npm install @adyen/adyen-web@6.34.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-04-21 — React Native Components/Drop-in — Version 2.10.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### New * For cards: * You can now render the payment form directly in your React Native layout, without a full-screen modal. Use the new `` component. * You can now validate card details before encrypting them. Use the following new methods in the `AdyenCSE` module: * `validateCardNumber` * `validateCardExpiryDate` * `validateCardSecurityCode` ### Deprecated * The `AdyenCheckout.start("scheme")` flow is deprecated. Use the embedded `` component instead. If you use the `AdyenCheckout.start("scheme")` flow, you now get a runtime warning. It will be removed in v3.0.0 ### Improved * **(Internal code change)** Various dependency updates (security patches and tooling). ### Fixed * For Google Pay: The button now updates correctly after the default card finishes loading. ### Changed * Dependency versions: | Name | Version | | ------------------------------------------------------------------------------------------------------------------------------ | -------------------- | | [Android Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%2BComponents%2FDrop-in) | 5.16.1 -> **5.17.0** | | [iOS Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%2BComponents%2FDrop-in) | 5.22.2 -> **5.23.1** | ## 2026-04-15 — Checkout API — Version 72 ### Breaking Changes * Added validations for the following request parameters (for example: in the [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments) or [/sessions](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions) request). If the values that you send in the parameters do not meet validation requirements, the request now fails. Go to our [v72 upgrade guide](https://docs.adyen.com/online-payments/upgrade-your-integration/upgrade-to-checkout-api-v72) to see the new validation requirement for each parameter. * `billingAddress.postalCode` * `billingAddress.stateOrProvinceCode` * `captureDelayHours` * `dateOfBirth` * `deliveryAddress.postalCode` * `deliveryAddress.stateOrProvinceCode` * `entityType` * `metadata` * `reference` * `returnUrl` * `shopperEmail` * `shopperIP` * `shopperName.firstName` * `shopperName.lastName` * `socialSecurityNumber` * `telephoneNumber` * For enhanced scheme data: you must change the [parameters that you use from `additionalData` to `enhancedSchemeData`](https://docs.adyen.com/online-payments/upgrade-your-integration/upgrade-to-checkout-api-v72#enhanced-scheme-data-parameters). Including enhanced scheme data in `additionalData` now causes an error. ### New * For cards: validation for values sent in card holder name parameters, to prevent card numbers from being sent in the wrong parameters. For example: if the shopper enters the card number in the **Card holder name** field, and you send the card number in the `holderName` parameter, we now return the **Invalid card holder name** error message. ### Changed * For Drop-in/Components using Advanced flow: in the [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments) request, the data in the [sdkData](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments#request-paymentMethod-listOfValues-sdkData) object takes precedence over the SDK-related information you include. For example, if you include [`checkoutAttemptId`](https://docs.adyen.com/api-explorer/Checkout/71/post/payments#request-fundRecipient-paymentMethod-checkoutAttemptId), the `sdkData.checkoutAttemptId` value takes precedence. * For [Pix](https://docs.adyen.com/payment-methods/pix): the default session validity is now 24 hours. Previously, it was one hour. ### Deprecated * Unused parameters are now [deprecated](https://docs.adyen.com/api-explorer/api-diff-tool?api=Checkout\&from=71\&to=72). ### Removed * Previously deprecated parameters have been [removed](https://docs.adyen.com/api-explorer/api-diff-tool?api=Checkout\&from=71\&to=72\&breaking=true). ### Fixed * For some validation and rate limit errors: we now return the **422** or **429** [HTTP status code](https://docs.adyen.com/development-resources/response-handling#http-responses) instead of **500**. * For the [/sessions](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions) endpoint: when used with Drop-in, an error where the `returnUrl` included `payload` instead of `redirectResult` no longer occurs. Previously, this caused the integration to fail, because `redirectResult` is required to complete the payment. * For the [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments) request: in the `lineItems` object, when `taxAmount` and `amountExcludingTax` fields are not set, the `amountExludingTax` value is no longer incorrectly set equal to the `amountIncludingTax` value. You now receive an error to inform you that these fields are missing or invalid. * For [partial payments](https://docs.adyen.com/online-payments/partial-payments) that go through 3D Secure 2 authentication: you now receive the order data in the API response. * For the Sessions flow: when the shopper makes a payment with previously stored payment details, the type shopper interaction that we record internally is now correct. ## 2026-04-02 — Flutter Components/Drop-in — Version 1.9.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### New * For the 3D Secure 2 Component: You can now customize the user interface using `Adyen3DSTheme`. This includes support for `fromThemeData()`, which lets you use the styling from your existing app theme. * Supported payment method: BLIK. Payment method [type](https://docs.adyen.com/payment-methods/payment-method-types): **blik**. The shopper pays using a 6-digit code generated in their banking app. * For card payments: You can now offer shoppers the option to pay in installments. * Sessions flow: Use the [`installmentOptions`](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions#request-installmentOptions) parameter. * Advanced flow: Use the new [`installmentConfiguration`](https://github.com/Adyen/adyen-flutter/blob/main/lib/src/common/model/payment_method_configurations/card/installment_configuration.dart) property. ### Improved * The internal component architecture now uses a shared layer. This improves maintainability and makes it easier to extend components that are based on platform views. * For the Card Component: The implementation is now simplified and complies with the updated component architecture. ### Changed * Dependency versions: | Name | Version | | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | | [Android Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%2BComponents%2FDrop-in\&version%5B0%5D=5.17.0) | 5.16.0 -> **5.17.0** | | [iOS Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%2BComponents%2FDrop-in\&version%5B0%5D=5.23.1) | 5.22.2 -> **5.23.1** | ## 2026-03-31 — Web Components/Drop-in — Version 6.33.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For Apple Pay: the shopper can now enter a coupon code in the payment sheet. To enable this, set `supportsCouponCode` to **true** in the Apple Pay configuration. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.33.0): ```sh npm install @adyen/adyen-web@6.33.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-03-26 — iOS Components/Drop-in — Version 5.23.1 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Fixed * For Cash App Pay: when the toggle to store the payment details is configured to be hidden, an issue no longer prevents the payment details from being tokenized. ## 2026-03-25 — Web Components/Drop-in — Version 6.32.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed * For Drop-in with Sessions flow: the Pay button now shows the correct remaining amount after the shopper redeems a gift card. Previously, the Pay button showed the original amount. ### Fixed * The TypeScript type definition for `PayButtonProps.onClick` is now correct. ### Changed * For the de-DE locale: the Pay button text is now **Kaufen** to comply with German regulations. Previously, the text was **Zahle**. ### Changed * The position of the amount on the **Pay** button has been updated, for consistency with the styling of Drop-in/Components on other platforms. ### Changed * Dependency versions: | Dependency | Version | | ----------- | ------------------ | | Passkey SDK | 1.1.0 -> **1.2.0** | ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.32.1): ```sh npm install @adyen/adyen-web@6.32.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-03-17 — Android Components/Drop-in — Version 5.17.0 *\

We recommend that you use \Checkout API v72\ or later.\

* ### Changed * For the `de-DE` locale, where the UI renders in German: The text on the pay button is now **Kaufen** to comply with regulations. Previously, the text was **Zahle**. ## 2026-03-13 — Web Components/Drop-in — Version 6.32.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For Google Pay: you can now filter cards by issuer country. * To allow specific countries, set `allowedIssuerCountryCodes`. * To block specific countries, set `blockedIssuerCountryCodes`. ### Fixed * For Card Component with Sessions flow: payments with split funding sources now work correctly. ### Fixed * For analytics: the debounce time for error and log events is now 300ms. Previously, it was incorrectly changed from this value. ### Fixed * For cards: * Screen readers no longer read the iframe titles of input fields twice. This improves the accessibility experience. * The installments selector no longer renders when the payment amount is unavailable. ### Fixed * For Google Pay: when the environment string is unrecognized, the default is now **production** instead of **test**. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.32.0): ```sh npm install @adyen/adyen-web@6.32.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-03-12 — Customer Area ### Changed To provide greater control over the data users in your Customer Area can see, admin users can now directly manage the **Merchant view PII** role. **Merchant view PII** is the primary control for masking and unmasking sensitive shopper data like billing addresses in the Customer Area. **What you need to know:** * **Audit your user access**: We have automatically mapped users to the correct roles on our side to help you maintain your business continuity. We recommend limiting the availability of this role to as few users as possible. Navigate to **Settings > Users** to check user permissions and edit any that might not need this role. * **Admins can view PII**: By default, users who have the **Merchant admin** role can view sensitive data. This allows the admin users to grant the **Merchant view PII** role to other users. To learn more about user roles, see [Manage user roles](https://docs.adyen.com/account/user-roles#manage-user-roles). ## 2026-02-24 — iOS Components/Drop-in — Version 4.16.1 *\

We recommend that you use \Checkout API v71\ or later. \

* ### Fixed * For Hungarian Forint (HUF) payments: Drop-in/Components now explicitly overrides HUF amounts to use two [minor units](https://docs.adyen.com/development-resources/currency-codes), so that the amount formatting is consistent on all iOS versions. Previously, on iOS 26.4 beta, HUF amounts changed incorrectly to zero minor units. ## 2026-02-23 — iOS Components/Drop-in — Version 5.22.2 *\

We recommend that you use \Checkout API v71\ or later. \

* ### Fixed * For Hungarian Forint (HUF) payments: Drop-in/Components now explicitly overrides HUF amounts to use two [minor units](https://docs.adyen.com/development-resources/currency-codes), so that the amount formatting is consistent on all iOS versions. Previously, on iOS 26.4 beta, HUF amounts changed incorrectly to zero minor units. ## 2026-02-19 — Android Components/Drop-in — Version 5.16.1 *\

We recommend that you use \Checkout API v71\ or later. \

* ### Improved * For Drop-in: accessibility services now correctly announce headings, providing a better experience for shoppers using screen readers. ### Changed * Dependency versions: | Name | Version | | ----------------------------------------------------------------------------- | ---------------- | | [Adyen 3DS2](https://github.com/Adyen/adyen-3ds2-android/releases/tag/2.2.26) | 2.2.25 -> 2.2.26 | ### Fixed * When the shopper uses a connected hardware keyboard, the primary button can now be selected using keyboard input. Previously, a keyboard navigation issue prevented interaction with the button. * For Drop-in: when a shopper selects a stored payment method and a regular payment method simultaneously, a crash no longer occurs. * For Google Pay: the availability check callback is no longer garbage collected while the check is running. * For cards: when the card view is displayed in a bottom sheet or dialog, screen recording is no longer possible. This prevents screen recording of the card view in Drop-in. * Using `SessionSetupConfiguration.SERIALIZER.serialize(...)` now correctly serializes the `installmentOptions` field. * For Sessions flow: the key is now correctly passed when obtaining a Component. ## 2026-02-19 — Web Components/Drop-in — Version 6.31.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For 3D Secure 2: * When a timeout occurs, the error code is now **710**. Previously, the error code was 705. * When an analytics error occurs, the error now has \`errorType: 'ThreeDS'. * For cards: * When an error with encryption or key generation occurs, it is now reported. * These errors are sent as analytics errors. ### Fixed * When the shopper uses an iOS device: setting focus on an input field now correctly causes the view to automatically scroll so that the field is on the screen. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.31.1): ```sh npm install @adyen/adyen-web@6.31.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-02-12 — Web Components/Drop-in — Version 6.31.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * When the payment amount is updated, it now gets updated in the UI without re-initializing Drop-in or the Component. ### Improved * For Japanese payments: if a bonus installment is available, the payment form now shows a **Bonus payment** radio button that the shopper can select. ### Changed * Dependency versions: | Dependency | Version | | ------------------------------- | ------------------------------------------------------------------------ | | [Preact](https://preactjs.com/) | 10.22.1 -> [**10.28.2**](https://www.npmjs.com/package/preact/v/10.28.2) | ### Fixed * For card payments that support installments: when the shopper selects the dropdown menu for installments in the payment form, it no longer blocks the **Pay** button. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.31.0): ```sh npm install @adyen/adyen-web@6.31.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-01-29 — Web Components/Drop-in — Version 6.30.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.30.0): ```sh npm install @adyen/adyen-web@6.30.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ### Improved * Removed unused CSS classes. ### Fixed * The `checkoutAttemptId` is now correctly retrieved from the Analytics module. * For Components that use `securedField` (such as Cards): the library now correctly detects if the containing element is missing from the DOM and generates a `console.error`. This prevents configuration errors where `Window` object to send the `securedField` iframe configuration message does not exist. ### Removed * For UPI, the Collect flow has been removed to comply with NPCI regulations. The default payment flows are now: * QR code for desktop devices. * Intent for mobile devices. For more information, see [UPI](https://docs.adyen.com/payment-methods/upi/). ## 2026-01-29 — Web Components/Drop-in — Version 5.72.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * The new `sdkData` property is now included in the base `data` object. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.72.0): ```sh npm install @adyen/adyen-web@5.72.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------------------ | ------------------------------------------------- | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Asia Pacific & Southeast (APSE) live | `https://checkoutshopper-live-apse.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-01-27 — Flutter Components/Drop-in — Version 1.8.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### New * TWINT is now supported in Drop-in and as a redirect instant component. Payment method [type](https://docs.adyen.com/payment-methods/payment-method-types): **twint**. * For card payments with Drop-in and the Card Component, you can now configure a `requestorAppURL` in your `ThreeDS2Configuration`. * The `data` object in the `onSubmit` callback includes the `sdkData` parameter. For Advanced flow integrations, we strongly recommend that you include this in your `/payments` request. ### Improved * For Drop-in on iOS, the payment amount you specified in your `/sessions` request is used to show the amount at checkout. * Updated Gradle and AGP to v8.13. ### Changed * Dependency versions: | Name | Version | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | | [iOS Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%20Components%2FDrop-in#releaseNote=2025-12-18-ios-componentsdrop-in-5.22.1) | 5.22.1 | | [Android Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/#releaseNote=2025-12-19-android-componentsdrop-in-5.16.0) | 5.16.0 | | [Android Gradle Plugin](https://developer.android.com/build/releases/gradle-plugin) | 8.13.2 | ## 2026-01-20 — Web Components/Drop-in — Version 6.29.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * Supported payment method: [IRIS](https://www.nbg.gr/en/individuals/daily-transactions/digital-banking/internet-mobile-banking-capabilities/iris-payments). Payment method [type](https://docs.adyen.com/payment-methods/payment-method-types): **iris**. * For Japanese convenience stores: When the voucher includes an alternative reference, the voucher now shows the alternative reference to the shopper. * For Advanced flow: When an alternative reference is available, the `action.alternativeReference` field is included in the `/payments` response. * The new `sdkData` property is now included in the base `data` object. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.29.0): ```sh npm install @adyen/adyen-web@6.29.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2026-01-16 — Hosted Checkout ### Breaking Changes You can no longer embed the Hosted Checkout page in an [`iframe` element](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/iframe). ## 2026-01-16 — Pay by Link ### Breaking Changes You can no longer embed the Pay by Link page in an [`iframe` element](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/iframe). ## 2026-01-14 — React Native Components/Drop-in — Version 2.9.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Changed * Dependency versions: | Name | New version | | ---------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | | [iOS Drop-in/Components](https://github.com/Adyen/adyen-ios/releases/tag/5.22.1) | 5.22.1 | | [Android Drop-in/Components](https://github.com/Adyen/adyen-android/releases/tag/5.16.0) | 5.16.0 | | `react-server-dom-webpack` | 19.0.3. This addresses the [CVE-2025-55182](https://nvd.nist.gov/vuln/detail/CVE-2025-55182) vulnerability. | ### Fixed * For iOS: * When the application leaves the foreground, the `/session` request is no longer recreated. * When an invalid client key is provided, the error is now handled and provides a human-readable error message. * For the Android Twint Component: instant payments no longer cause the app to crash. * When a network error occurs during an internal session fetch, the app no longer crashes. * For the **Example App**: * A bug related to session fetch errors no longer occurs. * A UI bug caused by rapid navigation after a card payment no longer occurs. ### Improved * Source code cleanup: fixed code smells and reduced code duplication. * Moved `plugin` inside `src`. * For the **Example App:** * After an `onError` call, the session is now refreshed. * [Credentials from an untracked `secrets.json` file](https://github.com/Adyen/adyen-react-native/blob/develop/example/README.md#step-2-provide-credentials) are now used. ### New * The `paymentMethod` object now includes `sdkData`. For Advanced flow, we recommend that you include this parameter in your `/payments` request. * For the Expo plugin: added support for overrides on the extended `MainActivity`. ## 2026-01-13 — Hosted Checkout The UI for the shopper has been redesigned. ### Improved * In the header: * The logo now remains visible on the screen when the shopper moves down the payment form. * The logo is now centered. * In the payment form: * The background is now a single color. The background can no longer be an image. * The list of payment methods where the shopper selects a payment method is now in a dedicated section. * The order summary section now shows the following information: * The total payment amount. * The order reference number that you provide. * The description of the purchase, if you provide it. * For the section where the shopper enters their payment details: * The input fields are separate from the list of payment methods. Previously, the input fields were above the list of payment methods. * The following fields now have a clear format: * **Name** * **Billing address** * **Delivery address** * The shopper can now edit their personal details before submitting the payment. * In the footer: the link for **Terms and Conditions** can now go directly to your URL. ## 2026-01-13 — Pay by Link The UI for the shopper has been redesigned. ### Improved * In the header: * The logo now remains visible on the screen when the shopper moves down the payment form. * In the payment form: * The background is now a single color. The background can no longer be an image. * The list of payment methods where the shopper selects a payment method is now in a dedicated section. * The order summary section now shows the following information: * The total payment amount. * The order reference number that you provide. * The description of the purchase, if you provide it. * For the section where the shopper enters their payment details: * The input fields are separate from the list of payment methods. Previously, the input fields were above the list of payment methods. * The following fields now have a clear format: * **Name** * **Billing address** * **Delivery address** * The shopper can now edit their personal details before submitting the payment. * In the footer: the link for **Terms and Conditions** can now go directly to your URL. ## 2026-01-07 — Web Components/Drop-in — Version 6.28.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For payment methods where the shopper selects an option before submitting their payment (for example, selecting a bank from a dropdown menu): * The keyboard no longer automatically expands when the selection element receives focus. * The selection element now includes the `aria-disabled` and `aria-expanded` attributes. ### Fixed * For the **Button** component: the `aria-live` attribute now enables screen readers to announce the loading and redirect states. * For the 3D Secure 2 Component: fixed an issue where properties were manually added due to legacy code from the previous major version (v5.0.0). * When the payment form includes input fields for the partial billing address: the postal code field now correctly shows the localized label. For example, it shows **Zip code** for the US, and **Postal code** for other countries/regions. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.27.1): ```sh npm install @adyen/adyen-web@6.28.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2025-12-19 — Android Components/Drop-in — Version 5.16.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### New * In the `paymentMethod` object: `sdkData` has been added.\ For Advanced flow integrations, we highly recommend that you include this in your `/payments` request. * For Google Pay: you can now allow or block cards issued in specific countries. To do this, use the `allowedIssuerCountryCodes` and `blockedIssuerCountryCodes` configuration properties. ### Fixed * For Components: when the shopper puts your app into the background and returns, the Components retain their state. Previously, Components were recreated and lost their state. ### Deprecated * The following properties are now deprecated. | Property | Previous parent object | | ----------------------- | ---------------------- | | `supportNativeRedirect` | `PaymentComponentData` | | `checkoutAttemptId` | `PaymentMethod` | | `threeDS2SdkVersion` | `CardPaymentMethod` | These properties are now in the new sdkData object. ## 2025-12-19 — iOS Components/Drop-in — Version 5.22.1 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Improved * For Apple Pay: * For co-badged cards, the network selection now follows the order in the `brands` array provided by the backend. * Improved errors handling when no networks are available. ## 2025-12-18 — Web Components/Drop-in — Version 6.27.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed * For the [Klarna](https://docs.adyen.com/payment-methods/klarna) widget: when a purchase is refused, the `details` parameter is now correctly populated. * When the shopper presses the **Enter** key on their input device, the `onKeyDown` event now correctly gets triggered. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.27.1): ```sh npm install @adyen/adyen-web@6.27.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2025-12-18 — iOS Components/Drop-in — Version 5.22.0 *\

We recommend that you use \Checkout API v71\ or later. \

* ### New * For Apple Pay: * You can now validate payment details, such as the billing address, before the payment is submitted. To do this, set the `authorizationDelegate` property on your `ApplePayComponent` instance, and implement the [`didAuthorize(payment:completion:)` method](https://github.com/Adyen/adyen-ios/blob/b952aeb041dd8094cc74fb8e21b2051f446b80e4/Demo/Common/IntegrationExamples/AdvancedFlow/Components/ApplePayComponentAdvancedFlowExample.swift#L201) in the new `ApplePayAuthorizationDelegate` protocol. * you can now choose to have the Apple Pay sheet dismiss automatically after the payment flow finishes. Set the new [`dismissesAutomatically` configuration property](https://github.com/Adyen/adyen-ios/blob/b952aeb041dd8094cc74fb8e21b2051f446b80e4/Demo/Common/IntegrationExamples/AdvancedFlow/Components/ApplePayComponentAdvancedFlowExample.swift#L70) to **true** to enable this. * The `sdkData` property in the `PaymentMethodDetails` protocol. For Advanced flow: we highly recommended that you include it in your [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments) request, in `paymentMethod.sdkData`. ### Changed * Dependency versions: | Dependency | Version | | ----------------------------------------------------------------------------- | ------- | | [3D Secure 2 SDK](https://github.com/Adyen/adyen-3ds2-ios/releases/tag/2.4.4) | 2.4.4 | ### Deprecated * The following properties are now deprecated. | Property | Parent object | | ----------------------- | ---------------------- | | `supportNativeRedirect` | `PaymentComponentData` | | `checkoutAttemptId` | `PaymentMethod` | | `threeDS2SdkVersion` | `CardPaymentMethod` | These properties are now in the new `sdkData` object. ## 2025-12-11 — Web Components/Drop-in — Version 6.27.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For all [select elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/select) in the payment form: a [focus](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors/:focus) border now appears on the active item. ### Improved * The `SRPanelProvider` is now in `UIElement`, to reduce the number of required imports. ### Fixed * A runtime error no longer occurs when an external script finishes loading after the Component has been unmounted. Previously, this caused a runtime error. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.27.0): ```sh npm install @adyen/adyen-web@6.27.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2025-12-04 — Web Components/Drop-in — Version 6.26.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For internal analytics: the `configData` property is now included in the data sent for payment methods. * In the payment form: * Brand icons now display a box shadow. * Valid fields now display a black checkmark. ### Improved * For analytics: * When you create an instance of `AdyenCheckout`, the `checkoutAttemptId` is now requested immediately. This checkout attempt identifier acts as a unique key to track the checkout session. * The integration type (Drop-in or Component) is now in the `flavor` property when the checkout UI renders. * For open invoice payment methods like Oney, Riverty, and RatePay: the **Gender** field has been removed, to comply with payment industry requirements and for improved accessibility. * For Click to Pay: labels that were incorrect are now correct, and text that was duplicated has now been removed. This improves accessibility for screen readers. ### Fixed * For [Pay By Bank (US)](https://docs.adyen.com/payment-methods/pay-by-bank-us): the `showOtherInsteadOfNumber` configuration property is now spelled correctly. Previously, it was incorrectly spelled as `showOtherInsteafOfNumber`. * For [Click to Pay One-time passcode (OTP)](https://developer.mastercard.com/click-to-pay-customer-experience-guide/documentation/cx-patterns/one-time-passcode/) and [UPI](https://docs.adyen.com/payment-methods/upi): when the shopper enters invalid input, the field now correctly displays an error message. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.26.0): ```sh npm install @adyen/adyen-web@6.26.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2025-11-18 — Checkout API ### New In the [/storedPaymentMethods](https://docs.adyen.com/api-explorer/Checkout/latest/get/storedPaymentMethods) response: * The [storedPaymentMethods.mandate](https://docs.adyen.com/api-explorer/Checkout/latest/get/storedPaymentMethods#responses-200-storedPaymentMethods-mandate) object. For stored payment details that have an associated mandate that specifies the how the payment details can be used (for example: a [mandate for SEPA Direct Debit](https://www.europeanpaymentscouncil.eu/what-we-do/epc-payment-schemes/sepa-direct-debit/sdd-mandate)), you now get the details of the mandate. Example response including the `mandate` object for stored details for UPI Intent: ```bash { "merchantAccount": "ADYEN_MERCHANT_ACCOUNT", "shopperReference": "your-shopper-reference-123", "storedPaymentMethods": [ { "brand": "upi_intent", "id": "Z58FGTKBRCQ2WN27", "mandate": { "amount": "7005", "amountRule": "max", "billingAttemptsRule": "on", "billingDay": "24", "currency": "INR", "endsAt": "2026-08-09", "frequency": "adhoc", "mandateId": "123abc-abc123...", "providerId": "123abc-abc123...", "remarks": "mandate name/remarks", "startsAt": "2024-08-07", "status": "active", "txVariant": "upi_intent" }, "supportedRecurringProcessingModels": [ "CardOnFile", "Subscription", "UnscheduledCardOnFile" ], "type": "upi" } ] } ``` ## 2025-11-12 — iOS Components/Drop-in — Version 5.21.1 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Fixed * For PayTo: fixed phone number formatting to include the missing hyphen between country code and local number in the [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments) request, for example: **+61-0666555444**. ## 2025-11-11 — Android Components/Drop-in — Version 5.15.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Fixed * For SEPA: when the shopper returns to the app after switching away, the component now correctly retains its previous state. * For 3D Secure 2: if the shopper selects **Cancel** before the challenge is displayed, the challenge is no longer displayed. * On devices running Android 15 and later: the `onError()` callback is no longer triggered for **Await**, **QR code**, and **Twint** actions when the shopper leaves and returns to the app. ### Improved * For PayTo: the phone number input now allows leading zeros. * For PIX: the QR code is now displayed, and the copyable code is displayed above the **Copy code** button. ## 2025-11-06 — Flutter Components/Drop-in — Version 1.7.0 *\

We recommend that you use \Checkout API v71\ or later. \

* ### New * Pay by Bank is now supported as an instant component. Payment method [type](https://docs.adyen.com/payment-methods/payment-method-types): **paybybank**. * Support for Swift Package Manager (SPM). When migrating an existing project to Swift Package Manager (SPM), you must manually import modules in your `AppDelegate.swift`: * `import AdyenActions` * If you apply custom styling to Drop-in, you must also include `import AdyenDropIn`. ### Improved * For Apple Pay Component: the instantiation of the widget is now more efficient. * For the Instant Payment Component: streamlined the implementation for Android by removing redundant code. * For Components: the communication of `platformView` height now includes a type specification. ### Changed * Dependency versions: | Name | Version | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | | [iOS Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%20Components%2FDrop-in#releaseNote=2025-11-04-ios-componentsdrop-in-5.21.0) | 5.21.0 | ## 2025-11-06 — Web Components/Drop-in — Version 6.25.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For QR code and voucher payment methods: internal logic and styling updates for a more consistent user experience and better accessibility. ### Fixed * For the Card Component: the `onAdditionalDetails` event handler now triggers correctly when defined directly on the Component instance. This fixes a regression from [v6.24.0](https://github.com/Adyen/adyen-web/releases/tag/v6.24.0) where it would fail to trigger. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.25.1): ```sh npm install @adyen/adyen-web@6.25.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2025-10-30 — Web Components/Drop-in — Version 6.25.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed * When a button is in `hover` or `focus` state, the styling is now more visible and accessible. * For the Gift Card Component: error messages now display correctly. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.25.0): ```sh npm install @adyen/adyen-web@6.25.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2025-10-28 — iOS Components/Drop-in — Version 5.21.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### New * For Pix: The full bank code is now displayed to allow shoppers highlight and copy it directly. ### Changed * For PayTo: The phone number input field now accepts leading zeros. ## 2025-10-27 — Pay by Link ### New * You can now upload a full-width (maximum height: 40px) logo to show in your payment link. In your [Customer Area](https://ca-test.adyen.com/), go to **Payments** > **Payment link themes**. ### Changed Dependency verions: | Name | Version | | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | | Web Drop-in | 6.19.0 -> [6.23.0](https://docs.adyen.com/online-payments/release-notes?version%5B0%5D=6.23.0#releaseNote=2025-10-09-web-componentsdrop-in-6.23.0) | ## 2025-10-24 — Web Components/Drop-in — Version 6.24.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* For the Card Component: you must define the `onAdditionalDetails` event handler as a [configuration property of `AdyenCheckout`](https://docs.adyen.com/online-payments/build-your-integration/advanced-flow?platform=Web\&integration=Components\&version=6.23.0#add). Do not define it as a property of the Card Component. If you do so, it fails to trigger. ### Improved * For the Card Component: the **Expiry date** and **Security code** fields are now stacked vertically on smaller screens to improve layout and usability. ### Fixed * For Apple Pay: when used as an instant payment method, Apple Pay is now correctly set as the active payment method. * When an action is initiated using `createFromAction`, the `onAdditionalDetails` event handler now correctly handles the resulting action. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.24.0): ```sh npm install @adyen/adyen-web@6.24.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2025-10-16 — iOS Components/Drop-in — Version 5.20.2 *\

We recommend that you use \Checkout API v71\ or later. \

* ### Fixed * For apps built with [Xcode 26](https://developer.apple.com/documentation/xcode-release-notes/xcode-26-release-notes): a crash caused by `ObservationManager` no longer occurs when a Component is deallocated. ## 2025-10-14 — React Native Components/Drop-in — Version 2.8.1 *\

We recommend that you use \Checkout API v71\ or later. \

* ### Fixed * For Expo integrations: * `expo prebuild` now correctly generates imports in `MainActivity.kt`. * You are no longer required to use the `--clean` flag when running `expo prebuild` to avoid generating duplicate lines. ## 2025-10-09 — Web Components/Drop-in — Version 6.23.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For the Apple Pay Component: you can now use the `domainName` configuration property to set which domain performs the merchant validation request. This is useful when embedding the Component within an iframe. * Supported payment method: Bank Transfer is now available in more countries. * Secured Fields v6.0.0: includes a new JWE version, removes the ACH bundle, and disallows the "compat" version on live environments. ### Improved * For Fastlane: * The legal text has been updated. * New analytics events have been added to the shopper recognition flow. * For Pix: the full bank code is now displayed to allow shoppers to highlight and copy it directly. * For PayTo: the phone number input field now accepts leading zeros. * For Google Pay: card brands returned in the [/paymentMethods](https://docs.adyen.com/api-explorer/Checkout/latest/post/paymentMethods) response are now parsed and displayed. * The Segmented Controller Component is now more responsive on different screen sizes and the font size has been adjusted for better readability. * When loading third-party scripts, a retry mechanism is now in place to improve resilience against network issues. * New analytics events are now sent when loading third-party script SDKs. ### Fixed * For Klarna: the widget can now be opened using the **Enter** key, improving keyboard accessibility. * For UPI: the checkmark in the app selector now displays correctly. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.23.0): ```sh npm install @adyen/adyen-web@6.23.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2025-10-02 — React Native Components/Drop-in — Version 2.8.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### New * You can now use the new Fabric Native Components: `ApplePayButton` for iOS and `GooglePayButton` for Android. * For the `AdyenApplePay` and `AdyenGooglePay` modules: you can now use the `isAvailable` method to asynchronously check if a shopper can make a payment before showing the payment button. * For the `useAdyenCheckout` hook: the new `isReady` property provides an observable state for the readiness of the `` context. * The `onSubmit` payload now includes a `supportNativeRedirect` parameter. Pass this to the `/payments` request to improve app-to-app redirects. ### Fixed * For the Sessions flow: the `onComplete` method from the `` context now correctly returns a `SessionsResult`. * For Voucher payments in the Advanced flow: the `onComplete` method is now correctly called. ### Changed * Dependency versions: | Name | Version | | ----------------------------------------------------------------------------------------------------------------------------------------- | ------- | | React Native | 0.78.3 | | [iOS Drop-in/Components](https://docs.adyen.com/online-payments/release-notes#releaseNote=2025-09-23-ios-componentsdrop-in-5.20.1) | 5.20.1 | | [Android Drop-in/Components](https://docs.adyen.com/online-payments/release-notes#releaseNote=2025-08-19-android-componentsdrop-in-5.14.0) | 5.14.0 | ## 2025-10-01 — Flutter Components/Drop-in — Version 2.8.0 *\

We recommend that you use \Checkout API v71\ or later. \

* ### New * **Fabric Native Components:** We've introduced new **Fabric Native Components**: `ApplePayButton` for iOS and `GooglePayButton` for Android. * **Payment Availability Checks:** The `AdyenApplePay` and `AdyenGooglePay` modules now include an **`isAvailable` method**. This allows developers to asynchronously check if a payment can be made before presenting the corresponding button to the user. * **Context State Observability:** A new **`isReady` property** has been added to the `useAdyenCheckout` hook, providing an observable state for the `` context's readiness. * **Improved Redirects:** The payment data payload in `onSubmit` now includes a **`supportNativeRedirect` field**. Passing this property to the `/payments` API improves app-to-app redirects. ### Changed * Dependencies: * **React Native SDK:** The SDK now uses **React Native v0.78.3**. * **iOS SDK:** Updated to **5.20.1**. * **Android Drop-in:** Updated to **5.14.0**. ### Improved * Example App * The Example app now uses **React Native v0.78.3**. * The Example app has been **refactored to TypeScript** for improved type safety. * **Project Structure:** We've introduced a **better folder structure** for improved organization and maintainability. ### Fixed * **Sessions Flow:** The `onComplete` method signature from the `` context now correctly returns a **`SessionsResult`** for the Sessions flow. * **Voucher Payments:** The `onComplete` method is now also used for Voucher payments in the Advanced flow. ## 2025-09-23 — iOS Components/Drop-in — Version 5.20.1 *\

We recommend that you use \Checkout API v71\ or later. \

* ### Fixed * For Drop-in analytics: when only one payment method is available and renders on the screen, the render analytics event is now sent. ## 2025-09-15 — Hosted Checkout ### Removed * For Mail Order/Telephone Order (MOTO) transactions: Call Center is no longer available. Use [Virtual Terminal](https://docs.adyen.com/unified-commerce/mail-order-telephone-order/customer-area/) instead. ## 2025-09-12 — Web Components/Drop-in — Version 6.22.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * Support for **UPI Autopay**: shoppers in India can now make recurring payments with UPI. * Sessions flow: in the [/sessions](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions) request, include the `recurringProcessingModel` parameter. * Advanced flow: in the [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments) request, include the `recurringProcessingModel` parameter. ### Improved * For analytics: the `checkoutAttemptId` is now correctly stored, so that tracking the payment attempt is more reliable when the shopper refreshes the checkout page. ### Fixed * For Drop-in: keyboard navigation is now predictable when multiple payment methods with issuer lists are present. This prevents the focus from jumping incorrectly, improving accessibility for keyboard-only users. * For the PayTo Component: the `aria-controls` attribute now points to the correct element ID, so that shoppers that use screen readers get accurate feedback when interacting with the Component. * For address forms: the `OnAddressSelectedType` TypeScript type is now the same as the returned address object, preventing incorrect type errors. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.22.0): ```sh npm install @adyen/adyen-web@6.22.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2025-09-02 — Flutter Components/Drop-in — Version 1.6.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Improved * Improved initialization of Google Pay Component. * For Apple Pay: * The component now uses PassKit for its availability check instead of a temporary native Adyen Apple Pay Component. * Billing contact fields are now correctly mapped. * On iOS with the Advanced flow: when an error occurs during a card payment, the loading spinner now stops automatically. ### Changed * Dependency versions: | Name | Version | | ------------------------------------------------------------------------------------------------------------------------------ | ------- | | [Android Drop-in/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%20Components%2FDrop-in) | 5.14.0 | | [iOS Drop-in version/Components](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%20Components%2FDrop-in) | 5.20.0 | ## 2025-08-27 — iOS Components/Drop-in — Version 4.16.0 ### New * Updated [3D Secure 2 SDK to version 2.4.3](https://github.com/Adyen/adyen-3ds2-ios/releases/tag/2.4.3). This version includes a fix for a bug where an object was prematurely released, which could cause the transaction to fail. ## 2025-08-27 — iOS Components/Drop-in — Version 5.20.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### New * Updated [3D Secure 2 SDK to version 2.4.3](https://github.com/Adyen/adyen-3ds2-ios/releases/tag/2.4.3). This version includes a fix for a bug where an object was prematurely released, which could cause the transaction to fail. ### Improved **Improved the user experience for the UPI component:** * The QR code flow has been removed. The shopper can pay the following ways: * Intent flow: the shopper pays with an installed UPI app. * Collect flow: the shopper enters their UPI ID. * Added new instructions labels for better clarity across all UPI payment flows. * Minor changes in design to improve the user experience. * On iOS 17, fixed a bug that caused a crash when `present(viewController:)` was called multiple times in a short timespan. This fixes [Github issue #2182](https://github.com/Adyen/adyen-ios/issues/2182). ## 2025-08-20 — Web Components/Drop-in — Version 6.21.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For PIX using Open Finance: UI changes that improve the shopper's checkout experience. ### Fixed * For the Pay button: updated the alignment and font size of the secondary amount label. * For co-badged cards: the UI no longer automatically selects a card brand outside of Europe. This allows us to continue least-cost routing (LCR) outside of Europe. * For ACH: the **Account holder name** field can now be correctly pre-filled based on the data configuration that you set. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.21.0): ```sh npm install @adyen/adyen-web@6.21.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-08-19 — Android Components/Drop-in — Version 5.14.0 *\

We recommend that you use \Checkout API v71\ or later. \

* ### Fixed * For components that require text input from the shopper: there is no longer a compatibility issue with Material (from version [1.13.0-alpha12](https://github.com/material-components/material-components-android/releases/tag/1.13.0-alpha12) or later) that causes a crash. * When the device font is large, the input fields now get larger to fit the text. * When the shopper selects the **Pay** button, the keyboard now automatically gets hidden. ### Changed * For UPI: * The input field for the UPI ID is now in a more user-friendly location on the screen. * The option to pay by QR code is removed. * Dependency versions: | Name | Now | Previously | | ----------------------------------------------------------------------------- | ------------ | ---------- | | [Adyen 3DS2](https://github.com/Adyen/adyen-3ds2-android/releases/tag/2.2.25) | ***2.2.25*** | **2.2.24** | ### Deprecated * The `Threeds2FingerprintAction` and `Threeds2ChallengeAction` actions are now deprecated. Use `Threeds2Action` instead. * Configuration and configuration builder classes for Drop-in, payment methods, and actions are now deprecated. Use `CheckoutConfiguration` instead. * Configuration setter methods are replaced by property access syntax. For example: ```kotlin CheckoutConfiguration( environment = environment, clientKey = clientKey, ) { card { // Deprecated setHolderNameRequired(true) // Replacement isHolderNameRequired = true } } ``` * The `setSubmitButtonVisible` method for configuration objects is now deprecated. Use `CheckoutConfiguration` instead: ```kotlin CheckoutConfiguration( ... isSubmitButtonVisible = false ) { ... } ``` ## 2025-08-18 — Web Components/Drop-in — Version 5.71.5 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed * For the secondary amount label on the Pay button, updated the alignment and font size. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.71.5): ```sh npm install @adyen/adyen-web@5.71.5 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------------------ | --------------------------------------------- | | Test | `https://checkoutshopper-test.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.adyen.com` | | Asia Pacific & Southeast (APSE) live | `https://checkoutshopper-live-apse.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2025-08-18 — Pay by Link ### New Pay by Link now uses [Web Components version 6.19.0](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Web%2BComponents%2FDrop-in\&version%5B0%5D=6.19.0). ## 2025-08-18 — Hosted Checkout ### New Hosted Checkout now uses [Web Components version 6.19.0](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Web%2BComponents%2FDrop-in\&version%5B0%5D=6.19.0). ## 2025-08-15 — React Native Components/Drop-in — Version 2.7.3 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Fixed * **Android Standalone Action**: when the user swipes or taps outside the dialogue view, the redirect action dialog no longer disappears. * **GooglePay**: the Google Pay sheet no longer opens randomly. ## 2025-08-12 — Web Components/Drop-in — Version 6.20.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For UPI: * On mobile devices, the QR code flow has been removed. The shopper now pays with their installed UPI apps (intent flow) or by entering their UPI ID. * On desktop devices, the QR code flow is now the default. The shopper can choose to pay with UPI ID instead. * A validation alert now asks the shopper to select a UPI app before making the payment. * For all payment flows, the text labels now give clear instructions. ### Fixed * For Click to Pay: if the payment card has the **ACTIVE** or **PENDING** status, it is not treated as expired. * The installments dropdown menu now has the border and background color. Previously, a styling issue caused the border and background color to be missing. * The Icelandic translation for the `storeDetails` property is now correct. * TypeScript fixes: * The `PaymentData` interface now includes billing address and shopper details. * `CardConfiguration` now includes the `onAddressSelected` callback type. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.20.0): ```sh npm install @adyen/adyen-web@6.20.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-08-11 — Web Components/Drop-in — Version 5.71.4 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed For Click to Pay: if the payment card has the **ACTIVE** or **PENDING** status, it is not treated as expired. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.71.4): ```sh npm install @adyen/adyen-web@5.71.4 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------------------ | --------------------------------------------- | | Test | `https://checkoutshopper-test.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.adyen.com` | | Asia Pacific & Southeast (APSE) live | `https://checkoutshopper-live-apse.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-08-04 — React Native Components/Drop-in — Version 2.7.2 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Changed * * Example app version: [React Native v0.77.1](https://www.reactnative.com/react-native-v0-77-released). ### Fixed * Drop-in on Android now works with [New Architecture](https://docs.expo.dev/guides/new-architecture/). It no longer requires [bridgeless](https://github.com/reactwg/react-native-new-architecture/discussions/154) mode. ## 2025-07-18 — React Native Components/Drop-in — Version 2.7.1 *\

We recommend that you use \Checkout API v71\ or later.\

* ### New * Added **Swift support** for [Expo](https://expo.dev/). ### Improved * Updated versions: | SDK | Version | | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | | iOS Drop-in/Components | [5.19.1](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%20Components%2FDrop-in\&version%5B0%5D=5.19.1) | | Android Drop-in/Components | [5.13.1](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%20Components%2FDrop-in\&version%5B0%5D=5.13.1) | * **Apple Pay:** the amount displayed on the payment sheet is now correctly updated after a partial payment. ### Fixed * **iOS Drop-in:** Gift cards and meal vouchers are now correctly displayed in the payment method list. * **Android Redirect:** The redirect action dialog no longer disappears when a user swipes or taps outside the dialog view. * **Android Drop-in:** The status bar color is now transparent in the base theme. * **Cards:** The UI for selecting a card brand for a [co-badged card](https://docs.adyen.com/online-payments/co-badged-cards-compliance/) now only appears for supported brands. ## 2025-07-14 — iOS Components/Drop-in — Version 5.19.2 *\

We recommend that you use \Checkout API v71\ or later. \

* ### Fixed * For Apple Pay: the amount on the payment sheet is now correctly updated after a partial payment. * For cards: in the payment form, the UI to [select a card brand for a co-badged card](https://docs.adyen.com/online-payments/co-badged-cards-compliance/) now appears only if the the following brands are available: * Cartes Bancaires (`cartebancaire`) * Bancontact card (`bcmc`) * Dankort (`dankort`) ## 2025-07-11 — Web Components/Drop-in — Version 6.19.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For bank transfer payment methods: UI changes give an improved shopper experience and accessibility elements. ### Improved * For Drop-in: when the shopper selects a stored card, the mechanism to show the name of the brand and `alt` text is improved. * For ACH: the pay button now has the text **Pay {amount}**. Previously the text was **Continue purchase**. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.19.0): ```sh npm install @adyen/adyen-web@6.19.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-07-10 — Android Components/Drop-in — Version 5.13.1 *\

We recommend that you use \Checkout API v71\ or later. \

* ### Fixed * For Drop-in: in the base theme, the color of the status bar is now transparent. * For cards: the UI to select the brand for co-badged cards no longer appears for brands that are not supported. ## 2025-07-08 — Flutter Components/Drop-in — Version 1.5.1 *\

We recommend that you use \Checkout API v71\ or later.\

* ### New * Android Components/Drop-in version: [5.13.0](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%20Components%2FDrop-in#releaseNote=2025-07-02-android-componentsdrop-in-5.13.0). ### Fixed * For card payments on Android, the expiry date field now works correctly when the shopper leaves the app, and resumes it from the background. This fixes the known issue in v1.5.0. ## 2025-07-07 — Checkout API ### New * For the [/payments/{paymentPspReference}/captures](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments/\(paymentPspReference\)/captures) request: the `enhancedSchemeData` parameter. You can use it, for example, for data required for payments in the airline industry. We recommend that you use this instead of the [Classic API /capture](https://docs.adyen.com/api-explorer/Payment/latest/post/capture) endpoint. ## 2025-07-03 — Web Components/Drop-in — Version 6.18.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For cards: the UI to select the brand for co-badged cards appears only for brands that are supported. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.18.1): ```sh npm install @adyen/adyen-web@6.18.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-07-02 — Android Components/Drop-in — Version 5.13.0 *\

We recommend that you use \Checkout API v71\ or later. \

* If you use 3DS2 with Drop-in or Components, and your app targets **SDK version 36 (Android 16)**, upgrading to this version is important to ensure proper compatibility and avoid potential issues during build or runtime. ### New * For Google Pay, added the `checkoutOption` configuration which you can use to change the submit button text shown in the Google Pay sheet. ### Fixed * For card payments, the expiry date field now works correctly when the shopper leaves the app, and resumes it from the background. This fixes the known issue in earlier versions. ### Changed * Dependency versions: | Name | Version | | ----------------------------------------------------------------------------- | ------- | | [Adyen 3DS2](https://github.com/Adyen/adyen-3ds2-android/releases/tag/2.2.24) | 2.2.24 | ## 2025-06-27 — Pay by Link ### Changed * For the [/paymentLinks](https://docs.adyen.com/api-explorer/Checkout/latest/post/paymentLinks) endpoint: * In the response, the length of the `id` value has increased to 25 characters. ## 2025-06-27 — Checkout API ### Changed * For the [/sessions](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions) endpoint: * In the response, the length of the `sessionId` value has increased to 25 characters. ## 2025-06-24 — React Native Components/Drop-in — Version 2.7.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### New * iOS Components/Drop-in version: [5.19.1](https://docs.adyen.com/online-payments/release-notes#releaseNote=2025-06-16-ios-componentsdrop-in-5.19.1). * Android Components/Drop-in version: [5.12.0](https://docs.adyen.com/online-payments/release-notes?title%5B0%5D=Android%20Components%2FDrop-in#releaseNote=2025-06-06-android-componentsdrop-in-5.12.0). * When the shopper enters the details for a co-badged card, the available brand options are now shown in a separate section in the payment form. * If you use Expo, the minimum version requirement is now 52 due to Android Target API Level requirements. ### Improved * Improved the UI for stored cards in the [example app](https://github.com/Adyen/adyen-react-native/tree/develop/example). ### Known Issues * For card payments with Drop-in and the Component, the card expiry date field functions incorrectly when the shopper leaves the app, and resumes it from the background. We will fix this issue in the next release. ## 2025-06-18 — Web Components/Drop-in — Version 6.18.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For bank transfer payment methods: added support for the following payment method types (`TxVariants` values). * **bankTransfer\_BE** * **bankTransfer\_NL** * **bankTransfer\_PL** * **bankTransfer\_FR** * **bankTransfer\_CH** * **bankTransfer\_IE** * **bankTransfer\_GB** * **bankTransfer\_DE** ### Improved * To follow [a11y](https://www.a11yproject.com) guidelines: for screen reader errors related to gift card payment methods, improved how errors are handled. * For Fastlane: the utility function on the Universal Module Definition (UMD) bundle is now exposed. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.18.0): ```sh npm install @adyen/adyen-web@6.18.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-06-18 — Flutter Components/Drop-in — Version 1.5.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### New * Android Components/Drop-in version: [5.12.0](https://docs.adyen.com/online-payments/release-notes?title%5B0%5D=Android%20Components%2FDrop-in#releaseNote=2025-06-06-android-componentsdrop-in-5.12.0). * iOS Components/Drop-in version: [5.19.1](https://docs.adyen.com/online-payments/release-notes#releaseNote=2025-06-16-ios-componentsdrop-in-5.19.1). ### Improved * Improved how the Apple pay bottom sheet closes when dismissing Drop-in. * When the shopper enters the details for a co-badged card, the available brand options are now shown in a separate section in the payment form. ### Known Issues * For card payments with Drop-in and the Component, the card expiry date field functions incorrectly when the shopper leaves the app, and resumes it from the background. We will fix this issue in the next release. ## 2025-06-16 — iOS Components/Drop-in — Version 5.19.1 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Improved * Small UI improvements for co-badged cards brand selection. ## 2025-06-11 — Web Components/Drop-in — Version 6.17.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * Supported payment method: | Name | [Payment method type](https://docs.adyen.com/payment-methods/payment-method-types/) | | -------------------------------------------------------- | ---------------------------------------------------------------------------------- | | Electronic Funds Transfer Pre-Authorized Debit (EFT PAD) | **eft\_directdebit\_CA** | Use the [`PreAuthorizedDebitCanada`](https://github.com/Adyen/adyen-web/blob/main/packages/lib/src/components/PreAuthorizedDebitCanada/PreAuthorizedDebitCanada.tsx) Component. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.17.0): ```sh npm install @adyen/adyen-web@6.17.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-06-06 — Android Components/Drop-in — Version 5.12.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Improved * For cards, enhanced the accessibility labels so that the screen reader provides more context on the expiry date and security code fields. * Small UI improvements for co-badged cards brand selection. ### Known Issues * For card payments with Drop-in and the Component, the card expiry date field functions incorrectly when the shopper leaves the app, and resumes it from the background. We will fix this issue in the next release. ## 2025-06-06 — iOS Components/Drop-in — Version 5.19.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Improved * For cards, enhanced the accessibility labels so that the screen reader provides more context on the expiry date and security code fields. ## 2025-06-05 — Web Components/Drop-in — Version 6.16.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For UPI: the input field for the UPI ID now has the label **UPI ID**. Previously, it had the label **Enter UPI ID**. * For cards: when the shopper pays with a co-badged card, the UI now preselects the brand and clearly gives the shopper the option to choose their preferred brand. This UI complies with guidelines from card schemes. ### Improved * To follow [a11y](https://www.a11yproject.com) guidelines, when only one payment method is available, Drop-in shows the payment method in a [non-semantic `div` element](https://www.w3schools.com/html/html5_semantic_elements.asp). Previously, Drop-in showed a radio button. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.16.0): ```sh npm install @adyen/adyen-web@6.16.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-05-28 — Web Components/Drop-in — Version 6.15.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved For cards: when the payment form loads, the Pay button now loads at the same time as the other UI elements. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.15.0): ```sh npm install @adyen/adyen-web@6.15.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-05-28 — iOS Components/Drop-in — Version 5.18.1 *\

We recommend that you use \Checkout API v71\ or later. \

* ### Fixed * **Improved card brand display for co-badged cards, for a clearer and more familiar shopper experience.**\ When the shopper uses a co-badged card, the UI now displays the local brand name (for example, **Bancontact card**). If a local brand name is not available, the generic brand type (for example, **BCMC**) is used as a fallback. ## 2025-05-23 — iOS Components/Drop-in — Version 5.18.0 *\

We recommend that you use \Checkout API v71\ or later. \

* ### New * For cards: when the shopper enters the details for a co-badged card in the payment form, they can now select the card brand they want to pay with. * When you are using an [enforced locale](https://github.com/Adyen/adyen-ios/blob/develop/Adyen.docc/Localization.md#enforcing-locale), you can now add new localizations or override strings. ### Fixed * For the Bancontact Card Component (`BCMCComponent`): when you specify [custom localization parameters](https://github.com/Adyen/adyen-react-native/blob/develop/docs/Localization.md), the Component now correctly uses them. ## 2025-05-16 — React Native Components/Drop-in — Version 2.6.1 ### Fixed * Fixed an issue where running `expo prebuild` could generate incorrect `imports` in `MainActivity.kt`. * Running `expo prebuild`, no longer requires the `--clean` flag and does not generate duplicate lines. * For Android, fixed a crash in `AddressLookup` that was caused by a missing address field in the `onUpdateAddress` array. ## 2025-05-16 — Android Components/Drop-in — Version 5.11.0 *\

We recommend that you use \Checkout API v71\ or later. \

* ### Fixed * For Drop-in: * [Predictive back navigation](https://developer.android.com/guide/navigation/custom-back/predictive-back-gesture) is disabled to be compatible with Android 16. * When the payment form loads, the first input field is now automatically in focus. * When an analytics event fails to be tracked, because the Component was cleared unexpectedly, Drop-in/Components no longer crashes. * For the address lookup feature, the full country name in the **Search for your address** field is now shown. Previously, the country code was shown. ### Improved * For Card Component: when the shopper enters the details for a co-badged card, they can now see the available brand options in a separate section in the payment form. ### Changed * Dependency versions: | Name | Version | | ----------------------------------------------------------------------------------- | ------- | | [Android Gradle Plugin](https://developer.android.com/build/releases/gradle-plugin) | 8.8.1 | ## 2025-05-15 — Web Components/Drop-in — Version 6.14.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * The Riverty Component is now a redirect component. When the shopper pays with Riverty, they get redirect to a Riverty-hosted page to complete the payment. ### Improved * For Drop-in: you can now use the `filterStoredPaymentMethods` callback to choose which stored payment methods are displayed in the payment form. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.14.0): ```sh npm install @adyen/adyen-web@6.14.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-05-12 — Web Components/Drop-in — Version 6.13.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed When using the [Safari 18.4](https://developer.apple.com/documentation/safari-release-notes/safari-18_4-release-notes) browser on mobile, copying to the clipboard and pasting now works. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.13.1): ```sh npm install @adyen/adyen-web@6.13.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-05-12 — Web Components/Drop-in — Version 5.71.3 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed When using the [Safari 18.4](https://developer.apple.com/documentation/safari-release-notes/safari-18_4-release-notes) browser on mobile, copying to the clipboard and pasting now works. ### Breaking Changes ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.71.3): ```sh npm install @adyen/adyen-web@5.71.3 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------------------ | --------------------------------------------- | | Test | `https://checkoutshopper-test.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.adyen.com` | | Asia Pacific & Southeast (APSE) live | `https://checkoutshopper-live-apse.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-05-06 — Web Components/Drop-in — Version 6.13.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * Supported payment method: | Name | [Payment method type](https://docs.adyen.com/payment-methods/payment-method-types/) | | ------------------ | ---------------------------------------------------------------------------------- | | Fastlane by PayPal | **fastlane** | * For Apple Pay, you can now disable editing the shipping address. You can use this for checkout options with in-store pickup. Use the [configuration parameter `shippingContactEditingMode`](https://developer.apple.com/documentation/applepayontheweb/applepaypaymentrequest/shippingcontacteditingmode): **storePickup**. ### Fixed * For Google Pay, `isValid` is now always set to **true**. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.13.0): ```sh npm install @adyen/adyen-web@6.13.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-05-06 — Pay by Link ### Fixed * For Google Pay, Apple Pay, and other payment methods: when a payment is successful, the error message with **request\_timeout** no longer shows up. * For the **Terms and conditions** modal: when the shopper's `shopperLocale` language is the same as the browser's language setting, the text no longer gets set to English. ## 2025-04-30 — React Native Components/Drop-in — Version 2.6.0 ### New * [Expo Prebuild](https://docs.expo.dev/workflow/continuous-native-generation/#usage) now works with both modern Android API level 52 or later, and earlier levels. * For cards, you can now configure the `onBinLookup` and `onBinValue` callbacks. * Android Components/Drop-in version: [5.10.0](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%2BComponents%2FDrop-in#releaseNote=2025-04-07-android-componentsdrop-in-5.10.0). * iOS Components/Drop-in version: [5.17.0](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%2BComponents%2FDrop-in#releaseNote=2025-04-08-ios-componentsdrop-in-5.17.0). * For [native 3D Secure 2](https://docs.adyen.com/online-payments/3d-secure/native-3ds2/?platform=iOS\&integration=Drop-in\&version=5.0.0%20and%20later), when a shopper cancels the payment during the payment flow, the `didProvide(...)` delegate method is now triggered. * Payment method: [PayTo](https://docs.adyen.com/payment-methods/payto/), with support for recurring payments. [Payment method type](https://docs.adyen.com/payment-methods/payment-method-types/): **payto**. ### Fixed * Fixed an issue where iDeal opened in the Drop-in instead of the instant payment component. * For iOS, fixed a modal presentation issue when `SFSafariViewController` is dismissed with its presenter. ## 2025-04-22 — Pay by Link ### New * Supported payment method: PayTo. [Payment method type](https://docs.adyen.com/payment-methods/payment-method-types/): **payto**. ## 2025-04-22 — Hosted Checkout ### New * Supported payment method: PayTo. [Payment method type](https://docs.adyen.com/payment-methods/payment-method-types/): **payto**. ## 2025-04-22 — Flutter Components/Drop-in — Version 1.4.0 ### New * For Sessions and Advanced flows, added methods to dismiss Drop-in. * For the card component and cards within Drop-in, added support for BIN lookup callbacks that will be\ called when the shopper enters their card details. * Added a custom card Flutter widget to the example app using CSE and card validators. * Android Components/Drop-in version: [5.10.0](https://docs.adyen.com/online-payments/release-notes/#releaseNote=2025-04-07-android-componentsdrop-in-5.10.0). * iOS Components/Drop-in version: [5.17.0](https://docs.adyen.com/online-payments/release-notes/#releaseNote=2025-04-08-ios-componentsdrop-in-5.17.0). ### Changed * Minimum SDK version: Flutter [3.16.0](https://docs.flutter.dev/release/release-notes/release-notes-3.16.0)/Dart 3.2. ### Breaking Changes * For native 3D Secure 2, when a shopper cancels the payment during the payment flow, the\ `onAdditionalDetails` callback is now triggered. The payment flow no longer ends with\ **CANCELLED\_BY\_USER**. The `onAdditionalDetails` callback returns the details of the cancelled transaction. ## 2025-04-16 — Web Components/Drop-in — Version 6.12.0 *\

We recommend that you use \Checkout API v71\ or later.\

* ### Improved * For ACH, added a drop-down to select account type and input field to verify the account number. * `browserInfo.ts` no longer calls the deprecated `navigator.javaEnabled` function. ### Fixed * We made corrections to Finnish translations. * Added missing Typescript types to `CustomCardConfiguration` and `ApplePayButtonType`. * For Google Pay, we fixed an issue where the component did not recognize the `paywithgoogle` payment method. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.12.0): ```sh npm install @adyen/adyen-web@6.12.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/development-resources/live-endpoints#checkout-js-endpoints), use the same SRI hashes below. ``` ``` ## 2025-04-11 — Hosted Checkout ### Changed * For Google Pay, you can no longer use **paywithgoogle** as a TX variant, use **googlepay** instead. ## 2025-04-11 — Pay by Link ### Changed * For Google Pay, you can no longer use **paywithgoogle** as a TX variant, use **googlepay** instead. ## 2025-04-08 — iOS Components/Drop-in — Version 5.17.0 ### New * Payment method: [PayTo](https://docs.adyen.com/payment-methods/payto). [Payment method type](https://docs.adyen.com/payment-methods/payment-method-types/): **payto**. ### Changed * [Adyen Networking for iOS](https://github.com/Adyen/adyen-networking-ios) version: 3.0.1 * [Adyen WeChat Pay for iOS](https://github.com/Adyen/adyen-wechatpay-ios) version: 2.2.0 ### Fixed * For the card component: * Updated the separator layout to to be centered in the container view. * The security code and card number logo edges are now aligned with the input field edges. ## 2025-04-07 — Hosted Checkout ### Removed * The back button on the payment page. Previously, the shopper could select the back button while the payment was processing, which caused issues with the payment session. ## 2025-04-07 — Android Components/Drop-in — Version 5.10.0 ### New * Payment method: [PayTo](https://docs.adyen.com/payment-methods/payto), with support for recurring payments. [Payment method type](https://docs.adyen.com/payment-methods/payment-method-types/): **payto**. ### Fixed * For 3D Secure 2, the subsequent challenges after an initial failed challenge can still be completed successfully. Previously, the subsequent challenges failed automatically. ## 2025-03-31 — Checkout API ### New * Added the `encryptedCard` parameter to the [/storedPaymentMethods](https://docs.adyen.com/api-explorer/Checkout/latest/post/storedPaymentMethods) endpoint. This parameter is used for [card encryption with JWE](https://docs.adyen.com/online-payments/card-encryption-with-jwe/#encrypt-card-details). ## 2025-03-28 — Hosted Checkout ### New * Pay by Link is now using [Web Components v6.9.0](https://docs.adyen.com/online-payments/release-notes#releaseNote=2025-02-28-web-componentsdrop-in-6.9.0). ## 2025-03-28 — Pay by Link ### New * Pay by Link is now using [Web Components v6.9.0](https://docs.adyen.com/online-payments/release-notes#releaseNote=2025-02-28-web-componentsdrop-in-6.9.0). ## 2025-03-24 — Web Components/Drop-in — Version 6.11.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For cards, when the shopper enters their card number in the **Card number** field, the length of the card number is no longer restricted based on the Bank Identification Number (BIN). ### Fixed * For Apple Pay in apps that use [server-side rendering](https://developer.mozilla.org/en-US/docs/Glossary/SSR): the iframe detection code no longer crashes when rendering. This fixes the known issue from v6.10.0. * For cards, when you select the icon for an inoput field, the corresponding field now correctly gets the focus state. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.11.0): ```sh npm install @adyen/adyen-web@6.11.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-03-19 — Web Components/Drop-in — Version 6.10.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * You can now offer Apple Pay on third-party browsers. See [offering Apple Pay on the web](https://docs.adyen.com/payment-methods/apple-pay/web-drop-in/#offering-apple-pay-on-web) to learn more. ### Fixed * For Drop-in, when using Google Pay as an instant payment type, the `challengeWindowSize` is now handled correctly. * Fixed Brazilian social security number translation (CPF/CNPJ) for different languages. * Fixed an issue where the exposed types for Google Pay and Apple Pay were not being found. ### Improved * For single branded cards, the error message shown to when there configuration is incorrect is updated. * Improved the contrast, `aria-expand` attribute for radio buttons, and SVG alt descriptions to follow [a11y](https://www.a11yproject.com/) guidelines. * For Google Pay, an error is thrown when the configuration is missing the required merchant ID. ### Known Issues * For Apple Pay in apps that use [server-side rendering](https://developer.mozilla.org/en-US/docs/Glossary/SSR): the iframe detection code crashes when rendering. Fixed in v6.11.0. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.10.0): ```sh npm install @adyen/adyen-web@6.10.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-02-28 — Web Components/Drop-in — Version 6.9.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * Supported payment method: PayTo. [Payment method type](https://docs.adyen.com/payment-methods/payment-method-types/): **payto**. ### Improved * When the shopper selects the **Pay** button, the Open Invoice and ACH Components become disabled. * For Boleto: additional properties have been added to the `BoletoConfiguration` TypeScript interface. * For cards: the `onAutoComplete` type has been added to the `CustomCardConfiguration` type. * For Google Pay: the `challengeWindowSize` type has been added to the `GooglePayComponent` TypeScript interface. ### Fixed * For Google Pay: when you call `reject` on the `onClick` event, an unhandled exception can no longer be triggered. * For gift cards: when the shopper pays with a second gift card the UI no longer becomes unresponsive. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.9.0): ```sh npm install @adyen/adyen-web@6.9.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-02-24 — Android Components/Drop-in — Version 5.9.1 *\

We recommend you use \Checkout API v71\ or later.\

* ### Improved * For the [address lookup feature](https://docs.adyen.com/payment-methods/cards/android-component/#address-lookup): * The input is now retained when changing countries. * The loading spinner moved to the search bar to prevent "jumping" of the view. * The keyboard is now hidden when: * An address is selected. * A search query is submitted * The manual entry button is selected. ### Changed * For the address lookup feature, the address format is now two lines. * For Google Pay, when a user cancels the flow, you now get `GooglePayCancellationException` in `onError`. * The minimum supported [SDK versions](https://docs.adyen.com/online-payments/upgrade-your-integration#android): | Name | Version | | ------------------- | ------- | | Compile SDK version | 35 | | Target SDK version | 35 | * Dependency versions: | Name | Version | | ---------------------------------------------------------------------------------------------------- | ------------- | | [AndroidX Activity](https://developer.android.com/jetpack/androidx/releases/activity#1.10.0) | `1.10.0` | | [AndroidX RecyclerView](https://developer.android.com/jetpack/androidx/releases/recyclerview#1.4.0) | `1.4.0` | | [AndroidX Activity Compose](https://developer.android.com/jetpack/androidx/releases/activity#1.10.0) | `` `1.10.0 `` | | [Android Gradle Plugin](https://developer.android.com/build/releases/gradle-plugin) | `8.8.0` | ### Fixed * For Twint with [Sessions flow](https://docs.adyen.com/online-payments/build-your-integration/#sessions-flow-a-single-api-request), setting `storePaymentMethodMode`: **enabled** now correctly stores the payment method. * For the [address lookup feature](https://docs.adyen.com/payment-methods/cards/android-component/#address-lookup), when selecting a different address, it now correctly updates the input fields on the payment form. ## 2025-02-03 — Pay by Link ### New * The payment page now contains a country selector. When a payment link does not contain country information, shoppers are now prompted to select their country. ## 2025-02-03 — Flutter Components/Drop-in — Version 1.3.0 ### New * For custom card with API only integration, added validators for the following. * Card number. * Card expiry date. * Card security code. * iOS Components/Drop-in version: [5.15.0](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%20Components%2FDrop-in#releaseNote=2025-01-07-ios-componentsdrop-in-5.15.0). ### Fixed * For the Card Component, on Android 8 (API level 26) or earlier, the pay button no longer has ripple animations to prevent an animation crash. ## 2025-02-03 — Hosted Checkout ### New * The payment page now contains a country selector. When a payment link does not contain country information, shoppers are now prompted to select their country. ## 2025-01-29 — iOS Components/Drop-in — Version 5.16.0 *\

We recommend you use \Checkout API v71\ or later. \

* ### Changed * For [native 3D Secure 2](https://docs.adyen.com/online-payments/3d-secure/native-3ds2/?platform=iOS\&integration=Drop-in\&version=5.0.0%20and%20later), when a shopper cancels the payment during the payment flow, the `didProvide()` delegate method is now triggered. What this means for your integration depends on whether you already make a `/payments/details` call to handle 3D Secure 2 errors: * If yes, you do not need to make any changes to your integration. * If not, update your integration to make a `/payments/details` request to get the details of the canceled transaction. ### New * Support to distinguish between the regular redirect flow where you redirect the shopper through the browser and native redirects to improve the handling of failed native redirects. ## 2025-01-27 — Pay by Link ### Changed For iDEAL, the shopper now gets redirected to an iDEAL-hosted page to select their issuer and finish the payment. ## 2025-01-27 — Hosted Checkout ### Changed * For iDEAL, the shopper now gets redirected to an iDEAL-hosted page to select their issuer and finish the payment. ## 2025-01-20 — Web Components/Drop-in — Version 6.8.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Known Issues * Style issues no longer occur due to font scaling, because `rem` is now used for the font size unit. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.8.0): ```sh npm install @adyen/adyen-web@6.8.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-01-17 — Android Components/Drop-in — Version 5.9.0 *\

We recommend you use \Checkout API v71\ or later. \

* ### New * Simplified integration for Google Pay: * The Component now includes the Google Pay button, and you no longer have to display the button with your own configuration. * The Component now does the availability check on initialization. * The deprecated `onActivityResult` is no longer needed.\ See the [migration guide](https://docs.adyen.com/payment-methods/google-pay/android-component/migrate/) to learn about the changes you have to make to your integration to support Google Pay on this version. * Drop-in now shows a toolbar on more intermediary screens to let shoppers navigate back easily. ### Changed * For [native 3D Secure 2](https://docs.adyen.com/online-payments/3d-secure/native-3ds2/?platform=Android\&integration=Drop-in\&version=latest), when a shopper cancels the payment during the payment flow, the `onAdditionalDetails()` event is now triggered. What this means for your integration depends on whether you already make a `/payments/details` call to handle 3D Secure 2 errors: * If yes, you do not need to make any changes to your integration. You can remove the `Cancelled3DS2Exception` handler. * If not, update your integration to make a `/payments/details` request to get the details of the canceled transaction. * Dependency versions: | Name | Version | | --------------------------------------------------------------------------------------------------------------------------------------- | ---------- | | [Android Gradle Plugin](https://developer.android.com/build/releases/past-releases/agp-8-7-0-release-notes#android-gradle-plugin-8.7.3) | 8.7.3 | | [AndroidX Compose BoM](https://developer.android.com/develop/ui/compose/bom/bom-mapping) | 2024.12.01 | | [AndroidX ConstraintLayout](https://developer.android.com/jetpack/androidx/releases/constraintlayout#constraintlayout-2.2.0) | 2.2.0 | | [AndroidX Lifecycle](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.8.7) | 2.8.7 | | [AndroidX Lifecycle ViewModel Compose](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.8.7) | 2.8.7 | | [KotlinX Coroutines Play Services](https://github.com/Kotlin/kotlinx.coroutines/releases/tag/1.9.0) | 1.9.0 | * We are changing the default branch of our SDK repository from `develop` to `main`. If you use our SDK repository and work with the `develop` branch, we recommend to switch to `main`. The `develop` branch will be removed within the next few weeks. ### Deprecated * The styles and strings for the Cash App Pay loading indicator. use the new styles and strings instead. | Previous | Now | | ----------------------------------------------------- | ---------------------------------------------------------------- | | `AdyenCheckout.CashAppPay.ProgressBar` | `AdyenCheckout.ProcessingPaymentView.ProgressBar` | | `AdyenCheckout.CashAppPay.WaitingDescriptionTextView` | `AdyenCheckout.ProcessingPaymentView.WaitingDescriptionTextView` | | `cash_app_pay_waiting_text` | `checkout_processing_payment` | ## 2025-01-13 — Web Components/Drop-in — Version 5.71.2 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed * For Trustly, missing [translations](https://github.com/Adyen/adyen-web/pull/3055) have been added. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.71.2): ```sh npm install @adyen/adyen-web@5.71.2 ``` ### Tab: Embed script and stylesheet Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.71.2): ```sh npm install @adyen/adyen-web@5.71.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------------------ | --------------------------------------------- | | Test | `https://checkoutshopper-test.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.adyen.com` | | Asia Pacific & Southeast (APSE) live | `https://checkoutshopper-live-apse.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-01-13 — Web Components/Drop-in — Version 6.7.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * Added [tracking for API errors for internal endpoints](https://github.com/Adyen/adyen-web/pull/3035) for analytics purposes. * During the process of handling the payment response, Drop-in/Components no longer makes a duplicated internal API request. * For the Custom Card Component, TypeScript types for configuration parameters are now more explicitly declared. ### Fixed * For cards, the styling for the confirmation message to remove a stored card no longer causes responsiveness issues. * For Click to Pay, button elements that appeared as links now appear as buttons. * For Google Pay, when the value of the `GooglePayButton` attribute `buttonRadius` is **0**, it no longer fails to be passed to the `createButton` function. * The Klarna Component now initializes the Klarna Widget SDK correctly. This fixes the known issue from v6.6.0. * For Trustly, missing [translations](https://github.com/Adyen/adyen-web/pull/3055) have been added. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.7.0): ```sh npm install @adyen/adyen-web@6.7.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2025-01-07 — iOS Components/Drop-in — Version 5.15.0 *\

We recommend that you use \Checkout API v71\ or later. \

* ### New * When using Drop-In: the `maxIssuerNumber` for Twint can now be set. ### Changed * You can now highlight a list item by changing its background color when the shopper selects it. To do this, use the new optional `ListItemStyle.highlightedBackgroundColor` property. *Contribution by Github user.* ### Fixed * For Drop-in, some components that are used in the same Drop-in session no longer have stale parts such as the following: * For gift cards, error messages. * For cards, brand logos. * If your app uses more than one payment service provider SDK that uses the TwintSDK, a potential runtime crash no longer occurs. ## 2025-01-06 — Flutter Components/Drop-in — Version 1.2.0 ### New * iOS Components/Drop-in version: [5.14.0](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%20Components%2FDrop-in#releaseNote=2024-12-03-ios-componentsdrop-in-5.14.0). * Android Components/Drop-in version: [5.8.0](https://docs.adyen.com/online-payments/release-notes/#releaseNote=2024-12-06-android-componentsdrop-in-5.8.0). Gradle v8 is now required. * iDEAL is now available through the Instant Component. * For the Google Pay Component on Advanced flow, added loading bottom sheet. * The `paymentSessionFinished` payment result now contains `sessionResult`. * You can now make partial payments with Drop-in also on the Advanced flow. ### Improved * For the Card Component, improved the dynamic viewport. ### Removed * Removed the alert message that appeared when deleting a stored payment method fails. ## 2024-12-10 — Web Components/Drop-in — Version 6.6.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Known Issues * The Klarna Component encounters an error when initializing the Klarna Widget SDK. Fixed in v6.7.0. ### New * For the online banking payment methods in Slovakia and the Czech Republic, bank logo icons now appear in the list of banks. ### Improved * For WeChat Pay QR codes, updated the text indicating the time left to pay for the `zh-CN` locale. * For ACH Direct Debit, removed the text under the **Account holder name** field. * When you set the **Country** and **State** fields to required in the payment form, the setting now correctly applies to the fields. * For [donations](https://docs.adyen.com/online-payments/donations/web-component/), the nonprofit logo and description no longer cover the donation banner, and the banner now maintains it's aspect ratio when scaling according to the shopper's screen size. ### Fixed * For cards, when the card is detected in the **Card number** field, * When multiple variants of Klarna are available in the payment methods list, you can now make sure that the payment is made with the correct variant with the new `activate()` method. * For Drop-in: this happens automatically. * For Components: you must call `active()` when the shopper selects a variant of Klarna. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.6.0): ```sh npm install @adyen/adyen-web@6.6.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2024-12-10 — React Native Components/Drop-in — Version 2.5.0 ### New * Drop-in now supports [partial payments](https://docs.adyen.com/online-payments/partial-payments/), including partial payments with gift cards and meal vouchers. You can also hide the PIN. * Android Components/Drop-in version: [5.8.0](https://docs.adyen.com/online-payments/release-notes/#releaseNote=2024-12-06-android-componentsdrop-in-5.8.0), this version includes: * Support for Pay by Bank US. * Fix for the address lookup feature crash that happens when the shopper presses back when the postal code field is in focus. * iOS Components/Drop-in version: [5.14.0](https://docs.adyen.com/online-payments/release-notes/#releaseNote=2024-12-03-ios-componentsdrop-in-5.14.0), this version includes support for the following [payment method types](https://docs.adyen.com/payment-methods/payment-method-types/): * Boleto Bancario Itaú: **boletoBancarioItau** * PrimeiroPay Boleto: **primeiroPayBoleto** * Boleto Bancario: **boletoBancario** ### Fixed * Corrected the TypeScript description and code auto-completion for `component` within the `onSubmit` callback. * For the Sessions flow, the `sessionResult` for is now contains the full signature. * The 3D Secure 2 configuration (`threeDS2`), now works correctly with code auto-completion. ## 2024-12-06 — Android Components/Drop-in — Version 5.8.0 *\

We recommend you use \Checkout API v71\ or later. \

* ### New * Payment method: Pay by Bank US. [Payment method type](https://docs.adyen.com/payment-methods/payment-method-types/): **paybybank\_AIS\_DD**. ### Changed * Dependency versions: | Name | Version | | --------------------------------------------------------------------------------------------------------------- | ---------------- | | [Android Gradle Plugin](https://developer.android.com/build/releases/gradle-plugin#android-gradle-plugin-8.7.1) | **8.7.1** | | [AndroidX Fragment](https://developer.android.com/jetpack/androidx/releases/fragment#1.8.5) | **1.8.5** | | [AndroidX Activity](https://developer.android.com/jetpack/androidx/releases/activity#1.9.3) | **1.9.3** | | [AndroidX Autofill](https://developer.android.com/jetpack/androidx/releases/autofill#1.3.0-beta01). | **1.3.0-beta01** | | [AndroidX Annotation](https://developer.android.com/jetpack/androidx/releases/annotation#1.9.1). | **1.9.1**. | | [AndroidX Compose Activity](https://developer.android.com/jetpack/androidx/releases/activity#1.9.3) | **1.9.3** | | [AndroidX Compose BOM](https://developer.android.com/develop/ui/compose/bom/bom-mapping) | **2024.10.00** | | [AndroidX Lifecycle](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.8.6) | **2.8.6** | | [AndroidX Lifecycle ViewModel Compose](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.8.6) | **2.8.6** | ### Fixed * For cards, the address lookup functionality no longer crashes if the shopper presses back when the postal code field is in focus. * For Drop-in, fixed an issue where the error dialog showed loading state in some edge cases. ## 2024-12-03 — iOS Components/Drop-in — Version 5.14.0 *\

We recommend you use \Checkout API v71\ or later.\

* ### New * For Component integrations, you can now implement a custom pay button. Use the following: | | Description | | ------------------- | ------------------------------------------------------------------- | | `showsSubmitButton` | Set to **false** to hide the default pay button. Default: **true**. | | `validate()` | Validates the payment data. | | `submit()` | Submits the payment data. | * For Twint, you can now reduce the required number of `LSApplicationQueriesSchemes` values. In `TwintActionComponent.Configuration`, set the new `maxIssuerNumber` property. * For Boleto Bancario, support for the following [payment method types](https://docs.adyen.com/payment-methods/payment-method-types): * Boleto Bancario Itaú: **boletoBancarioItau** * PrimeiroPay Boleto: **primeiroPayBoleto** * Boleto Bancario: **boletoBancario** * For Pay by Bank in the US, support for stored payment methods. ### Changed * For Pay by Bank payments in the US ([payment method type](https://docs.adyen.com/payment-methods/payment-method-types/):**paybybank\_AIS\_DD**): Drop-in now shows supported bank logos and a confirmation screen, before redirecting the shopper to the issuer. * For Delegated Authentication: during Secure Checkout, you can now optionally reset credentials on the error screen. * Twint SDK version: v8.0.2. ### Fixed * For Titres-restaurant meal vouchers, the correct `type` and `brand` values are now included in the payment details. ## 2024-11-15 — Web Components/Drop-in — Version 6.5.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed * For cards, when the `expiryDate` is only one digit, the `onBlur` validation now gets triggered. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.5.1): ```sh npm install @adyen/adyen-web@6.5.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2024-11-14 — Android Components/Drop-in — Version 5.7.1 *\

We recommend you use \Checkout API v71\ or later. \

* ### Fixed * For the address lookup functionality: * Address data is now correctly saved to `PaymentComponentData`. * Address fields that were edited manually no longer lose their state when starting lookup mode. ## 2024-11-05 — iOS Components/Drop-in — Version 5.13.0 *\

We recommend that you use \Checkout API v71\ or later. \

* ### New * Support for tokenization in Twint payments, allowing shoppers to securely save their Twint payment details for future transactions. ### Improved * For testing during development, the `UISwitch` testability is now enabled for external tools like Appium. * For delegated authentication, payment information is consumed so that the UI shows the card number, brand logo, and payment amount. ### Changed * CashAppPay SDK Version: 0.6.2 ### Fixed * For cards: * In the **Expiry date field**, when the shopper tries to enter additional characters to the field after having already entered characters, the field no longer ends up in an invalid state. * In the **Card number field**, the shopper can now move the cursor and edit the number where the cursor is positioned. ## 2024-11-04 — Online Payments ### Changed * If you use Call Center for Mail Order/Telephone Order (MOTO) transactions: when you go to the Call Center URL, you are now redirected to the [Virtual Terminal](https://docs.adyen.com/unified-commerce/mail-order-telephone-order/) URL. ## 2024-10-31 — Web Components/Drop-in — Version 6.5.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For PayMe, when the shopper pays, the UI shows instructions to complete the transaction. [![](/images/4/5/1/b/7/451b76823da60eebe769532d928f52ad79c7f547-paymeinstructionsscreen.png)](https://docs.adyen.com/media/2e6d9677a5e89719e7190e61904a0a7fc671fa1ef6c43b601abdc509f8a2f777.png) * For PayNow, when the shopper pays on a tablet or mobile device, the UI now shows instructions to complete the transaction. [![](/images/5/e/d/3/1/5ed31f30cf6ff183ce4ac3db849c99ddc0d74a68-paynowinstructionsscreen.png)](https://docs.adyen.com/media/213992603cef24615a335e5fbd205563b7dd74072ac5348c5313601a1f299c27.png) ### Fixed * When creating a production build, the `auto.js` code is no longer tree-shaken by bundlers. * For integrations using the [address lookup feature](https://docs.adyen.com/payment-methods/cards/web-component/#optional-configuration) for cards: the **State or province** field no longer resets when the shopper selects a value for the **Country** field. * The [Iceland Krona currency (ISK)](https://docs.adyen.com/development-resources/currency-codes/) now correctly uses minor units. * For UPI, the initial value for `isValid` is now **true** only for UPI QR. * To support earlier iOS versions, the ECMAScript version is now the [2020 version](https://262.ecma-international.org/11.0/index.html). * For Payconiq, the UI now includes instructions for the QR code, and an unused button label is now removed. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.5.0): ```sh npm install @adyen/adyen-web@6.5.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2024-10-29 — Web Components/Drop-in — Version 5.71.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed * For integrations using the [address lookup feature](https://docs.adyen.com/payment-methods/cards/web-component/#optional-configuration) for cards: the **State or province** field no longer resets when the shopper selects a value for the **Country** field. * For UPI, the default value for `isValid` is now **true** only for UPI QR. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.71.1): ```sh npm install @adyen/adyen-web@5.71.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------------------ | --------------------------------------------- | | Test | `https://checkoutshopper-test.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.adyen.com` | | Asia Pacific & Southeast (APSE) live | `https://checkoutshopper-live-apse.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2024-10-28 — Checkout API ### New * The [/cardDetails](https://docs.adyen.com/api-explorer/Checkout/latest/post/cardDetails) response now includes: * `fundingSource`: the funding source of the card, for example **DEBIT**, **CREDIT**, or **PREPAID**. * `isCardCommercial`: indicates if the card is a commercial card or a consumer card. ## 2024-10-22 — Web Components/Drop-in — Version 6.4.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * All [action types](https://docs.adyen.com/online-payments/build-your-integration/advanced-flow/?platform=Web\&integration=Components#additional-action) now trigger the `onActionHandled` callback. * For all action types, except for **threeds2**, the original `action` object is passed to the callback. * For ACH, the shopper can now select the **Savings** or **Checking** account type. ### Improved * For improved developer experience, we now export the `CustomTranslations` type. * `document.querySelector` is now called only once, instead of three times. ### Fixed * `get-process-message.handler.js` no longer causes exceptions. The new optional chaining operator for the `postMessage` handler function now prevents improperly formed events. * When you call `actions.reject()` in the `beforeSubmit` callback, the UI no longer set the UI in an error state. Previously, it caused a call to `handleFailedResult`, which caused the `onPaymentFailed` callback to be called and set the UI in an error state. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.4.0): ```sh npm install @adyen/adyen-web@6.4.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2024-10-22 — Web Components/Drop-in — Version 5.71.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For ACH, the shopper can now select the **Savings** or **Checking** account type. ### Fixed * `get-process-message.handler.js` no longer causes exceptions. The new optional chaining operator for the `postMessage` handler function now prevents improperly formed events. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.71.0): ```sh npm install @adyen/adyen-web@5.71.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------------------ | --------------------------------------------- | | Test | `https://checkoutshopper-test.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.adyen.com` | | Asia Pacific & Southeast (APSE) live | `https://checkoutshopper-live-apse.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2024-10-14 — Android Components/Drop-in — Version 5.7.0 *\

We recommend you use \Checkout API v71\ or later.\

* ### New * You can now use [Adyen Test Cards Android](https://github.com/Adyen/adyen-testcards-android) to autofill test payment method information, to test your integration more quickly. * For Twint: * For Components integrations, you must now use [`TwintComponent`](https://github.com/Adyen/adyen-android/blob/5.7.0/docs/payment-methods/TWINT.md#stored-twint-payments) instead of `InstantPaymentComponent`. * You can now [store payment details](https://github.com/Adyen/adyen-android/blob/5.7.0/docs/payment-methods/TWINT.md#optional-configurations) and [pay with stored payment details](https://github.com/Adyen/adyen-android/blob/5.7.0/docs/payment-methods/TWINT.md#stored-twint-payments). * For French meal vouchers, the following payment method types are now available: * Up. Payment method type: **mealVoucher\_FR\_groupeup**. * Natixis. Payment method type: **mealVoucher\_FR\_natixis**. * Sodexo. Payment method type: **mealVoucher\_FR\_sodexo**.\ Learn to [configure French meal vouchers](https://github.com/Adyen/adyen-android/blob/5.7.0/docs/payment-methods/FRENCH_MEAL_VOUCHER.md). * For [API-only integrations with encrypted card details](https://docs.adyen.com/payment-methods/cards/custom-card-integration/?tab=candroid_3), you can now use the following classes to validate corresponding fields: | Class | Description | | --------------------------- | ---------------------------------- | | `CardNumberValidator` | Validates the card number field. | | `CardExpiryDateValidator` | Validates the expiry date field. | | `CardSecurityCodeValidator` | Validates the security code field. | * Support for the following locales: | Locale | Values | | ---------- | --------- | | Catalan | **ca-ES** | | Icelandic | **is-IS** | | Bulgarian | **bg-BG** | | Estonian | **et-EE** | | Latvian | **lv-LV** | | Lithuanian | **lt-lT** | ### Improved * For UPI Intent, if the shopper selects the **Continue** button without selecting an UPI option, an error message now shows. * For Drop-in, in the navigation bar, the accessibility of the **Back/Close** button is improved. ### Changed * For Drop-in, headers of preselected stored payment screen and payment methods list screen are updated. * Dependency versions: | Name | Version | | --------------------------------------------------------------------------------------------------------------------------------------- | -------------- | | [Adyen 3DS2](https://github.com/Adyen/adyen-3ds2-android/releases/tag/2.2.21) | **2.2.21** | | [Cash App Pay](https://github.com/cashapp/cash-app-pay-android-sdk/releases/tag/v2.5.0) | **2.5.0** | | [Android Gradle Plugin](https://developer.android.com/build/releases/past-releases/agp-8-5-0-release-notes#android-gradle-plugin-8.5.1) | **8.5.1** | | [AndroidX Fragment](https://developer.android.com/jetpack/androidx/releases/fragment#1.8.3) | **1.8.3** | | [AndroidX Activity](https://developer.android.com/jetpack/androidx/releases/activity#1.9.2) | **1.9.2** | | [AndroidX Compose Activity](https://developer.android.com/jetpack/androidx/releases/activity#1.9.2) | **1.9.2** | | [AndroidX Compose BOM](https://developer.android.com/develop/ui/compose/bom/bom-mapping) | **2024.06.00** | | [AndroidX Lifecycle](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.8.3) | **2.8.3** | | [AndroidX Lifecycle ViewModel Compose](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.8.3) | **2.8.3** | | [AndroidX AppCompat](https://developer.android.com/jetpack/androidx/releases/appcompat#1.7.0) | **1.7.0** | ### Fixed * When parsing JSON objects with explicit null values, JSON deserialization no longer returns the coerced `null` string. ### Deprecated * The style for payment method list headers. Use the new style instead. | Previous | Now | | ------------------------------------------ | ------------------------------------------ | | `AdyenCheckout.TextAppearance.HeaderTitle` | `AdyenCheckout.TextAppearance.HeaderLabel` | * The `com.adyen.checkout.instant.ActionHandlingMethod` method. Use the new method instead. | Previous | Now | | ------------------------------------------------- | --------------------------------------------------------- | | `com.adyen.checkout.instant.ActionHandlingMethod` | `com.adyen.checkout.components.core.ActionHandlingMethod` | ## 2024-10-07 — Flutter Components/Drop-in — Version 1.1.0 ### New * For Drop-in, you can now display custom names for the payment methods in your checkout. Use the [`paymentMethodNames`](https://docs.adyen.com/online-payments/build-your-integration/sessions-flow?platform=Flutter\&integration=Drop-in\&version=1.1.0#optional-configuration) object to set the name for each payment method. * When a shopper cancels the payment during the 3D Secure 2 flow, the payment result is now **PaymentCancelledByUser**. ### Improved * For Apple Pay, improved the instantiation of the payment method component. * For Google Pay, improved configuration parsing. ## 2024-10-07 — iOS Components/Drop-in — Version 5.12.0 ### Fixed * On iOS 18, if the shopper has two identical stored payment methods, Drop-in/Component no longer crashes when the shopper selects a payment method that's not the default stored one. ### Improved * You can now use the `AdyenEncryption` module independently with a reduced size, because it no longer depends on `AdyenCore`. ### New * Support for [Library Evolution in Swift](https://www.swift.org/blog/library-evolution/). ### Changed * When you set `isEnabled` = **false**, only [Drop-in/Components analytics](https://docs.adyen.com/online-payments/analytics-and-data-tracking#data-we-are-collecting) are not sent to Adyen. ## 2024-10-07 — iOS Components/Drop-in — Version 4.14.0 ### New * On iOS 18, if the shopper has two identical stored payment methods, Drop-in/Component no longer crashes when the shopper selects a payment method that's not the default stored one. ## 2024-10-01 — React Native Components/Drop-in — Version 2.4.1 ### Improved * Removed the unused `getReturnURL` declaration from the SessionHelper module to compile the library correctly when [React Native New Architecture](https://reactnative.dev/docs/the-new-architecture/landing-page) is enabled. ### Fixed * Bumped [`serve-static`](https://www.npmjs.com/package/serve-static) version to 1.16.2 to address security vulnerability. ## 2024-10-01 — Web Components/Drop-in — Version 6.3.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For Pay by Bank payments in the US, the payment form now shows US bank logos. * For Click to Pay with Visa, custom timeouts now get reported to the Visa SDK. ### Fixed * For Click to Pay with Visa, when the shopper selects **Enter**, the event no longer propagates to other views. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.3.0): ```sh npm install @adyen/adyen-web@6.3.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | ``` ``` ## 2024-10-01 — Web Components/Drop-in — Version 5.70.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For Pay by Bank payments in the US, the payment form now shows US bank logos. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.70.0): ```sh npm install @adyen/adyen-web@5.70.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------------------ | --------------------------------------------- | | Test | `https://checkoutshopper-test.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.adyen.com` | | Asia Pacific & Southeast (APSE) live | `https://checkoutshopper-live-apse.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.adyen.com` | If you implemented SRI in test or with live [region-specific URLs](https://docs.adyen.com/online-payments/web-best-practices#embed-script-and-stylesheet), use the same SRI hashes below. ``` ``` ## 2024-09-23 — Checkout API ### Fixed * Fixed an issue where payments with the following `paymentMethod.type` would break in some cases: * **klarna** * **klarna\_account** * **klarna\_paynow** * **klarna\_b2b** * **walley** * **walley\_b2b** * **ebanking\_FI** * When [blockedPaymentMethods](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments#request-blockedPaymentMethods) is set to **scheme**, Bancontact is no longer blocked. ## 2024-09-23 — Pay by Link ### Changed * Reverted the new iDeal payment flow that was released in [2 September, 2024](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Pay%20by%20Link#releaseNote=2024-09-02-pay-by-link). ## 2024-09-23 — Web Components/Drop-in — Version 5.69.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * For Click to Pay with Visa, custom timeouts now get reported to the Visa SDK. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.69.1): ```sh npm install @adyen/adyen-web@5.69.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------------------ | ------------------------------------------------- | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Asia Pacific & Southeast (APSE) live | `https://checkoutshopper-live-apse.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | ``` ``` ## 2024-09-16 — Web Components/Drop-in — Version 5.69.0 ### Improved * For Drop-in, when loading, payment methods that are not supported are filtered out before the individual payment method Components are created. * When loading, during the internal setup requests, the `browserInfo` information is included. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.69.0): ```sh npm install @adyen/adyen-web@5.69.0 ``` ### Tab: Embed script and stylesheet ``` ``` ### Changed * When you set `analytics.enabled` = **false**, only [Drop-in/Components analytics](https://docs.adyen.com/online-payments/analytics-and-data-tracking#data-we-are-collecting) are not sent to Adyen. ## 2024-09-16 — Web Components/Drop-in — Version 6.2.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Improved * When loading, during the internal setup requests, the `browserInfo` information is included. * For Drop-in, when loading, payment methods that are not supported are filtered out before the individual payment method Components are created. * For Apple Pay, the `ApplePaySession` property is now optional in the [`Window` interface](https://developer.mozilla.org/en-US/docs/Web/API/Window). ### Fixed * For Apple Pay, `ApplePayService` no longer causes reliability issues with [SonarCloud](https://docs.sonarsource.com/sonarcloud/). * Projects that use [webpack 4](https://v4.webpack.js.org/guides/getting-started/) can now directly import styles from the `adyen.css` file. * For cards, the **Enter** key now correctly triggers validation and submission. Previously, a regression issue prevented the actions from being triggered. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.2.0): ```sh npm install @adyen/adyen-web@6.2.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | ``` ``` ### Changed * When you set `analytics.enabled` = **false**, only [Drop-in/Components analytics](https://docs.adyen.com/online-payments/analytics-and-data-tracking#data-we-are-collecting) are not sent to Adyen. ## 2024-09-11 — Flutter Components/Drop-in — Version 1.0.2 ### New * iOS Components/Drop-in version: [5.11.0](https://docs.adyen.com/online-payments/release-notes/#releaseNote=2024-09-09-ios-componentsdrop-in-5.11.0). ### Improved * For Android, improved component bottom sheet behavior. * For cards, improved the component for shopper devices that use large font and display sizes. * Migrated the Android example to use Flutter Gradle plugins through the Plugin DSL. ## 2024-09-11 — React Native Components/Drop-in — Version 2.4.0 ### New * Support for [Apple Pay](https://docs.adyen.com/payment-methods) recurring payments. * For Drop-in, you can now set `showRemovePaymentMethodButton` to **true** to allow your shoppers to remove their stored payment details. * iOS Components/Drop-in version: [5.11.0](https://docs.adyen.com/online-payments/release-notes/#releaseNote=2024-09-09-ios-componentsdrop-in-5.11.0). ### Fixed * `AdyenAction` is now exported correctly. * Fixed an issue where `AdyenInstant` and other components were not loading correctly on React Native versions earlier than 73. This fixes the known issue in v2.3.0. ## 2024-09-09 — iOS Components/Drop-in — Version 5.11.0 ### Changed * The following protocol and classes that were recently made internal `(@_spi(AdyenInternal))` are now public again: * `Validator` * `CardNumberValidator` * `CardExpiryDateValidator` * `CardSecurityCodeValidator` * `LengthValidator` * `NumericStringValidator` * TWINT SDK version: 8.0.1 ### Fixed * The privacy manifest path in Package.swift now ensures correct Swift Package Manager (SPM) integration. ## 2024-09-03 — Web Components/Drop-in — Version 6.1.1 ### Improved * Removed the unused **region** role from the payment method item to follow [a11y](https://www.a11yproject.com/) guidelines. ### Fixed * Fixed validation for Lithuanian postal codes to support inputs with 4 digits, 5 digits, and the **LT** prefix. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.1.1): ```sh npm install @adyen/adyen-web@6.1.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | ``` ``` ## 2024-09-03 — Web Components/Drop-in — Version 5.68.1 ### Improved * Removed the unused **region** role from the payment method item to follow [a11y](https://www.a11yproject.com/) guidelines. ### Fixed * Fixed validation for Lithuanian postal codes to support inputs with 4 digits, 5 digits, and the **LT** prefix. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.68.1): ```sh npm install @adyen/adyen-web@5.68.1 ``` ### Tab: Embed script and stylesheet ``` ``` ## 2024-09-02 — Pay by Link ### New * The new iDEAL payment flow where the shopper is redirected to the iDEAL payment page to select their bank and authorize the payment.\ This change is reverted in a [later release](https://docs.adyen.com/online-payments/release-notes?title%5B0%5D=Pay%20by%20Link#releaseNote=2024-09-02-pay-by-link). ## 2024-08-28 — Web Components/Drop-in — Version 6.1.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For ANCV, after the shopper makes a partial payment, the ANCV ID and deducted balance is shown on the screen where they select the payment method for the remaining balance. ### Improved * Updated currency information for the following locales: * Iceland (ISK) * Bulgaria (BGN) ### Fixed For stored cards, the holder name is now correctly passed when making the payment. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.1.0): ```sh npm install @adyen/adyen-web@6.1.0 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | ``` ``` ## 2024-08-26 — Web Components/Drop-in — Version 5.68.0 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### New * For ANCV, after the shopper makes a partial payment, the ANCV ID and deducted balance is shown on the screen where they select the payment method for the remaining balance. ### Fixed For stored cards, the holder name is now correctly passed when making the payment. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.68.0): ```sh npm install @adyen/adyen-web@5.68.0 ``` ### Tab: Embed script and stylesheet ``` ``` ## 2024-08-14 — React Native Components/Drop-in — Version 2.3.0 ### New * iOS Components/Drop-in version: [5.10.0](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%20Components%2FDrop-in#releaseNote=2024-08-07-ios-componentsdrop-in-5.10.0). * For cards, you can now set [`addressVisibility`](https://docs.adyen.com/payment-methods/cards/react-native-component#optional-configuration): **lookup** to suggest addresses to the shopper when they are inputing their address. ### Known Issues * For React Native v73 and earlier, `AdyenInstant` and other components do not load correctly. This issue is fixed in [v2.4.0](https://docs.adyen.com/online-payments/release-notes/#releaseNote=2024-09-11-react-native-componentsdrop-in-2.4.0) ### Changed * The example app now uses React Native v74. ## 2024-08-13 — Web Components/Drop-in — Version 6.0.3 ### New * For Riverty, the consent checkbox now includes a link to the Riverty privacy policy. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.0.3): ```sh npm install @adyen/adyen-web@6.0.3 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | ``` ``` ## 2024-08-12 — Web Components/Drop-in — Version 5.67.1 ### New * For Riverty, the consent checkbox now includes a link to the Riverty privacy policy. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.67.1): ```sh npm install @adyen/adyen-web@5.67.1 ``` ### Tab: Embed script and stylesheet ``` ``` ## 2024-08-07 — iOS Components/Drop-in — Version 5.10.0 ### New * Support for the UPI Intent flow, where the shopper can choose a UPI app to pay through. They are redirected to and complete the payment on the selected app. * For Drop-in with Sessions flow, the shopper can now remove their stored payment methods. To do so: * In the `/sessions` request, include `showRemovePaymentMethodButton`: **true**. * Set the `StoredPaymentMethodsDelegate` to `session`: ```swift dropInComponent.StoredPaymentMethodDelegate = self.session ``` * Support for the following locales: `bg-BG`,`ca-ES`, `et-EE`,`is-IS`,`lt-LT`,`lv-LV`. ### Fixed * For cards, when the shopper selects **Cancel** to exit the address input screen, the address fields no longer gets reset. ## 2024-08-06 — Web Components/Drop-in — Version 6.0.2 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed For UPI, the TypeScript type error for `formatProps` has been fixed. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.0.2): ```sh npm install @adyen/adyen-web@6.0.2 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | ``` ``` ## 2024-07-29 — Web Components/Drop-in — Version 6.0.1 *\

This release requires \Checkout API v69\ or later. We recommend that you use the latest version of Checkout API.\

* ### Fixed For PayPal, the bug where the payment didn't get finalized after the PayPal lightbox closed no longer occurs. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/6.0.1): ```sh npm install @adyen/adyen-web@6.0.1 ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | ``` ``` ## 2024-07-24 — Web Components/Drop-in — Version 6.0.0 *\

This release requires \Checkout API v69\ or later. We recommend using the latest Checkout API version.\

* ### Breaking Changes **General** * Drop-in/Components is no longer supported on Internet Explorer 11. * If you integrate with npm, we've changed [how you import Drop-in/Components](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6/#update-import-statements) to reduce the bundle size. * If you integrate with embedded scripts, we [changed how we expose the `AdyenCheckout` and Drop-in/Components on the window object](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6/?tab=dropin-step2_1#import-using-embedded-scripts). * We've changed [how you create an instance](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6/#update-creating-an-instance) of Drop-in or Component. * For the `onSubmit()` event handler, you now need to [resolve/reject an `actions` object](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6/#onsubmit-and-onadditionaldetails) to continue or halt the payment flow. * For the `onAdditionalDetails()` event handler, you now need to [resolve/reject an `actions` object](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6/#onsubmit-and-onadditionaldetails) to continue or halt the payment flow. * The `onPaymentCompleted()` event is no longer triggered for failed payments, instead the [`onPaymentFailed()` event is triggered](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6#onpaymentfailed). * The `showPayButton` parameter now defaults to true. * The `onValid()` event is removed. * The [`setStatusAutomatically` property](https://docs.adyen.com/online-payments/build-your-integration/sessions-flow?platform=Web\&integration=Drop-in\&version=5.63.0#drop-in-configuration) is no longer supported. If a payment is successful or if it fails, the component is kept in loading state and merchant must handle it accordingly. * We've changed how you style Drop-in/Components to give you more fine-grained control by using custom CSS properties. [Update your CSS styles](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6#update-your-styling) accordingly. * The `countryCode` property is now mandatory. It must be set directly in the `AdyenCheckout` configuration object, or in the [/sessions](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions) request. * The `showFormInstruction` property is no longer supported. * When instantiating `AdyenCheckout`, you can no longer set the configuration property 'installmentOptions'. It must be set in the Card Component configuration instead. * You can no longer set the configuration property `paymentMethodsConfiguration` when initializing `AdyenCheckout`. Instead, set it in the Drop-in configuration. * The `locale` in your [global configuration object](https://docs.adyen.com/online-payments/build-your-integration/sessions-flow/?platform=Web\&integration=Drop-in\&version=latest#configure) must follow the **xx-YY** format, where **xx** specifies the language, and **YY** specifies the region. Locales that are not formatted correctly will be ignored and fallback to **en-US**. See all [supported locales on our GitHub](https://github.com/Adyen/adyen-web/tree/main/packages/server/translations).\ Exception: For Arabic, the `locale` must be set to **ar**. * TypeScript types are now imported directly from the root of the package, for example: ```js import type { CardConfiguration } from '@adyen/adyen-web'; ``` **Payment method specific** Express payment methods * For [Google Pay express](https://docs.adyen.com/payment-methods/google-pay/web-component/express-checkout/), the event handler `onPaymentDataChanged` now works only when the Component configuration property `isExpress` is set to **true**. * For [Apple Pay express](https://docs.adyen.com/payment-methods/apple-pay/web-component/express-checkout/), the event handlers `onShippingContactSelected` and `onShippingMethodSelected` now work only when the Component configuration property `isExpress` is set to **true**. * For [Paypal Express](https://docs.adyen.com/payment-methods/paypal/web-component/express-checkout/), the `onShippingChange()` event handler is no longer supported. Migrate to the `onShippingAddressChange()` and `onShippingOptionsChange()` event handlers. * The `onShopperDetails()` event for PayPal is renamed to `onAuthorized()` and it must be resolved or rejected to finalize the payment. * For Google Pay, the `isAvailable()` method does not return a boolean flag anymore. Instead, the promise is resolved when the payment is available and rejected otherwise. Card payment methods * The Card Component configuration property `showBrandsUnderCardNumber` is no longer supported. * The `challengeWindowSize` configuration parameter can now be set in the `card` object within `paymentMethodsConfiguration` instead of the `threeDS2` object. * The Custom Card Component is renamed from `securedfields` to `CustomCard` and created as: ```js new CustomCard() ``` Other payment methods * For PayPal, the `onCancel()` event handler is no longer supported. To detect when the PayPal lightbox is closed, listen to the `onError` event with error type **CANCEL**. * For Klarna, the `token` property is replaced with the `authorization_token` from the [/payments/details](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments/details) request. * For Adyen Giving, you now need to integrate with the [Giving Campaign Manager Component](https://docs.adyen.com/online-payments/donations/campaign-manager-web-component/#get-details-of-donation-campaigns). * We no longer support the payment method QiwiWallet. **Partial payments** * The `onOrderCreated()` event is [renamed to `onOrderUpdated()`](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6#onordercreated-and-onpaymentmethodsrequest). ### New * [`onPaymentMethodsRequest()` is a new event](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6#onordercreated-and-onpaymentmethodsrequest), which is triggered when a partial payment is made and the associated order isn't fully paid. Use the even handler to request payment methods for a new payment. * [`onPaymentFailed()` is a new event](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6#onpaymentfailed), which is triggered when a payment fails. Previously, this event was part of `onPaymentCompleted()`. * You can now disable the final animation after a successful or failed payment in Drop-in, by setting `disableFinalAnimation` to **true**. * Shoppers can now confirm the payment by pressing the **Enter** key. If the payment has a validation issue, an error is shown in the Drop-in/Components interface. * You can customize, or prevent, the Enter keypress behavior by implementing an `onEnterKeyPressed()` event handler on `AdyenCheckout`. * Support for six more locales: Catalan (`ca-ES`), Icelandic (`is-IS`), Bulgarian (`bg-BG`), Estonian (`et-EE`), Latvian (`lv-LV`) and Lithuanian (`lt-lT`). * Support for Apple Pay Order tracking [in Drop-in](https://docs.adyen.com/payment-methods/apple-pay/web-drop-in/#optional-apple-pay-wallet-order-tracking) and [in the Apple Pay Component](https://docs.adyen.com/payment-methods/apple-pay/web-component/#optional-apple-pay-wallet-order-tracking). * Support for [tree shaking when integrating through `npm`](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6?tab=dropin-step2_1#npm-reduced-bundle-size). ### Changed * [`onPaymentCompleted()` now works for](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6#onpaymentcompleted) both Sessions and Advanced flow. * We have [replaced input field placeholder texts with permanently visible contextual elements](https://docs.adyen.com/online-payments/upgrade-your-integration/migrate-to-web-v6/#update-placeholder-texts) to enhance the accessibility and UX. You *can* still apply and customize placeholders. * For Google Pay and Apple Pay, the `onAuthorized` event is now triggered before the `onSubmit` event. The `onAuthorized` event must be resolved in order to proceed with the payment flow. * We have improved AVS checks for GooglePay and ApplePay by adding the billing address to `state.data` if available during payment method authorization. * Drop-in no longer uses radio buttons by default. * The WeChatPay timer now defaults to 30 minutes. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Drop-in/Components Node.js package](https://www.npmjs.com/package/@adyen/adyen-web): ```bash npm install @adyen/adyen-web@6.0.0 --save ``` ### Tab: Embed script and stylesheet The base URLs for the script source are different for each environment. Use the one that corresponds to your [live endpoint](https://docs.adyen.com/development-resources/live-endpoints#checkout-endpoints): | Environment | URL | | ------------------------- | ------------------------------------------------ | | Test | `https://checkoutshopper-test.cdn.adyen.com` | | Europe (EU) live | `https://checkoutshopper-live.cdn.adyen.com` | | United States (US) live | `https://checkoutshopper-live-us.cdn.adyen.com` | | Australia (AU) live | `https://checkoutshopper-live-au.cdn.adyen.com` | | Northeast Asia (NEA) live | `https://checkoutshopper-live-nea.cdn.adyen.com` | | India (IN) live | `https://checkoutshopper-live-in.cdn.adyen.com` | ```bash ``` ## 2024-07-22 — Web Components/Drop-in — Version 5.67.0 *\

This release requires \Checkout API v68\ or later.\

* ### New * For the Card Component, the `info` event now has the `configData` object that includes details about the configuration of the Component. * Google Pay now supports the `borderRadius` property. ### Fixed For installments, the text above the radio buttons or dropdown menu now shows correctly. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.67.0): ```sh npm install @adyen/adyen-web@5.67.0 ``` ### Tab: Embed script and stylesheet ``` ``` ## 2024-07-20 — React Native Components/Drop-in — Version 2.2.0 ### Breaking Changes * Starting August 31 2024, Google introduces [Target API level requirements for Google Play apps](https://support.google.com/googleplay/android-developer/answer/11926878?hl=en). If you use: * React Native **v73** or later, you do not need to take any action. * React Native **v72**, you have to: * * In `android/build.gradle`, update `compileTarget` to **34**, and set `classpath("com.android.tools.build:gradle:8.1.4”)`. * * In `android/app/build.gradle`, add `android.buildFeatures.buildConfig` = **true** to enable `buildConfig`. * React Native **v71** or earlier: * * In `android/build.gradle`, update `compileTarget` to **34**. ### New * Android Components/Drop-in version: [5.6.0](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%20Components%2FDrop-in\&version%5B0%5D=5.6.0#releaseNote=2024-07-09-android-componentsdrop-in-5.6.0). ### Fixed * Updated the `gradle.build` to fix potential compatibility issues with old and new versions of React Native. ## 2024-07-09 — Android Components/Drop-in — Version 4.13.6 *\

We recommend you use \Checkout API v71\ or later.\

* ### Fixed * On Android API versions 21 to 25, the `NoSuchMethodError` no longer occurs during the 3D Secure 2 challenge flow. ### Changed * Dependency versions: | Name | Version | | ----------------------------------------------------------------------------- | ---------- | | [Adyen 3DS2](https://github.com/Adyen/adyen-3ds2-android/releases/tag/2.2.19) | **2.2.19** | ## 2024-07-09 — Android Components/Drop-in — Version 5.6.0 *\

We recommend you use \Checkout API v71\ or later.\

* ### New * For Google Pay on Advanced flow, `onSubmit` now returns `threeDS2SdkVersion` in the `paymentMethod` object that you must pass in your [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments) request to correctly trigger the 3D Secure 2 flow. ### Fixed * On Android API versions 21 to 25, the `NoSuchMethodError` no longer occurs during the 3D Secure 2 challenge flow. * When [using R8 to shrink your code](https://developer.android.com/build/shrink-code), `CIRCULAR REFERENCE: com.android.tools.r8.utils.b: Missing class...` errors no longer occur. ### Changed * Dependency versions: | Name | Version | | ------------------------------------------------------------------------------------------------------------ | ---------- | | [Adyen 3DS2](https://github.com/Adyen/adyen-3ds2-android/releases/tag/2.2.19) | **2.2.19** | | [Android Gradle plugin](https://developer.android.com/build/releases/gradle-plugin) | **8.4.1** | | [AndroidX Fragment](https://developer.android.com/jetpack/androidx/releases/fragment#1.7.1) | **1.7.1** | | [AndroidX Compose Compiler](https://developer.android.com/jetpack/androidx/releases/compose-compiler#1.5.14) | **1.5.14** | | [Kotlin](https://github.com/JetBrains/kotlin/releases/tag/v1.9.24) | **1.9.24** | | [Kotlin coroutines](https://github.com/Kotlin/kotlinx.coroutines/releases/tag/1.8.1) | **1.8.1** | ## 2024-06-28 — React Native Components/Drop-in — Version 2.1.0 ### Fixed * For Google Pay, [configurations related to the billing and shipping addresses](https://docs.adyen.com/payment-methods/google-pay/react-native-drop-in/#optional-configuration) now work correctly. * On Android, the `Inconsistent JVM-target compatibility` build issue no longer occurs. ### New * iOS Components/Drop-in version: [5.9.0](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=iOS%20Components%2FDrop-in\&version%5B0%5D=5.9.0#releaseNote=2024-05-27-ios-componentsdrop-in-5.9.0). * Android Components/Drop-in version: [5.5.0](https://docs.adyen.com/online-payments/release-notes/?title%5B0%5D=Android%20Components%2FDrop-in\&version%5B0%5D=5.5.0). * The new iDEAL payment flow where the shopper is redirected to the iDEAL payment page to select their bank and authorize the payment. ## 2024-06-21 — Android Components/Drop-in — Version 5.5.0 *\

We recommend you use \Checkout API v71\ or later.\

* ### New * Support for the UPI Intent flow, where the shopper can choose a UPI app to pay through. They are redirected to and complete the payment on the selected app. * The new iDEAL payment flow where the shopper is redirected to the iDEAL payment page to select their bank and authorize the payment. ### Improved * Autofill support for the following: * For gift cards, the gift card number and PIN fields. * For UPI Virtual Payments, the address field. * For payment methods that use them, the address input fields. * Drop-in navigation: * Added the top navigation bar. * Disabled the dragging gesture that caused Drop-in to be dismissed. * When the shopper navigates from an additional action screen (for example 3D Secure), Drop-in is dismissed. ### Changed Dependency versions: | Name | Version | | ---------------------------------------------------------------------------------------------------------- | -------------- | | [AndroidX Compose BoM](https://developer.android.com/develop/ui/compose/bom/bom-mapping) | **2024.05.00** | | [AndroidX Lifecycle](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.8.2) | **2.8.2** | | [Material Design](https://github.com/material-components/material-components-android/releases/tag/1.12.0/) | **1.12.0** | ### Deprecated We recommend that you remove the following from your integration, because they no longer have an effect on the iDEAL payment method. * For `IdealComponent`: * `isConfirmationRequired()` * `submit()` * For iDEAL configuration: * `setViewType()` * `setHideIssuerLogos()` * `setSubmitButtonVisible()` ## 2024-06-17 — React Native Components/Drop-in — Version 2.0.1 ### Fixed * For [Expo](https://expo.dev/) v47 and later, version conflicts no longer occur. ## 2024-06-10 — Web Components/Drop-in — Version 5.66.1 *\

This release requires \Checkout API v68\ or later.\

* ### Improved * For the Sessions flow: when a fatal error occurs while setting up the session, the `onError` callback now includes the full error object. Previously, it included only a hard-coded error message. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.66.1): ```sh npm install @adyen/adyen-web@5.66.1 ``` ### Tab: Embed script and stylesheet ``` ``` ## 2024-06-03 — Web Components/Drop-in — Version 5.66.0 *\

This release requires \Checkout API v68\ or later.\

* ### New * Support for the UPI Intent flow, where the shopper on a mobile device can choose a UPI app to pay through. They are redirected to and complete the payment on the selected app. ### Fixed * For Click to Pay, previously used cards now shown above newly created cards. * For ACH, the `showPayButton` configuration is no longer ignored. ### Updating ### Tab: npm (recommended) Install this version of the [Adyen Web Node package](https://www.npmjs.com/package/@adyen/adyen-web/v/5.66.0): ```sh npm install @adyen/adyen-web@5.66.0 ``` ### Tab: Embed script and stylesheet ``` ``` ## 2024-05-31 — React Native Components/Drop-in — Version 2.0.0 ### New * Drop-in now supports the [Sessions flow](https://docs.adyen.com/online-payments/build-your-integration/), where you make a single [/sessions](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions) request. * You can now specify a locale instead of using the shopper device locale. * Support for [Expo](https://expo.dev/). * You can now use the `AdyenAction.handle()` method to handle additional actions. * For Native 3D Secure 2, you can now configure the [`requestorAppUrl`](https://github.com/Adyen/adyen-react-native/blob/develop/docs/Configuration.md#3d-security-2). * For Drop-in on iOS, you can now [configure a custom title](https://github.com/Adyen/adyen-react-native/blob/develop/docs/Configuration.md#drop-in) for the pre-selected stored payment method view.  ### Improved * For [Apple Pay](https://docs.adyen.com/payment-methods/apple-pay), you can now configure `shippingContact`, `shippingType`, `shippingMethods`, and `supportedCountries`. * The `AdyenCheckout` theme is now separated from the `AppTheme`, which makes it easier to integrate with Drop-in. ### Changed * For Android, you no longer need to have `` in your app's manifest file. ### Deprecated * For Android, `adyenReactNativeRedirectScheme` is deprecated, you can use any [intent filter](https://developer.android.com/guide/components/intents-filters). When it is required, you get a `returnUrl` in `onSubmit.data`. To get the `returnUrl`, you can also use the `await AdyenDropIn.getReturnURL()` function. ### Breaking Changes * For Android, your app theme must have [Material Components](https://developer.android.com/develop/ui/views/theming/look-and-feel) as `parent` to work with payment methods that use the **InstantPaymentComponent**, for example: ```