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.
Release notes
Learn about the latest updates to our API, and Drop-in/Components for web, iOS, and Android.
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- You can now offer Apple Pay on third-party browsers. See offering Apple Pay on the web to learn more.
- 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.
- 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 guidelines. - For Google Pay, an error is thrown when the configuration is missing the required merchant ID.
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- Supported payment method: PayTo. Payment method type: payto.
- 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 theCustomCardConfiguration
type. - For Google Pay: the
challengeWindowSize
type has been added to theGooglePayComponent
TypeScript interface.
- For Google Pay: when you call
reject
on theonClick
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.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.9.0
We recommend you use Checkout API v71 or later.
- For the address lookup feature:
- 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.
-
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
inonError
. -
The minimum supported SDK versions:
Name Version Compile SDK version 35 Target SDK version 35 -
Dependency versions:
Name Version AndroidX Activity 1.10.0
AndroidX RecyclerView 1.4.0
AndroidX Activity Compose `1.10.0
Android Gradle Plugin 8.8.0
- For Twint with Sessions flow, setting
storePaymentMethodMode
: enabled now correctly stores the payment method. - For the address lookup feature, when selecting a different address, it now correctly updates the input fields on the payment form.
- 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.
- 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.
- 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.
- 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.
We recommend you use Checkout API v71 or later.
- 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.
- 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.
For iDEAL, the shopper now gets redirected to an iDEAL-hosted page to select their issuer and finish the payment.
- For iDEAL, the shopper now gets redirected to an iDEAL-hosted page to select their issuer and finish the payment.
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- Style issues no longer occur due to font scaling, because
rem
is now used for the font size unit.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.8.0
We recommend you use Checkout API v71 or later.
- 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 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.
-
For native 3D Secure 2, 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.
- If yes, you do not need to make any changes to your integration. You can remove the
-
Dependency versions:
Name Version Android Gradle Plugin 8.7.3 AndroidX Compose BoM 2024.12.01 AndroidX ConstraintLayout 2.2.0 AndroidX Lifecycle 2.8.7 AndroidX Lifecycle ViewModel Compose 2.8.7 KotlinX Coroutines Play Services 1.9.0 -
We are changing the default branch of our SDK repository from
develop
tomain
. If you use our SDK repository and work with thedevelop
branch, we recommend to switch tomain
. Thedevelop
branch will be removed within the next few weeks.
-
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
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- For Trustly, missing translations have been added.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.71.2
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- Added tracking for API errors for internal endpoints 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.
- 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
attributebuttonRadius
is 0, it no longer fails to be passed to thecreateButton
function. - The Klarna Component now initializes the Klarna Widget SDK correctly. This fixes the known issue from v6.6.0.
- For Trustly, missing translations have been added.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.7.0
We recommend that you use Checkout API v71 or later.
- When using Drop-In: the
maxIssuerNumber
for Twint can now be set.
- 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.
- 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.
- iOS Components/Drop-in version: 5.14.0.
- Android Components/Drop-in version: 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 containssessionResult
. - You can now make partial payments with Drop-in also on the Advanced flow.
- For the Card Component, improved the dynamic viewport.
- Removed the alert message that appeared when deleting a stored payment method fails.
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- The Klarna Component encounters an error when initializing the Klarna Widget SDK. Fixed in v6.7.0.
- For the online banking payment methods in Slovakia and the Czech Republic, bank logo icons now appear in the list of banks.
- 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, 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.
- 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.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.6.0
We recommend you use Checkout API v71 or later.
- Payment method: Pay by Bank US. Payment method type: paybybank_AIS_DD.
-
Dependency versions:
Name Version Android Gradle Plugin 8.7.1 AndroidX Fragment 1.8.5 AndroidX Activity 1.9.3 AndroidX Autofill. 1.3.0-beta01 AndroidX Annotation. 1.9.1. AndroidX Compose Activity 1.9.3 AndroidX Compose BOM 2024.10.00 AndroidX Lifecycle 2.8.6 AndroidX Lifecycle ViewModel Compose 2.8.6
- 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.
We recommend you use Checkout API v71 or later.
-
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. InTwintActionComponent.Configuration
, set the newmaxIssuerNumber
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.
- 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.
- For Titres-Restaurant meal vouchers, the correct
type
andbrand
values are now included in the payment details.
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- For cards, when the
expiryDate
is only one digit, theonBlur
validation now gets triggered.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.5.1
We recommend you use Checkout API v71 or later.
- 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.
- Address data is now correctly saved to
We recommend that you use Checkout API v71 or later.
- Support for tokenization in Twint payments, allowing shoppers to securely save their Twint payment details for future transactions.
- 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.
- CashAppPay SDK Version: 0.6.2
- 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.
- 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 URL.
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- When creating a production build, the
auto.js
code is no longer tree-shaken by bundlers. - For integrations using the address lookup feature 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) 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.
- For Payconiq, the UI now includes instructions for the QR code, and an unused button label is now removed.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.5.0
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- For integrations using the address lookup feature 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.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.71.1
- The /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.
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- All action types now trigger the
onActionHandled
callback.- For all action types, except for threeds2, the original
action
object is passed to the callback.
- For all action types, except for threeds2, the original
- For ACH, the shopper can now select the Savings or Checking account type.
- For improved developer experience, we now export the
CustomTranslations
type. document.querySelector
is now called only once, instead of three times.
get-process-message.handler.js
no longer causes exceptions. The new optional chaining operator for thepostMessage
handler function now prevents improperly formed events.- When you call
actions.reject()
in thebeforeSubmit
callback, the UI no longer set the UI in an error state. Previously, it caused a call tohandleFailedResult
, which caused theonPaymentFailed
callback to be called and set the UI in an error state.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.4.0
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- For ACH, the shopper can now select the Savings or Checking account type.
get-process-message.handler.js
no longer causes exceptions. The new optional chaining operator for thepostMessage
handler function now prevents improperly formed events.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.71.0
We recommend you use Checkout API v71 or later.
-
You can now use Adyen Test Cards Android to autofill test payment method information, to test your integration more quickly.
-
For Twint:
- For Components integrations, you must now use
TwintComponent
instead ofInstantPaymentComponent
. - You can now store payment details and pay with stored payment details.
- For Components integrations, you must now use
-
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.
-
For API-only integrations with encrypted card details, 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
- 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.
- For Drop-in, headers of preselected stored payment screen and payment methods list screen are updated.
-
Dependency versions:
Name Version Adyen 3DS2 2.2.21 Cash App Pay 2.5.0 Android Gradle Plugin 8.5.1 AndroidX Fragment 1.8.3 AndroidX Activity 1.9.2 AndroidX Compose Activity 1.9.2 AndroidX Compose BOM 2024.06.00 AndroidX Lifecycle 2.8.3 AndroidX Lifecycle ViewModel Compose 2.8.3 AndroidX AppCompat 1.7.0
- When parsing JSON objects with explicit null values, JSON deserialization no longer returns the coerced
null
string.
-
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
- For Drop-in, you can now display custom names for the payment methods in your checkout. Use the
paymentMethodNames
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.
- For Apple Pay, improved the instantiation of the payment method component.
- For Google Pay, improved configuration parsing.
- 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.
- 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.
- You can now use the
AdyenEncryption
module independently with a reduced size, because it no longer depends onAdyenCore
.
- Support for Library Evolution in Swift.
- When you set
isEnabled
= false, only Drop-in/Components analytics are not sent to Adyen.
- Removed the unused
getReturnURL
declaration from the SessionHelper module to compile the library correctly when React Native New Architecture is enabled.
- Bumped
serve-static
version to 1.16.2 to address security vulnerability.
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- 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.
- For Click to Pay with Visa, when the shopper selects Enter, the event no longer propagates to other views.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.3.0
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- For Pay by Bank payments in the US, the payment form now shows US bank logos.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.70.0
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- For Click to Pay with Visa, custom timeouts now get reported to the Visa SDK.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.69.1
- Reverted the new iDeal payment flow that was released in 2 September, 2024.
- 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 is set to scheme, Bancontact is no longer blocked.
- 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.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.69.0
- When you set
analytics.enabled
= false, only Drop-in/Components analytics are not sent to Adyen.
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- 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 theWindow
interface.
- For Apple Pay,
ApplePayService
no longer causes reliability issues with SonarCloud. - Projects that use webpack 4 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.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.2.0
- When you set
analytics.enabled
= false, only Drop-in/Components analytics are not sent to Adyen.
- iOS Components/Drop-in version: 5.11.0.
- 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.
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.
- 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
- The privacy manifest path in Package.swift now ensures correct Swift Package Manager (SPM) integration.
- Removed the unused region role from the payment method item to follow a11y guidelines.
- Fixed validation for Lithuanian postal codes to support inputs with 4 digits, 5 digits, and the LT prefix.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.1.1
- Removed the unused region role from the payment method item to follow a11y guidelines.
- Fixed validation for Lithuanian postal codes to support inputs with 4 digits, 5 digits, and the LT prefix.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.68.1
- 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.
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- 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.
- Updated currency information for the following locales:
- Iceland (ISK)
- Bulgaria (BGN)
For stored cards, the holder name is now correctly passed when making the payment.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.1.0
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
- 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.
For stored cards, the holder name is now correctly passed when making the payment.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.68.0
- iOS Components/Drop-in version: 5.10.0.
- For cards, you can now set
addressVisibility
: lookup to suggest addresses to the shopper when they are inputing their address.
- For React Native v73 and earlier,
AdyenInstant
and other components do not load correctly. This issue is fixed in v2.4.0
- The example app now uses React Native v74.
- For Riverty, the consent checkbox now includes a link to the Riverty privacy policy.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.0.3
- For Riverty, the consent checkbox now includes a link to the Riverty privacy policy.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.67.1
- 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, includeshowRemovePaymentMethodButton
: true. - Set the
StoredPaymentMethodsDelegate
tosession
:dropInComponent.StoredPaymentMethodDelegate = self.session
- In the
- Support for the following locales:
bg-BG
,ca-ES
,et-EE
,is-IS
,lt-LT
,lv-LV
.
- For cards, when the shopper selects Cancel to exit the address input screen, the address fields no longer gets reset.
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
For UPI, the TypeScript type error for formatProps
has been fixed.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.0.2
This release requires Checkout API v69 or later. We recommend that you use the latest version of Checkout API.
For PayPal, the bug where the payment didn't get finalized after the PayPal lightbox closed no longer occurs.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@6.0.1
This release requires Checkout API v69 or later. We recommend using the latest Checkout API version.
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 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. - We've changed how you create an instance of Drop-in or Component.
- For the
onSubmit()
event handler, you now need to resolve/reject anactions
object to continue or halt the payment flow. - For the
onAdditionalDetails()
event handler, you now need to resolve/reject anactions
object to continue or halt the payment flow. - The
onPaymentCompleted()
event is no longer triggered for failed payments, instead theonPaymentFailed()
event is triggered. - The
showPayButton
parameter now defaults to true. - The
onValid()
event is removed. - The
setStatusAutomatically
property 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 accordingly.
- The
countryCode
property is now mandatory. It must be set directly in theAdyenCheckout
configuration object, or in the /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 initializingAdyenCheckout
. Instead, set it in the Drop-in configuration. - The
locale
in your global configuration object 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.
Exception: For Arabic, thelocale
must be set to ar. - TypeScript types are now imported directly from the root of the package, for example:
import type { CardConfiguration } from '@adyen/adyen-web';
Payment method specific
Express payment methods
- For Google Pay express, the event handler
onPaymentDataChanged
now works only when the Component configuration propertyisExpress
is set to true. - For Apple Pay express, the event handlers
onShippingContactSelected
andonShippingMethodSelected
now work only when the Component configuration propertyisExpress
is set to true. - For Paypal Express, the
onShippingChange()
event handler is no longer supported. Migrate to theonShippingAddressChange()
andonShippingOptionsChange()
event handlers. - The
onShopperDetails()
event for PayPal is renamed toonAuthorized()
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 thecard
object withinpaymentMethodsConfiguration
instead of thethreeDS2
object. - The Custom Card Component is renamed from
securedfields
toCustomCard
and created as: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 theonError
event with error type CANCEL. - For Klarna, the
token
property is replaced with theauthorization_token
from the /payments/details request. - For Adyen Giving, you now need to integrate with the Giving Campaign Manager Component.
- We no longer support the payment method QiwiWallet.
Partial payments
- The
onOrderCreated()
event is renamed toonOrderUpdated()
.
onPaymentMethodsRequest()
is a new event, 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, which is triggered when a payment fails. Previously, this event was part ofonPaymentCompleted()
.- 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 onAdyenCheckout
.
- You can customize, or prevent, the Enter keypress behavior by implementing an
- 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 and in the Apple Pay Component.
- Support for tree shaking when integrating through
npm
.
onPaymentCompleted()
now works for both Sessions and Advanced flow.- We have replaced input field placeholder texts with permanently visible contextual elements 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 theonSubmit
event. TheonAuthorized
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.
Install this version of the Adyen Drop-in/Components Node.js package:
npm install @adyen/adyen-web@6.0.0 --save
This release requires Checkout API v68 or later.
- For the Card Component, the
info
event now has theconfigData
object that includes details about the configuration of the Component. - Google Pay now supports the
borderRadius
property.
For installments, the text above the radio buttons or dropdown menu now shows correctly.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.67.0
- Starting August 31 2024, Google introduces Target API level requirements for Google Play apps. 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
, updatecompileTarget
to 34, and setclasspath("com.android.tools.build:gradle:8.1.4”)
.
- In
-
- In
android/app/build.gradle
, addandroid.buildFeatures.buildConfig
= true to enablebuildConfig
.
- In
- React Native v71 or earlier:
-
- In
android/build.gradle
, updatecompileTarget
to 34.
- In
- Android Components/Drop-in version: 5.6.0.
- Updated the
gradle.build
to fix potential compatibility issues with old and new versions of React Native.
We recommend you use Checkout API v71 or later.
- On Android API versions 21 to 25, the
NoSuchMethodError
no longer occurs during the 3D Secure 2 challenge flow.
-
Dependency versions:
Name Version Adyen 3DS2 2.2.19
We recommend you use Checkout API v71 or later.
- For Google Pay on Advanced flow,
onSubmit
now returnsthreeDS2SdkVersion
in thepaymentMethod
object that you must pass in your /payments request to correctly trigger the 3D Secure 2 flow.
- 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,
CIRCULAR REFERENCE: com.android.tools.r8.utils.b: Missing class...
errors no longer occur.
-
Dependency versions:
Name Version Adyen 3DS2 2.2.19 Android Gradle plugin 8.4.1 AndroidX Fragment 1.7.1 AndroidX Compose Compiler 1.5.14 Kotlin 1.9.24 Kotlin coroutines 1.8.1
- For Google Pay, configurations related to the billing and shipping addresses now work correctly.
- On Android, the
Inconsistent JVM-target compatibility
build issue no longer occurs.
We recommend you use Checkout API v71 or later.
- 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.
- 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.
Dependency versions:
Name | Version |
---|---|
AndroidX Compose BoM | 2024.05.00 |
AndroidX Lifecycle | 2.8.2 |
Material Design | 1.12.0 |
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()
- For Expo v47 and later, version conflicts no longer occur.
This release requires Checkout API v68 or later.
- 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.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.66.1
This release requires Checkout API v68 or later.
- 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.
- For Click to Pay, previously used cards now shown above newly created cards.
- For ACH, the
showPayButton
configuration is no longer ignored.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.66.0
- Drop-in now supports the Sessions flow, where you make a single /sessions request.
- You can now specify a locale instead of using the shopper device locale.
- Support for Expo.
- You can now use the
AdyenAction.handle()
method to handle additional actions. - For Native 3D Secure 2, you can now configure the
requestorAppUrl
. - For Drop-in on iOS, you can now configure a custom title for the pre-selected stored payment method view.
- For Apple Pay, you can now configure
shippingContact
,shippingType
,shippingMethods
, andsupportedCountries
. - The
AdyenCheckout
theme is now separated from theAppTheme
, which makes it easier to integrate with Drop-in.
- For Android, you no longer need to have
<service android:name="com.adyenreactnativesdk.component.dropin.AdyenCheckoutService" android:exported="false" />
in your app's manifest file.
- For Android,
adyenReactNativeRedirectScheme
is deprecated, you can use any intent filter. When it is required, you get areturnUrl
inonSubmit.data
. To get thereturnUrl
, you can also use theawait AdyenDropIn.getReturnURL()
function.
- For Android, your app theme must have Material Components as
parent
to work with payment methods that use the InstantPaymentComponent, for example:<style name="AppTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar">
- For external redirects, you can now customize the colors of the toolbar and navigation bar shown in Custom Tabs.
-
TWINT is now supported with a native flow, and you no longer need to redirect shoppers through the browser. To use the redirect flow, set the following configuration:
CheckoutConfiguration( environment = environment, clientKey = clientKey, .. ) { // Optionally pass the payment method type to configure it for the specific payment method. instantPayment(PaymentMethodTypes.TWINT) { setActionHandlingMethod(ActionHandlingMethod.PREFER_WEB) } }
- Fixed some memory leaks.
- In case of a debug build, Drop-in no longer overrides the log level.
- For cards, when a shopper does not select an address, the address lookup function now shows a validation error.
- Actions no longer crash when your app uses obfuscation.
- When handling a 3D Secure 2 challenge using Checkout API v66 or earlier, Drop-in no longer throws an error.
- If the app process unexpectedly terminates when handling actions, the state is now restored and you can proceed with the payment flow.
- For /sessions, fixed an issue where the
setEnableRemovingStoredPaymentMethods
flag in the Drop-in configuration was ignored.
- The phone number input field in the payment form now shows ISO codes instead of flags.
- The UI elements that were previously labelled Country are now Country/Region.
-
Dependency versions:
Name Version Adyen 3DS2 2.2.18 Android Gradle plugin 8.3.2 AndroidX Browser 1.8.0 AndroidX Compose Activity 1.9.0 AndroidX Compose BoM 2024.04.01 AndroidX Compose Compiler 1.5.12 AndroidX Lifecycle 2.7.0 Google Pay 19.3.0 Google Pay Compose Button 1.0.0 Kotlin 1.9.23 Kotlin coroutines 1.8.0
- For payment links with only one payment method that does not require additional shopper input, the shopper no longer needs to select an additional button to pay.
This release requires Checkout API v68 or later.
- The new iDEAL payment flow where the shopper is redirected to the iDEAL payment page to select their bank and authorize the payment.
- For 3D Secure 2, the analytics events now include the following information:
subType
: the type of event.result
: the outcome of the event.
- For Google Pay, when the shopper pays with card, the
state.data
now includes theorigin
to trigger the 3D Secure 2 native flow.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.65.0
We recommend you use Checkout API v71 or later.
-
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 useInstantPaymentComponent
for iDEAL: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.
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.
IdealComponent
is no longer available. UseInstantPaymentComponent
instead.
We recommend you use Checkout API v71 or later.
- The new iDEAL payment flow where the shopper is redirected to the iDEAL payment page to select their bank and authorize the payment.
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.
We recommend you use Checkout API v71 or later.
Support for Twint SDK integration through the TwintComponent
module.
- Flag icons are removed from the UI.
- The text Country is now replaced with Country/Region.
Fixed an issue that incorrectly cancelled successful redirect payments in some cases.
We recommend you use Checkout API v71 or later.
Dependency versions:
Name | Version |
---|---|
Adyen 3DS2 SDK | 2.2.17 |
We recommend you use Checkout API v71 or later.
- 3D Secure 2 SDK version: 2.4.2.
- 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.
We recommend you use Checkout API v71 or later.
- 3D Secure 2 SDK version: 2.4.2.
- 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.
This release requires Checkout API v68 or later.
- For open invoice payment methods:
- When the shopper selects and deselects the consent checkbox, the
Uncaught TypeError: Cannot use 'in' operator to search for 'errorI18n' in true
error no longer occurs. - Errors related to the screen reader panel no longer causes issues with the logic of the
OpenInvoice
Component.
- When the shopper selects and deselects the consent checkbox, the
- For ANCV, a new order is no longer created when it is used as the second payment of a partial payment. The custom
payButton
now submits the correct data.
- When the shopper checks out, the
checkoutAttemptId
object is now always passed in the initial API request. - For cards, the unencrypted expiry date can now be passed to the
onFieldValid
callback. To enable this, setexposeExpiryDate
to true.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.64.0
This release requires Checkout API v68 or later.
- For the phone number field in the payment form:
- The Country selector for the phone number field is now called Country/Region.
- Flag icons are no longer included in the selector.
- For voucher payment methods, the voucher now shows expiration the date and time.
- For wallet payment methods used as express payment methods, the function to submit analytics now works as expected.
- Drop-in no longer fails to render when only express payment methods are available.
Upgrading to this version
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.63.0
- For Drop-in and Components, when
?android:attr/textColor
is not defined in your own theme, the Card Component no longer crashes. - The
onAdditionalDetails
event is now triggered only once. Previously, the event was triggered multiple times in some edge cases. - The build output no longer contains warnings about multiple substitutions specified in non-positional format in string resources.
- For the Card Component, we fixed localization issues that occurred when using the Address Lookup functionality.
- Overriding some of the XML styles without specifying a parent style no longer causes a build error.
- You can no longer use functions like
CheckoutConfiguration.getCardConfiguration()
orCheckoutConfiguration.getDropInConfiguration()
to get configurations from theCheckoutConfiguration
object. When starting Drop-in or Components, pass the fullCheckoutConfiguration
object.
-
Dependency versions:
Name Version Android Gradle Plugin 8.3.1
This release requires Checkout API v68 or later.
For cards, the shopper can now enter a 19-digit Diners card number.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.62.0
This release requires Checkout API v68 or later.
- For analytics and data tracking, the information collected now includes data about whether wallet payment methods are used as express payment methods.
- For the address fields of the payment form, the forward slash character (
/
) is now allowed.
- For open invoice payment methods (like Riverty), the
SRPanel
for screen readers now correctly includes the first name and last name fields in the delivery address. - For combobox UI elements, when nothing is selected,
aria-activedescendant
is now null.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.61.0
We recommend you use Checkout API v71 or later.
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:
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):
let cardConfiguration = CardComponent.Configuration() cardConfiguration.style.addressStyle.showCountryFlags = true/false let cardComponent = CardComponent(paymentMethod: paymentMethod, context: context, configuration: cardConfiguration)
- 3D Secure 2 SDK version: 2.4.1.
- When
clientKey
is invalid or mismatched with the environment,PublicKeyProvider
now returns a corresponding error message.
We recommend you use Checkout API v71 or later.
PrivacyInfo.xcprivacy
lists all the data collected by Drop-in and Components.
3D Secure 2 SDK version: 2.4.1
We recommend you use Checkout API v71 or later.
-
A new way to create a configuration using DSL to be more declarative and concise:
CheckoutConfiguration( environment = environment, clientKey = clientKey, shopperLocale = shopperLocale, amount = amount, ) { dropIn { setEnableRemovingStoredPaymentMethods(true) } card { setHolderNameRequired(true) setShopperReference("...") } adyen3DS2 { setThreeDSRequestorAppURL("...") } } -
For the Card Component, you can use the new Address Lookup functionality.
-
For voucher actions: when the
url
ordownloadUrl
is not included, the shopper has the option to select Save as image and save the voucher to the device'sDownloads
folder. -
You can now set your own
AdyenLogger
instance withAdyenLogger.setLogger
. This gives the ability to intercept logs and handle them in your own way. -
Payment methods:
- Multibanco. Payment method type: multibanco.
- Pay Easy. Payment method type: econtext_atm.
- Convenience Stores Japan. Payment method type: econtext_stores
- Online Banking Japan. Payment method type: econtext_online.
- Seven-Eleven: Payment method type: econtext_seven_eleven
- When building
minifyEnabled
without thekotlin-parcelize
plugin in your project, the build should no longer crash. - When handling actions, you no longer get the
IllegalArgumentException: Unsupported delegate type
error that causes a crash.
-
When creating a configuration, the
Builder
constructors with aContext
is deprecated. You can now omit thecontext
parameter. -
PermissionException
. Handle permissions throughActionComponentCallback
,SessionComponentCallback
, orComponentCallback
callbacks instead. -
The styles for vouchers have been changed:
Previous (v5.2.0 or earlier) Now (v5.3.0) AdyenCheckout.Voucher.Description.Bacs
AdyenCheckout.Voucher.Simple.Description
AdyenCheckout.Voucher.Description.Boleto
AdyenCheckout.Voucher.Full.Description
AdyenCheckout.Voucher.ExpirationDateLabel
AdyenCheckout.Voucher.InformationFieldLabel
AdyenCheckout.Voucher.ExpirationDate
AdyenCheckout.Voucher.InformationFieldValue
AdyenCheckout.Voucher.ButtonCopyCode
AdyenCheckout.Voucher.Button.CopyCode
AdyenCheckout.Voucher.ButtonDownloadPdf
AdyenCheckout.Voucher.Button.DownloadPdf
-
Logger.LogLevel has been deprecated.
Previous (v5.2.0 or earlier) Now (v5.3.0) Logger.LogLevel
AdyenLogLevel
AdyenLogger.setLogLevel(logLevel: Int)
AdyenLogger.setLogLevel(level: AdyenLogLevel)
- When creating a configuration, the
shopperLocale
parameter is now optional.- Sessions flow: when you do not set it, the shopper locale is set to the value included in the /sessions request.
- Advanced flow: when you do not set it, the shopper local is set to the primary user locale on the device.
- For Drop-in, all actions now start in expanded mode.
- For the Google Pay Component, you no longer need to manually import the
3ds2
module to handle transactions that require Native 3D Secure 2 challenge. - If you use
DropInServiceResult.Error
without specifying an error message, the default has changed fromError sending payment. Please try again.
toAn unknown error occurred
. - For the Sessions flow:
- When starting Drop-in (with
DropIn.startPayment
) or creating a Component (withYourComponent.PROVIDER.get
), theconfiguration
parameter is now optional. - When using
CheckoutSessionProvider.createSession
to create aCheckoutSession
, you can pass onlyenvironment
andclientKey
instead of the whole configuration. - Removing stored payment methods is now handled internally. You no longer need to override the
onRemoveStoredPaymentMethod
function.
- When starting Drop-in (with
-
Dependency versions:
Name Version Kotlin 1.9.22 AndroidX Compose compiler 1.5.8 AndroidX Compose Activity 1.8.2 Material Design 1.11.0
Do not use the functions to get configurations, (such as CheckoutConfiguration.getDropInConfiguration()
or CheckoutConfiguration.getCardConfiguration()
). These functions will be removed in the following release.
If you use the new configuration DSL, pass the CheckoutConfiguration
object as it is when starting Drop-in or Components.
This release requires Checkout API v68 or later.
- For cards, Boleto, and ACH: when making the /payments request, the
billingAddress.firstName
andbillingAddress.lastName
parameters are no longer included. - For the Sessions flow: when making a zero-auth transaction (
amount
: 0) the payment details are stored only when thestorePaymentMethodMode
parameter in the /sessions request is set to do so. This fixes the known issue from v5.59.0.
- For Apple Pay: you no longer get warnings in your integrated development environment (IDE) because of TypeScript type issues.
- For cards: the shopper can now enter a Discover card number with the length of 19 digits.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.60.0
This release requires Checkout API v68 or later.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.59.0
When making a zero-auth transaction (amount
: 0) to store payment details, we now always pass the storePaymentMethod
object to our server.
- PayPal Express Checkout is now supported with the Web Component.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.58.0
- New payment method: Online Banking Finland. Payment method type: ebanking_FI.
- Support for the new Riverty component (
riverty
) in AT, CH, and DE. This component will replaceafterpay_default
in the future. - For Drop-in, when
countryCode
is set to FI, no payment method is selected by default and all payment methods are collapsed to comply with Finnish regulations.
- Fixed an issue where clicking on Card fields caused console errors for shoppers using an iOS device.
- You can now send your shoppers a confirmation email after they complete a payment and the payment gets authorized. The email is for customer service purposes, but it is not an official payment confirmation or receipt.
For integrations using Drop-in or the Gift card Component:
Drop-in and the Component now correctly get the last four digits of gift cards from the API response and show them on the payment form.
- 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.
- UI customization guide which explains how to customize the styles and string resources.
- The integration now uses JSON Web Encryption (JWE) with RSA OAEP 256 and AES GCM 256 for encryption. You do not need to make any changes to your integration.
- For Drop-in, error dialogs no longer display user unfriendly messages when using the Sessions flow.
- Overriding some of the XML styles without specifying a parent style no longer causes a build error.
- The Await and QR Code action components no longer get stuck in a loading state after the payment is completed.
-
Dependency versions:
Name Version Kotlin 1.9.21 Android Gradle plugin 8.2.0 AndroidX Compose Compiler 1.5.7 AndroidX Compose Activity 1.8.1 AndroidX Browser 1.7.0
- 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.
- Custom conformances to
PaymentMethod
andStoredPaymentMethod
are now required to beEncodable
.
- For Apple Pay, when the
allowOnboarding
property ofApplePayConfiguration.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.
- For Blik, the Drop-in/Component now shows identifiers next to stored payment methods.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.57.0--save
This release requires Checkout API v68 or later.
- For card, when making a zero-auth transaction:
- The text on the pay button is now Save details.
- A checkbox no longer shows.
- For Drop-in, after a zero-auth transaction, the text for the success message is Details saved.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.56.1--save
- For zero-value auth transactions, the submit button text is now Save details, and shoppers see the Details saved text after successfully submitting their payment details.
This release requires Checkout API v68 or later.
Payment method: PayMe. Payment method type: payme.
- For QR code payment methods, the payment status check now calculates elapsed time more accurately.
- For the custom card integration with encryption, the Component now gives a console warning for an unsupported value in the
data-cse
attribute.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.56.0--save
This release requires Checkout API v68 or later.
For QR code payment methods, the payment method logo now loads and shows correctly.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.55.1 --save
This release requires Checkout API v68 or later.
For cards, the startup log includes more detailed information that can be used to debug issues.
Upgrading to this version
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.55.0--save
The logo no longer appears twice in the payment link email sent to your shoppers.
Shopper last names are now included in the payment link emails sent to your shoppers. Previously, only first name was used to address the recipient.
We recommend you use Checkout API v71 or later.
- The
BcmcComponent
now supports co-badged Bancontact cards and card brand detection.- The
BcmcComponentState
now contains 3 extra fields:cardBrand
,binValue
andlastFourDigits
.
- The
- You can now override payment method names in Drop-in by using
DropInConfiguration.Builder.overridePaymentMethodName(type, name)
. - For stored cards, Drop-in now shows the card name (for example Visa or Mastercard) instead of Credit Card.
- Now it is possible to show installment amounts for card payments using
InstallmentConfiguration.showInstallmentAmount
inCardConfiguration.Builder.setInstallmentConfigurations()
. - For gift cards, you can now hide the PIN text field by setting
GiftCardConfiguration.Builder.setPinRequired()
to false. - For Google Pay:
- When initializing the Google Pay button, you can now use
GooglePayComponent.getGooglePayButtonParameters()
to get theallowedPaymentMethods
attribute. - You can now use
AllowedAuthMethods
andAllowedCardNetworks
to easily access to the possible values forGooglePayConfiguration.Builder.setAllowedAuthMethods()
andGooglePayConfiguration.Builder.setAllowedCardNetworks()
.
- When initializing the Google Pay button, you can now use
Fixed a bug where components would not be shown in Jetpack Compose lazy lists.
Dependency versions:
Name | Version |
---|---|
AndroidX Compose Activity | 1.8.0 |
Material Design | 1.10.0 |
Gradle | 8.4 |
Android Gradle plugin | 8.1.2 |
AndroidX Compose BoM | 2023.10.01 |
AndroidX Recyclerview | 1.3.2 |
AndroidX Fragment | 1.6.2 |
We recommend you use Checkout API v71 or later.
- 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, setshowInstallmentAmount
to true when you initialize it.
- Support for Library Evolution.
For cards, the address lookup feature now supports a 2-step lookup process (for example, used by the Google Maps API):
- Providing suggested addresses that might be incomplete.
- 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) |
- 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.
Payment method:Cash App Pay. Payment method type: cashapp.
To comply with EU consumer choice regulations, when card payment methods are available, the payment method list shows the group as Cards instead of Credit Cards.
This release requires Checkout API v68 or later.
- For the card Component: the address lookup feature now includes the new
onAddressSelected
callback to handle additional information for address completion services that require a second callback, like Google Place Autocomplete API. - For Click to Pay, if the shopper gives consent, you can now enable the cookie for Mastercard and Visa.
- For Click to Pay, the loading image is now an animated
SVG
file.
- For Drop-in:
- Payment methods that are not cards no longer include the
fundingSource
object with credit or debit. - For Klarna B2B, the logo is now correct.
- Payment methods that are not cards no longer include the
- For redirect payment methods, the
browserInfo
parameter is now included in thestate.data
. Previously, some redirect payment methods didn't work on mobile.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.54.0 --save
To be compliant with regulations, the logo you can download for Visa/Dankort has been updated.
We recommend you use Checkout API v71 or later.
- WeChat Pay now works correctly on Android 11 and later. This fixes the issue introduced in v4.0.0
-
Dependency version:
Name Version WeChat Pay 6.8.0
This release requires Checkout API v68 or later.
- For Riverty, in the space for the consent checkbox:
- The link for payment conditions now correctly goes to the terms and conditions.
- For AfterPay, the terms and condition box now shows Riverty as the payment method name. .
- For AfterPay B2B, the consent checkbox is now removed.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.53.3 --save
We recommend you use Checkout API v71 or later.
- For Apple Pay, on the payment form, you can now require the fields for the shopper's billing and shipping address, email and name. Use
requiredShippingContactFields
andrequiredBillingContactFields
. - For Google Pay, on the payment form, you can now require the fields for the shopper's billing and shipping address, email and name. Use
billingAddressRequired
,billingAddressParameters
,shippingAddressRequired
andshippingAddressParameters
. - For cards, you can now control the options that appear in the picker for the Country field in the payment form. Use
allowedAddressCountryCodes
, passing a list of ISO 3166-1 alpha-2 country codes. - For cards on Android, the picker for the Country field is pre-selected with the value specified in the
countryCode
parameter. - Support for Xcode 15.
Library versions:
- The Android SDK no longer crashes when it receives invalid
Action
data. - The
AdyenAppearance
class can now be used with app bundle IDs containing the en dash (-) character. - You can now start Drop-in by calling
start('dropIn')
.
We recommend you use Checkout API v70 or later.
@RestrictTo
annotations no longer cause false errors with Android Studio and Lint.- Using the layout inspector or having view attribute inspection enabled in the developer options no longer causes a crash when viewing a payment method.
- Implementing the
:action
module no longer gives a duplicate class error caused by a duplicate namespace. - For Drop-in, dismissing the gift card payment method no longer prevents further interaction.
Dependency versions:
Name | Version |
---|---|
AndroidX Compose BoM | 2023.09.01 |
Background images are no longer in payment links sent through email.
- POST /paymentMethods:
- To comply with EU consumer choice regulations, The
name
of the payment method group for cards is now Cards instead of Credit Card. When you use Drop-in with this API version, the payment method list shows this payment method group as Cards.
- To comply with EU consumer choice regulations, The
- POST /payments:
- When you make a partial payment with a gift card, and the shopper gets redirected for 3D Secure 2 authentication, the return URL includes
redirectResult
instead ofMD
andPaRes
. This aligns with other 3D Secure redirect flows.
- When you make a partial payment with a gift card, and the shopper gets redirected for 3D Secure 2 authentication, the return URL includes
- POST /paymentLinks:
- When you create a payment link through the API, the setting to store payment method details in the Customer Area no longer works. Instead, you have to use the
storePaymentMethodMode
parameter to indicate if the details of the payment method will be stored. metadata
: more than 80 characters will result in a validation error.
- When you create a payment link through the API, the setting to store payment method details in the Customer Area no longer works. Instead, you have to use the
-
POST /paymentLinks:
-
expiresAt
format is now ISO 8601 with a time zone offset indicator (YYYY-MM-DDThh:mm:ss+TZD
). For example, 2020-12-18T10:15:30+01:00. This format is consistent with the other timestamps that we return.Previously, the format included the timezone indicator Z.
-
We recommend you use Checkout API v70 or later.
- 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.
This release requires Checkout API v68 or later.
Types are resolved when using different moduleResolution
values within the Typescript config.
Payment methods that show a QR code and redirect button in checkout now show the redirect button before the QR code image.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.53.2 --save
This release requires Checkout API v68 or later.
A Typescript issue with the paymentMethodConfiguration
object types.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.53.1 --save
We recommend you use Checkout API v70 or later.
To migrate from an earlier version, follow the migration guide.
- For Drop-in, you can now configure if you show a dialog to dismiss Drop-in with a finished state or error state.
DropInServiceResult.Error
now requires theErrorDialog
parameter.DropInServiceResult.Finished
now has an optionalFinishedDialog
parameter.
PaymentMethodDetails
and its sub-classes now have thecheckoutAttemptId
field.- You can no longer manually instantiate the
Environment
class and thebaseUrl
field has been removed. - Restructured packages and moved classes. If you are upgrading, you only need to re-import them because most classes names haven't changed.
- All classes in
com.adyen.checkout.action
are now incom.adyen.checkout.action.core
. If you import the classes, you must update import statements. - All public classes that should not be directly used are now marked as internal.
-
For Components integrations, each payment component no longer handles 3D Secure 2 and WeChat Pay actions. To handle the actions, you must add dependencies for each action:
implementation 'com.adyen.checkout:3ds2:YOUR_VERSION' implementation 'com.adyen.checkout:wechatpay:YOUR_VERSION' Exceptions:
CardComponent
andBcmcComponent
are able to handle the 3D Secure 2 action. They do not require the additional dependencies. - For Drop in, you can no longer get the result using
onActivityResult()
. Drop-in now uses the Activity Result API instead. - For Components, you can no longer use
requiresView()
for action Component providers. - You now must configure
environment
. The default value is no longer TEST. - Build configuration:
compileSdkVersion
andtargetSdkVersion
: 34. - Dependency versions.
requiresConfiguration()
in action Component providers. For all Components, configuration is optional.CardConfiguration.Builder.setAddressVisibility()
. UseCardConfiguration.Builder.setAddressConfiguration()
instead.Environment.LIVE
. Use the same live environment as your backend instead. You can find that value in your Customer Area.saveState()
andrestoreState()
in action components. The component will automatically handle the state now.DropInServiceResult.Action
constructor from JSON string. Use the constructor with theAction
andAction.SERIALIZER
instead.Amount.EMPTY
is removed. Pass amounts with a valid value and currency.- In the
UnencryptedCard
class,setExpiryDate(month, year)
now replacessetExpiryMonth
andsetExpiryYear
.
-
Payment methods:
- ACH Direct Debit. Payment method type: ach.
- Boleto Bancario. Payment method type: boletobancario.
- DuitNow. Payment method type: duitnow.
- Open banking. Payment method type: paybybank.
- Online banking Czech Republic. Payment method type: onlineBanking_CZ.
- Online banking Slovakia. Payment method type: onlineBanking_SK.
- Pay Now. Payment method type: paynow.
- PromptPay. Payment method type: promptpay.
- UPI Collect: The shopper pays by entering their virtual payment address (VPA). Payment method type: upi_collect.
- UPI QR: The shopper pays by scanning a QR code. Payment method type: upi_qr.
-
Analytics are turned on by default. Find out what we track and how you can configure it.
- The method for setting analytics configuration has changed:
v5.0.0 Earlier versions setAnalyticsConfiguration(analyticsConfiguration: AnalyticsConfiguration)
setAnalyticsEnabled(isAnalyticsEnabled: Boolean)
-
Jetpack Compose compatibility.
- For Drop-in, use the
drop-in-compose
module. - For Components, use the
components-compose
module.
- For Drop-in, use the
-
For Components:
- Payment method Components now handle actions. You no longer need a payment Component and action Components for a payment method with additional actions.
- The
GenericActionComponent
that can handle all action types. You no longer need to implement separate Components for redirects and 3D Secure 2 authentication, for example. - A Pay button that you can configure to be hidden.
- The
submit()
method that can be used to add your own pay/submit button. - You can now add
amount
to the configuration to show it on the pay/submit button. - The
onSubmit()
event that gets emitted when the shopper pays.
-
For cards:
- The BIN value callback is invoked while the shopper inputs their card number. The callback uses up to the first 8 digits.
- The BIN lookup callback is invoked when brands are detected on the card.
- The
brand
attribute is now included in thepaymentMethod
object for all cards. Previously, it was just included for co-badged ones.
-
When the shopper is redirected to another app or browser, a new callback is invoked.
-
When the shopper is redirected back from an external app or website, an intermediate view with a loading spinner and a Cancel button now shows. The shopper can select to cancel the redirect back to your app.
-
For Drop-in, you can now navigate the shopper back to the payment methods list, for example to load new payment methods. To do this, use DropInServiceResult.ToPaymentMethodsList.
-
You can now safely exclude any payment method from Drop-in. Do this by excluding the Adyen Checkout module that includes the payment method. For example:
implementation('com.adyen.checkout:drop-in:YOUR_VERSION') { exclude group: 'com.adyen.checkout', module: 'card' exclude group: 'com.adyen.checkout', module: 'ideal' } -
You can now safely exclude unnecessary third-party dependencies. Do this by excluding the Adyen Checkout module that includes the third-party dependency. For example:
implementation('com.adyen.checkout:drop-in:YOUR_VERSION') { exclude group: 'com.adyen.checkout', module: '3ds2' exclude group: 'com.adyen.checkout', module: 'wechatpay' } Make sure that you do not include a payment method that corresponds to the module that you exclude.
-
For Google Pay, new configuration in
GooglePayConfiguration
:
Function | Description |
---|---|
setAllowCreditCards |
Specify if you allow credit cards. |
setAssuranceDetailsRequired |
Specify if you require assurance details. |
- Sessions flow using the single
/sessions
request is now supported. - Localization for the Portuguese (Portugal) language.
- QR code payment methods no longer crash in some cases.
- Rotating a device during the redirect flow no longer causes a crash.
@RestrictTo
annotations no longer cause false lint check warnings.@RestrictTo
annotations no longer cause false errors with Android Studio Hedgehog (Beta).- The Drop-in bottom sheet no longer shifts position on the screen when launching some flows, like redirect and 3D Secure 2.
- The redirect flow on Android 11.
- The email address input field now has more specific validation rules.
- You can now instantiate more than one instance of the same Component within the same lifecycle. Passing the
key
parameter to the Component providerget()
method. For example, you can show cards and stored cards on the same screen. - For Components, you no longer need to handle duplicate events such as submit callbacks or errors with because they are only emitted once. Flows are now used instead of LiveData.
- More UI theme customization options like dark mode.
- The expiry date input field now has more specific validation rules and error messages.
This release requires Checkout API v68 or later.
Payment method variant:
- Klarna B2B (Billie). Payment method type: klarna_b2b.
- For SEPA, accessing
component.data
, no longer causes a crash. The propertiesibanNumber
andownerName
are now automatically populated with empty strings. - For Click to Pay, the button to resend the confirmation code now works.
- The
paymentMethodConfiguration
typescript definition no longer causes a linter warning.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.53.0 --save
For the /sessions request using a stored payment method with recurringProcessingModel
:CardOnFile, the shopperInteraction
is now correctly set to ContAuth for subsequent payments.
This release requires Checkout API v68 or later.
Adds support for the payment method ANCV.
- Timeouts on
SecuredFieldsProvider
are now reset after unmounting the Component. This avoids an error when mounting and immediately unmounting.
- An issue removed inline styles from iframe when the nonce attribute was set on the
<style>
tag. This is now resolved. - The classes applied to the
dateOfBirth
field inpersonalDetails
component are now correct. - The Polish translations for the terms and conditions for Online Banking Poland are fixed.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.52.0 --save
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.
- For redirect payment methods, when the shopper opens the current payment web page in the default browser by tapping the toolbar button,
RedirectComponent
now triggersActionComponentDelegate.didOpenExternalApplication
. - Bancontact cards are now supported in the
CardComponent
. - Dual-branded Bancontact cards now allow brand selection in the
BCMCComponent
.
- Support for Xcode 15.
- iOS 11 is no longer supported because it is not supported by Xcode 15.
- The minor units for the following currencies:
Currency code | Minor units |
---|---|
ISK | 2 |
RSD | 2 |
MRU | 2 |
GHS | 2 |
- A problem no longer occurs where, when the shopper cancelled a payment in progress,
DropInComponentDelegate
didn't calldidCancel
. - Cash App payments are no longer refused because of the missing
customerId
field in the/payments/details
request. - The
SwiftUI
helper now supportsAlertViewController
. - The
formValueItemView
no longer has a memory leak.
We recommend you use Checkout API v70 or later.
Cash App payments are no longer refused because of the missing customerId
field in the /payments/details
request.
We recommend you use Checkout API v70 or later.
- 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.
We recommend you use Checkout API v70 or later.
Updated device information collection during the 3D Secure 2 device fingerprinting process.
This release requires Checkout API v68 or later.
If Drop-in or Component is inside of an iframe element on your website, you can now configure redirects to be performed on the top level window. To do this, set redirectFromTopWhenInIframe
to true.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.51.0 --save
We recommend you use Checkout API v70 or later.
- Added additional safety checks to validate the user input when shoppers use co-badged cards.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.50.1 --save
We recommend you use Checkout API v70 or later.
- Bancontact cards are now supported in the
CardComponent
. - Dual-branded Bancontact cards now allow brand selection in the
BCMCComponent
.
- 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
We recommend you use Checkout API v70 or later.
- For cards that require the shopper to input their address:
- When internet connection is lost while loading, it no longer crashes. Instead, an error is returned.
- The Country dropdown menu no longer shows no options. Previously, an error sometimes caused the menu to have no options, so the transaction couldn't be submitted.
We recommend you use Checkout API v70 or later.
For 3D Secure 2 transactions, when a challenge is unsuccessful because of error or timeout, the details are propogated in an object instead of returning an error. You can make a /payments/details request from your server to submit these details.
- For cards, whgen a detected card brand doesn't require a security code (CVC), the CVC field on the payment form no longer shows a validation error.
- For dual-branded cards, if the shopper doesn't select a detected brand, the
paymentMethod
object no longer contains a brand when submitting the payment. - After the
AwaitComponent
handles an action, it no longer causes a crash when resuming your app from the background.
- 3D Secure 2 SDK version: v2.2.15.
compileSdkVersion
andtargetSdkVersion
: 33.
This release requires Checkout API v68 or later.
For Bancontact cards, the paymentMethod.type
is now bcmc. Previously, it was scheme.
If there's no expiry date included for a stored card, the payment form no longer shows the Expiry date field. Previously, it showed undefined/undefined.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.50.0 --save
This release requires Checkout API v68 or later.
For cards, the storeDetails
property is no longer mistakenly set to true in some cases.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.49.6 --save
Fixed an issue rare internal issue that caused the /payments
response to not include a resultCode
.
This release requires Checkout API v68 or later.
An error no longer causes the Postal Code field for some regions to accept zero characters, leading to failed validation.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.49.5 --save
We recommend you use Checkout API v70 or later.
func didComplete(with resultCode: SessionPaymentResultCode, component: Component, session: AdyenSession)
Use the new didComplete
method with the AdyenSessionResult
object instead.
- The
countryCode
property ofAdyenSession.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.
-
The Session delegate has a new
didComplete
method with theAdyenSessionResult
object. This ensures that the callback is compatible with potential backend changes.func didComplete(with result: AdyenSessionResult, component: Component, session: AdyenSession)
This replaces the removed
didComplete
function. -
For Apple Pay,
ApplePayConfiguration
now supports the capabilities ofPKPaymentRequest
. PassPKPaymentRequest
when initializing Apple Pay. For example:public init(paymentRequest: PKPaymentRequest, allowOnboarding: Bool = false)
-
You can now set the formatting for monetary values. Use the
locale
property onLocalizationParameters
. -
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 thegiftcard
payment method configuration.
- 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.
This release requires Checkout API v68 or later.
- If you opt out of sending telemetry data and set
analytics.enabled
to false, thepaymentMethod.checkoutAttemptId
is set to do-not-track. - Internal refactoring for some of the payment form inputs to improve the Typescript type safety.
When a page has more than one Card Component, the cvcPolicy
and expiryDatePolicy
properties can no longer be overwritten.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.49.4 --save
This release requires Checkout API v68or later.
- For issuer lists, all logos now load correctly.
- The Refused result code is no longer missing.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.49.3 --save
We recommend you use Checkout API v70 or later.
This version doesn't support Xcode 15.
- Adyen client-side library versions:
- For Apple Pay, the
summaryItems
configuration property is now used. - In debug mode, when there is a code change, Drop-in dismisses itself when hot reloading.
- For the Components integration, if a payment method isn't available or is unsupported, you now get an error.
AdyenCheckout
can now find payment method types that contain uppercase characters.- A bug no longer causes
AdyenCheckout
to sometimes not find theAdyenAppearance
class. - In debug,
AdyenCSE
for iOS no longer shows a main thread warning in the log.
This release requires Checkout API v68 or later.
- For Trustly, some text that describes payment method is shown above the Continue button.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.49.2 --save
This release requires Checkout API v68 or later.
- To follow a11y guidelines, some HTML markup elements changed.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.49.1 --save
This release requires Checkout API v68 or later.
- For the Advanced flow, if the
update
function changes the available payment methods, the payment method list reloads and shows the new payment methods. - The
aria-labelledby
tag is no longer duplicated, so screen readers no longer read the tag twice. - For Klarna, Drop-in no longer gets stuck in the loading state.
For card payments, if Click to Pay doesn't load after 5 seconds, the card payment form is loaded and shown instead.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.49.0 --save
This release requires Checkout API v68 or later.
- For screen readers:
- Alt tags for card brand logos can now be read.
- When a QR code loads, the Scan QR code text can now be read.
- Refactored screen reader panel and provider type definitions.
- For cards, the securedFields label is now a decorative
div
element. - Labels are no longer implicitly associated with the elements they label.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.48.0 --save
This release requires Checkout API v68 or later.
By default, input fields that aren't required now have indicators to show that they aren't required. To turn off the indicators, set showFormInstruction
to false.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.47.0 --save
This release requires Checkout API v68 or later.
- More translations for many locales.
- For 3D Secure 2, authentication no longer fails because of
threeDSServerTransID
validation. Previously, some payments failed authentication because of a false mismatch of thethreeDSServerTransID
. - For the Sessions flow, telemetry data now includes payment currency and amount.
- For QR code payment using Drop-in, the screen reader can now read information about payment status.
- The
SRPanel
for screen readers is no longer duplicated.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.46.1 --save
We recommend you use Checkout API v70 or later.
For 3D Secure 2, consecutive payments no longer fail. Previously, if the challenge failed, retrying the payment failed in some cases.
We recommend you use Checkout API v70 or later.
Live environment for the Asia Pacific and South East region. Set environment
to Environment.liveApse.
- The Icelandic Krona currency (ISK) now has the number of minor units according to ISO-4217.
- 3D Secure 2 SDK version: 2.3.1.
- For gift cards, the shopper can now enter more than 20 digits in the Card number field.
- In
DropInComponent.Configuration
, whenallowsSkippingPaymentList
is set to true, Drop-in now stays in theloading
state until the shopper cancels or completes the payment.
This release requires Checkout API v68 or later.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.46.0 --save
This release requires Checkout API v68 or later.
- For French meal vouchers, the PIN input field label is now Security code.
- Postal code input fields now includes regex validation that accepts hyphens between the 5th and 6th digits for Brazilian postal codes.
- For gift cards, when you use a custom brand logo, it now shows correctly.
- When using Drop-in in an iframe element, Apple Pay no longer causes Drop-in to crash.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.45.0 --save
You can now enable suggesting billing addresses when the shopper starts to enter their address in the payment form. Implement the new onAddressLookup
function.
When configuring creation settings for payment links created through the Customer Area, you can now choose if payment links include the Service date input field.
We recommend you use Checkout API v70 or later.
-
Payment methods:
- CashApp Pay. Payment method type: cashapp.
- Titres-Restaurant (French Meal Vouchers).
-
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.
- The Icelandic Krona currency (ISK) now has the number of minor units according to ISO-4217.
- 3D Secure 2 SDK version: 2.3.1.
- 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.
- The
amountToPay
property ofPaymentComponentData
. Use theamount
property instead.
This release requires Checkout API v68 or later.
Payment method: Cash App Pay. Payment method type: cashapp.
For QR codes, the countdown timer can now be read by screen readers.
For screen readers:
- Drop-down menus options can now be read accurately.
- Payment method names in the Drop-in payment methods list now get read once. Previously, payment method names were read twice.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.44.0 --save
We recommend you use Checkout API v70 or later.
Payment method: Cash App Pay. Payment method type: cashapp.
For 3D Secure 2, the threeDSRequestorAppURL
no longer has a default value. Instead, you can manually set it when you configure it:
Adyen3DS2Configuration.Builder(locale, environment, clientKey) .setThreeDSRequestorURL("https://my-app.com/adyen3ds2") .build()
- For Google Pay, serializing the shipping address parameters no longer causes an error.
- For WeChat Pay on Android 11, an API restriction no longer causes an error.
This release requires Checkout API v68 or later.
- For cards, if you set the
installmentOptions
property in the global configuration object, you now get a warning message. - For Drop-in, if you set a payment method specific configuration property in the global configuration object, you now get a warning message.
- For Components, if you try to create an unrecognized payment method Component, you now get an error message.
- The
SRPanel
for screen readers now has the static type ofsrPanel
. Previously the_id
property was undefined. - The
CoreOptions
object now includes types that were previously missing. - Screen readers can now read the alt text for brand logos. Previously the
aria-hidden
attribute prevented this.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.43.1 --save
This release requires Checkout API v68 or later.
- For cards, the
onBinLookup
event now additionally containspaymentMethodVariant
that specifies the card brand variant. - For SEPA, the owner name and IBAN number fields now include labels to follow a11y guidelines.
- Images no longer fail to load and cause a crash. This fixes the known issue from v5.41.0 to v5.42.1.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.43.0 --save
This release requires Checkout API v68 or later.
On the Safari browser v16.4 or earlier, the payment form no longer shows errors when validating email address. This fixes the known issue from v5.42.0.
- The Custom card, SEPA and Redirect Components receive
getImage
errors when retrieving brand or validation icons. Fixed in v5.43.0.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.42.1 --save
This release requires Checkout API v68 or later.
- The PayPal component now supports Venmo.
- Client-side email address validation is improved.
- The screen readers now communicate errors regarding client-side email address validation.
- The
GetImage
property no longer causes a crash of the custom card Component. - The typing of the
BrowserInfo
object has been fixed.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.42.0 --save
- The Custom card, SEPA and Redirect Components receive
getImage
errors when retrieving brand or validation icons. Fixed in v5.43.0. - On the Safari browser v16.4 or earlier, the payment form shows errors when validating email addresses. Fixed in v5.42.1.
This release requires Checkout API v68 or later.
- The way images and assets are loaded internally. This shouldn't affect the code in your integration.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.41.0 --save
- The Custom card, SEPA and Redirect Components receive
getImage
errors when retrieving brand or validation icons. Fixed in v5.43.0. - On the Safari browser v16.4 or earlier, the payment form shows errors when validating email addresses. Fixed in v5.43.0.
This release requires Checkout API v68 or later.
- The preselected number of installments for the installments component now works as expected.
- Decimal places are now shown correctly for all currencies in Chromium-based browsers.
- The Ticket Edenred Component now hides the expiry date field by default.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.40.1 --save
Platforms can now book chargeback fees separately from the disputed amount, to a balance account specified in the platformChargebackLogic.costAllocationAccount
field of the /payments request.
This release requires Checkout API v68 or later.
For online banking payment methods, terms and conditions now show above the Continue button.
In the payment form:
- Address input fields now accept the dash (-) character.
- Labels for input fields are no longer cut off on small screens. For example, the House number label now shows completely on a 320px viewport.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.40.0 --save
We recommend you use Checkout API v70 or later.
-
For BLIK, one-click is now supported.
-
For 3D Secure 2, the
threeDSRequestorAppURL
can now be overridden from the configuration so that you can now use the Android App Link format (HTTP).Because of recent updates to the 3D Secure protocol, we strongly recommend that you provide the
threeDSRequestorAppURL
parameter as an Android App Link instead of custom link. This requires your app to handle the provided Android App Link.Use
setThreeDSRequestorURL
when creating your configuration object:Override the threeDSRequestorAppURLExpand viewCopy link to code blockCopy code
- For BCMC, errors are now correctly highlighted.
This release requires Checkout API v68 or later.
- For Boleto Bancário:
- When the shopper selects the checkbox to send a copy of the payment form to their email, a validation error no longer occurs.
- The first name and last name input fields now have more descriptive and accessible error messages.
- For BLIK, the input field for the verification code no longer includes suggested values, because verification codes aren't reusable.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.39.1 --save
When using /sessions for Drop-in and Components, sessions are rendered invalid after the payment is completed to prevent duplicate payments.
This release requires Checkout API v68 or later.
- Apple Pay now supports recurring payments. Use the new
recurringPaymentRequest
property to accept recurring payments. - For PayPal, you can now customize the Pay Later message. Set the new
enableMessages
property to true.
- For cards, the payment form now shows the scheme name Visa instead of the value in the
descriptorName
field. - The
Fieldset
component now usesfieldset
andlegend
elements. Screen readers can now read the relationship between different form controls. - Brand icons for cards and QR codes now include alt text that corresponds to the brand name.
- For bank payments, the payment button in the payment form now no longer shows when the
showPayButton
property is set to false. - For the Advanced flow with cards, the check for the object to show stored payment methods from the
/paymentMethods
response now correctly checks forstoredPaymentMethods
. Previously, it checked forstorePaymentMethods
. - For Visa, the
checkoutOrchestrator
property is now named correctly. Previously, it was namedcheckoutOrchestator
. - For ApplePay:
- The
amount
property is no longer passed toUIElement
. - The
configuration
property is no longer passed toUIElement
. - The
Wallets
configuration no longer uses deprecated values.
- The
- For card payments that go through a successful 3D Secure 2 challenge,
onComplete
can no longer be mistakenly called more than once.
Install this version of the Adyen Web Node package:
nmp install @adyen/adyen-web@5.39.0 --save
This release requires Checkout API v68 or later.
- For Adyen Giving, you can now add a message above the Donate button. In the
DonationComponent
configuration, use the newdisclaimerMessage
prop. - Apple Pay now supports the eftpos card network.
- Increased contrast ratio for the outline of buttons and, when the payment form has more than 3 supported card brands, for the number that indicates the number of additional supported card brands.
- Error messages that occur in the drop-down list of issuers can now be read by screen readers.
- Accessibility improvements that follow a11y guidelines.
- Shoppers on mobile devices can now select an issuer from the drop-down list of issuers without error. This fixes the known issue from v5.37.0.
- For MB WAY, the payment form no longer shows more than one label for each input field.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.38.0 --save
This release requires Checkout API v68 or later.
This release enhances the accessibility of Web Drop-in and Components:
- We made major improvements related to how errors are handled by screen readers. For more information, see pull request in GitHub.
- We've updated a drop-down box that is used throughout Web Drop-in and Components to better support keyboard and accessible technology user interaction. For more information, see pull request in Github.
- We've improved UI text and translations for credit card payments in over 20 languages. For more information, see pull request in GitHub.
For payment methods that include a list of issuers, shoppers on mobile are not able to select an issuer from the drop-down list. Fixed in v5.38.0.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.37.0 --save
When using /sessions for Drop-in and Components, it is no longer possible to have more than 5 refusals per session.
This release requires Checkout API v68 or later.
- You can now pass an
ApplePayPaymentAuthorizationResult
to the resolve/reject functions, which is automatically passed to the ApplecompletePayment
function, for example:
onAuthorized: (resolve, reject, event) => { reject({ errors: [ new ApplePayError( 'shippingContactInvalid', 'locality', 'Field locality is required' ), ] }) }
By doing so, you can show useful error messages to your shoppers when the payment fails.
- For returning ACH Direct Debit shoppers, we now display the last four numbers of their bank account number for recognition.
- Drop-in and Components no longer have errors related to accessing
localStorage
when rendered in an<iframe>
in a Google Chrome incognito window.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.36.0 --save
This release requires Checkout API v68 or later.
- For debit card payments, shoppers are no longer shown installment options, as installments aren't compatible with debit cards.
- The state of Blik Components can now only be accessed once the component is fully rendered, preventing errors.
- In Card Components and Card Drop-in, you can now add an optional disclaimer. The disclaimer may include a hyperlink, for example to link to your terms and conditions:
Field | Description |
---|---|
disclaimerMessage.message | A string of text that is shown in the bottom of the Card Component. Use %{linkText} to reference the optionally defined hyperlink. |
disclaimerMessage.linkText | The hyperlink's text |
disclaimerMessage.link | The hyperlink's destination. The link opens in a new tab. |
Example:
disclaimerMessage: { message: 'By continuing you accept the %{linkText} of MyStore', linkText: 'terms and conditions', link: 'https://www.adyen.com' }
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.35.0 --save
This release requires Checkout API v68 or later.
- Payment methods that use QR codes don't automatically redirect shoppers on mobile devices to the QR code's destination anymore. Instead, shoppers are presented an Open app button that redirects them to complete the payment.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.34.0 --save
Responses to Amazon Pay POST /payments
requests now contain additionalData.amazonPayToken
. You can use this token as a reference, for example when troubleshooting your payment directly with Amazon Pay.
We recommend you use Checkout API v69 or later.
- 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.
- UPI Collect: The shopper pays by entering their virtual payment address (VPA).
- PayNow.
- 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.
- 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
, whenallowsSkippingPaymentList
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.
We recommend using Checkout API v69 or later.
- The
CardComponentState.binValue
now reports 8 digit bins in case of card numbers with 16 or more digits. - The new
CardBrand
class can be used to define unknown card brands. This can be used along withCardType
. - When adding new card brands through
CardConfiguration
, you can now use the newCardBrand
to add brands that are not already defined inCardType
. For example:CardConfiguration.Builder(SHOPPER_LOCALE, ENVIRONMENT, CLIENT_KEY) .setSupportedCardTypes(CardBrand(txVariant = "CARD_BRAND_1"), CardBrand(txVariant = "CARD_BRAND_2")) .build()
- 3D Secure 2 SDK version: 2.2.11.
compileSdkVersion
andtargetSdkVersion
version: 32.- Kotlin version: 1.6.21.
- Kotlin coroutines version: 1.6.1.
- Fragment version: 1.5.5.
- AppCompat version: 1.5.1.
- For cards, you can now add unknown card types that aren't defined in
CardType
. Previously,CardType.UNKNOWN
was not working correctly. - There is no longer a conflict with the 3D Secure 2 SDK that causes a runtime exception. This fixes the known issue in v4.9.0.
- The
CardType.UNKNOWN
property. UseCardBrand(txVariant = "CARD_BRAND")
instead. - The
CardType.setTxVariant()
method. It is no longer needed because it was used withCardType.UNKNOWN
.
This release requires Checkout API v68 or later.
The new onActionHandled
callback informs you when an action, for example a QR code or 3D Secure authentication screen, is shown to the shopper. It returns data that contains the type of component that shows the action to the shopper and a description of the action.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.33.0 --save
Payments using payment links no longer include the applicationInfo
parameter.
Follow the migration guide to upgrade your integration.
-
For the /payments or /sessions request to store payment details or make a payment with stored payment details:
You now must include the recurringProcessingModel parameter. -
For the /sessions request to store payment details:
You now must include the recurringProcessingModel parameter. -
For the /paymentMethods/balance request to check a gift card balance:
You now must include theamount
parameter. -
For Pix, the /payments response no longer includes
action.url
. You must useaction.qrCodeData
to render the QR code.
-
You must now make a /payments or /sessions request to store payment details. You can no longer configure it from the Customer Area.
-
For the /sessions request:
- The storePaymentMethod parameter. Use
storePaymentMethodMode
instead. - If the required reference parameter isn't included, you now get a validation error.
- The storePaymentMethod parameter. Use
-
For /payments and /sessions requests including line items for custom risk rules:
You can now use thelineItems
parameter instead ofadditionalData.riskdata.basket
.
-
The
/storedPaymentMethods
endpoint:- Make a GET request to list the stored payment details for a shopper, if there are any available.
- Make a DELETE request to disable stored payment details to stop charging a shopper with the particular recurring detail ID.
-
For /sessions and
/paymentLinks
requests:
You can now include thestorePaymentMethodMode
parameter to set when to store the shopper's payment details. -
For the /paymentMethods request:
When you include theshopperReference
parameter, stored payment details in the response now contain thesupportedRecurringProcessingModel
parameter. -
For specific industries, such as hospitality, you can specify a reason when making a merchant-initiated transaction with stored payment details. In the /payments request, include the
industryUsage
parameter to specify a reason for the payment. Possible values:- delayedCharge.
- noShow.
- installment.
In the Customer Area, on the Settings > Checkout Settings page:
- Turning on the enableRecurring toggle no longer adds the required parameters to store payment details in payment requests.
- Turning on the enablePayout toggle no longer adds the required parameters to store payment details for payouts.
-
For /payments and /sessions requests to make payments with stored payment details:
When you includeshopperInteraction
: ContAuth andrecurringProcessingModel
: CardOnFile, the transactions now always get processed as CardOnFile payments. -
If you contacted our Support Team to enable filtering payment methods based on your store, when making a /paymentMethods or /sessions request including store:
The response now includes only payment methods available for the specified store. -
For /paymentMethods and /sessions requests including allowedPaymentMethods with scheme and card in the array:
The response no longer includes wallet payment methods.
For the /paymentLinks request to create a payment link that stores the shopper's payment details:
You must include the recurringProcessingModel parameter.
When creating a payment link in the Customer Area, you can enable storing the shopper's payment details.
In your Customer Area, go to Pay by Link > Settings and select the toggle to enable.
This release requires Checkout API v68 or later.
For Online banking Poland, the list of issuers now includes issuer logos.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.32.0 --save
This release requires Checkout API v68 or later.
- For PayNow, the QR code that the shopper scans to pay now expires after 3 minutes. Previously, it expired after 15 minutes.
- For Google Pay, when the shopper cancels the payment, the pop-up that appears is now the same as the one for other payment methods.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.31.3 --save
- For cards, the card brand icons that appear under the Card number field now have larger margins.
This release requires Checkout API v68 or later.
For Drop-in, when the shopper selects a payment method from the list, the onSelect
callback now gets called only one time. Previously, if the shopper selected a UI element besides the radio button, such as the payment method logo, the callback was called multiple times.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.31.2 --save
For PayNow, the QR code expires after 15 minutes. It should expire after 3 minutes. This issue is fixed in v5.31.3.
This release requires Checkout API v68 or later.
- For 3D Secure 2, when fingerprint authentication times out, the
onError
callback is no longer triggered. The 3D Secure flow continues for the shopper as usual, because it is not a fatal error. - All error icons now have the alt tag Error.
- For BLIK, input fields now accept only numeric values.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.31.1 --save
We recommend you use Checkout API v69 or later.
- 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.
This release requires Checkout API v68 or later.
- For integrations using the /sessions endpoint, you now receive the
sessionResult
property after the payment flow finishes. - For Google Pay, the
buttonRootNode
property is now supported. - For the Card Component on iOS devices in the Safari browser, when an input field is in focus, you can now enable the keyboard arrows for all versions of the browser by setting the new
disableIOSArrowKeys
to false.
- The sorting logic after detecting card brands now happens on Adyen's backend servers.
- For ACH:
- The bank account number input field in the payment for no longer shows a placeholder.
- When the shopper enters a bank account number, it is no longer formatted with a space between every four digits.
- For the cards, when the
billingAddressMode
property is set to partial and thecountry
property is set, there's now validation for the postal code that the shopper enters.
- For OXXO, the payment button no longer shows when
showPaymentButton
is set to false. - For payment methods with an additional action, configured properties for the payment method now persist after the handling the action. Previously, configured properties were lost after handling the action.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.31.0 --save
For PayNow, the QR code expires after 15 minutes. It should expire after 3 minutes. This issue is fixed in v5.31.3.
We now accept payments made with Ukrainian cards that have been expired for up to three months, in line with the National Bank of Ukraine's recommendations.
Shopper-facing error pages now display the HTTP error code when applicable and include an updated graphic.
We recommend you use Checkout API v69 or later.
- For cards, when the shopper enters a card number and a dual branded card is detected, a brand is no longer selected by default.
- Drop-in no longer crashes when navigating back after the shopper removes all stored payment methods.
This release requires Checkout API v68 or later.
- For cards, the
onBinLookup
event now includes theissuingCountryCode
property. Previously, the event didn't include information about the issuing country code.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.30.1 --save
For PayNow, the QR code expires after 15 minutes. It should expire after 3 minutes. This issue is fixed in v5.31.3.
This release requires Checkout API v68 or later.
- Payment method: DuitNow.
- For cards:
- The Expiry date field now includes an icon showing the location of the expiry date.
- In the CVC/CVV field, you can now set digits to appear as dot icons by setting the new
maskSecurityCode
property to true.
- To enable the instant payment button for Google Pay, you can now set
instantPaymentTypes
to either googlepay or paywithgoogle. - The
checkoutAttemptId
field for analytics and data tracking is now in thepaymentMethod
object.
In the payment methods list, the items in the list now have the radio role for accessibility features.
- For Pix, when
showPayButton
is set to false, the payment form now appears when the shopper selects Pix from the payment methods list. - For Klarna using the
/sessions
endpoint, you no longer have to implement theonAdditionaDetails
callback. Previously, you had to implement theonAdditionalDetails
callback to make a request to the correct endpoint. - When you create the 3D Secure 2 Component with
createFromAction
, the component no longer crashes if you make more than one transaction of the same type.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.30.0 --save
For PayNow, the QR code expires after 15 minutes. It should expire after 3 minutes. This issue is fixed in v5.31.3.
We recommend you use Checkout API v69 or later.
- 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.
We recommend you use Checkout API v69 or later.
- For cards, in
AddressConfiguration.PostalCode
mode, you can now specify if the postal code field required. - For BCMC, you can now specify if the cardholder name field is required.
- After the card brand is detected and the shopper enters the full card number in the card number input field, focus automatically moves to the next input field.
- Upgraded the 3D Secure 2 SDK version to v2.2.10. This causes a known issue.
- For a card number to be valid, its minimum required length is now 12 digits. Previously, the minimum was 8 digits.
- Configuration changes no longer dismiss Drop-in. Previously, some configuration changes dismissed Drop-in.
- Drop-in can now be initialized with only stored payment methods. Previously, no payment methods were shown if only stored payment methods were available.
For cards, if you currently use AddressConfiguration.PostalCode
mode, you must update it for 4.9.0:
4.8.0 or earlier | 4.9.0 |
---|---|
.setAddressConfiguration(AddressConfiguration.PostalCode) |
.setAddressConfiguration(AddressConfiguration.PostalCode()) |
If your project uses Google play-services-location
library version 20.0.0 or earlier, it causes a runtime exception because of an incompatibility with the 3D Secure 2 SDK. You must upgrade the library to version 21.0.0 or later to avoid the runtime exception.
When creating a payment link through the Customer Area, you can now specify if you want to manually capture the payment.
This release requires Checkout API v68 or later.
- Payment methods:
- PayNow
- PromptPay
- For PayPal, GooglePay, and AmazonPay, payments no longer crash because of
Script
. - When a shopper makes gift card partial payments, and the second payment method fails, the corresponding callback gets triggered with an error. Previously, the callback was not triggered.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.29.0 --save
For PayNow, the QR code expires after 15 minutes. It should expire after 3 minutes. This issue is fixed in v5.31.3.
We recommend you use Checkout API v69 or later.
- 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:)
inPaymentMethods
. 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.
- You can now configure the 3D Secure 2 Component with
threeDSRequestorAppURL
.
The Observer
is protocal has been renamed to AdyenObserver
.
Follow the steps in the migration guide if you are upgrading your integration from an earlier version.
This release requires Checkout API v68 or later.
Drop-in and Components now use Preact v10.11.2.
The Amazon Pay payment method now loads for the US locale when the shopper is in the US. Previously it loaded the Great Britain locale.
For Amazon Pay, the default property region
. Use configuration.region
instead.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.28.3 --save
We recommend you use Checkout API v67 or later.
- 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.
This release requires Checkout API v68 or later.
- Upgraded the version of card input fields.
- For ACH, the new
forceCompat
property forces browsers to use JSON Web Encryption for the input fields. Set this property to true.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.28.2 --save
When creating payment links through the Customer Area, it's now possible to add installment options when the shopper country/region is Colombia, Peru, or Ecuador.
We recommend you use Checkout API v67 or later.
For 3D Secure 2.2.0, the threeDSRequestorAppURL
parameter is automatically populated with the returnUrl
value from the /payments
request.
The URL
extension. It caused conflict with the code in some integrations.
The properties in RedirectDetails
are now public.
A successful QR code payment now always triggers a callback.
This release requires Checkout API v68 or later.
The Preact version you can use is now restricted to the version used by Drop-in and Components. Previously, some installations using a different Preact version were broken.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.28.1 --save
This release requires Checkout API v68 or later.
- For cards, new error codes and messages specify the types of error that occur in the input fields. Previously, there was one error code and message for different types of errors.
- For cards, the new
forceCompat
property forces browsers to use JSON Web Encryption for the card input fields introduced in v5.20.0. Set this property to true.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.28.0 --save
When creating payment links through the Customer Area, it's now possible to store payment details for future payments. This setting is specific to payment links.
This release requires Checkout API v68 or later.
Payment method: Open banking
The mount
function can now remount a Component after it has been unmounted. Previously, only remount
could remount a Component.
- For Google Pay, payment submission errors now trigger the
onError
callback instead of throwing an exception. - On mobile, redirecting the shopper to another app no longer triggers the
onError
callback with anAdyenCheckoutError
. - For UPI, changing the payment mode to QR code now triggers the
onChange
callback. Previously, only changing the payment mode to VPA triggered the callback.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.27.0 --save
We recommend you use Checkout API v67 or later.
Payment method: Online banking Poland
Updated the 3D Secure SDK to v2.2.8.
- Drop-in now terminates without crashing when the shopper is redirected back to your app.
- The 3D Secure 2 SDK no longer crashes on Android 13.
This release requires Checkout API v68 or later.
- Fixed the known issue from v5.25.0 where the Stored Card Component UI showed an error code instead of the error message when there was a validation error.
- On Drop-in, moving the focus on a payment method no longer automatically expands it. To expand a payment method, the user must slect by clicking, tapping, or pressing a button.
- Added missing alt text translations for icons used for input field validation feedback.
- The
checkoutAttemptId
is now stored as part of your browser'ssessionStorage
for 15 min.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.26.0 --save
This release requires Checkout API v68 or later.
For the Card Component, input field errors now include the name of the field where it occurred.
The UPI Component now shows a selector for Virtual Payment Address and QR code above the input field, instead of a different button for each, so that you can customize the Continue button. Use the new defaultMode
configuration parameter to specify if Virtual Payment Address or QR code is selected by default.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.25.0 --save
For input fields, the icons that indicate if an input is valid or invalid now include corresponding alt
text, which is used by screen readers.
Payment method: Online banking Poland.
If there's a validation error in the Stored Card Component, the UI shows the error code instead of the error message. Fixed in v5.26.0
When you enable receiving the fraudResult
parameter in the /payments/details response, you now receive it for 3D Secure 2 transactions. Previously, fraudResult
wasn't returned for 3D Secure 2 transactions.
This release requires Checkout API v68 or later.
For ACH Direct Debit payments, the shopper can now choose to save their payment details. Set enableStoreDetails
to true in the payment method configuration to enable the checkbox.
Changed the color of some UI elements to increase visual contrast.
When the shopper selects a checkbox, the check mark now renders completely. Previously, only a part of the check mark rendered.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.24.0 --save
We recommend you use Checkout API v70 or later.
The finalizeIfNeeded(with: Bool)
method. Use finalizeIfNeeded(with success: Bool, completion: (() -> Void)?)
instead.
Successful Apple Pay payments are now finalized with finalizeIfNeeded(with success: Bool, completion: (() -> Void)?)
, which increases conversion rates.
This release requires Checkout API v68 or later.
For the Card Component, you now get an error message when input fields in the payment form fail to load.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.23.1 --save
When creating payment links through the Customer Area, it's no longer possible to store payment details for future payments.
From 10 Oct, 2022, it's possible to store payment details when creating payment links through the Customer Area. This setting is now specific to payment links.
This release requires Checkout API v68 or later.
The Pay button can now show the payment amount in two different currencies using the secondaryAmount
configuration.
- For cards, the cardholder name field now has an autocomplete attribute that labels its purpose.
- For SEPA Direct Debit and Boleto, the shopper email field now has validation.
- Projects that use TypeScript now compile without an error because
CoreParameters
is now imported from a relative path. This fixes the known issue introduced in v5.22.0.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.23.0 --save
This release requires Checkout API v68 or later.
Payment methods: Online banking for Czech Republic and Online banking for Slovakia.
Added TypeScript types to the AdyenCheckout
object.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.22.0 --save
Integrations using TypeScript don't compile because of an error.
Support for setting credit card installment options in the /sessions request.
This release requires Checkout API v68 or later.
- For the Gift cards Component, you can now show a custom button when the shopper chooses to pay part of the amount with a gift card and the remaining amount with another payment method.
- Support for credit card installments.
- If you do not support American Express cards, the shopper can no longer enter a CVC that is more than 3 digits.
- The UPI Component now handles the timeout error for UPI Collect payments.
- For the SEPA bank transfers, setting the
showPayButton
to false now hides only the payment button.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.21.0 --save
This release requires Checkout API v68 or later.
Supported language: Portuguese. Use the shopperLocale
: pt-PT.
For the Card Component, the input fields in the payment form now use JSON Web Encryption for security. To test your Card integration, you now must use either a local or https
domain.
For Bancontact card payments, when the shopper enters the card number and the brands are detected by the Component, the brands no longer remain detected if you remove the card number.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.20.0 --save
When you create a payment link in the Customer Area and choose a different theme than your default one, the payment link now shows the chosen theme. Previously, payment links always showed the default theme.
We recommend you use Checkout API v67 or later.
For BACS Direct Debit, an error message appears under the payment agreement text if the shopper selects the Continue button without selecting the toggles to agree.
This release requires Checkout API v68 or later.
New supported payment method: UPI.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.19.0 --save
Added the LICENSE
file to the npm package.
We recommend you use Checkout API v67 or later.
Support for the new Asia Pacific South East (APSE) live environment. Use this environment with the corresponding APSE location-based live endpoints.
For BACS Direct Debit, the payment agreement text in the payment form now includes the amount. Previously, it always showed the default above amount instead of the amount.
This release requires Checkout API v68 or later.
- When you use Gift card Component with the
/sessions
endpoint, you can now let the shopper pay part of the amount with a gift card and the remaining amount with another payment method.
- The AmazonPay Component now loads the AmazonPay SDK that corresponds to the region from the
paymentMethods
response. - After the shopper selects the Pay button, the Card Component no longer allows the shopper to interact with the card input fields.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.18.0 --save
We recommend you use Checkout API v67 or later.
- 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.
- 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 thedidSubmit
callback is no longer nil. This fixes the issue introduced in v4.0.0.
The URL extension. This shouldn't affect your integration because this is an internal code change.
In the RegionRepository
class, the functions getSubRegions
and getCountries
are removed. This shouldn't affect your integration because this is an internal code change.
This release requires Checkout API v68 or later.
Add your signed JSON Web Token (JWT) to your Google Pay configuration using configuration.authJwt
. This allows you to use your Google merchant ID with multiple domains.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.17.0 --save
Added support for partial authorization. This allows shoppers to pay for their goods with another card, if the balance of their initial card is less than the value of the goods.
Fixed issue where the /payments
and /payments/details
responses incorrectly showed BCMC cards as Mastercard or Visa. The payments were correctly handled as BCMC, but the reponses had the incorrect paymentMethod.brand
.
This release requires Checkout API v68 or later.
- If an action is rejected in the
beforeSubmit
callback, the state of the Component no longer remainsloading
. - For donations, amounts are now shown with decimals. Previously, amounts were rounded up to the closest integer.
- The 3D Secure 2 Component now throws a challenge error when
transStatus
cannot be retrieved. - Fixed an issue where in some situations, if a shopper corrected an invalid card number, it was still marked as invalid.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.16.2 --save
We recommend you use Checkout API v67 or later.
- Fixed a bug where country/region picker was being shown briefly after selecting Pay.
- 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.
This release requires Checkout API v68 or later.
- Removed
alt
text from the supported card brand images because it was not providing additional useful information to screen reader users. - Changed the color of placeholder text in form fields so the contrast now satisfies WCAG AA requirements.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.16.1 --save
We recommend you use Checkout API v67 or later.
Standalone modules now import successfully. Previously, some modules failed to import because ui-core
had a dependency on a style in card
.
This API version is supported by our Java, NodeJS, PHP, Python, Go, and .NET libraries. We are working on updating the Ruby library.
You can find all the Adyen libraries on GitHub.
POST /payments
- The
fraudResult.results
list now no longer contains theFraudCheckResult
for each list item. Each list item now only contains the values of the individual risk checks. See code samples.
POST /paymentMethods
- The format of the
expiryYear
returned for stored cards is now the last two digits of the year.
POST /sessions
- authenticationData object in the request.
POST /payments
- authenticationData object in the request.
- paymentMethod object in the reponse.
POST /payments/details
- authenticationData object in the request.
- paymentMethod object in the reponse.
Fields related to 3D Secure authentication are now grouped under the new authenticationData
object. The old 3D Secure authentication fields have been deprecated.
This release requires Checkout API v68 or later.
Analytics feature turned on by default. Find out what we track and how you can configure it.
For MB WAY, added a country code prefix to the phone number input field.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.16.0 --save
For wallets India, the payment method type is now: wallet_IN.
Payment method types billdesk_wallet and payu_IN_cashcard for wallets India. Use wallet_IN instead.
We recommend you use Checkout API v67.
- Use
CardConfiguration.Builder.setAddressConfiguration(AddressConfiguration)
to enable and configure the billing address form in your Card Component.
Environment.LIVE
. Use the name of your live environments instead. For example, useEnvironment.EUROPE
if your live environment ishttps://checkoutshopper-live.adyen.com
. You can find that value in your live Customer Area > Developers > API URLs.CardConfiguration.Builder.setAddressVisibility(AddressVisibility)
. UseCardConfiguration.Builder.setAddressConfiguration(AddressConfiguration)
instead.
- Fixed issue with the soft keyboard navigation not working in some cases for the Card Component.
- All fields now use the locale in your configuration. The device locale is being ignored.
- Google Pay no longer crashes when the Coponent or the payment method list is initialized.
- For
ModelObject
classes, there are no more issues related to obfuscation . - Fixed an issue where the remove stored payment method button would disappear.
- Fixed an issue where removed stored payment methods would appear again in the UI after rotating the screen, even though they had been removed.
This release requires Checkout API v68 or later.
For gift cards on Drop-in, the shopper can now cancel a transaction after making a partial payment with a gift card.
- For the Card Component on iOS devices in the Safari browser, when an input field is in focus, the keyboard arrows are now disabled for all versions of the browser. Previously, the keyboard arrows only functioned correctly for some versions.
- Integrations using TypeScript now compile without an error. This fixes the known issue introduced in v5.14.0.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.15.0 --save
You can now use the Pay By Link app on iOS devices without contacting support for additional setup.
This release requires Checkout API v68 or later.
- For the Card Component, if you set
billingAddressRequired
to true, you can use the newbillingAddressMode
property to require the shopper's postal code instead of the full address.
- For Atome, the bank details input fields no longer show up in the payment form. This fixes the known issue introduced in v5.13.0.
Integrations using TypeScript don't compile because of an error.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.14.0 --save
Fixed an issue where some payments with redirect data couldn't be completed.
When the shopper's browser is set to a language that isn't English, the list of payment methods now shows the translated names of payment methods.
We recommend you use Checkout API v67.
- Upgraded the 3D Secure 2 SDK version to v2.2.5.
- If you're using a custom localization, the stored card component now also inherits it.
This release requires Checkout API v68 or later.
In the payment form, focus no longer moves to the first input selector when the shopper clicks on other elements. This fixes the known issue introduced in v5.13.0.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.13.1 --save
This release requires Checkout API v68 or later.
- Payment method: Atome.
- Payment method variant: Ratepay Direct Debit. When configuring and creating an instance of the Component, use the
paymentMethod.type
ratepay_directdebit. - Support for the new Asia Pacific South East (APSE) live environment that you can use for shoppers in that location, if you also use APSE location-based live endpoints. When configuring your instance of
AdyenCheckout
, use theenvironment
live-apse.
When searching for a value in a drop-down field, the drop-down no longer remembers the search term when you click away from it.
In the payment form, focus moves to the first input selector when the shopper clicks on other elements.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.13.0 --save
For PayPal payments that require personal details, the modal now shows up correctly after selecting the PayPal button.
This release requires Checkout API v68 or later.
For the Card Component, the default setting of showBrandsUnderCardNumber
is true.
For Swish payments, the QR code expires after 3 minutes instead of 15 minutes.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.12.0 --save
This release requires Checkout API v68 or later.
For cards, supported brands are no longer shown above the card number field when the shopper selects to pay by card. You can now show them under the card number field by setting the property showBrandsUnderCardNumber
to true. In the Drop-in payment method list, next to the Card payment method, this also shows a maximum of 4 supported brands instead of all.
Starting from v5.12.0, the default value for this property is true.
Drop-in and Components no longer crash for some Content Security Policy header values.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.11.0 --save
We recommend you use Checkout API v67 or later.
- Payment method: gift cards.
- New required methods for the gift card flow:
checkBalance
: calls/paymentMethods/balance
andsendBalanceResult
to return the result.createOrder
: calls/orders
andsendOrderResult
to return the result.cancelOrder
: calls/orders/cancel
. The result is returned insendResult
.
- Support for right-to-left layout.
- Added translations for Arabic (international).
- You can pass a custom
Bundle
toDropInService
usingDropInConfiguration.Builder.setAdditionalDataForDropInService
. Retrieve this bundle by callingDropInService.getAdditionalData
. - The Google Pay environment now also follows the Adyen environment when separately calling
GooglePayConfiguration.Builder.setEnvironment
. You can callGooglePayConfiguration.Builder.setGooglePayEnvironment
to override this default behaviour. - On Drop-in, you can now allow shoppers to remove stored cards. To do this, override
DropInService.removeStoredPaymentMethod
and usesendRecurringResult
to return the result.
- Drop-in is no longer dismissed when tapping outside of the bottom sheet.
- Upgraded the 3D Secure 2 SDK version to v2.2.6.
- Fixed handling redirects using Custom Tabs as required by the privacy changes for package visibility in Android 11.
- Drop-in no longer crashes when the shopper locale doesn't have an ISO3Country.
- When resuming Drop-in after the activity has been destroyed in the background, the Component screen no longer crashes.
- In the Card Component, CVC and expiry date fields are no longer being validated when empty.
- Added missing translation strings.
This release requires Checkout API v68 or later.
- If the environment and type of client key do not match, you now get an error.
- The error message for when a 3D Secure 2 challenge occurs specifies what went wrong.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.10.0 --save
Payment method types billdesk_online and payu_IN_nb for Online banking India. Use onlinebanking_IN instead.
For Online banking India, the payment method type is now onlinebanking_IN.
For the Card Component, the onFieldValid
callback now returns the issuerBin
(first 8 digits of the card) prop if the card number is 16 or more digits.
- You can now use the
/donations
endpoint on all versions of the API.
- If Amazon Pay is configured as a blocked payment method, it's no longer returned in the
/paymentMethods
response.
We recommend you use Checkout API v67 or later.
- 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.
For non-reusable payment links, if a card payment is refused, the shopper can try to pay again for a maximum of 5 times.
This release requires Checkout API v68 or later.
- Support for recurring payments through Amazon Pay using the new properties
changePermissionType
andrecurringMetadata
. The shopper's details are stored by Amazon Pay.
- Highlighted issuers are now correctly shown with two issuers in each row. When the number of issuers is odd, the last row shows one.
- For the instant payment button, when you set
showPayButton
to false, it is now correctly shown.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.9.0 --save
Fixed an issue where 3D Secure 1 redirect flow couldn't be completed.
- Pay by Link now uses Web Drop-in v5.8.0.
- The settings for the payment links list are no longer being reset when reloading the page.
- In the Customer Area, on the Settings page, turning off the Enable gift card toggle now disables gift card payments.
- Balance checks for gift cards no longer fail for non-euro currencies.
On the transactions overview page in the Customer Area, you can now filter the payment links by creation source: Customer Area, API, or Pay by Link app.
This release requires Checkout API v68or later.
Support for French meal vouchers:
- Apetiz: mealVoucher_FR_natixis
- Sodexo: mealVoucher_FR_sodexo
- Up Dejeuner: mealVoucher_FR_groupeup
- For the Card Component, the focus moves to the next field when the entered card number reaches the expected length. This feature is controlled by the
autoFocus
prop. - Added postal code validation for the countries/regions configured in
validate.ts
.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.8.0 --save
For card payments in installments, if there's a single installment, Drop-in doesn't return the installments
object.
We recommend you use Checkout API v67 or later.
- 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
.
- Moved the WeChat binary from the
AdyenWeChatPay
module to an external repository. If you're using WeChat Pay with Carthage, addAdyenWeChatPayInternal
to your project. If you're using WeChat Pay with CocoaPods and Swift Package Manager, the change happens automatically as part of the update.
- 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.
- 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 callingfinalizeIfNeeded(with: success)
. - Text fields, except the card number and CVC, now allow the system default input options.
This release requires Checkout API v68 or later.
- If there's an error during the 3D Secure 2 authentication flow, the Pay button now returns to the default state from the loading state.
- In addition to gift card logos, you can now also configure custom names for gift cards.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.7.0 --save
Fixed an issue where payment requests with a billing address had the stateOrProvince
field populated with ZZ.
Fixed an issue with Prosodie and Illicado gift cards where the balance check request always returned a Success result code.
This release requires Checkout API v68 or later.
When you get a network error, error.message
now contains the message from the API response instead of a generic one.
When setStatusAutomatically
is set to true
, an overlay now prevents shoppers from interacting with payment method fields after pressing the Pay button.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.6.2 --save
This release requires Checkout API v68 or later.
When using Internet Explorer 11, card input fields now appear and work correctly. This fixes the known issue introduced in v5.2.1.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.6.1 --save
When you create a payment link in the Customer Area and have one physical store, you can now clear the Store field if you don't want the payment link to be associated with that store.
This release requires Checkout API v68 or later.
- The new property,
SRConfig
, lets you configure screen reader behaviour when there are errors in the Card Component fields. This property doesn't affect how error messages are rendered in the checkout form.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.6.0 --save
When using Internet Explorer 11, card input fields don't appear and work correctly. Fixed in v5.6.1.
If you get an error when creating a payment link in the Customer Area, you now get a PSP reference number in the error message. Adyen can use it to help you find out the cause of the error.
Fixed an issue where, when creating a payment link in the Customer Area, more than one radio button could be selected in the Link validity section.
We recommend you use Checkout API v67 or later.
- 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.
We recommend you use Checkout API v67.
- Payment method: BACS Direct Debit.
- The Google Pay environment is no longer being incorrectly set to
WalletConstants.ENVIRONMENT_PRODUCTION
.
DropInServiceResult.Action(actionJSON: String)
is deprecated. UseDropInServiceResult.Action(action: com.adyen.checkout.components.model.payments.response.Action)
instead. To serialize your JSON response string, usecom.adyen.checkout.components.model.payments.response.Action.SERIALIZER
.
This release requires Checkout API v68 or later.
The PayPal Component now renders a PayLater button in countries/regions where it is available. If you do not want the PayLater button to be rendered, you can use blockPayPalPayLaterButton: true
.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.5.0 --save
- Shoppers using web browsers on Android devices cannot type into the card holder name field. Fixed in v5.6.0.
- When using Internet Explorer 11, card input fields do not appear and work correctly. Fixed in v5.6.1.
We recommend you use Checkout API v67 or later.
- 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
.
- Fix
NSLayoutConstraint
errors in the debug log.
This release requires Checkout API v68 or later.
We changed how Drop-in and Components handle browser compatibility, which means polyfills no longer polute the global scope. This change doesn't affect the browser support of your Drop-in or Components integration.
- Fixed the known issue from v5.2.2 where PayPal didn't load if you integrated using the
/sessions
endpoint. - Fixed an issue where PayPal was not loading when re-mounting with a different type of currency.
- Fixed issues with entering Japanese characters in text input fields.
- Drop-in and Components no longer crash when imported on a server-side context, for example if using Angular Universal, Nuxt.js, or Next.js.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.4.0 --save
- Shoppers using web browsers on Android devices cannot type into the card holder name field. Fixed in v5.6.0.
- When using Internet Explorer 11, card input fields do not appear and work correctly. Fixed in v5.6.1.
Fixed an issue where the email notification for a 3D Secure payment could be missing the payment method.
We recommend you use Checkout API v67 or later.
- 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
.
We added support for the following card networks in Apple Pay:
- Cartes Bancaires (
cartesBancaires
) in France. - MADA (
mada
) in the Middle East.
- Card brand detection for dual-branded cards is now based on the first 11 digits of the card number.
- Cartes Bancaires does not work with Apple Pay. Fixed in v4.7.1.
On the Payment links page, you can now:
- Filter payment links by Payment link ID.
- Add a column for Shopper email.
Added support for Arabic.
Improved validation for Shopper reference when creating a payment link in the Customer Area.
We fixed an issue where iDEAL payments could be refused if the POST /payments
request included a store
.
This release requires Checkout API v68 or later.
Fixed the issues with cards in the live environment introduced in version 5.3.0.
When using Internet Explorer 11, card input fields don't appear and work correctly. Fixed in v5.6.1.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.3.1 --save
This release requires Checkout API v68 or later.
For Drop-in, you can now render the Apple Pay and Google Pay buttons at the top of the payment method list.
- For PayPal, we now support zero-auth transactions.
- The icons in the payment method list UI have more padding in the focus state.
Dragonpay vouchers for convenience stores in the Philippines (dragonpay_otc_philippines
) now only show the Dragonpay logo. Previously, an issuer logo was also shown beside the Dragonpay logo.
- The Cards Drop-in integration and Card Component are only available in the test environment. They will be available in the live environment on 2 Dec, 2021.
- When using Internet Explorer 11, card input fields do not appear and work correctly. Fixed in v5.6.1.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.3.0 --save
- Fixed an issue where if you integrated using the
/sessions
endpoint and have configuredonAdditionalDetails
on the front end, the front end was automatically submitting additional payment details. This means that submitting additonal payment details from your server using the/payments/details
call no longer fails.
- PayPal doesn't load if you integrated using the
/sessions
endpoint. Fixed in v5.4.0. - When using Internet Explorer 11, card input fields do not appear and work correctly. Fixed in v5.6.1.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.2.2 --save
We've added ways to customize the list of payment links, for example to show and hide fields, or rearrange columns.
This release requires Checkout API v68 or later.
- Accessibility improvements:
- Screen readers no longer read out card brand logos or the CVC icon, which was exposing unnecesary information about decorative images.
- Card brand logos are no longer focusable using the keyboard, which was stopping users on unactionable elements.
- You can remove the iframe
title
for the Custom Card Component by replacing it withrole="presentation"
.
- Fixed an issue where on Firefox, users couldn't use the Tab key to move between Card Component fields.
- Entering card numbers that contain all the same digit, like 0000 0000 0000 0000 0000, now produces an Invalid card brand error on the front end.
The deprecated Internet Explorer 11 attributes scrolling
and frameborder
.
When using Internet Explorer 11, card input fields don't appear and work correctly. Fixed in v5.6.1.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.2.1 --save
- You can now use
CardEncryptor.Card.encryptedToToken()
to encrypt all card details as a single token.
- Upgraded the 3D Secure 2 SDK version to v2.2.4..
- The
CardDetails
object now contains the version of the 3D Secure SDK inthreeDS2SDKVersion
.
We recommend you use Checkout API v67 or later.
- 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.
- Upgraded the 3D Secure 2 SDK version to v2.2.4.
- 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.
Environment.TEST
is now the default for initializing DropInConfiguration
. Set it to a live environment value for release builds.
saveState
andrestoreState
methods inaction
components. All components and providers now useSavedStateHandle
.requiresConfiguration
method inaction
component providers. All components require configurations so this method always returns true.
- Added LIVE as an environment configuration, and it is the same as EUROPE.
- The Card Component now supports installments.
- Drop-in or the Component now returns
fundingSource
if it is present in the/paymentMethods
response. - You can now skip the payment methods screen if there is a single available payment method by using
DropInConfiguration.Builder.setSkipListWhenSinglePaymentMethod
. This does not apply to Google Pay, PayPal, WeChat Pay or payment methods that require a redirect.
- When the shopper enters the number for an unsupported card, the Card Component returns an error saying the brand is not supported.
- Updated the 3D Secure SDK to v.2.2.5.
- Features that are only available in debug builds are now working correctly.
- The Card Component no longer crashes if you are using it without the 3D Secure library.
- For Google Pay, Drop-in and Components now handle cancellation and failure callbacks on initialization.
- The POST
/paymentMethods
repsonse now contains thebrands
array for Bancontact.
This release requires Checkout API v68 or later.
For PayPal, you can include a cspNonce
to add a Content Security Policy (CSP) nonce if you use this on your site.
- For Japanese convenience stores (
econtext_stores
andecontext_seven_eleven
) you can now hide the input fields for shopper name, email, and telephone number. - For Bancontact card, you can now override the supported brands by including a
[brands]
array. - Drop-in, the Card Component, and the Custom Card Component can now handle cards with an optional expiry date. An optional expiry date is marked as optional in the UI, and is not required for a card to pass the validation checks.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.2.0 --save
This release requires Checkout API v68 or later.
- Fixed an issue where payments using Apple Pay, Google Pay, or PayPal did not work if you have a Components integration.
- For payment methods with issuer lists, like iDEAL or Dotpay, you can choose issuers to show outside of the the dropdown menu using
highlightedIssuers
. - For payments at Japanese convenience stores, you can now hide the fields to collect personal details using
personalDetailsRequired
.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.1.0 --save
- If a shopper accepts the Terms and Conditions and refreshes the page, we no longer show the modal for accepting Terms and Conditions.
- When uploading an image to a theme, we now show a loading state in the image upload component.
We fixed an issue where the payment link could have default validity, even though you had specified a custom validity when creating the payment link in the Customer Area.
- 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.
We recommend you use Checkout API v67.
- 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.
- The Boleto Component now allows shoppers to edit the prefilled billing address.
- Fixed an issue with form views freezing when updating the layout.
Improved validation when you upload an image for a theme.
The Shopper reference field is now correctly marked as optional when you're creating a payment link in the Customer Area.
- Fixed an issue where metadata for 3D Secure payments wasn't being returned in the CANCELLATION webhook. To get this metadata, you need to configure it as an additional setting.
This release requires Checkout API v68 or later.
If upgrading from v3.23.0 or earlier, have a look at the migration guide.
- Payments using Apple Pay, Google Pay, or PayPal do not work for Components integrations. The issue is fixed in v5.1.0.
The following props from AdyenCheckout
configuration:
allowPaymentMethods
removePaymentMethods
To customize which payment methods are available for the shopper, include allowedPaymentMethods
or blockedPaymentMethods
in your /paymentMethods
request.
-
The
onError
callback now returns an object for every Component. The object contains more details about the error. For more information, refer to Handle Drop-in errors or Handle Component errors. -
The creation of
AdyenCheckout
is now asynchronous:const checkout = await AdyenCheckout(configuration);
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.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@5.0.0 --save
This API version is supported by our Java, NodeJS, PHP, Python, Ruby, Go, and .NET libraries.
You can find all the Adyen libraries on GitHub.
- POST
/paymentMethods
- The
details
array has been removed. - The list of issuers for payment methods like iDEAL or Dotpay, is now in the
paymentMethods.issuers
array. - For cards, if the
paymentMethods.brands
array has a single element, the value of thepaymentMethods.name
is now the brand name of the available card brand, instead of Credit Card.
- The
- POST
/payments
checkoutAttemptId
replacesconversionId
.
- POST
/paymentLinks
amount.value
fields now must be integers. Values like 10.5 now produce a validation error.
- GET
paymentLinks/{linkId}
- New
status
value, paymentPending for payment methods that have a pending state. Previously, such states had the completed status.
- New
- For payment link resources,
storePaymentMethodMode
replacesstorePaymentMethod
from previous versions. The allowed values forstoredPaymentMethodMode
are:- disabled (default), the shopper's payment details are not stored.
- enabled and
shopperReference
is provided, the shopper's payment details are stored. - askForConsent, the shopper can choose in the Pay by Link UI if they want their payment details to be stored.
- POST /sessions: creates a payment session for Web Drop-in and Web Components integrations.
- POST
/paymentMethods
- For payment methods with issuer lists, each issuer object now has a
disabled
field indicating if the issuer is available.
- For payment methods with issuer lists, each issuer object now has a
- POST
/payments
- Responses with
action.type
: qrCode now contain theexpiresAt
field which has the expiry date in ISO8601 format. - In your request, you can now send all the fields from the EMV 3D Secure 2.1.0 specification.
mpiData.tokenAuthenticationVerificationValue
- Responses with
- POST
/orders
- The initial amount of the order is always returned in the
amount
object.
- The initial amount of the order is always returned in the
- POST
/paymentLinks
- Fixed an issue where the payments page didn't show a phone number field when configured as part of
requiredShopperFields
.
- Fixed an issue where the payments page didn't show a phone number field when configured as part of
- POST
/payments
and POST/donations
requests:
- POST
/payments
- All address fields are now optional.
This release requires Checkout API v67 or later.
- We added several accessibility improvements for Drop-in and Components.
- For payment methods with multiple payment method variants, such as Klarna or Dragonpay, we fixed an issue where the Component could be created with incorrect payment method data. This issue only occurred when using Components, not when using Drop-in.
For Pix, you can configure the Drop-in or the Component to collect shopper's name and the CPF/CNPJ (a unique identifier similar to a social security number), by including personalDetailsRequired
.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.9.0 --save
When creating a theme and uploading a background image with an unsupported format, you will now get a validation error.
If you have uploaded a brand logo, this is now used as the favicon.
We recommend you use Checkout API v67 or later.
- 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.
- If you're using Objective-C, we renamed
TextField
toADYTextField
to avoid naming conflicts.
- 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 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.
- Upgraded to Web Components 4.8.0.
Fixed an issue where girocard_applepay
didn't appear in the brands
array for Apple Pay in the /paymentMethods response.
We recommend you use Checkout API v67 or later.
- For dual-branded cards, the Card Component now renders both brands, and allows the cardholder to choose the brand they want to pay with.
This makes the Component compliant with European regulatory guidelines for accepting dual-branded cards (EU IFR Regulation 2015/751 article 8). - For Bancontact, you can now show a toggle for saving the card details for later payments. To do this, call
BcmcConfiguration.Builder.setShowStorePaymentField(true)
. - Added support for removing Observers attached to Components.
- Added support for the Activity Result API.
- The supported brands for Google Pay are now automatically configured based on your account settings, so you no longer need to specify these using
setAllowedCardNetworks
. - For the Card Component, the
paymentComponentState.data.paymentMethod
now includes thethreeDS2SdkVersion
.
- We fixed an issue where Drop-in could crash when trying to render stored payment methods.
- We fixed an issue where Drop-in would not render Bancontact unless you included a
BcmcConfiguration
object. - For Google Pay, we no longer pass the
TotalPrice
if theTotalPriceStatus
is set toNOT_CURRENTLY_KNOWN
, in line with the Google Pay specifications.
This release requires Checkout API v67 or later.
- For payment methods with multiple payment method variants, such as Klarna or Dragonpay, we fixed an issue where the Component could be created for the incorrect variant. This issue only occurred when using Components, not when using Drop-in.
- Fixed an issue where the Card Component state was not correctly updated in case you entered correct card details, and then pasted a full unsupported card number.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.8.0 --save
Accessibility improvement: All shopper input fields now have a name
property. This makes sure their <label>
elements get a for
attribute, and that the shopper input is given an id
that matches the value of the for
attribute.
- If a shopper refreshes the page after an unsuccessful payment attempt, the delivery address form is no longer hidden.
- For reusable payment links, the delivery address used for the first payment is no longer being stored for the following payments.
Fixed an issue where JCB cards enabled for Apple Pay would show up as part of the paymentMethod.brands
array instead of the brands
array for Apple Pay. This means Web Drop-in and Components would render the Apple Pay logo as part of the Card Component.
This release requires Checkout API v67 or later.
If you're using native web components, we fixed an issue where opening a dropdown list in Adyen's Web Components or Drop-in would cause it to close it back again immediately.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.7.5 --save
We recommend you use Checkout API v67.
- 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:)
.
- 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.
- 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.
POST /paymentLinks
themeId
field to customize the appearance of the payment page when creating a payment link. This field is available in Checkout API v67 and later.
All lists of countries/regions are now ordered alphabetically for each translation.
- Pay by Link now has its own section in the Customer Area main navigation.
- Create and choose themes for the payment page when using Pay by Link:
- You can now have numbers in the card holder name.
We reverted the improvement from 23 Aug 2021 because it was causing problems for some payment methods.
This release requires Checkout API v67 or later.
- The
isAvailable
method for Apple Pay has a shorter execution time, since it no longer invokescanMakePayments
twice. - We fixed an issue where an input in an error state was not properly validated in case it lost focus.
- If it is not possible to fetch the language of the browser, we now populate the
browserInfo.language
field with a default value ofen
. - When showing that input is valid or invalid, address input fields now behave in the same way as all other input fields.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.7.4 --save
We recommend you use Checkout API v67.
- Fixed an issue on the Card Component where address fields were still shown even if
AddressVisibility
was set to NONE.
If a shopper refreshes the page after entering payment details for a voucher or a redirect payment method, they now have to choose whether to continue with the payment, or to start over. This helps to prevent shoppers from making accidental duplicate payments.
We fixed an issue where a splits array included in the /payments/{paymentPspReference}/captures
request was not processed correctly.
We recommend you use Checkout API v67.
- The Card Component now has support for:
- Korean card payments through KCP.
- Brazillian card payments that require the social security number.
- The postal code input field.
- On Drop-in, you can now take shoppers to the list of all available payment methods instead of only showing their stored cards. To do this, call
DropInConfiguration.Builder.showPreselectedStoredPaymentMethod(false)
. - Support for Android 12.
- Configuration objects now do runtime validation to make sure your client key matches the environment it is being used on.
- Disabled Luhn checks for private label cards (also known as white label cards), because the check fails even if the card number is valid.
- Updated the 3D Secure SDK to v2.2.4.
- The focus no longer automatically switches to the next input field after the card number has been filled in.
- Fixed an issue where card brand logos weren't loading if there were multiple logos of the same type, for example when the shopper had multiple stored cards of the same brand.
- If the Android operating system stops your app before the payment flow is completed, this no longer causes Drop-in to fail.
- Finnish e-banking now appears as Verkkopankkimaksu in the front end when the locale is set to fi-FI.
- For iDEAL payments, sending emoji in the productTitle no longer causes an error during the redirect.
- We improved the error messages for when a user creating a payment link in the Customer Area doesn't have the required permissions.
For redirect 3D Secure payments, the amount
object in the /payments/details
response is now returned in the same way as for all other payments.
- A
merchantReference
that doesn't fit into a single line is now broken into several lines, so it will no longer exceed the payment form border. - We improved the message shown to the shopper after completing a payment that has a status of Payment pending.
This release requires Checkout API v67 or later.
The Amazon Pay Component now supports Amazon Pay multi-currency. This feature will be automatically available to you if your Amazon Pay merchant account is in the EU or UK region.
- For card payments, the
holderName
field no longer shows a validation error if empty and configured as optional. - Fixed an issue with the white Apple Pay button styling.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.7.3 --save
For in-store Pay by Link, we fixed an issue where the result icon on the confirmation page wasn't being rendered.
For native 3D Secure 2 payments, the amount
object in the /payments/details
response is now returned in the same way as for all other payments.
- Payment links created through the Customer Area are now correctly generating recurring payment tokens.
- Fixed an issue where installments were not available for stored cards.
This release requires Checkout API v67 or later.
The Cardholder field now accepts all characters, including digits.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.7.2 --save
- If you're entering shopper details manually when creating a payment link in the Customer Area, you can now also add the shopper's first name, last name, and telephone number.
- If you are using the same merchant account for your online payments integration as well as Pay by Link, Apple Pay only appears as an available payment method for Pay by Link if you are using Adyen's Apple Pay certificate for your online payments integration.
- For voucher and bank transfer payments, we added back the Continue button which takes the shopper back to your website.
- When creating a payment link in the Customer Area, you no longer get an error when entering an Australian shopper address.
Recurring payment tokens are not generated correctly for payment links created through the Customer Area. This is fixed in the 19 July 2020 release.
- Splitting funds for Adyen for Platform accounts is now possible when doing refunds and amount updates.
- Fixed an issue where he
/payments/details
response did not contain the 3D Secure 2 fields in theadditionalData
object. - Website cross-origin isolation using COOP and COEP is now supported for Web Components 3.4.0 and above, as well as all assets on
checkoutshopper
.
We recommend you use Checkout API v67.
For guidance on upgrading to this version, have a look at the migration guide.
- All Components, including action Components, now require a configuration object.
- All configuration objects now require a client key. For the
cardConfiguration
andbcmcConfiguration
objects, the client key replaces the Client Encryption Public Key used in earlier versions. - If using
ResultHandlerIntent
, you now need to pass this instartPayment
instead ofDropInConfiguration
. - The
handleResultIntent
in theWeChatPayActionComponent
has been replaced by thehandleIntent
method. - The
handleRedirectResponse
in theRedirectComponent
has been replaced by thehandleIntent
method. - Refactored
CallResult
toDropInServiceResult
. - Refactored module structure so that each payment method has only one module: the
card-base
andcard-ui
modules have been merged into a singlecard
module, and similarly for other payment methods. - Refactored the
cse
module, renaming theCard
class and theCardEncrypter class
. For more information, refer to our custom card integration guide. - Renamed package
com.adyen.checkout.base
tocom.adyen.checkout.components
. - Renamed package
com.adyen.checkout.base.component
tocom.adyen.checkout.components.base
.
- We removed all methods that were marked as deprecated in earlier versions.
- The
SimplifiedDropInService
has been removed. We recommend that you handle the/payments
response using theDropInService
. - For MB WAY, we removed the
shopperEmail
field because it is no longer required. - We removed the
WeChatPayComponent
. If you want to check whether the WeChat app is available, you can do so by callingWeChatPayProvider.isAvailable
. - We removed
PaymentComponentProvider.isAvailable
. Payment method providers that require an availability check (currently Google Pay and WeChat Pay), will now implementPaymentMethodAvailabilityCheck
instead.
- The
Adyen3DS2Component
supports the new 3D Secure 2 flow introduced in Checkout API v67. The old flow is still supported if you are using an API version earlier than v67. TheAdyen3DS2Component
implementsIntentHandlingComponent
, and has ahandleIntent
method for handling 3D Secure 1 redirects. -
- For Google Pay, the payment method type is now googlepay.
- The
QRCodeComponent
handles all payment methods withaction.type
: qrCode, including Bancontact mobile, Swish, and Pix. TheQRCodeComponent
implementsIntentHandlingComponent
, and has ahandleIntent
method. - New supported payment method: BLIK.
- We added support for the following shopper locales:
cs-rCZ
,el-rGR
,hr-rHR
,hu-rHU
,ro-rRO
,sk-rSK
,sl-rSI
. - To hide the CVC field, you can now include the
hideCvc
or thehideCvcStoredCard
flag in thecardConfiguration
object. IfhideCvcStoredCard
is set to true and the shopper pays with a stored card that doesn't require a CVC, they will see a Pay button immediately after selecting the payment method. - The
CardComponent
now returns the BIN and last 4 digits of the card number in theCardComponentState
. DropInService
now has theonPaymentsCallRequested
andonDetailsCallRequested
methods for asynchronous handling of the API responses. When handling the API responses synchronously, you can use theonPaymentsCallRequested
method to access a non-serialized version of thePaymentComponent
JSON at the moment when the shopper submits the payment.ActionComponentProvider
has the following new methods:canHandleAction
: checks if the Component can handle the specified action type.requiresView
: indicates whether a view is required to handle this action.getSupportedActionTypes
: returns the list of supported action types.
- We improved card brand recognition in the
CardComponent
. - For cards that do not require a CVC, the CVC field will now be marked as optional.
- We updated the UI for phone number input for MB WAY.
- We updated the 3D Secure SDK to version 2.2.0.
- For the custom card integration with encryption, we now validate the Client Encryption Public Key.
- Drop-in now has a default
GooglePayConfiguration
and aCardConfiguration
object, so it is no longer required to set these configurations inDropInConfiguration.Builder
. - You can now see the GooglePay SDK dependency, so you no longer need to explicitly declare it to access Google Pay specific code.
- The default Google Pay environment now automatically follows the Adyen environment.
- New releases are now published to Maven Central.
- We migrated from the Android Support Library to AndroidX.
- The minimum supported Android API version is now 21.
- For the
GooglePayConfiguration.Builder
, you no longer need to pass amerchantAccount
. Instead, you need to pass a client key, as for all other configuration objects. GooglePayComponent
is now anActivityResultHandlingComponent
. No methods are affected by this change.- For debug builds, you are now allowed to take a screenshot of the Card Component.
DropInService
is now a regular boundService
instead of aJobIntentService
.- For CI builds and example app without values,
example.local.gradle
has been renamed todefault.local.gradle
.
- Drop-in now renders all available payment methods at the same time.
- Intent results are now also handled in case
DropInActivity
got destroyed.
- Changed the date format in the Customer Area payment links overview to be more readable.
- Fixed an issue where the
merchantReference
would not be correctly returned in the/payments/details
response during 3D Secure transactions. - Downloading the payment links CSV file from the Customer Area now works on Safari.
We recommend you use Checkout API v67.
- 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, theAmount
object now adopts theCodable
protocol. - Moved the
payment
property fromPresentableComponent
toPaymentComponent
. - Specifying the country code is now required for the
Payment
object. - Moved the
Amount
property outside of thePayment
object. - The
didCancel
method fromDropInComponentDelegate
now returnsPaymentComponent
instead ofPresentableComponent
. - Moved card configuration to the
CardComponent.Configuration
object. - Moved Apple Pay configuration to the
ApplePayComponent.Configuration
object. - Moved the
payment
parameter to theApplePayComponent.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
toAdyenActionComponent
and moved it toAdyenActions
module. This allows you to use the component outside ofAdyenDropIn
. - Renamed
AdyenActionComponent.perform()
toAdyenActionComponent.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.
- Deprecated classes, functions, properties.
disableCloseButton
frompresent(component: PresentableComponent)
inPresentationDelegate
.cancelHandler
from theApplePayComponent
.cancelCallback
from the Apple Pay component. Use thedidFail(with error: Error, from component: PaymentComponent)
function withComponentError.cancelled
instead.
paymentData
is now optional inRedirectAction
,ActionComponentData
andRedirectComponent
. This is to support the removal ofpaymentData
starting Checkout API v67.
- 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 thecardComponentDelegate
property.DropInComponentDelegate
now has thedidOpenExternalApplication(component:)
callback which notifies you about redirects to an external app.DropInDelegate.didSubmit
now has aPaymentMethod
object to allow you to identify which payment method is being submitted.didComplete(from component: DropInComponent)
method forDropInComponentDelegate
andActionComponentDelegate
.- 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
.
- At Seven Eleven stores,
- 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.
- 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.
For the Apple Pay Component, the `PaymentData.amount
passed from the SDK to the didSubmit
callback is nil. Fixed in v4.8.0.
In the currency dropdown, we're now using the correct GHS currency code for the Ghanian cedi.
Fixed an issue in the Customer Area where you couldn't change the order for some payment methods.
Card data decryption failures now return the correct error 174 - Unable to decrypt data, instead of 175 - Unable to parse JSON data.
This release requires Checkout API v67 or later.
- The Cardholder field now accepts all characters, except digits.
- We improved accessibility for dropdown menus:
- You can now close a dropdown menu using the Esc key.
- Pressing Tab on a open dropdown moves the focus to the next element after closing the dropdown.
For Google Pay, canceling a payment no longer logs an unhandled promise
error in the console.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.7.1 --save
You can now filter and download a CSV of the payment links you created. You can filter by:
- Merchant reference
- Status of the payment link
- How the link was created
- The user who created the link
- Creation date
- Link type
When filtering by links generated through the API, you get all the links created using Adyen's EU data center. We are working on adding the other data centers.
We improved the error message that you get when including an invalid redirectResult
in the /payments/details
request.
We fixed an issue where shoppers couldn't add a gift card payment to an existing order.
- When entering multiple email addresses for receiving payment updates, you can now separate them by commas.
- We improved the error message that you get when trying to get a payment link for a combination of country/region and currency for which no payment methods are available.
- Pay by Link is now using Checkout API v67 and Web Components 4.7.0.
- The address form in the Customer Area now supports addresses in Australia.
- Shoppers in Australia can now select a State when entering their billing or delivery address on the payment page.
If the user creating a payment link in the Customer Area doesn't have the right permissions, they now see an error explaining this.
Checkout API v67 and above now supports the 3D Secure authentication-only flow.
In Checkout API v64 and below, the /paymentMethods
response now has supportsRecurring
: true for cards.
Note that supportsRecurring
was removed in Checkout API v65.
This release requires Checkout API v67 or later.
When onSubmit
is triggered, Component/Drop-in status is now automatically set to 'loading'
. If you want to overwrite the default behavior, set the setStatusAutomatically
prop to false.
- Added support for Cartes Bancaires in the Apple Pay Component.
- We optimized the address form layout for addresses in Australia.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.7.0 --save
When the shopper cancels a Bancontact mobile payment, you will now receive a resultCode
Cancelled instead of resultCode
: Unknown as before.
We improved the positioning of the Continue button shown on a mobile screen after the shopper completes the purchase.
We fixed an issue where the payment update email did not contain the billing and the delivery address, even though the shopper had provided these.
You can now do your captures, refunds, cancellations, reversals, and asynchronous authorisation adjustments using the Checkout API.
Have a look at the new endpoints in API Explorer:
- Android Components are now available in Maven Central.
- You can now configure the Card Component to show an input field for the postal code.
- We updated the 3D Secure 2 SDK to version 2.1.0-rc09.
- The Google Pay logo has been updated to according to the Google Pay brand guidelines.
- For apps targeting compatibility with Android 10, we fixed an issue where collecting the 3D Secure fingerprint could sometimes fail with an exception.
For the 3D Secure 1 flow in v67, the fraud result is now correctly returned in the /payments/details
response.
This release requires Checkout API v67 or later.
- Apple Pay 11 is now the default version. You can override this in the Apple Pay Component configuration.
- On the PayPal Component, you can now block the PayPal Credit button using
blockPayPalCreditButton
. - The Custom Card integration now supports the
onBinLookup
event.
- The Apple Pay Component now supports Girocard.
- You can now mount more than one PayPal component on the same page.
- For Drop-in,
onSubmit
is no longer called twice if using Apple Pay with a custom button. - Updated the Google Pay icon to match the brand guidelines.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.6.0 --save
Fixed an issue affecting v67, where the pspReference
was missing from the /payments/details
response for Zip and Afterpay Touch.
Added support for cross-origin isolated websites.
The link creation page in the Customer Area now has a:
- Address form specific to country/region.
- Search option for the currency selection field.
Fixed an issue that caused some Blik payments to be reported as failed, even though they were successful.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- The Card Component has better card type detection for Diners cards.
- Added a postal code field to the Card Component.
- 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.
This release requires Checkout API v67 or later.
- You can now customize the icon for each payment method, by including the
icon
property in the Component configuration. For example, this is how you can customize the Google Pay icon on Drop-in:
{ paymentMethodsConfiguration: { paywithgoogle: { icon: 'https://...' } }
- For cards, you can now customize the icon of the card brand, by including the
icon
property inbrandsConfiguration
. For example, this is how you can customize the icon for Visa on Drop-in:
{ paymentMethodsConfiguration: { card: { brandsConfiguration: { visa: { icon: 'https://...' } } } }
The maximum length of a gift card number is now 32 digits, instead of 22 digits as before.
For Amex, the hint for where the shopper can find the CVC no longer shows two locations.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.5.0 --save
For iDEAL payments in v66 and earlier, you will now get a validation error when making a /payments/details
request with a redirectResult
and paymentData
belonging to different payments.
For the 3D Secure redirect flow in v67, we fixed an issue where the merchantReference
could be missing from the /payments/details
response.
We fixed an issue where shoppers could not use a gift card that didn't have enough balance for the full payment.
This release requires Checkout API v67 or later.
- Support for right-to-left languages though the HTML
dir
attribute. - Added Arabic (international) to our supported languages.
- For Google Pay,
onSubmit
now correctly calls Drop-in or the Google Pay Component, depending on your integration. - For payments partially covered using a gift card, the shopper can now see a message about the amount they need to pay in addition to the gift card amount.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.4.0 --save
New supported payment method: Apple Pay
This release requires Checkout API v67 or later.
Fixed an issue where the Card Component did not work on Internet Explorer 11.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.3.1 --save
Fixed an issue where adding a gift card payment to an order could result in a validation error if the request was made using one of our plugins.
For the native 3D Secure 2 flow in Checkout API v67 and above, we fixed an issue where the merchantReference
was not returned in the /payments/details
response.
This release requires Checkout API v67 or later.
The Card Component does not work on Internet Explorer 11. This is fixed in Web Components 4.3.1.
For cards, you can now include minimumExpiryDate
in the Component configuration. This will prevent shoppers from paying with a card that expires before the specified date.
We've animated the final status shown by Drop-in (success
or error
).
- When using Google Pay Drop-in integration with your own custom button, the
onSubmit
event no longer triggers twice. - For Amazon Pay, we fixed an issue where the Component did not pass the
publicKeyId
to the call that updates the checkout session state. - When changing the country/region in the address form, the optional and required fields are now being reset based on the new country.
- For the Bank Transfer Component, the
showEmailAddress
parameter is now working as expected. - Fields that are prefilled (by including a
data
object in the Component configuration) are now validated as expected.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.3.0 --save
- We fixed an issue where the list of payment links in the Customer Area would return no results when using the search bar.
- When creating a payment link in the Customer Area, searching in the Store drop-down now works as expected.
- We fixed an issue where the PayPal Component could fail when doing a zero-auth transaction.
- For Amazon Pay, we fixed an issue where a redirect 3D Secure flow was incorrectly triggered instead of the native 3D Secure flow.
This release requires Checkout API v67 or later.
We fixed an issue with the promise
polyfill that could lead to errors on Internet Explorer 11. This issue was introduced in Web Components 4.0.0.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.2.3 --save
Inactive payment links shown in the Customer Area can now have a Payment pending status, indicating that the final result of the payment is not yet known. Previously, such payments had a status of Completed.
All users creating in-store payment links through the Customer Area can now select the store for which to create the payment link.
This release requires Checkout API v67 or later.
- For Boleto Bancário, the payment form now shows the Country field (as read-only). This fixes an issue where payments would fail because
state.data
was missing abillingAddress.country
. - We fixed an issue where
AdressSchema
types were not correctly exported, leading to compilation errors when using our npm package together with TypeScript.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.2.2 --save
When creating a payment link in the Customer Area, you can now specify fields that the shopper should fill in before completing the payment, for example name, email, or address.
This release requires Checkout API v67 or later.
For Boleto Bancário, the state.data
is missing the billingAddress.country
, causing the payment to fail. This issue is fixed in Web Components 4.2.2.
- The cardholder name field no longer loses focus when the shopper typing in the field.
- The Pay button is now also disabled for keyboard navigation when the Component is in the
loading
state. This prevents accidental double payments if the shopper uses the keyboard to submit the payment form.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.2.1 --save
This release requires Checkout API v67 or later.
- The cardholder name field loses focus when typing in the field. This issue is fixed in Web Components 4.2.1.
- For Boleto Bancário, the
state.data
is missing thebillingAddress.country
, causing the payment to fail. This issue is fixed in Web Components 4.2.2.
- For Google Pay, Drop-in and Components now return a
browserInfo
object. If you need to handle 3D Secure through Google Pay, pass this object insidebrowserInfo
when making the/payments
request. - You can now render the cardholder name before the card number using
positionHolderNameOnTop
: true. - To make card payments in Brazil, the social security number is often required. You can use
socialSecurityNumberMode
to render a social security number field in your payment form.
We improved the accuracy of card brand detection.
Calling component.data
no longer fails if the component is not fully rendered. This issue came up for components that have a list of issuers, for example iDEAL or Dotpay.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.2.0 --save
For 3D Secure redirects, the loading page now has text informing the shopper that the process might take a few minutes to complete.
Fixed an issue where shoppers paying using the inline Klarna widget integration were unable to complete payments.
For Checkout API v67 and above, making a /payments/details
request with a URL-encoded redirectResult
no longer results in a validation error.
This release requires Checkout API v67 or later.
For Boleto Bancário, the state.data
is missing the billingAddress.country
, causing the payment to fail. This issue is fixed in Web Components 4.2.2.
- We added new Apple Pay button types. For a full list of supported Apple Pay button types, refer to Button configuration.
- For Google Pay, you can now use the
buttonSizeMode
andbuttonLocale
configuration properties. For more information, refer to Button options. - Stored cards can now be configured separately from other cards, by including a
storedCard
object in thepaymentMethodsConfiguration
object.
The placeholder
values for card fields are now only read from translation fields. Configuring placeholder
values inside the Card Component is no longer supported.
- We added a missing CSS file export in the npm package.
- We fixed an issue where the
promise
dependency could be missing when using the ES format bundle. - When pasting a dual-branded card number over a previously entered card number, the detected card brand is now being rendered correctly.
- When paying in IQR (Iraqi Dinar), the amount on the Pay button is now rendered correctly.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.1.0 --save
Fixed an issue where canceling an Affirm payment on the website returned a Payment successful! message instead of canceling the payment.
- Fixes an issue where the shopper would be unable to enter their card details if Pay by Link was configured to only accept a single card brand.
The changes to the native 3D Secure 2 integration require at least Web Components v3.22.2 or iOS Components v4.0.0 or Android Components v4.0.0.
- POST
/payments
- For native 3D Secure 2 authentication, the response now contains
action.type
: threeDS2. This replaces the threeDS2Fingerprint and threeDS2Challenge parameters used in earlier versions. - For redirect 3D Secure authentication, the payment is now authorized after the
/payments
request, when the shopper completes the authentication on the issuer's site. In previous versions, the payment was only authorized after the/payments/details
request.
- For native 3D Secure 2 authentication, the response now contains
- POST
/payments/details
- For native 3D Secure 2 authentication, the response can no longer contain an
action
object. This means that native 3D Secure 2 payments no longer require multiple/payments/details
requests. - For redirect 3D Secure authentication, the
/payments/details
request is no longer required to authorize the payment, only to verify the payment result. As with other redirect payment methods, the payment is already authorized before the shopper is redirected back to your website.To know the payment result even when the shopper did not return to your website, listen for the AUTHORISATION webhook.
- For redirect 3D Secure authentication, the shopper is now redirected back to you from the issuer with an HTTP GET instead of HTTP POST. The
returnURL
is appended with aredirectResult
. - For redirect 3D Secure authentication, you now need to submit the
redirectResult
appended to thereturnUrl
when the shopper is redirected back to you. This replaces theMD
and thePaRes
parameters used in previous versions, and aligns the flow for 3D Secure redirects with all other redirects.
- For native 3D Secure 2 authentication, the response can no longer contain an
The changes in this version have broken the Klarna widget integration. We are working on fixing this. In the mean time, we recommend that you don't update to this version if you're using the Klarna widget.
-
POST
/paymentMethods
- When using SEPA payments with stored details, the
storedPaymentMethods
field in the response now contains an object withtype
: sepadirectdebit:
"storedPaymentMethods" : [ { "ownerName" : "John Doe", "iban" : "GB33BUKB20201555555555", "id" : "9916068117659492", "name" : "SEPA Direct Debit", "supportedShopperInteractions" : [ "ContAuth" ], "type" : "sepadirectdebit" } ] - When using SEPA payments with stored details, the
-
POST
/paymentLinks
requiredShopperFields
to specify fields that the shopper needs to fill in before completing the payment.themeId
field to cusomize the appearance of the payment page when creating a payment link.
- POST
/payments
- For payment methods with
action.type
: redirect, the response no longer containspaymentData
.
- For payment methods with
- POST
/payments/details
- For payment methods with
action.type
: redirect, you no longer need to submitpaymentData
.
- For payment methods with
- POST
/paymentLinks
- Sending a
shopperReference
of less than three characters now results in a validation error.
- Sending a
- Recurring BACS Direct Debit payments no longer generate an error in the test environment.
This release requires Checkout API v67 or later.
For more guidance on upgrading to this version, have a look at the migration guide.
- The origin key is no longer supported. If you haven't already, switch to using the client key for client-side authentication.
- Configuration at the component level overrides all other configuration.
- Drop-in now only accepts props related to itself.
- We removed some deprecated props.
- You must now configure aria labels using translation fields.
For Boleto Bancário, the state.data
is missing the billingAddress.country
, causing the payment to fail. This issue is fixed in Web Components 4.2.2.
- For npm installations, we now also release ES and CommonJS (CJS) format bundles. This is in addition to the Universal Module Definition (UMD) format bundle released with previous versions.
- For Google Pay, the payment method type is now googlepay.
-
You can now configure action components by action type inside
paymentMethodsConfiguration
. For example, to change the default window size for a 3D Secure challenge:const checkout = new AdyenCheckout({ paymentMethodsConfiguration: { threeDS2: { challengeWindowSize: '05' // '02' is the default size } } });
- The
onChange
event now also returns error and validation information. Thestate.valid
object returns a boolean for each field, andstate.errors
can be used to log the state of your form. You should only use theonError
event for non-validaton errors, for example network errors. - Drop-down menus now have search functionality which filters results as you type. This applies, for example, for the list of issuers for iDEAL payments, or the lists of countries, states, or provinces for payment methods that require these.
- If an issuing bank is offline, it appears greyed out to the shopper and they cannot select it from the dropdown menu. This applies, for example, to Dotpay.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@4.0.0 --save
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
Amazon Pay now supports the cancelUrl
configuration property and the submit()
method.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@3.23.0 --save
- Added validation to check if the Terms of Service URL is a valid URL before storing it in the configuration.
- Fixes an issue where confirmation e-mails for Alipay payments were not being sent.
- Fixed an issue where selecting Back to Merchant before completing a payment on an Alipay HK payment returned a Payment Successful message instead of canceling the payment.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
We fixed the issue with the native 3D Secure 2 integration introduced in version 3.22.0.
For QIWI and MB WAY, we changed the translation labels from telephoneNumber to mobileNumnber. If you have a custom translation, make sure you update the translation keys.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@3.22.2 --save
New supported payment method: Pix
Pay by Link is now using Checkout API v66, and Web Components v3.21.1.
Fixes an issue where updating stored card details using an alias would not work.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
Do not update to this version if you are using the 3D Secure 2 native integration.
In preparation for a future release, we've made some updates that lead to issues with the current 3D Secure 2 integration.
- Fixed an issue where Ratepay wasn't available for payments in the Netherlands.
- Showing a loading state using
setStatus('loading')
is now also available for QR code payment methods.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@3.22.1 --save
This release requires Checkout API v52 or later.
Drop-in no longer fails on Checkout API v64 or above if one of your payment methods returns a configuration object in the /paymentMethods
response.
When redirecting to your Terms & Conditions, we now add the shopperLocale
to the Terms & Conditions URL. For example, for Spanish you'll get: https://terms-and-conditions-url.com/?locale=es-ES
. This allows you to change the language of the Terms & Conditions based on the shopper's language.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
Do not update to this version if you are using the 3D Secure 2 native integration.
In preparation for a future release, we've made some updates that lead to issues with the current 3D Secure 2 integration.
Drop-in no longer tries to render Amazon Pay, as this is only supported on Components and not on Drop-in.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@3.22.0 --save
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
The default sizing of the 3D Secure challenge window in previous versions could sometimes lead to issues such as the shopper not being able to scroll down the 3D Secure 2 challenge page. This has now been fixed:
- The default size of the 3D Secure 2 challenge window is now 02 (390px x 400px) instead of 05.
- If you configure the challenge window size to be 05, we no longer force a 16:9 aspect ratio, so that the window size is now 100% x 100% as expected.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@3.21.1 --save
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- New payment method: Pix.
- Support for the
onShippingChange
callback for the PayPal Component. This allows you to listen for changes in shipping address, which you can accept or reject. The PayPal Component doesn't support order updates based on the shipping address.
- For card payments, the object returned in the
onBinLookup
callback now includes abrands
array which contains all the card brands your integration supports.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@3.21.0 --save
We fixed an issue where double-clickling the Create payment link could create a duplicate payment link.
This release requires Checkout API v52 or later.
- Fixed an issue where the 3D Secure 2 component was failing without error for uncaught exceptions. Any uncaught exceptions for the 3D Secure Component, will now be reported by the
observeErrors()
observer.
You no longer receive a validation error when making a valid payment request for Japanese convenience stores.
Making a BLIK payment with saved payment details no longer results in an error.
The maximum validity time for a payment link is now 70 days instead of 30 days.
We fixed an issue where Pay by Link would fail to load on Internet Explorer 11.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- New supported payment method: Amazon Pay. This payment method is only available on Components, not on Drop-in.
- For cards, you can now use the
onBinLookup
callback. This is only available on Drop-in and Components, not on the Custom Card Component.The
onBinLookup
callback was improved in version 3.21.0. We recommend updating to this version if you want to use it.
- The supported brands for Apple Pay and Google Pay are now automatically configured based on your account settings, so you no longer need to specify these in the
supportedNetworks
(for Apple Pay) or inallowedCardNetworks
(for Google Pay). - We added support for new BINs on the Bancontact card Component.
- Accessibility improvement: we've added translations for the
aria
attributes on the Card Component and the Custom Card Component.
- You no longer receive API validation errors when making valid payment requests for voucher payment methods such as Indonesian bank transfers, Japanese convenience stores, or Philippines convenience stores (Dragonpay).
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@3.20.0 --save
- We fixed an issue where the Copy link button was not working as expected on some devices or browsers.
- 3D Secure authentication no longer fails if the payment is routed from 3D Secure 2 to 3D Secure 1, for example in case of a technical error in the 3D Secure 2 flow.
- We've added a button that the shopper can select in case they are not automatically redirected back to your
returnUrl
: Click here if you are not redirected.
- 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.
- New supported payment method: BLIK.
We fixed an issue where a /paymentMethods
request with amount
:0 would sometimes return an empty response.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- Support for Boleto Bancário through PrimeiroPay using a redirect payment flow. If using PrimeiroPay, you need to handle
action.type
: redirect. - Support for bank transfers through an additional action payment flow. The
/payments
request returnsaction.type
: bankTransfer.
- BACS payments now have an additional action payment flow. This means you now need to handle
action.type
: voucher.
- The Gift Card Component flow introduced in Web Components 3.17.0 now has more specific error messages.
- If you do not specify the
countryCode
for buy now, pay later payment methods, the Component will show a drop-down menu where the shopper chooses the country/region. - The Apple Pay Component now has an
onClick
event, making it consistent with Google Pay and PayPal.
- Fixed an issue where
state.data
had values forholder.name
filled automatically whenholder.name
was disabled. - For Java library users, we fixed an issue where initialization would fail if
paymentMethodsResponse
contained any null values. - The
onDisableStoredPaymentMethod
Drop-in event now passes the correctstoredPaymentMethodId
parameter. - If you are using the Custom Card Component with separate date fields without providing translations for placeholder values, the Component will use the default translations for the placeholders.
- For dual branded cards, we fixed the error where brand selection didn't work, meaning the shopper could only pay with the default card brand.
- Fixed an issue with the PayPal Component, where setting a invalid color on PayPal Credit would cause an error. The Component now defaults to valid PayPal colors.
- Fixed minor styling issues for the QiwiWallet Component.
Install this version of the Adyen Web Node package:
npm install @adyen/adyen-web@3.19.0 --save
- 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 an issue where the public
delegate
property of theUILabel
could clash with code elsewhere in your integration.
When creating a payment link in the Customer Area, the Shopper locale and the Link type are now prefilled with last values that you previously selected.
We fixed an issue where additionalData.paymentLinkId
was sometimes missing from the AUTHORISATION webhook.
-
POST
/paymentMethods
- For Apple Pay and Google Pay, the response now contains the
brands
array. - If you enabled Boleto Bancário, the response now contains
paymentMethod.type
: primeiropay_boleto for Boleto Bancário payments through PrimeroPay. - New payment method: bank transfer, with
paymentMethod.type
: bankTransfer_IBAN.
- For Apple Pay and Google Pay, the response now contains the
-
POST
/payments
- If you enabled Boleto Bancário, you can now include
paymentMethod.type
: primeiropay_boleto to make a payment with Boleto Bancário through PrimeroPay. - For bank transfers:
- The request has
paymentMethod.type
: bankTransfer_IBAN. - The response has
action.type
: bankTransfer andaction.paymentMethodType
: bankTransfer_IBAN.
- The request has
- If you enabled Boleto Bancário, you can now include
-
POST
/payments
- For redirects, except 3D Secure redirects, the response now contains
details.key
: redirectResult instead ofdetails.key
: payload. - Sending a
shopperReference
of less than three characters now results in a validation error:{ "status": 422, "errorCode": "216", "message": "The shopper reference must be at least 3 characters long.", "errorType": "validation", "pspReference": "R8QTPCQ8HXSKGK82" }
- For redirects, except 3D Secure redirects, the response now contains
-
POST
/payments/details
- For redirects, except 3D Secure redirects,
redirectResult
is now the only way to specify the redirect result in the request, replacingpayload
.
- For redirects, except 3D Secure redirects,
-
- In the response, the
status
field now returns completed instead of paid to avoid confusion for payment methods that require an additional action.
- In the response, the
The error messages for client key issues now contain more information about the exact cause of the problem.
When using saved payment details to make a payment, the payment no longer fails if you don't specify a paymentMethod.type
.
- Affirm is now also supported when creating payment links through the Customer Area.
- We added the support for the following shopper locales: Czech, Greek, Hungarian, Croatian, Romanian, Slovak, and Slovenian.
When creating payment links through the Customer Area, specifying a Shopper reference of less than three characters now results in a validation error.
This release requires Checkout API v52 or later.
- Support for Swift Package Manager.
- We now support SwiftUI applications. Have a look at our example SwiftUI App on GitHub.
- New supported payment method: BLIK. For more information see the BLIKComponent class reference.
- Updated the 3D Secure SDK to v2.2.1.
- Optional parameter
LocalizationParameters.bundle
that you can use to override the default translation strings.
We are deprecating the following classes and parameters:
- Header section:
showsLargeTitle
andFormHeaderItem
. - Footer section:
FormFooterItem
,FormFooterItemView
andFormFooterStyle
. UseFormButtonItem
andFormLabelItem
instead.
- 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.
- Drop-in, set
- 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.
- 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 buildAdyenWeChatPay.framework
on Carthage.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
For dual-branded cards, the Card Component now renders both brands, and allows the cardholder to choose the brand they want to pay with.
This makes the Component compliant with European regulatory guidelines for accepting dual-branded cards (EU IFR Regulation 2015/751 article 8).
The BIN lookup will no longer fail if no brands
have been provided in the Card Component configuration.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.18.2/adyen.js" integrity="sha384-/5SuEQKK7mLmDWB+eUPAur02KPkNC7pwAqyPez1TuNjeqRjsNDJdAnrbSxrzua2P" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.18.2/adyen.css" integrity="sha384-5K4T5NNVv7ZBvNypROEUSjvOL45HszUg/eYfYadY82UF4b+hc+TPQ4SsfTGXufJp" crossorigin="anonymous">
- We fixed an Android Drop-in exception that occurred when generating a generic Configuration object with an empty
clientKey
.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- In the Google Pay Component, we added an
onClick
event that is triggered when the shopper selects the payment button. This allows you to perform a validation.
- With Google Pay, the payment form shows the amount correctly again.
- Dual branded cards cause a validation issue in the card component.
- The BIN lookup will fail if no
brands
have been provided in the Card Component configuration. To avoid this, specify at least one supported card type in thebrands
field. - Both these issues are fixed in 3.18.2.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.18.1/adyen.js" integrity="sha384-CJ8FSR4EmldZPoNUHfpHrZ7CSOsP2lxp8xzSNIE92icrx46CmCoSxucO4IRE8h7V" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.18.1/adyen.css" integrity="sha384-5K4T5NNVv7ZBvNypROEUSjvOL45HszUg/eYfYadY82UF4b+hc+TPQ4SsfTGXufJp" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
-
We added the following languages:
Language locale Croatian hr-HR Czech cs-CZ Greek el-GR Hungarian hu-HU Romanian ro-RO Slovak sk-SK Slovenian sl-SI
- For buy now, pay later payment methods, we optimized how a delivery address is shown when it is pre-filled.
- Dual branded cards cause a validation issue in the card component.
- The BIN lookup will fail if no
brands
have been provided in the Card Component configuration. To avoid this, specify at least one supported card type in thebrands
field. - Both these issues are fixed in 3.18.2.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.18.0/adyen.js" integrity="sha384-Ocy41f4hyu9o/iyAfs8EnK/3ykYlYfBh/8M+gr/slw4Ymmpw3Hqe5fsIqmkj1rrA" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.18.0/adyen.css" integrity="sha384-cZIV5piH3KzCM9VwntcX2yQ9zLS8xvo9f0pld8RJe7mUBO2GcsgEmXkc78rH/UA3" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
The are some changes in how the payment method details for SEPA Direct Debit and Apple Pay are passed by Drop-in/Components in the state.data.paymentMethod
object:
- Apple Pay now outputs
applePayToken
instead ofapplepay.token
- SEPA Direct Debit now outputs
iban
andownerName
instead ofsepa.ibanNumber
andsepa.ownerName
- For the Gift Card Component, we made some improvements to the flow.
- Dual branded cards cause a validation issue in the card component.
- The BIN lookup will fail if no
brands
have been provided in the Card Component configuration. To avoid this, specify at least one supported card type in thebrands
field. - Both these issues are fixed in 3.18.2.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.17.2/adyen.js" integrity="sha384-9+nLpCVhoDOcPA/0Ebl0pTB55CIWp+XEMxjyivaRhvFc/Unajqo+Q/7+8I6+MtEO" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.17.2/adyen.css" integrity="sha384-cZIV5piH3KzCM9VwntcX2yQ9zLS8xvo9f0pld8RJe7mUBO2GcsgEmXkc78rH/UA3" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- The Apple Pay Drop-in and Component can now use the
configuration
object from the/paymentMethods
response, so you no longer need to specifymerchantName
ormerchantIdentifier
when you configure Drop-in or the Apple Pay Component. - For giropay, the
showPayButton
configuration is now used as expected.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.17.1/adyen.js" integrity="sha384-g2XbIbtGW37gzNsvYJCzK0sjzvxuwdFTzRdAwspE9of5k+jU8ny5Pq5Dw96regYV" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.17.1/adyen.css" integrity="sha384-gbQyzqV1xX+snFEMrubEm0IpmYSufBjUnHzTaJZ+dcWCyxl0j94IZhnfC2gbxgeu" crossorigin="anonymous">
We fixed an issue where making a non-EUR gift card payment with the order
object was not working as expected.
If no payment methods are available for the amount
and countryCode
specified in the payment link, the shopper will now see an error.
The amount
specified in a payment link is now correctly validated against the limit set for your account.
- You can now hide the CVC field when accepting payments with cards and stored card details using the
CardComponent
. To do this, set thehideCvc
andhideCvcStoredCard
flags to true in theCardConfiguration
object.
- When accepting payments with stored Bancontact (BCMC) card details, the Component no longer requires a CVC.
- We added translations for MB WAY and for the AwaitComponent.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
We have redesigned the flow for gift cards.
- The Gift Card Component now calls an
onBalanceCheck
event when the shopper selects the Redeem button in the Component. You can use this event to trigger making the/paymentMethods/balance
request from your server. Pass the response to the Component so that it can present the gift card balance in the UI. - The Gift Card Component now also calls an
onOrderRequest
event when the gift card balance is not enough to complete the payment. You'll need to use this event to make an/orders
request from your server. The/orders
endpoint allows you to combine the gift card with other payment methods to make partial payments.
The new gift card flow does not show errors when a balance check fails. In scenarios where the payment amount is lower than the gift card's balance, the Component is unable to call the submit()
function. These behaviors are improved in version 3.17.2.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.17.0/adyen.js" integrity="sha384-G9jkTAyCOIVdksXbtrNgdur2DyRi85ujYLXbqe5AvvH23rN21d7xiU7cRIqvsEaH" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.17.0/adyen.css" integrity="sha384-gbQyzqV1xX+snFEMrubEm0IpmYSufBjUnHzTaJZ+dcWCyxl0j94IZhnfC2gbxgeu" crossorigin="anonymous">
- POST /payments: When making partial payments with an
order
object and without anamount
, the API now automatically sets the amount to either the gift card balance or theremainingAmount
, whichever is lower.
- POST /payments: Fixed an issue that caused updating stored card details using an
alias
to fail.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- When configuring the Google Pay Component, you can now include include the
transactionInfo
parameter. - The Apple Pay Component now uses the
configuration
object from the/paymentMethods
response, so you no longer need to specifymerchantName
ormerchantIdentifier
when you configure the Component. - We now make the
onValidateMerchant
call by default for the Apple Pay Component. However, you can also choose to make the call manually, in which case youronValidateMerchant
call overrides the default. - We improved the sourcemaps for the
adyen.js
files.
- The warning:
paymentMethodsResponse was provided but no payment methods were found.
will now only be shown if you provide apaymentMethodsResponse
object without any valid payment methods.
- The Apple Pay Component was not getting the expected configuration values from the
/paymentMethods
response, so you still have to specify the values in theconfiguration
object. This issue is fixed in version 3.17.1.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.16.0/adyen.js" integrity="sha384-CRV5O2tkmxc/chbXyRgG8vsJzVfFulg8F9LXsqAbcavAZKFJzNXRk5fbHBPI9IlW" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.16.0/adyen.css" integrity="sha384-4ppagynsoxB4LNdDTdpX1No72EGOMm13+Y89hg+nz+dAIAWchOBTEnLL7u/hi6eM" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
This release improves build issues in version 3.16.0.
- We fixed an issue with selecting the gender drop-down for buy now, pay later payment methods.
- Components for buy now, pay later payment methods no longer return
undefined
if thebillingAddress
anddeliveryAddress
are set ashidden
.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.16.1/adyen.js" integrity="sha384-IOreZUn3JSJSXeX/xV17p9zCpXLjIwyB1jVdn1xXVJhhLsrBtC0N4EGmVbILt7eF" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.16.1/adyen.css" integrity="sha384-Ivs7XmKB7ICQBw/FnU9DEmcIqOki5gTiT4M8J5JasU3DjBixkqSBH4QWSBkKPTnr" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- Added translation strings for
installmentOptionMonths
,installments.oneTime
,installments.installments
, andinstallments.revolving
.
- The BIN lookup functionality is now more reliable because it validates the card number after a new card brand is detected. This means the Card component gets the correct value even if the shopper pastes in a second valid card number.
- The MB WAY component now only shows validation errors on blur, that is when it's no longer in focus.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.15.1/adyen.js" integrity="sha384-18bB9irNIu0hQBFN+kxYgjeiMARTx7ukMoeFWLw/Autuyi+w0S9nXsf5Fn/VwmI+" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.15.1/adyen.css" integrity="sha384-4ppagynsoxB4LNdDTdpX1No72EGOMm13+Y89hg+nz+dAIAWchOBTEnLL7u/hi6eM" crossorigin="anonymous">
- If using the Klarna widget, you no longer get an error when making a
/payments/details
request.
Checkout API v65 is now available in API Explorer.
- All endpoints
- When a request fails due to validation errors, the response now returns the
pspReference
in the response body.
- When a request fails due to validation errors, the response now returns the
- POST
/payments
- You can now send the following additional parameters when providing risk-related information.
- When making a payment with a gift card, the API now requires the
paymentMethod.brand
.
- POST
/paymentLinks
- You can now use the
riskData
object to send risk-related settings.
- You can now use the
- POST
/paymentMethods
- For gift cards, the response now contains the gift card brand in the
brand
parameter.
- For gift cards, the response now contains the gift card brand in the
- POST
/paymentMethods/balance
- If the gift card has a limit for how much balance can be used in a single transaction, the response now contains this limit in the
transactionLimit
field.
- If the gift card has a limit for how much balance can be used in a single transaction, the response now contains this limit in the
- POST
/payments
- BACS payments now have a voucher payment flow. This means the response now contains
action.type
: voucher instead of redirect.
- BACS payments now have a voucher payment flow. This means the response now contains
- POST
/paymentMethods
- The response no longer contains the following parameters:
supportsRecurring
oneClickPaymentMethods
: UsestoredPaymentMethods
instead.groups
: Usebrands
instead.
- The response no longer contains the following parameters:
- We fixed an issue with the PayPal authorisation-only flow.
- Pay by Link API: When you specified an array of
allowedPaymentMethods
, it was still possible to make payments with card types that were not specified in this array (even though they were not rendered in the UI). We have fixed this, so that it is no longer possible to make payments with card types not specified in theallowedPaymentMethods
array.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- We introduced a new method for Web Drop-in,
closeActivePaymentMethod
. This lets you close a selected payment method, for example if you want to reset Drop-in. - Support for installment options for card payments in Japan.
- We improved the Google Pay Component:
existingPaymentMethodRequired
is now set to false by default.- Increased the
isAvailable
timeout to accommodate higher latencies. - Removed the timeout for loading the Google Pay Web SDK file automatically so the Google Pay script can load properly.
- Swapped the order for the
shopperEmail
andtelephoneNumber
input fields in the personal details component. The email appears first, followed by the telepohone number.
- Removed the
shopperEmail
field from the MB WAY Component because it is no longer required by the payment method.
- The
formatData
field for the ACH payment method is now properly checking the format, and the margin is fixed when no holder name is shown. - When a shopper pastes a value into the card number field, we now correctly trigger the BIN lookup, clear the error and allow the shopper to make the payment.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.15.0/adyen.js" integrity="sha384-wRJEmCkwtDr3QqIA1UqInI8kmB6XerK8zxfIhP0bSk34lK/kyvE9bSewbrleIQwo" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.15.0/adyen.css" integrity="sha384-4ppagynsoxB4LNdDTdpX1No72EGOMm13+Y89hg+nz+dAIAWchOBTEnLL7u/hi6eM" crossorigin="anonymous">
- 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 thedismiss(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
RedirectComponent
by addingmodalPresentationStyle
toRedirectComponentStyle
. - Added
didCancel(component:from:)
to theDropInComponentDelegate
to call back client code when a managed component is dismissed by the shopper. - Updated the 3D Secure SDK to v2.1.0-rc6.
- More accurate card brand detection for the
CardComponent
using the new client key.
- The
clientKey
must be set in instances ofCardComponent
andBCMCComponent
even when you use the initializer that receives the client key.
We fixed an issue where single-use payment links were creating multiple payments.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- Fixed issues with Google Pay and Drop-in:
- Google Pay can no longer trigger the submit flow twice on the Drop-in.
- Safari now correctly resolves the initial
isReadyToPay
promise on Drop-in when automatically loading the Google Pay API JavaScript library.
If you implemented SRI in test or with live region-specific URLs, use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.13.1/adyen.js" integrity="sha384-43SJm/Fc8D/N/UL7GYd+lUawkh0xQgdepGgkMMaoWKl0shiuU4yQrz6xYRMJvVI1" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.13.1/adyen.css" integrity="sha384-AtxcD/Ax9ZRBLJ63s/bwCMrfe/mXWt4TF7F+Vltoxo0WgAwWjVNDsfyMAgY+9nBi" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
This release improves build issues in version 3.14.0.
If you implemented SRI in test or with live region-specific URLs, use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.14.1/adyen.js" integrity="sha384-6CKCjdBJ5e8ODBkoPb8aS4NUVZUT84+EwcOq/EdHIQJsHXZyRy4Hzmlo3Cm/3VX3" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.14.1/adyen.css" integrity="sha384-dNVP3hcwQ/DJnbhWtKjt/xpYSDyS1Ch8m8tnxNehvZoGzcrjeGuKk9/dGstY+vxu" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- It is now possible to set the aria-label
iframeTitle
on the card fields.
- Full-width characters such as Japanese Katakana characters are now validated correctly.
- We increased the time-out for loading device fingerprinting files, to prevent
df-timeout
errors from theonChange
event when loading large device fingerprinting files. - Fixed an issue that occurred in some situations with prefilled data when redirecting.
- Fixed an issue where the PayPal Component was not passing the correct component reference to the
onCancel
andonError
events. - Clicking on the icon for a dual-branded card to select the card brand is working as expected again.
If you implemented SRI in test or with live region-specific URLs, use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.14.0/adyen.js" integrity="sha384-r16x+HZ6vkyWhMem7f3BaKcu23f64fnhpxflGasRv04Ii4ucIHagihmZj0Q5QSvA" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.14.0/adyen.css" integrity="sha384-dNVP3hcwQ/DJnbhWtKjt/xpYSDyS1Ch8m8tnxNehvZoGzcrjeGuKk9/dGstY+vxu" crossorigin="anonymous">
Pay by Link API: When making a /paymentLinks
request, you can now include the deliverAt
parameter.
- We fixed the Finnish translations for the terms and conditions prompt.
- Pay by Link API: We fixed an issue where payments would fail when you provided a delivery address but no billing address.
If the final status of the payment can not yet be determined, the shopper now sees a message of Pending instead of Something went wrong.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- Added field validation for:
telephoneNumber
in E-Context payments.dateOfBirth
in buy now, pay later payment methods.
- For SEPA Direct Debit payments, the IBAN and name fields can now be filled in automatically. To do this, pass
ibanNumber
andownerName
topaymentMethodsConfiguration
. - Apple Pay now uses the highest version supported by the shopper's device by default. You can override this setting in your Apple Pay configuration.
- The Google Pay Component now uses the
configuration
object from the/paymentMethods
response, so you no longer need to specifymerchantIdentifier
when configuring the Component. - Accessibility improvements:
- If there is no aria configuration object, the component creates one with the default
iframeTitle
anderror
properties. - If an
iframeTitle
orerror
property is missing from the configuration object you defined, they are added automatically. - If no placeholder configuration object exists, one is created with a default and translated value.
- For errors, the components use
aria-live="polite"
. For example, if an error comes up when filling in the form, the screen reader will read the error text after it finishes reading the current text. - Screen readers no longer read a description for the payment method icons which are decorative. Instead, they read the text announcing the payment method.
- If there is no aria configuration object, the component creates one with the default
- The Web Drop-in integration now has a 1 second timeout for the
isAvailable
filter. This means that if a payment method fails to load, Web Drop-in continues to load the form for all other payment methods. The end result will not contain an error, it will be the Drop-in form without the payment method that failed to load.
- The PayPal Component no longer returns an error when calling
unmount()
. - The aria label
iframeTitle
works correctly for the card and custom card integrations.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.13.0/adyen.js" integrity="sha384-cMH19I9HPj31iL3b/lcBcpsqbieCGSLyNef+RzjS7g3h5DhP2BI6j68/ogKSQCAh" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.13.0/adyen.css" integrity="sha384-AtxcD/Ax9ZRBLJ63s/bwCMrfe/mXWt4TF7F+Vltoxo0WgAwWjVNDsfyMAgY+9nBi" crossorigin="anonymous">
The QR code for WeChatPay is now rendering correctly.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- For giropay, setting the
showPayButton
: false now hides the Pay button.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.12.1/adyen.js" integrity="sha384-Z40LrT7R1YX9m5TJsqwQA5H3YqKvPA/DKBnPwXa4SwaDEs/feQSThsSph6PjbCQ1" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.12.1/adyen.css" integrity="sha384-GYuZ2hTudNw7WyFFpYgZ2+Dd1a1QqD0d0u7p6RE9F6q2yNnIEe6gPNs+Ml0QI5Mt" crossorigin="anonymous">
The payment update to your email now contains the payment method used for the payment.
- We fixed an issue where redirecting back from the Swish app would start a new Swish payment.
- Pay by Link API: Specifying
cup
in theallowedPaymentMethods
or theblockedPaymentMethods
array now works as expected.
This version will be [End-of-Life](/online-payments/upgrade-your-integration#lifecycle) on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- New supported payment method: Affirm.
- The Swish Component now shows a pending message, warning shoppers about multiple charges if they try to pay again while the status is pending.
- We improved the translation strings:
confirmPurchase
is now Confirm purchase instead of Confirm Purchase.voucher.collectionInstitutionNumber
andinstallmentOption
are now available for all supported languages.
- PayEasy (econtext_atm) vouchers now show the Collection Institutions Number.
state.data
now only returns fields that contain data for buy now, pay later payment methods.- The
billingAddress
object now only shows the fields that contain data.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.12.0/adyen.js" integrity="sha384-jH1pzFwMGYFHB6rut7oqTmHBMBdFhO+8vkYRhoX93CJePN7Ulx+US7H8lUkz/NP1" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.12.0/adyen.css" integrity="sha384-GYuZ2hTudNw7WyFFpYgZ2+Dd1a1QqD0d0u7p6RE9F6q2yNnIEe6gPNs+Ml0QI5Mt" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- If you're using a client key with wildcards in the allowed origins, the card fields now load even after changing domains, for example when the shopper switches country/region. The browser no longer caches the origin so you can use more than one origin in a browser session.
If you implemented SRI in test or with live region-specific URLs, use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.11.4/adyen.js" integrity="sha384-r6VzatKWD1SDwT5pfnl6sfkNJYAsTAUlUOO6PEbIhMwWFkPrE28R/8cjAKBp9yCd" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.11.4/adyen.css" integrity="sha384-gTrHdtmLDTaHuDUKM1okZAVgBTwjiI+E66Tz3K71+10Lhd7zxvtUF5lrHc35cNIR" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- Added support for auto-completing the card expiry date in different formats. All non-numerical characters in date strings, such as
.
,-
, and/
are supported.
If you implemented SRI in test or with live region-specific URLs, use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.11.3/adyen.js" integrity="sha384-2t2P/ImpM1vBj1hfrMp6pHPcNk7U4OSZMADKPINi7Y9JEt5m2ul3COhwTMsrA3ab" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.11.3/adyen.css" integrity="sha384-gTrHdtmLDTaHuDUKM1okZAVgBTwjiI+E66Tz3K71+10Lhd7zxvtUF5lrHc35cNIR" crossorigin="anonymous">
- We now accept
shopperLocale
with both underscores (for example en_US) and hyphens (for example en-US).
- Fixed an issue where shoppers did not get redirected correctly when using 3D Secure.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- The Google Pay Component now automatically loads the Google Pay script if the Component doesn't detect the script in your front end. In previous versions, you had to handle this in your front end, making sure that you load the Google Pay API JavaScript library before the Adyen JS script.
- Components for payment methods that use QR codes (such as Swish or WeChat Pay) now also calls
onAdditionalDetails
when the Component receives an error. - When using the Swish Component, the timeout for status checks is now increased to 15 minutes. The timeout used to be 3 minutes.
- We fixed the loading state for multiple Components (such as BLIK and Multibanco). In earlier versions, some Components didn't have a loading state so the Components weren't displaying the spinner while initializing.
- We made the following fixes for the Card Component:
- The Card Component now allows focus on optional security code fields.
- We fixed the logic when validating extra fields required for AVS.
- We fixed the
valid
state ofExpirationDate
.
If you implemented SRI in test or with live region-specific URLs, use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.11.1/adyen.js" integrity="sha384-Br76hCQAZTck3C/I3hObqUc/2xXMC48wJfBURX/e25bpuI2wV4wHYPqbXXovHQ0D" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.11.1/adyen.css" integrity="sha384-gTrHdtmLDTaHuDUKM1okZAVgBTwjiI+E66Tz3K71+10Lhd7zxvtUF5lrHc35cNIR" crossorigin="anonymous">
Checkout API v64 is now available in API Explorer.
-
All endpoints
- If an API request contains a field that is not recognized, or if the format is not valid, we now return an error message with error code
702
instead of dropping the field. The error message contains information about why the validation failed, for example:{ "status": 400, "errorCode": "702", "message": "Structure of PaymentRequest contains the following unmapped fields exampleErrorField", "errorType": "validation" }
- If an API request contains a field that is not recognized, or if the format is not valid, we now return an error message with error code
-
POST
/payments
- For Boleto Bancário, when a
shopperEmail
is provided, we now send an email with the Boleto code to the shopper.
- For Boleto Bancário, when a
-
POST
/paymentLinks
- In the request, you can now specify
installmentOptions.plans
andinstallmentOptions.preselectedValue
.
- In the request, you can now specify
- POST
/payments
- For Bancontact mobile and WeChat Pay, when making a request with
paymentMethod.type
bcmc_mobile_QR or wechatpayQR, the response now returnsPending
instead ofPresentToShopper
result code. This result code is now consistent with other QR code payment methods such as BLIK and Swish.
- For Bancontact mobile and WeChat Pay, when making a request with
-
POST
/paymentMethods
- The response for Amazon Pay, Apple Pay, Google Pay, and PayPal now contains a
configuration
object. Example for Google Pay and Apple Pay:{ "paymentMethods":[ { "configuration":{ "merchantId":"0123456789" }, "name":"Google Pay", "type":"paywithgoogle" }, { "configuration": { "merchantDisplayName": "Merchant Name", "merchantIdentifier": "1000" }, "name": "Apple Pay", "type": "applepay" } ] }
- The response for Amazon Pay, Apple Pay, Google Pay, and PayPal now contains a
-
POST
/payments
-
POST
/payments
-
In the response, we have marked a number of fields as deprecated. Although they are deprecated, these fields have not yet been removed from the response and you can still use them.
In a future version of the API, the deprecated fields will be removed and replaced by fields in the
action
object. We recommend that you start using the fields in theaction
object in the response.This applies to the following fields:
Response field Solution authentication
Use the action
object instead to get the values to be used in further calls to the/payments/details
endpoint. Applies to 3D Secure 2 payments.details [InputDetail]
Use the action
object instead to get all the fields needed to submit in the/payments/details
call.outputDetails
Use the action
object instead to get the details that will be presented to the shopper.paymentData
Use action.Paymentdata
instead.redirect
Use the action
object instead to get information about the redirect URL for payment flows that require a redirect.
-
- New supported payment method: Google Pay.
- We added support for the PayPal authorisation-only flow.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
You can only use this new feature if you are using clientKey
for your client-side authentication. If you are still using originKey
, refer to our migration guide.
Unsupported cards are now blocked on the frontend. When a shopper provides an unsupported card type, the Component disables the payment form, and shows an Unsupported card error message.
In previous versions, you'd only find out if a shopper provided an unsupported card type when you receive an errorCode: 905
in the /payments
response. In this version, the Component triggers an onError
callback after it detects that the card type is unsupported. The callback also returns a detectedBrands
array that indicates what type of card the shopper used.
- The Bancontact card
brand
property now defaults tobcmc
.
- Apple Pay now uses the
configuration.merchantName
property as the default label for the total line item if thetotalPriceLabel
is not provided.
If you implemented SRI in test or with live region-specific URLs, use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.11.0/adyen.js" integrity="sha384-sR3tFyFWM09aya/mpkzB0fV4t+g6b4i64izXXy+lSSTmrgL/9/cdNFURV5T9gUbI" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.11.0/adyen.css" integrity="sha384-8ofgICZZ/k5cC5N7xegqFZOA73H9RQ7H13439JfAZW8Gj3qjuKL2isaTD3GMIhDE" crossorigin="anonymous">
Checkout API v53 is now available in API Explorer.
- POST
/paymentLinks
- The response now returns the payment link
id
along with all other parameters sent in the request. In previous versions, the response only contained the URL, expiry date, reference, and amount.
- The response now returns the payment link
- POST
/payments
- When making a request with
paymentMethod.type
bcmc_mobile, the response now returns bothurl
andqrCodeData
. This allows you to offer both QR code and app redirect to your shoppers. - We now return an error if the
origin
in the request contains more than 80 characters or if the URL is invalid.
- When making a request with
- POST
/paymentMethods
- For giropay, the
bic
is no longer returned in the response. If you are using Web Drop-in or Components, the front end will no longer require a BIC. When shoppers select to pay with giropay, they are now redirected to giropay's website where they can provide their BIC. - For Bancontact mobile, the response now only returns
bcmc_mobile
. This new payment method type combines thebcmc_mobile_QR
andbcmc_mobile_app
types from previous versions of the API. - If transaction rules for payment methods are set up for your account, these are now evaluated when you send a
/paymentMethods
request.
- For giropay, the
- POST
/paymentLinks
- If a request is successful, the response now returns HTTP 201 instead of an HTTP 200 result code.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- Setting only the
clientKey
property in the configuration object, without theoriginKey
, now works as expected.
If you implemented SRI in test or with live region-specific URLs, use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.10.1/adyen.js" integrity="sha384-wG2z9zSQo61EIvyXmiFCo+zB3y0ZB4hsrXVcANmpP8HLthjoQJQPBh7tZKJSV8jA" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.10.1/adyen.css" integrity="sha384-8ofgICZZ/k5cC5N7xegqFZOA73H9RQ7H13439JfAZW8Gj3qjuKL2isaTD3GMIhDE" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- Added support for
callbackIntents
on the Google Pay component. This allows for updating the price dynamically when certain information changes. Refer to PaymentDataCallbacks.
- Added support for plurals and string interpolation on translations.
- We now generate one set of SRI hashes, so now you can use the same SRI hash regardless of where you are loading Adyen JS and CSS files from—test or live, including from live region-specific URLs.
- With Web Drop-in the
dropin.submit()
is once again working with Google Pay. - Fixed an issue in Web Drop-in where selecting "Pay" on stored cards didn't trigger the
onSubmit()
callback due to thebillingAddressRequired
property. - Chrome autofill on iOS now works as expected, and setting the value of
placeholder
tonull
no longer throws an error.
If you implemented SRI in test or with live region-specific URLs, you can now use the same SRI hashes below.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.10.0/adyen.js" integrity="sha384-ghytckjc6RtqM4eKYE4LBJRtqZWcxPv/sGamiebH2dY3tyiQYUOZnPJ0s27de7vB" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.10.0/adyen.css" integrity="sha384-8ofgICZZ/k5cC5N7xegqFZOA73H9RQ7H13439JfAZW8Gj3qjuKL2isaTD3GMIhDE" crossorigin="anonymous">
- Webhook events for Pay by Link payments now include the
paymentLinkId
.
- Fixed an issue where in some cases split payment data were not retained with iDEAL payments.
- When risk data are included in the payments request, this no longer results in an invalid signature calculation.
- We fixed an issue where a non-reusable payment link can still be reused after paying with Klarna.
- You can now choose to show or hide the security code field, and we added a delegate for
onBrand
andonBin
to the Card Component. AnyCardPaymentMethod
now containsCardFundingSource
.- 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
tintColor
andseparator
. - 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.
- 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 unitInt
values. - We enabled a loading state for the
PaymentMethodListComponent
. - We improved warnings, tests coverage, documentation and translation.
- 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 onCVC
field and navigation glitches for half-screen presentation.
barTintColor
andbarBackgroundColor
inNavigationStyle
have been deprecated.- We currently present
Redirect
from the top mostviewController
onkeyWindow
and we deprecatedRedirectComponent.presenterViewController
.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- When using the Component to collect billing address, countries/regions with state datasets now get correctly validated when the
state
field value changes.
-
Components for payment methods where you receive an
await
action type (such as MBWAY and BLIK) now always callsonAdditionalDetails
when the Component receives an error. -
The
storePaymentMethod
field is now sent in thestate.data
object as long asenableStoreDetails
is set to true (the Save details for next time checkbox is shown in the UI). If the shopper doesn't select the checkbox, thestate.data.storePaymentMethod
field will have a value of false.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.5/adyen.js" integrity="sha384-uOrvYLSC+gNG9rRi6gKnzTwPsO7Hi5KHOlZGl8CR3tA0s/0HLOvU9ViyJTWEcNk1" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.5/adyen.css" integrity="sha384-6qrXvoxlnBlrflZQ9g5Yf5oZapUSSXctPxacP9oRcEukbEO7lXisuSyMKG8pDX8V" crossorigin="anonymous">
- We fixed an issue where if you upload a logo for your payment page, the favicon did not reflect the logo. Now you can see the logo on the payment page and in your browser's favicon.
- We resolved an issue where payment links can still be used even if you sent
reusable
: false in your request.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- Fixed an issue regarding validation of the billing address in the Card Component where a pre-filled country/region with no states available still waits for a state or province field to be provided.
- Fixed an issue where the Card Component state does not update the address data until the country/region is changed.
- Fixed an issue where MBWay Component accepted different names for
shopperEmail
andtelephoneNumber
parameters in the request. - Fixed an issue regarding validation when a
namePrefix
is passed to thepersonalDetails
shopper input fields.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.4/adyen.js" integrity="sha384-/rpftrZptnl7EIuIvqz4PAEehQoysKXmwqUAGyH9lK3WHgcvY0lWj/S5LH7xrbf+" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.4/adyen.css" integrity="sha384-6qrXvoxlnBlrflZQ9g5Yf5oZapUSSXctPxacP9oRcEukbEO7lXisuSyMKG8pDX8V" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- The
state.data.paymentMethod.brand
field now shows the brand of the stored cards again. - We fixed the translation strings for
da-DK
and added the missing translation strings forko-KR
. - If an invalid
blikCode
is entered on the front-end, the error message is now correctly reflected.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.1/adyen.js" integrity="sha384-5RGbm/PP27SIGIeNaNn7l1S152uTFxajye1u1O7iVhQDPo5+uJ9uzT+D01cWFT1k" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.1/adyen.css" integrity="sha384-6qrXvoxlnBlrflZQ9g5Yf5oZapUSSXctPxacP9oRcEukbEO7lXisuSyMKG8pDX8V" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.2/adyen.js" integrity="sha384-0CZVjqVYBiMd+93KP09SDniCpCV0cP2g40JBhpN0+7Oq5hzI+JqdzJu9S1+B5tDn" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.2/adyen.css" integrity="sha384-6qrXvoxlnBlrflZQ9g5Yf5oZapUSSXctPxacP9oRcEukbEO7lXisuSyMKG8pDX8V" crossorigin="anonymous">
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.3/adyen.js" integrity="sha384-q0+/vVCY8/PdVap8fjVJm5zYIy08aNdQuBhvk6pnocoDW3IqqdeyCMQH1i+M1EEt" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.3/adyen.css" integrity="sha384-6qrXvoxlnBlrflZQ9g5Yf5oZapUSSXctPxacP9oRcEukbEO7lXisuSyMKG8pDX8V" crossorigin="anonymous">
Ratepay Direct Debits payments using Austrian (AT) IBANs is now working.
You can now see the /paymentLinks
endpoint in your Customer Area, under Accounts > API URLs.
Pay by Link now only shows one option for WeChat Pay in the payment method selection list.
The paymentLinkId
is now sent in the AUTHORISATION webhook. You can use this to reconcile payments to payment links.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- New supported payment method: BLIK.
- Client-side authentication using the client key. The client key allows for more flexible and efficient origin management than the origin key. If you are using origin keys, see how to migrate to using the client key.
- We improved the UI for the Bancontact mobile Pay button.
- Added new localization fields for BLIK and improved localization fields for credit cards.
- Double-clicking a Google Pay button started a session twice, resulting in an error. We fixed this so you can now double-click a Google Pay button without initiating a new session.
- The 3D Secure 2 Component no longer tries to parse invalid
postMessages
. - We fixed an issue where the CVC field for saved Maestro cards was required even when it is optional.
- When a shopper entered a credit card number using copy and paste or auto-fill, the
onBinValue
callback triggered by the Custom Card Component provided an encrypted BIN number. Now, theonBinValue
callback provides the actual BIN number, no matter how the card number is filled in.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.0/adyen.js" integrity="sha384-3aCAMK3oy4UGDOFOxcOniJ10zapprDSOh8hhrBgZ4wkDiw2bVy6MvABAE8UKvhS5" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.9.0/adyen.css" integrity="sha384-ECaUNUNaCM7I7c5adYdR56IIBUZtY3ax03DAYSyGIFls9wP7+6ZyHxlBNzAG5qT7" crossorigin="anonymous">
onBinValue
now works when a card number is pasted into the field. For more information, see Web Components 3.9.0.
- We fixed an issue where a non-reusable payment link can be used to pay multiple times when using Internet Explorer. To fix this issue, we added a no-cache header to the Pay by Link request.
- We improved the
/paymentMethods
response when getting a list of available payment methods in Sweden. This means that if you are using Drop-in or Components and send a/paymentMethods
request withcountryCode
: SE, you'll see the following UI improvements in line with Swedish regulations.- The payment method title has been changed to Card.
- From API version v49 and later: If you support Maestro, the icon for Maestro is shown first.
- If a Klarna payment request is missing invoice lines, you will now receive the following error message: No InvoiceLines provided.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.8.1/adyen.js" integrity="sha384-pLfJ6XKllmblOK86IVevGarh2cfeBr6lWAEkumlMA3hgTqKpEgNn8ID7zq4HsC6H" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.8.1/adyen.css" integrity="sha384-y1lKqffK5z+ENzddmGIfP3bcMRobxkjDt/9lyPAvV9H3JXbJYxCSD6L8TdyRMCGM" crossorigin="anonymous">
- Masking on date inputs is now supported on browsers that do not have native support for date inputs (such as Safari and Internet Explorer).
- Age validation is now supported in the
Date of birth
field on the Oney3x4x Component. - Installment options for credit cards are now hidden when the
amount
is set to 0.
- Resolved a Google Pay issue where double-clicking the Google Pay button would initiate two separate payments.
- Resolved a Google Pay issue where Drop-in would, in some cases, open up a new payment sheet when selecting Continue on the Google Pay sheet.
- Optional shopper information sent in an Oxxo payment request will now show up in the Offers tab in your Customer Area.
- We added a Common issues section on the GitHub README.
- The new
action
typesdk
replaces theaction
typewechatpaySDK
.
The WeChatPay Component now correctly triggers the observer automatically.
- We improved the reliability of 3D Secure 1 authentications after partial payments with gift cards.
- New supported payment methods: Buy now, pay later payment methods such as Klarna and Zip.
- Credit card installments
- When using Adyen for Platforms, you can now add split instructions to payment links.
- The redirect URL for Oney 3x4x payments has been shortened.
The 3D Secure 2 SDK was updated to version 2.1.0-rc08
.
- Whenever
CardView
is present, we add aFLAG_SECURE
to the window. - We now accept dates up to 30 years in the future when we validate card data.
- We adressed a localization issue and now use
LocaleUtil.fromLanguageTag()
to parse user locale. - Fixed a typo in CUP regex validation.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- Credit card installments are now supported on the Card Component and Drop-in.
allowCreditCards
configuration is now available on the Google Pay Component and Drop-in.- The PayU NetBanking Component and the PayU CashCard Component now provide drop-down issuer lists.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.8.0/adyen.js" integrity="sha384-rwJ33r9d5uXn5L8KSr4UqcaSaAHs2NQNjtNCvclBkZ8P36yDAXQq65YPX+q1LiEr" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.8.0/adyen.css" integrity="sha384-y1lKqffK5z+ENzddmGIfP3bcMRobxkjDt/9lyPAvV9H3JXbJYxCSD6L8TdyRMCGM" crossorigin="anonymous">
- The
countryCode
is no longer a required parameter for the/paymentLinks
request.
- The shopper can no longer make multiple payments when a single-use payment link is open in multiple tabs.
- We fixed an issue where the 3D Secure 2 flow could break when receiving an unsupported
screen.colorDepth
value on Google Chrome v83 or v84. - We fixed an issue where
metadata
was not being sent back in the webhook event.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- Drop-in/Components no longer support the native Klarna integration. Klarna is now only supported through the redirect integration.
- The Card Component/Drop-in now show a visual hint for the location of the CVC/CVV on the card.
- We added VPay to the card brands recognized by the Card Component/Drop-in.
- A saved card is no longer breaking if the card type is not recognized.
- When using Internet Explorer 11, the card number can no longer cause the browser to freeze.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.7.0/adyen.js" integrity="sha384-QCQYNjVhSRlEZczHTuiZWQuyFi5btsJ/c2otY6apbNM32EdkEDC6rdlJXeubWs9V" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.7.0/adyen.css" integrity="sha384-y1lKqffK5z+ENzddmGIfP3bcMRobxkjDt/9lyPAvV9H3JXbJYxCSD6L8TdyRMCGM" crossorigin="anonymous">
- The
browserInfo
is now included in thePaymentComponentData
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.
- 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.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
Added support for the Gift Card Component.
- We fixed an issue where the Custom Card Component would not auto-complete the date when using separate date fields.
- We fixed an issue where Elo and Hipercard cards were not validating correctly in the Card and Custom Card Components.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.6.3/adyen.js" integrity="sha384-sW7LTx7Q+1PgLUEUyxTGnmFsfMuZHDpIoIz2Tds1KroBZiT29OnTXZmV+nGhRxvO" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.6.3/adyen.css" integrity="sha384-l5/gSrWMFWCKnEqoG1F21fvhDesLnZt/JlXjkA0FWp6E68Pc/9mxg+nPvvx+uB4G" crossorigin="anonymous">
Before this version, the /paymentMethods
response would return wechatpayMiniProgram and wechatpaySDK if channel
:Web. These payment methods are now only when channel
:Android or channel
:iOS.
- By default, payment links can now only be used to make one successful payment. To create a reusable link, you can override the default behavior when creating the payment link.
- You can now view previously created payment links in a dashboard in your Customer Area (only for payment links created through the Customer Area).
- You'll receive an email when a payment link has successfully been paid for (only for payment links created through the Customer Area).
The payment link URL has been shortened.
We fixed an issue that didn't allow creating payment links if you only had one store ID under your merchant account.
- 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.
- 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.
- 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.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
Added a new Component for making donations, using Adyen Giving.
- We fixed an issue where the Custom Card Component would throw an error if no
onError
event was set. - We fixed an issue where the Custom Card Component would return an invalid object in the
onError
callback.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.6.2/adyen.js" integrity="sha384-xSgkLL5lvMeIIIngOV++b3U0H89TafFDytrHgPVydPopZ/WuAw1Ry8xbGeeLMqQM" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.6.2/adyen.css" integrity="sha384-l5/gSrWMFWCKnEqoG1F21fvhDesLnZt/JlXjkA0FWp6E68Pc/9mxg+nPvvx+uB4G" crossorigin="anonymous">
To force a card transaction to use a debit funding source, you can now include in the /payments
request: paymentMethod.fundingSource
: debit .
- The
/paymentMethods
response now returns ACH also when the request includesamount.value
: 0. - The
deviceFingerprint
is now correctly propagated for all payment methods.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- We fixed a Custom Card Component compatibility issue on IE11.
- In Boleto Bancário, the CPF/CNPJ field is now properly validated.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.6.1/adyen.js" integrity="sha384-hUb/CFxzLJZWUbDBmQfccbVjE3LFxAx3Wt4O37edYVLZmNhcmVUyYLgn6kWk3Hz+" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.6.1/adyen.css" integrity="sha384-l5/gSrWMFWCKnEqoG1F21fvhDesLnZt/JlXjkA0FWp6E68Pc/9mxg+nPvvx+uB4G" crossorigin="anonymous">
When updating stored payment details, you can now send in an unencrypted expiration date.
Stored payment methods are now available for payment links created through the API.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
- New supported payment method: Automated Clearing House (ACH). We also support sending in encrypted ACH details.
- Added support for
handleAction
in Components integrations.
- The Custom Card Component now supports
brands
configuration. - We fixed an issue with card holder name validation when auto-completing card details in Chrome.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.6.0/adyen.js" integrity="sha384-Ae3bpVd/uyREJxla2lRiuEXoYQA/WReCh/h1+sek9TFeq6iwAVBu9tDyMJNzpZHc" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.6.0/adyen.css" integrity="sha384-NzXIrom1g7+1OMBJWAyapJ4yYXLFHdsE1ZxOVstMQVwURFl3RXldhYENYkBaBjL8" crossorigin="anonymous">
The 3D Secure 2 SDK was updated to version 2.1.0-rc07
.
We removed a warning about string formatting that you might have seen when compiling the app.
Drop-in/Components will now forcefully try to get localized strings from the ShopperLocale
set in the configuration object.
If you don't provide a custom array of supported card brands in the cardConfiguration
object, CardComponent initialization will now get it from the PaymentMethod
object, instead of using the default values as before.
- We fixed an issue with 19 digit card numbers.
- We added missing translated strings.
- We fixed a synchronization issue that could trigger an OOB exception in
CardType
detection. - We added proper return type for some Configuration Builder methods.
This version will be End-of-Life on October 1, 2025.
We recommend that you upgrade to v6.0.0 or later.
-
Support for Subresource Integrity (SRI) hashes
You can now use SRI hashes to ensure that the files you are loading from Adyen have not been manipulated or tampered with by malicious actors.
To use the SRI hash, you need to add an
integrity
attribute when specifying<script>
or<link>
elements. Browsers will also check for thecrossorigin
attribute to ensure that the origin allows Cross-Origin Resource Sharing (CORS). If a browser detects that the file's hash does not match the specified hash, the browser will not load the resource. To know which browsers support SRI, refer to this browser compatibility list.For example, here is how you specify version 3.5.0
adyen.js
andadyen.css
resources:<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.5.0/adyen.js" integrity="sha384-MpcW2OFcC1/y5nwF6UmvRfDXGISpg1rowHVybiS+wJObkUwgFpvbdpJxR2/bwmeA" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.5.0/adyen.css" integrity="sha384-aWycvW8Dygg+6QHTq56FJMi4CJBjQt4LbRO3zWUuyfbv0A8g3rb5FR/vHyHKfiY0" crossorigin="anonymous"> You can find the SRI hashes for all previous versions of our JavaScript and CSS files added in their corresponding release notes.
-
You can now render billing address fields in Drop-in and Card Component to collect the shopper's billing address for Address Verification System (AVS) implementation.
-
Drop-in and Components for payment methods that support saving payment details for recurring transactions can now show a preauthorization button. Instead of a Pay button, the button prompts the shopper to confirm the preauthorization. The preauthorization button is shown when you send a zero value amount (zero-auth transaction).
shippingOptionRequired
and shippingOptionParameters
configuration are now available on Google Pay Component and in Drop-in.
- The
showPayButton
configuration is now working for Multibanco Component. - The preselected bank is now shown if you specify an issuer ID in the
issuer
configuration for iDEAL Component and in Drop-in.
<script src="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.5.0/adyen.js" integrity="sha384-MpcW2OFcC1/y5nwF6UmvRfDXGISpg1rowHVybiS+wJObkUwgFpvbdpJxR2/bwmeA" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://checkoutshopper-live.adyen.com/checkoutshopper/sdk/3.5.0/adyen.css" integrity="sha384-aWycvW8Dygg+6QHTq56FJMi4CJBjQt4LbRO3zWUuyfbv0A8g3rb5FR/vHyHKfiY0" crossorigin="anonymous">
- We improved the error validation design: invalid shopper input will now be highlighted after the shopper clicks the Pay button.
- ComponentView classes now have
highlightValidationErrors()
method. - Drop-in/Components use the correct separation format for American Express.
- If the shopper cancels the 3D Secure authentication, you will now receive a
Cancelled3DS2Exception
. - We added new translation string files for supported locales.
- We added options for customizing the Component appearance, for example with fonts and text colors.
- You can now specify a custom localization key separator.
We fixed an issue where a custom localization table name would apply to default localizations.
- POST /paymentMethods:
- For giropay, the response now indicates
bic
as an optional field. - In the response, the brands array only contains
scheme
payment methods. Previously, tokenized cards, such as Apple Pay, were returned in the same array.
- For giropay, the response now indicates
- POST /payments:
- For Multibanco, the response now contains the
action
object fortype
:voucher. You can use the information in theaction
object to present the voucher to the shopper.
- For Multibanco, the response now contains the
- POST /payments:
- The response now contains an
action
object that indicates the action to be taken for completing the payment.
- The response now contains an
- POST /payments/details:
- The response now contains the
merchantReference
field. This is the reference you passed in the /payments request.
- The response now contains the
- POST /payments:
- storePaymentMethod replaces
enableOneClick
andenableRecurring
.
- storePaymentMethod replaces
- Native payment methods (previously supported through Hosted Payment Pages (HPP)):
- Gift cards.
- Oney. Payment method type: facilypay.
- POST /paymentMethods:
- For giropay, the Business Identifier Code (BIC) key is now returned in
bic
instead ofgiropay.bic
.
- For giropay, the Business Identifier Code (BIC) key is now returned in
- Native payment methods (previously supported through Hosted Payment Pages (HPP)):
- For WeChatPay, support for payment method type: wechatpayMiniProgram.
- For payment methods that require you to present a voucher to the shopper, the response now includes resultCode:presentToShopper.
- Payment methods:
- Bancontact:
- Bancontact card: the shopper pays using a card. Payment method type: bcmc.
- Bancontact mobile: the shopper pays using a bank app that supports Bancontact mobile. Payment method type: bcmc_mobile.
- MoMo:
- MoMo website: the shopper pays using a desktop browser. Payment method type: momo_wallet.
- MoMo app: the shopper pays using a mobile app. Payment method type: momo_wallet_app.
- Bancontact:
- POST /paymentMethods:
- The response now contains the
groups
object, which is an array of payment methods that will be recognized. - For payment methods that support recurring payments, the response now includes
supportsRecurring
:true.
- The response now contains the
- For payments with wallet tokens, you no longer need to include to
additionalData
prefix in the additionalData object. For example, instead ofadditionalData.paywithgoogle.token
, usepaywithgoogle.token
.