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, Checkout API, and Drop-in/Components for web, iOS, Android, React Native, and Flutter starting from 2020.

Get updates by RSS
Filter by
iOS Components/Drop-in
Version...
March 2025
SunMonTueWedThuFriSat
1
2345678
9101112131415
16171819202122
23242526272829
3031
Select dates
Copy url
icon
iOS Components/Drop-in v5.16.0

We recommend you use Checkout API v71 or later.

Changed
  • For native 3D Secure 2, 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.

Copy url
icon
iOS Components/Drop-in v5.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.

Copy url
icon
iOS Components/Drop-in v5.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:
    • 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: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.

Copy url
icon
iOS Components/Drop-in v5.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.

Copy url
icon
iOS Components/Drop-in v4.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.

Copy url
icon
iOS Components/Drop-in v5.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
Changed

Copy url
icon
iOS Components/Drop-in v5.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.

Copy url
icon
iOS Components/Drop-in v5.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:
      Copy code
      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.

Copy url
icon
iOS Components/Drop-in v5.9.0

We recommend you use Checkout API v71 or later.

New
  • The new iDEAL payment flow where the shopper is redirected to the iDEAL payment page to select their bank and authorize the payment.
    You must now use InstantPaymentComponent for iDEAL:

    Copy code
    let paymentMethods = session.sessionContext.paymentMethods
    // Check that the payment method is supported before showing the Component.
    guard let paymentMethod = paymentMethods.paymentMethod(ofType: .ideal) else { return }
    let component = InstantPaymentComponent(paymentMethod: paymentMethod,
    context: context,
    order: nil)
    self.currentComponent = component
    // Set the session as the delegate.
    component.delegate = session
    component.initiatePayment()
  • When shoppers select the prefix picker in the phone number input field, they can now search through the prefix list using their ISO code, prefix, or country/region name.

Known issues

iDEAL does not work in the test environment if your test Adyen merchant account is not configured to use the new payment flow. You must first contact our Support Team to configure your test merchant account.

Removed
  • IdealComponent is no longer available. Use InstantPaymentComponent instead.

Copy url
icon
iOS Components/Drop-in v4.13.0

We recommend you use Checkout API v71 or later.

New
  • The new iDEAL payment flow where the shopper is redirected to the iDEAL payment page to select their bank and authorize the payment.
Known issues

iDEAL does not work in the test environment if your test Adyen merchant account is not configured to use the new payment flow. You must first contact our Support Team to configure your test merchant account.


Copy url
icon
iOS Components/Drop-in v5.8.0

We recommend you use Checkout API v71 or later.

New

Support for Twint SDK integration through the TwintComponent module.

Changed
  • Flag icons are removed from the UI.
  • The text Country is now replaced with Country/Region.
Fixed

Fixed an issue that incorrectly cancelled successful redirect payments in some cases.


Copy url
icon
iOS Components/Drop-in v4.12.1

We recommend you use Checkout API v71 or later.

Changed
  • 3D Secure 2 SDK version: 2.4.2.
Fixed
  • The privacy manifest file issue that blocked the App Store upload process has been fixed by upgrading the 3D Secure 2 SDK version to 2.4.2.

Copy url
icon
iOS Components/Drop-in v5.7.1

We recommend you use Checkout API v71 or later.

Fixed
  • 3D Secure 2 SDK version: 2.4.2.
Breaking Changes
  • The privacy manifest file issue that blocked the App Store upload process has been fixed by upgrading the 3D Secure 2 SDK version to 2.4.2.

Copy url
icon
iOS Components/Drop-in v5.7.0

We recommend you use Checkout API v71 or later.

New
  • PrivacyInfo.xcprivacy lists all the data collected by Drop-in and Components.
  • In the country/region picker for the payment form, you can now choose if the images of flags are shown using showCountryFlags.

    For Drop-in:

    Copy code
    var style = DropInComponent.Style()
    style.formComponent.addressStyle.showCountryFlags = cardSettings.showsCountryFlags
    let dropInConfiguration = DropInComponent.Configuration(style: style)
    let dropInComponent = DropInComponent(paymentMethods: paymentMethods,
    context: context,
    configuration: dropInConfiguration)

    For Components (the Card Component, for example):

    Copy code
    let cardConfiguration = CardComponent.Configuration()
    cardConfiguration.style.addressStyle.showCountryFlags = true/false
    let cardComponent = CardComponent(paymentMethod: paymentMethod,
    context: context,
    configuration: cardConfiguration)
Changed
  • 3D Secure 2 SDK version: 2.4.1.
Breaking Changes
  • When clientKey is invalid or mismatched with the environment, PublicKeyProvider now returns a corresponding error message.

Copy url
icon
iOS Components/Drop-in v4.12.0

We recommend you use Checkout API v71 or later.

New

PrivacyInfo.xcprivacy lists all the data collected by Drop-in and Components.

Changed

3D Secure 2 SDK version: 2.4.1


Copy url
icon
iOS Components/Drop-in v4.11.2
Fixed

