Skip to content

Releases: Adyen/adyen-ios

4.2.0

29 Sep 11:48
95f158b
Compare
Choose a tag to compare

Important

This release is not compatible with Xcode 15
Please consider updating to 4.11.1 or newer

New

  • New supported payment method: Multibanco.
  • The Card Component now allows you to accept credit card payments in installments using InstallmentConfiguration.
  • Shoppers can now dismiss pickers using the new Done button.

Changed

  • If you're using Objective-C, we renamed TextField to ADYTextField to avoid naming conflicts.

Improved

  • The Encryption Component now uses JSON Web Encryption (JWE) with RSA OAEP 256 and AES CBC 256 with HMAC SHA 512. You don't need to make any changes to your integration.
  • The Card Component now shows an error message to the shopper if the card brand they're using is not supported.

Fixed

  • Fixed a UI bug where only part of the Pay button was visible.
  • Fixed an issue with socialSecurityNumber where setting it to show would still hide the field based on the card's BIN.

4.1.0

06 Sep 11:12
3ddfbce
Compare
Choose a tag to compare

Important

This release is not compatible with Xcode 15
Please consider updating to 4.11.1 or newer

New

  • New supported payment methods: Affirm, OXXO.
  • The Card Component now has support for:
    • Korean card payments through KCP.
    • Brazillian card payments that require the social security number.
    • UK addresses.
  • Shoppers can now add vouchers to Apple Wallet.
  • Get the last 4 digits of the entered card number using didSubmit(lastFour:component:).

Improved

  • If a shopper enters card data and then closes the payment screen, the component now clears the values for improved security.
  • The Card Component now runs validation on optional CVC fields if the shopper enters a value.
  • Disabled Luhn checks for private label cards (also known as white label cards), because the check fails even if the card number is valid.
  • The card number field now has a numeric keypad for input.
  • The Boleto Component has improved validation for social security numbers.
  • There are smoother transitions between Drop-in screens.
  • Redesigned the Drop-in UI for iPad so that it's responsive to screen size and feels native to the iPad.
  • Redesigned the UI for voucher payment methods to make it easy for shoppers to find the call to action.
  • Added a README.md file for the demo projects.
  • Updated the 3D Secure SDK to v2.2.3.
  • Moved the networking layer into a separate framework as a dependency.

Fixed

  • You can now use CocoaPods on M1 Mac devices.
  • Fixed a bug where card brand logos were not showing up if the shopper deleted the initial card number and entered a value again.
  • Single digit house numbers no longer fail validation.

4.0.0

30 Jun 12:33
Compare
Choose a tag to compare

Important

This release is not compatible with Xcode 15
Please consider updating to 4.11.1 or newer

Improved

  • Improves forms to show system auto completion suggestions.

New

  • Adds Arabic as a supported language.
  • Adds support for RTL layout.
  • Adds native support for gift card payments through GiftCardComponent.
  • Adds support for partial payments through the GiftCardComponent.
  • Adds support for Boleto payment method through the BoletoComponent.
  • Adds support for pre filling forms using DropInComponent.Configuration.shopper of type PrefilledShopperInformation.
  • Adds didOpenExternalApplication(component:) call back to DropInComponentDelegate to notify you about redirects to an external app.
  • Adds cardComponentDelegate property to DropInComponent.
  • For certain card types, the CVC field will be marked as optional. The CardComponent performs a BIN lookup call which uses the card number to try and identify the corresponding card type and whether the CVC is required or not.

Fixed

  • Fixes a bug where browserinfo wasn't properly added to the PaymentComponentData object.
  • Fixes a bug in how redirect component parses the redirect query parameters.

Changed

  • Combines clientKey and environment into APIContext that needs to be injected into every component.
  • Renames PaymentMethodsConfiguration to DropInComponent.Configuration.
  • Renames CardConfiguration to CardComponent.Configuration.
  • Renames ApplePayConfiguration to AppleComponent.Configuration.
  • Groupes all action components' styles into ActionComponentStyle.

3.8.5

11 May 08:03
c2997d1
Compare
Choose a tag to compare

Features

  • Improves Diners card detection in card component.
  • Adds postal code field to card component.

Fixes

  • The BCMC component no longer shows the additional large title with the component's name on Drop-In.
  • Drop-In now shows Apple Pay button according to Apple's Human Interface Guidelines

4.0.0-beta.2