Copy url
icon
iOS Components/Drop-in v5.6.0
Improved
  • For all payment methods that include input fields for the shopper's address, the address input fields are now on a separate screen. This declutters the payment screen to improve user experience.
Changed
Fixed
  • For Apple Pay, when the allowOnboarding property of ApplePayConfiguration.init is set to true, the onboarding check now runs correctly.
  • In landscape mode, the search bar height no longer expands and obstructs other visual elements like the issuer list on the screen.
  • For stored card payments using Drop-in, the pay button is now enabled correctly when entering the security code with the traditional Chinese Cantonese keyboard.

Copy url
icon
iOS Components/Drop-in v5.5.0

We recommend you use Checkout API v71 or later.

New
  • When you offer installment payments, you can now show the number of installments and the amount of each installment in the picker. For example, 3x $20.
    • For Sessions flow, when you make a /sessions request, include showInstallmentAmount:true and installmentOptions. We use these values to show installment options in the picker.
    • For Advanced flow, in the InstallmentConfiguration object, set showInstallmentAmount to true when you initialize it.
  • Support for Library Evolution.
Changed

For cards, the address lookup feature now supports a 2-step lookup process (for example, used by the Google Maps API):

  1. Providing suggested addresses that might be incomplete.
  2. Optionally, making another API request to complete the suggestions.

You must change the callback:

5.4.1 or earlier 5.5.0
.lookup(LookupProvider) .lookup(AddressLookupProvider)
Fixed
  • When the shopper's phone number is included in the shopperInformation object, the pre-filled phone number prefix on the payment form automatically updates to match the correct country code.
  • Drop-in now updates the payment method list after the shopper applies a gift card, in case the available payment methods change because of the updated payment amount.
  • When you define custom localizations in your app bundle using Localizable.strings, they are now applied correctly.
  • Bizum is no longer shown as an available payment method.

Copy url
icon
iOS Components/Drop-in v4.11.1
Fixed
  • A card encryption issue no longer occurs if you use Xcode 15 when a shopper pays from a device using iOS 17.
    This fixes the issue introduced in v4.11.0.

Copy url
icon
iOS Components/Drop-in v5.4.1

We recommend you use Checkout API v70 or later.

Fixed
  • For Apple Pay using Drop-in, the Apple Pay payment form is now properly dismissed when the shopper cancels the payment.
    This fixes the issue introduced in v5.4.0.

Copy url
icon
iOS Components/Drop-in v5.4.0

We recommend you use Checkout API v70 or later.

Known issue
For Apple Pay using Drop-in, the Apple Pay payment form is not dismissed when the shopper cancels the payment.
Fixed in v5.4.1.

New
  • For redirect payment methods, when the shopper opens the current payment web page in the default browser by tapping the toolbar button, RedirectComponent now triggers ActionComponentDelegate.didOpenExternalApplication.
  • Bancontact cards are now supported in the CardComponent.
  • Dual-branded Bancontact cards now allow brand selection in the BCMCComponent.
Changed
Currency code Minor units
ISK 2
RSD 2
MRU 2
GHS 2
Fixed
  • A problem no longer occurs where, when the shopper cancelled a payment in progress, DropInComponentDelegate didn't call didCancel.
  • Cash App payments are no longer refused because of the missing customerId field in the /payments/details request.
  • The SwiftUI helper now supports AlertViewController.
  • The formValueItemView no longer has a memory leak.

Copy url
icon
iOS Components/Drop-in v4.11.0

We recommend you use Checkout API v70 or later.

Known issue
If you use Xcode 15, an issue with card encryption sometimes occurs when shoppers pay from a device using iOS 17.
Fixed in v4.11.1.

Changed
  • 3D Secure 2 SDK version: 2.3.3
  • Support for Xcode 15.
    • @Observable renamed to @AdyenObservable.
  • iOS 11 is no longer supported because it is not supported by Xcode 15.

Copy url
icon
iOS Components/Drop-in v4.10.5

We recommend you use Checkout API v70 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • Bancontact cards are now supported in the CardComponent.
  • Dual-branded Bancontact cards now allow brand selection in the BCMCComponent.
Changed
  • 3D Secure 2 SDK version: 2.3.2. Includes enhancements to authentication flows and improved error handling during the in-app 3D Secure 2 challenge.
  • The minor units for the following currencies:

    Currency code Minor units
    ISK 2
    RSD 2
    MRU 2
    GHS 2

Copy url
icon
iOS Components/Drop-in v5.3.0

We recommend you use Checkout API v70 or later.

If you use Xcode 15, use v5.4.0 or later for compatibility.

Removed
Copy code
func didComplete(with resultCode: SessionPaymentResultCode, component: Component, session: AdyenSession)

Use the new didComplete method with the AdyenSessionResult object instead.

Changed
  • The countryCode property of AdyenSession.Context is now optional to allow not including it in the /sessions request. Because this property isn't meant to be read, this breaking change shouldn't cause any build errors.
  • 3D Secure 2 SDK version: 2.3.2. Includes enhancements to authentication flows and improved error handling during the in-app 3D Secure 2 challenge.