05 May 13:37
cc11366
Compare
Choose a tag to compare
  • Adds Seven Eleven Component.
  • Adds EContext Stores component.
  • Adds EContext ATM component.
  • Adds EContext Online component.
  • Adds PIX payment method support and QRCodeComponent to handle QR code based actions like PIX.
  • Adds some security measures to prevent leaking sensitive API keys when url responses are cached.
  • Sets minimum TLS version to 1.2.
  • Fixes a bug where forms were not properly scrollable when the form is not fully visible on screen.
  • Renamed AdyenActionComponent.perform() to handle() for consistency with other action components.
  • Adds delivery/shipping address to card component.
  • Uses a squircle curve by default for rounding corners.
  • Changes Apple Pay token to be a base64 string rather than a plain JSON text (please refer to the MIGRATION.md).
  • Improves Diners' cards detection in card component.
  • Improves how Apple Pay is presented in DropIn in accordance with Apple Store guidelines.
  • Fixes a bug with ThreeDS2Component specially for checkout API versions equal or above 67, specifically with the 3DS1 fallback flow.

4.0.0-beta.1

22 Mar 12:15
6529061
Compare
Choose a tag to compare

Minimum API version

We recommend you use Checkout API v67.

Backwards compatibility with earlier API versions is not fully tested - we would appreciate your feedback :)

Breaking changes

  • Makes clientKey required on PaymentMethodsConfiguration.

  • Removed cancelHandler from the applePay component.

  • Drops support for iOS 10.0.

  • Made paymentData optional in RedirectAction, ActionComponentData and RedirectComponent.

  • RedirectComponent requires presentationDelegate to present its UI.

  • Adds a PaymentMethod object to DropInDelegate.didSubmit, so you can identify which payment method is being submitted.

  • Removed deprecated classes, functions, properties.

  • Renamed DropInActionComponent to AdyenActionComponent and moved it to the AdyenActions module.

  • Refactored the SDK into a new module structure:

  • AdyenComponents contains any payment component, for example QiwiWalletComponent, MBWayComponent, ApplePayComponent, and BLIKComponent.

  • AdyenCard contains any card payment related components, for example CardComponent, StoredCardComponent, and BCMCComponent.

  • AdyenActions contains all action components, for example AwaitComponent, VoucherComponent, and RedirectComponent.

  • AdyenEncryption contains the encryption helpers.

  • AdyenSwiftUI contains SwiftUI related integration helpers, for example ViewControllerPresenter, ViewModifier.

  • AdyenDropIn contains DropInComponent.

  • AdyenWeChatPay contains the WeChat Pay component.

New

  • The ThreeDS2Component supports the new 3D Secure flow from Checkout API v67. The old flow is still supported if you’re using an API version earlier than v67.
  • DokuComponent adds support for Indonesian bank transfers and cash payments at convenience stores through Doku Wallet, Doku Alfamart, and Doku Indomaret.
  • VoucherComponent handles actions for voucher payment flows, for example Doku Alfamart.
  • Adds support for stored payment details for BLIK.
  • You can configure button border color and width using ButtonStyle.

Improvements

  • Removed hard dependency on Checkout API versions pre 67.
  • Allow the title for DropIn to be centered.
  • Allow custom image for the cancel button.
  • Get Apple Pay supported networks from /paymentMethods response, and remove ApplePayConfiguration.excludedCardNetworks.
  • Improved accuracy for card brand detection.
  • 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.
  • Refactored the Demo example apps (for UIKit and SwiftUI) to make it easier to follow.

Fixes

  • Fixed MBWayComponent to show Portugal and Spain in the phone prefix drop down list of phone extensions.
  • Fixed a bug where gift card payment methods had a missing logo.
  • Fixes localization warning when using Swift Package Manager.
  • Swish redirects are now fixed by adding the returnUrlQueryString option to RedirectDetails.

Note: Please refer to the migration guide for details about the breaking changes.

3.8.4

05 Mar 13:00
Compare
Choose a tag to compare
  • For gift card payments, the Drop-in now shows a branded icon for each available gift card.

3.8.3

14 Jan 09:54
Compare
Choose a tag to compare
  • Fixed a bug where custom localization wasn't being applied to the AwaitComponent.

3.8.2

23 Dec 14:21
72a3485
Compare
Choose a tag to compare
  • Fixes a minor bug with ApplePayComponent that prevents calling delegate.didFail() in case of 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.

3.8.1

08 Dec 11:27
0f00687
Compare
Choose a tag to compare

New

  • For stored cards, you can now show or hide the CVC field separately from the card form. To do this, use PaymentMethodsConfiguration.CardConfiguration.stored.showsSecurityCodeField.

Fixes

  • Fixed an issue where the public delegate property of the UILabel could clash with code elsewhere in your integration.