New
  • The Session delegate has a new didComplete method with the AdyenSessionResult object. This ensures that the callback is compatible with potential backend changes.

    Copy code
    func didComplete(with result: AdyenSessionResult, component: Component, session: AdyenSession)

    This replaces the removed didComplete function.

  • For Apple Pay, ApplePayConfiguration now supports the capabilities of PKPaymentRequest. Pass PKPaymentRequest when initializing Apple Pay. For example:

    Copy code
    public init(paymentRequest: PKPaymentRequest, allowOnboarding: Bool = false)
  • You can now set the formatting for monetary values. Use the locale property on LocalizationParameters.

  • You can now enforce a specific locale and formatting for monetary values regardless of the locale used by the shopper's device. Use LocalizationParameters(enforcedLocale: MY_LOCALE).

  • You can now configure the payment form to suggest billing addresses when the shopper starts to enter their address. Set the configuration.card.billingAddress.mode to .lookup(handler:).

  • For gift cards using Drop-in, you can now configure the visibility of the security code field. Set showsSecurityCodeField (boolean) in the giftcard payment method configuration.

Improved
  • When the shopper selects a country and region in the payment form, the selection is now fullscreen and includes a search input field where the shopper can enter a value to search for.
  • For cards:
    • The address input form now shows on a separate screen.
    • Icons now have accessibility labels. When the shopper selects the Pay button, and an input field is invalid, focus moves to the field.

Copy url
icon
iOS Components/Drop-in v4.10.4

We recommend you use Checkout API v70 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

New

Live environment for the Asia Pacific and South East region. Set environment to Environment.liveApse.

Changed
  • The Icelandic Krona currency (ISK) now has the number of minor units according to ISO-4217.
  • 3D Secure 2 SDK version: 2.3.1.
Fixed
  • For gift cards, the shopper can now enter more than 20 digits in the Card number field.
  • In DropInComponent.Configuration, when allowsSkippingPaymentList is set to true, Drop-in now stays in the loading state until the shopper cancels or completes the payment.

Copy url
icon
iOS Components/Drop-in v5.2.0

We recommend you use Checkout API v70 or later.

If you use Xcode 15, use v5.4.0 or later for compatibility.

New
  • Payment methods:

    • CashApp Pay. Payment method type: cashapp.
    • Titres-Restaurant (French Meal Vouchers).
      • Apetiz (Natixis). Payment method type: mealVoucher_FR_natixis.
      • Sodexo. Payment method type: mealVoucher_FR_sodexo.
      • Up Déjeuner. Payment method type: mealVoucher_FR_groupeup.
  • For Drop-in, you can now configure the ACH Direct Debit payment method. When creating a Drop-in configuration, set the following in ach properties:

    • showsStorePaymentMethodField
    • showsBillingAddress
    • billingAddressCountryCodes
  • For Apple Pay, you can now choose to only accept either debit cards or
    credit cards.

Changed
  • The Icelandic Krona currency (ISK) now has the number of minor units according to ISO-4217.
  • 3D Secure 2 SDK version: 2.3.1.
Fixed
  • For gift cards, the shopper can now enter more than 20 digits in the Card number field.
  • Drop-in now shows the correct size when used in split screen mode on iPad or on a Mac application designed for iPad.
  • For alerts under input fields, you can now see full messages that do not fit on one line.
  • For UPI, when in dark mode:
    • For QR codes, the image now shows correctly. Previously, the image appeared completely black.
    • The background color is now black.
    • The background color of the search bar is now black.
Deprecated
  • The amountToPay property of PaymentComponentData. Use the amount property instead.

Copy url
icon
iOS Components/Drop-in v5.1.0

We recommend you use Checkout API v69 or later.

If you use Xcode 15, use v5.4.0 or later for compatibility.

New
  • Payment methods:
    • PayNow. paymentMethod.type: paynow.
    • DuitNow. paymentMethod.type: duitnow.
    • Open banking UK. paymentMethod.type: openbanking_UK.
    • UPI:
      • UPI Collect: The shopper pays by entering their virtual payment address (VPA). paymentMethod.type: upi_collect.
      • UPI QR: The shopper pays by scanning a QR code. paymentMethod.type: upi_qr.
  • For Drop-in, you can now stop the loading state after the shopper selects the Pay button. By doing this, you can allow the shopper to try the payment again instead of dismissing Drop-in if you get an error during the payment. Use the new stopLoading method.
  • For QR code payment methods, the QR code screen now has a Cancel button instead of a cross (x) button in the corner for the shopper to cancel the payment.
Fixed
  • For cards, CardComponentDelegate.didChangeBIN(:component:) now provides the 8-digit bank identification number (BIN) when the card number is 16 or more digits. Previously, it only provided the 8-digit BIN when the card number was 17 or more digits.
  • In DropInComponent.Configuration, when allowsSkippingPaymentList is set to true, Drop-in now stays in the loading state until the shopper cancels or completes the payment.
  • When the shopper submits a payment, the billing address that the shopper entered is now submitted. Previously, when the selected country/region didn't include a state or province field, the submitted value was nil.
  • For stored payment methods, the section header now gets the style from ListSectionHeaderStyle.
  • When a list of issuers is shown during checkout, the background is no longer transparent.

Copy url
icon
iOS Components/Drop-in v4.10.3

We recommend you use Checkout API v69 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Fixed
  • Apple Pay no longer prevents Drop-in from closing.
  • Apple Pay now shows the full list of networks supported by the shopper's iOS device.

Copy url
icon
iOS Components/Drop-in v4.10.2

We recommend you use Checkout API v69 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Fixed
  • When the shopper submits a payment, the billing address that the shopper entered is now submitted. Previously, the submitted value was nil if:
    • there was no input in the State/Province field.
    • there was no input in the Apartment/Suite field.
  • The Drop-in/Component now detects when a shopper enters an invalid email address in the payment form. Previously, sometimes the Drop-in/Component detected invalid email addresses as valid.
  • When the shopper enters a card number in the payment form, and a dual branded card is detected, we no longer automatically select a brand.

Copy url
icon
iOS Components/Drop-in v5.0.0

We recommend you use Checkout API v69 or later.

If you use Xcode 15, use v5.4.0 or later for compatibility.

New
  • Using the /sessions endpoint, you can integrate Drop-in and Components with a single API call.
    If you already integrated using the /paymentMethods, /payments, and /payments/details endpoints, you can continue using this back end setup in version 5.0.0.
  • When using the /sessions endpoint, the new AdyenSession object handles all actions after the payment session is created.
  • For Drop-in you can now customize the payment method title or subtitle in the payment methods list. Use the new function overrideDisplayInformation(ofPaymentMethod:with:) in PaymentMethods.
  • APIContext.init(environment: AnyAPIEnvironment, clientKey: String) now throws exception if the client key is invalid.
  • Analytics feature turned on by default. Find out what we track and how you can configure it.
    finalBIN that provides the BIN when the shopper selects the Pay button.
  • The PaymentMethodType enum includes supported payment methods. This replaces using strings for payment method types.
  • For Drop-in, you can now configure the Boleto payment method using the boleto property.
  • Payment methods:
    • Atome.
    • Online banking Poland.
    • Online banking Czech Republic.
  • For ACH Direct Debit payments, the shopper can now save their payment details.
  • For cards:
    • CardComponentDelegate.didChangeBIN(:component:) now provides the 8-digit BIN when the card number is more than 16 digits.
    • CardComponentDelegate.didSubmit(lastFour:finalBIN:component) now has the parameter
  • The Apple Pay Component now supports shipping options.
  • Support for DocC documentation.
  • Support for delegated authentication.
Fixed
  • You can now configure the 3D Secure 2 Component with threeDSRequestorAppURL.
Changed

The Observer is protocal has been renamed to AdyenObserver.

Breaking Changes

Follow the steps in the migration guide if you are upgrading your integration from an earlier version.


Copy url
icon
iOS Components/Drop-in v4.10.1

We recommend you use Checkout API v67 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Fixed
  • The ViewControllerPresenter SwiftUI helper is now compatible with iOS 16.
  • For the stored cards, shoppers can now only enter 4 digits in the CVC input field if the card brand is American Express. Previously 4 digits were accepted for other card brands also.
  • The Google Pay payment method is now blocked and is no longer shown.

Copy url
icon
iOS Components/Drop-in v4.10.0

We recommend you use Checkout API v67 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

New

For 3D Secure 2.2.0, the threeDSRequestorAppURL parameter is automatically populated with the returnUrl value from the /payments request.

Removed

The URL extension. It caused conflict with the code in some integrations.

Changed

The properties in RedirectDetails are now public.

Fixed

A successful QR code payment now always triggers a callback.


Copy url
icon
iOS Components/Drop-in v4.9.0

We recommend you use Checkout API v70 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Deprecated

The finalizeIfNeeded(with: Bool) method. Use finalizeIfNeeded(with success: Bool, completion: (() -> Void)?) instead.

New

Successful Apple Pay payments are now finalized with finalizeIfNeeded(with success: Bool, completion: (() -> Void)?), which increases conversion rates.


Copy url
icon
iOS Components/Drop-in v4.8.0

We recommend you use Checkout API v67 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Improved
  • For the Card Component, use the new billingAddressRequirementPolicy parameter in the configuration object to specify card brands for which the billing address field is optional.
Fixed
  • For Drop-in, when you make a partial payment with a gift card and select another payment method, the payment button now shows the remaining amount.
  • For Drop-in, you can now use Apple Pay to complete a partial gift card payment.
  • For the Apple Pay Component, the PaymentData.amount passed from the SDK to the didSubmit callback is no longer nil. This fixes the issue introduced in v4.0.0.
Deprecated

The URL extension. This shouldn't affect your integration because this is an internal code change.

Removed

In the RegionRepository class, the functions getSubRegions and getCountries are removed. This shouldn't affect your integration because this is an internal code change.


Copy url
icon
iOS Components/Drop-in v4.7.3

We recommend you use Checkout API v67 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Fixed
  • Fixed a bug where country/region picker was being shown briefly after selecting Pay.
Improved
  • Upgraded the 3D Secure 2 SDK version to v2.2.6.
  • The errors for invalid form fields are now read out by screen readers.
  • Prevent conflicts with the host application bundle by specifying the bundle when initializing any internal SDK.

Copy url
icon
iOS Components/Drop-in v4.7.2

We recommend you use Checkout API v67.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Improved
  • Upgraded the 3D Secure 2 SDK version to v2.2.5.
Fixed
  • If you're using a custom localization, the stored card component now also inherits it.

Copy url
icon
iOS Components/Drop-in v4.7.1

We recommend you use Checkout API v67 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Fixed
  • You can now use more than one client key for your integration, for example, if you need different credentials for some merchant accounts.
  • Fixed the known issue from v4.5.0 where Cartes Bancaires did not work on Apple Pay.

Copy url
icon
iOS Components/Drop-in v4.7.0

We recommend you use Checkout API v67 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • New supported payment method: ACH Direct Debit.
  • For an API-only integration, you can now use the BankDetailsEncryptor to encrypt bank details (account number and routing number). This is required for ACH.
  • For the Card Component, you can configure the countries/regions in the billing address drop-down menu using billingAddressCountryCodes.
Changed
  • Moved the WeChat binary from the AdyenWeChatPay module to an external repository. If you're using WeChat Pay with Carthage, add AdyenWeChatPayInternal to your project. If you're using WeChat Pay with CocoaPods and Swift Package Manager, the change happens automatically as part of the update.
Improved
  • For the Card Component, the focus moves to the next field when the entered card number reaches the expected length.
  • If testing Apple Pay using the Simulator, you get an invalidToken error. The error description now explains that you must use a device instead.
  • Increased the reliability of app-to-app redirect detection by increasing the delay for the BrowserComponent.
  • Update the WeChat Pay Component to use WeChat SDK 1.9.2.
Fixed
  • Apple Pay Component no longer calls didFail for a successful payment. This used to happen if you didn't dismiss the Apple Pay view immediately after calling finalizeIfNeeded(with: success).
  • Text fields, except the card number and CVC, now allow the system default input options.

Copy url
icon
iOS Components/Drop-in v4.6.1

We recommend you use Checkout API v67 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Fixed
  • Values entered in the card number and CVC fields can no longer be copied or shared.
  • For stored card payments, the CVC field value is now cleared when the shopper cancels or an error happens.

Copy url
icon
iOS Components/Drop-in v4.6.0

We recommend you use Checkout API v67 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • BACS Direct Debit is now supported through a native flow.
  • On Drop-in, you can configure if you want to show the preselected stored payment method using allowPreselectedPaymentView.
Fixed
  • Fix NSLayoutConstraint errors in the debug log.

Copy url
icon
iOS Components/Drop-in v4.5.0

We recommend you use Checkout API v67 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • On Drop-in, the allowsSkippingPaymentList flag lets you skip the screen with the list of payment methods, if there is only one payment method available to the shopper. For example, if card is the only available payment method, the shopper will be taken directly to the card details input screen.
  • On Drop-in, you can now customize the screen with the Apple Pay button using DropInComponent.Style.applePay.
Improved

We added support for the following card networks in Apple Pay:

  • Cartes Bancaires (cartesBancaires) in France.
  • MADA (mada) in the Middle East.
Fixed
  • Card brand detection for dual-branded cards is now based on the first 11 digits of the card number.
Known issues

Copy url
icon
iOS Components/Drop-in v3.9.1

If you use Xcode 15, use v4.11.1 or later for compatibility.

Fixed
  • The encrypted token returned by CardEncryptor.Card.encryptedToToken() now also encodes the time stamp for when the token was created.

Copy url
icon
iOS Components/Drop-in v3.9.0

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • You can now use CardEncryptor.Card.encryptedToToken() to encrypt all card details as a single token.
Improved
  • Upgraded the 3D Secure 2 SDK version to v2.2.4..
  • The CardDetails object now contains the version of the 3D Secure SDK in threeDS2SDKVersion.

Copy url
icon
iOS Components/Drop-in v4.4.0

We recommend you use Checkout API v67 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • For dual-branded cards, the Card Component now renders both brands, and allows the cardholder to choose the brand they want to pay with.
  • You can now prefill shopper information for card payments. You can prefill the cardholder name, billing address, postal code and social security number, by injecting it when creating the component.
  • On Drop-in, you can now allow shoppers to remove stored cards. Implement StoredPaymentMethodsDelegate and set
    paymentMethodListConfiguration.allowDisablingStoredPaymentMethods to true in the Drop-in configuration.
  • For the Card Component UI, once the card brand is detected, the supported card brand logos become more transparent to make them less prominent.
Improved
  • Upgraded the 3D Secure 2 SDK version to v2.2.4.
Fixed
  • Shoppers can no longer enter invalid characters in the checkout form.
  • Fixed an issue with the Drop-in slide-in animation.
  • If there's a network error when polling for the status of a payment with action.type: await, Drop-in/Components now does another check before returning a failure response. This applies to payment methods where the shopper needs to go to another app to complete the payment, for example BLIK and MB WAY.

Copy url
icon
iOS Components/Drop-in v3.8.6

If you use Xcode 15, use v4.11.1 or later for compatibility.

Fixed
  • Fixed an issue where turning on both Reduce motion and Prefer cross-fade transitions accessibility settings, caused the card component fields to not be visible.
  • Drop-in and Component now compile for Any iOS Device when using Xcode 13.

Copy url
icon
iOS Components/Drop-in v4.3.0

We recommend you use Checkout API v67.

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • Doku, Affirm, MB WAY and Japanese conveninence store payments now support prefilling the shopper information in the payment form. You can prefill shopper infromation by injecting it when creating the component.
  • Added translations for the warning text the shopper sees when they enter a card brand you do not support.
  • For shoppers who do not have cards set up on Apple Pay, use allowOnboarding to either:
    • Allow shoppers to set up Apple Pay by going through the Apple Pay onboarding.
    • Not show Apple Pay in the checkout form.
Improved
  • The Boleto Component now allows shoppers to edit the prefilled billing address.
Fixed
  • Fixed an issue with form views freezing when updating the layout.

Copy url
icon
iOS Components/Drop-in v4.2.0

We recommend you use Checkout API v67 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • New supported payment method: Multibanco.
  • The Card Component now allows you to accept credit card payments in installments using InstallmentConfiguration.
  • Shoppers can now dismiss pickers using the new Done button.
Changed
  • If you're using Objective-C, we renamed TextField to ADYTextField to avoid naming conflicts.
Improved
  • The Encryption Component now uses JSON Web Encryption (JWE) with RSA OAEP 256 and AES CBC 256 with HMAC SHA 512. You do not need to make any changes to your integration.
  • The Card Component now shows an error message to the shopper if the card brand they are using is not supported.
Fixed
  • Fixed a UI bug where only part of the Pay button was visible.
  • Fixed an issue with socialSecurityNumber where setting it to show would still hide the field based on the card's BIN.

Copy url
icon
iOS Components/Drop-in v4.1.0

We recommend you use Checkout API v67.

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • New supported payment methods: Affirm, OXXO.
  • The Card Component now has support for:
    • Korean card payments through KCP.
    • Brazillian card payments that require the social security number.
    • UK addresses.
  • Shoppers can now add vouchers to Apple Wallet.
  • Get the last 4 digits of the entered card number using didSubmit(lastFour:component:).
Improved
  • If a shopper enters card data and then closes the payment screen, the component now clears the values for improved security.
  • The Card Component now runs validation on optional CVC fields if the shopper enters a value.
  • Disabled Luhn checks for private label cards (also known as white label cards), because the check fails even if the card number is valid.
  • The card number field now has a numeric keypad for input.
  • The Boleto Component has improved validation for social security numbers.
  • There are smoother transitions between Drop-in screens.
  • Redesigned the Drop-in UI for iPad so that it is responsive to screen size and feels native to the iPad.
  • Redesigned the UI for voucher payment methods to make it easy for shoppers to find the call to action.
  • Added a README.md file for the demo projects.
  • Updated the 3D Secure SDK to v2.2.3.
  • Moved the networking layer into a separate framework as a dependency.
Fixed
  • You can now use CocoaPods on M1 Mac devices.
  • Fixed a bug where card brand logos were not showing up if the shopper deleted the initial card number and entred a value again.
  • Single digit house numbers no longer fail validation.

Copy url
icon
iOS Components/Drop-in v4.0.0

We recommend you use Checkout API v67.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Breaking Changes
  • Removed support for iOS 10.0.
  • The new minimum required TLS version is 1.2.
  • iOS Components has a new module structure.
  • Each component initialization requires an instance of apiContext, which specifies the client key and the environment.
  • Changed how the end of a component flow is handled.
  • Renamed the payment method configuration objects.
  • In the Adyen module, the Amount object now adopts the Codable protocol.
  • Moved the payment property from PresentableComponent to PaymentComponent.
  • Specifying the country code is now required for the Payment object.
  • Moved the Amount property outside of the Payment object.
  • The didCancel method from DropInComponentDelegate now returns PaymentComponent instead of PresentableComponent.
  • Moved card configuration to the CardComponent.Configuration object.
  • Moved Apple Pay configuration to the ApplePayComponent.Configuration object.
  • Moved the payment parameter to the ApplePayComponent.Configuration constructor.
  • Changed how you specify supported Apple Pay card networks.
  • The Apple Pay token is now a base64-encoded string. This replaces the plain text JSON format.
  • To proccess voucher payments your app's Info.plist must contain NSPhotoLibraryAddUsageDescription.
  • Renamed DropInActionComponent to AdyenActionComponent and moved it to AdyenActions module. This allows you to use the component outside of AdyenDropIn.
  • Renamed AdyenActionComponent.perform() to AdyenActionComponent.handle() for consistency with other action components.
  • To present the redirect component UI, you now need to set RedirectComponent.presentationDelegate.
  • The styles for all action components are now grouped under ActionComponentStyle.

Have a look at the migration guide for details about the more complex breaking changes.

Removed
  • Deprecated classes, functions, properties.
  • disableCloseButton from present(component: PresentableComponent) in PresentationDelegate.
  • cancelHandler from the ApplePayComponent.
  • cancelCallback from the Apple Pay component. Use the didFail(with error: Error, from component: PaymentComponent) function with ComponentError.cancelled instead.
Changed
  • paymentData is now optional in RedirectAction, ActionComponentData and RedirectComponent. This is to support the removal of paymentData starting Checkout API v67.
New
  • The ThreeDS2Component supports the new 3D Secure flow from Checkout API v67. The old flow is still supported if you are using an API version earlier than v67.
  • VoucherComponent handles actions for voucher payment flows, for example Doku Alfamart.
  • QRCodeComponent to handle payment methods that use QR codes, like PIX.
  • DropInComponent now has the cardComponentDelegate property.
  • DropInComponentDelegate now has the didOpenExternalApplication(component:) callback which notifies you about redirects to an external app.
  • DropInDelegate.didSubmit now has a PaymentMethod object to allow you to identify which payment method is being submitted.
  • didComplete(from component: DropInComponent) method for DropInComponentDelegate and ActionComponentDelegate.
  • Support for right-to-left layout.
  • Arabic (international) is now a supported language.
  • Adds support for stored payment details for BLIK.
  • You can configure button border color and width using ButtonStyle.

Payment method support:

  • Pix, PixComponent
  • Boleto, BoletoComponent
  • Indonesian bank transfers and cash payments at convenience stores through DokuComponent.
  • Japanese voucher payments through econtext:
    • At Seven Eleven stores, SevenElevenComponent.
    • At other convenience stores, EContextStoreComponent.
    • Using ATM machines, EContextATMComponent.
    • Online, EContextOnlineComponent.
Improved
  • Prevent leaking API keys when URL responses are cached.
  • Added CVC length validation for the stored cards component.
  • You can now use CardEncryptor to encrypt individual card fields, for example CVC or expiry month.
  • Added assertion validation for country code and currency code.
  • Improved accuracy for card brand detection.
  • Added billing address fields to the card component.
  • GiftCardComponent now has native support for full and partial payments using gift cards.
  • Uses a continous curve by default for rounding corners.
  • You can now control the position of the title and Cancel button for DropIn.
  • You can now add a custom image to the Cancel button.
  • Added a configuration screen to the UIKit and SwiftUI demo apps so you can change configuration fields during runtime.
Fixed
  • The MBWayComponent now shows Portugal and Spain in the phone prefix dropdown list of phone extensions.
  • Fixed a bug where gift card payment methods had a missing logo.
  • Fixes localization warning when using Swift Package Manager.
  • For Swish redirects, you now get all the query parameters in returnUrlQueryString.
  • Fixed an issue where users couldn't scroll properly through a form.
Known issues

For the Apple Pay Component, the `PaymentData.amount passed from the SDK to the didSubmit callback is nil. Fixed in v4.8.0.


Copy url
icon
iOS Components/Drop-in v3.8.5

Deprecated

This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Improved
  • The Card Component has better card type detection for Diners cards.
  • Added a postal code field to the Card Component.
Fixed
  • Drop-in now shows the Apple Pay button according to Apple's Human Interface Guidelines.
  • The BCMC Component no longer shows the additional large title with the component's name on Drop-in.

Copy url
icon
iOS Components/Drop-in v3.8.4

This release requires Checkout API v52 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Improved

For gift card payments, the Drop-in now shows a branded icon for each available gift card.


Copy url
icon
iOS Components/Drop-in v3.8.3

This release requires Checkout API v52 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

Fixed
  • Fixed a bug where custom localization was not being applied to the AwaitComponent.

Copy url
icon
iOS Components/Drop-in v3.8.2

If you use Xcode 15, use v4.11.1 or later for compatibility.

Fixed
  • Removed a bug in the Apple Pay Component where delegate.didFail() was sometimes called for a successful transaction.
  • The Apple Pay icon in the Drop-in payment methods list is now compliant with Apple guidelines. This means any customizations in ListItemStyle are not applied to the Apple Pay icon.

Copy url
icon
iOS Components/Drop-in v3.8.1

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • For stored cards, you can now show or hide the CVC field separately from the card form. To do this, use PaymentMethodsConfiguration.CardConfiguration.stored.showsSecurityCodeField.
Fixed
  • Fixed an issue where the public delegate property of the UILabel could clash with code elsewhere in your integration.

Copy url
icon
iOS Components/Drop-in v3.8.0

This release requires Checkout API v52 or later.

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
Deprecated

We are deprecating the following classes and parameters:

  • Header section: showsLargeTitle and FormHeaderItem.
  • Footer section: FormFooterItem, FormFooterItemView and FormFooterStyle. Use FormButtonItem and FormLabelItem instead.
Improved
  • Xcode 12 support for CocoaPods and Carthage.
  • The card encryption code has been rewritten in Swift.
  • You can now hide the CVC field for stored card payments. To do this in:
    • Drop-in, set PaymentMethodsConfiguration.card.showsSecurityCodeField to false.
    • Components, set CardComponent.showsSecurityCodeField to false.
  • We removed the footer note from SEPADirectDebitComponent to bring it in line with other Adyen frontend libraries.
  • When you are doing zero-value auth, the submit button text is now Confirm preauthorization.
Fixed
  • Dismissing ApplePayComponent now correctly invokes the callback.
  • Canceling the web view using a swipe down now calls RedirectComponent.delegate.
  • All card types now appear as an icon once you start typing a card number and the card type is detected.
  • We fixed an issue where AdyenWeChatPay.xcscheme wasn't being tracked to build AdyenWeChatPay.framework on Carthage.

Copy url
icon
iOS Components/Drop-in v3.7.0

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • New supported payment method: MB WAY, MBWayComponent.
  • Added the AwaitComponent to handle the await action type for payment methods like MB WAY.
  • Added the client key to remove the need for configuring the cardPublicKey in your integration. The client key fetches your client encryption public key automatically from your Customer Area.
  • Enabled programmatic dismissal for the RedirectComponent using the dismiss(animated:completion:) method.
  • Added a closure callback to the ApplePayComponent which will be called when the user closes the payment sheet.
  • Added support to exclude card brands from the ApplePayComponent.
  • Support for JCB cards in the ApplePayComponent.
  • Enabled customisation for the presentation style of the RedirectComponentby adding modalPresentationStyle to RedirectComponentStyle.
  • Added didCancel(component:from:) to the DropInComponentDelegate to call back client code when a managed component is dismissed by the shopper.
  • Updated the 3D Secure SDK to v2.1.0-rc6.
Improved
  • More accurate card brand detection for the CardComponent using the new client key.
Known issues
  • The clientKey must be set in instances of CardComponent and BCMCComponent even when you use the initializer that receives the client key.

Copy url
icon
iOS Components/Drop-in v3.6.0

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • You can now choose to show or hide the security code field, and we added a delegate for onBrand and onBin to the Card Component.
  • AnyCardPaymentMethod now contains CardFundingSource.
  • When the app goes to the background, sensitive form components are blurred in the UI.
  • You can now customize rounded corners, and we added a customized tintColorand separator.
  • We introduced a new issue type Assistance needed on GitHub.
  • We have enabled dynamic font adjustments. When iPhone users change the font size in their settings, our SDK now supports that.
Improved
  • We now accept card expiry dates up to 30 years in the future when we validate card data.
  • We made the AmountFormatter public and added a helper function to convert major unit double values into minor unit Int values.
  • We enabled a loading state for the PaymentMethodListComponent.
  • We improved warnings, tests coverage, documentation and translation.
Fixed
  • While a payment is in progress, you cannot cancel a payment using Drop-in and the open all button is disabled.
  • We adjusted the preselected payment method component height for iOS 10 and fixed bug with the iOS 10 PreselectedComponent.
  • We fixed the background for ListItemView, focusing on CVC field and navigation glitches for half-screen presentation.
Breaking Changes
  • barTintColor and barBackgroundColor in NavigationStyle have been deprecated.
  • We currently present Redirect from the top most viewController on keyWindow and we deprecated RedirectComponent.presenterViewController.

Copy url
icon
iOS Components/Drop-in v3.5.0

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • The browserInfo is now included in the PaymentComponentData returned by Drop-in/Component.
  • We added UI customization options to the preselected payment screen rendered by Drop-in.
  • Inline validation for text entry is now supported for the Card Component, the SEPA Direct Debit Component, and others.
Fixed
  • The Redirect Component can now deal with a native app redirect.
  • We fixed an issue where the Apple Pay Component would freeze in the payment screen rendered by Drop-in.
  • We fixed an issue where the keyboard would cover the UI.

Copy url
icon
iOS Components/Drop-in v3.4.1

If you use Xcode 15, use v4.11.1 or later for compatibility.

Fixed

The CardSecurityCodeValidator and CardSecurityCodeFormatter are now public.


Copy url
icon
iOS Components/Drop-in v3.4.0

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • New supported payment methods: WeChat Pay, Qiwi wallet
  • Drop-in has a new, half-screen presentation style.
  • The Card Component shows a visual hint for the location of the CVC/CVV on the card.
  • Support for website cross-origin isolation using COOP and COEP.
Improved
  • Drop-in shows the first available stored payment method prominently.
  • We improved the card brand recognition by the Card Component.
  • PaymentMethodDetails now allows encoding without access to the concrete type.
  • You can now use the Apple Pay Component to collect the billing and delivery address of the shopper.
Fixed
  • The Card Component now only allows card expiry dates from 3 months in the past to 15 years in the future.
  • The Card Component no longer crashes when receiving non-numerical input.

Copy url
icon
iOS Components/Drop-in v3.3.0

If you use Xcode 15, use v4.11.1 or later for compatibility.

New
  • We added options for customizing the Component appearance, for example with fonts and text colors.
  • You can now specify a custom localization key separator.
Fixed

We fixed an issue where a custom localization table name would apply to default localizations.