Skip to content

Releases: datatrans/ios-sdk

3.3.0

05 Oct 17:17
Compare
Choose a tag to compare

✨💸 DCC payment flows are now supported!

Our SDK now supports dynamic currency conversion (DCC) payment flows. Let your customers choose their preferred currency when paying: When the customer is ready to pay, the SDK will ask the consumer if they wish to debit their card in their card currency or your merchant currency.

DCC

Use savedCardDCCShowMode in TransactionOptions to enable DCC (default), disable DCC, or smartly enable DCC for transactions with saved cards (tokens). Smart DCC will trigger the DCC flow less frequently if the consumer declines the DCC choice in their previous choice. The SDK will only trigger the DCC flow if your merchantId is setup for DCC payments.

Added

  • DCC payment flows are now supported by the SDK

3.2.0

14 Jul 21:30
Compare
Choose a tag to compare

✨🧽 New Apple Pay flow, Maestro & China Union Pay

We just added support for Apple Pay for cases where users still need to register a card in their Apple Pay wallet to complete the payment. We also added the payment methods Maestro and China Union Pay, and better support for SwiftUI.

⚠️ Apple Pay is now always shown by default

By default the SDK will always show Apple Pay, even when users do not already have a card in their Apple Pay wallet. Use the option ApplePayConfig.existingCardRequired if you only want to show Apple Pay when the user has added a card.

The ApplePayConfig.hasApplePay availability check now requires a second parameter existingCardRequired: to indicate whether Apple Pay is available only when a card has already been set up.

Added

  • Added enhanced SwiftUI support: To start the SDK from your SwiftUI app, use View modifier datatrans(startWithTransaction:) or datatrans(startWithPCIPTokenization:) instead of the usual view controller presentation.
  • Added the payment method Maestro MAU
  • Added the payment method China Union Pay CUP

Changed

  • identifier is now directly available on PaymentMethodType
  • Improved Flutter integration
  • Apple Pay is now available even when the user hasn't yet added a card

Fixed

  • Minor bugs

3.1.1

19 Jun 13:15
Compare
Choose a tag to compare

Fixed

  • Fixed a bug where some cards starting with 2 were not recognized as Mastercard

3.1.0

08 Jun 14:19
Compare
Choose a tag to compare

💵 🗞️ New payment methods Swish and Vipps

This new release adds Swish and Vipps payment methods for your iOS applications. We also fixed a few bugs.

.plist entries need to be updated!

To allow the switch to Swish and Vipps applications, you must include three new schemes to LSApplicationQueriesSchemes: swish, vipps, vippsMT.

Added

  • Added the payment method Swish SWH
  • Added the payment method Vipps VPS

Changed

  • Updated some payment method logos

Fixed

  • Fixed a bug related to some currencies being displayed wrongly. All currencies now follow ISO 4217.
  • Minor bugs

3.0.0

03 May 17:49
Compare
Choose a tag to compare

👀 🙉 Lots of cool improvements and a new card scanner!

3.0 is out! A brand new scanner is included starting 3.0. We will now offer our own scanner to facilitate your consumers’ card scans. This release also contains a card check feature and many small fixes reported in the past.

⚠️ Important Change Starting 3.0.0

There is a breaking change if you offer Apple Pay in your apps. DTApplePayDelegate has been updated to reflect the current methods from PKPaymentAuthorizationControllerDelegate. Deprecated methods have been removed.

New Features

A beautiful card scanner (from us ❤️) is now used for our card scans. This newly introduced scanner is as close to iOS as it will get.

We also introduced the card check flow, which authorizes a card with no amount. This flow can be triggered by specifying a card alias, amount:0 and createAlias:false in your init request.

Added

  • Added our own card scanner, card.io's scanner was replaced
  • Added our card check flow (card: {alias:yourAlias, ...}, amount:0, createAlias:false)
  • Added support for Dankort
  • Added Dutch as a language 🇳🇱

Changed

  • Improved our error handling - we now include more information when the mobileToken is wrong or invalid, when your callback scheme is invalid, the Klarna config is wrong, and also more information related to server responses

Fixed

  • Minor bugs

2.7.2

14 Apr 12:58
Compare
Choose a tag to compare

👀 Not much, just a few updates

We added the payment method Paycard MPX, the expiry date in PCI Proxy flows, and some bugfixes.

Added

  • Added the payment method Paycard MPX
  • PCI Proxy flows now return the expiry date in PCIPCardInfo
  • All shipping and billing details are now returned in DTApplePayDelegate.userDidAuthorizePayment()

Changed

  • Updated Klarna to 2.5.0

Fixed

  • Fixed Apple Pay processing in some cases

2.6.0

20 Feb 15:16
Compare
Choose a tag to compare

🇪🇸🇵🇹🇩🇰  New languages added  🇫🇮🇳🇴🇸🇪

We have localized the SDK into six new languages. Also, merchants can now keep showing their loading animation during the initial phase of the SDK.

Added

  • Added support for Spanish, Portuguese, Danish, Finnish, Swedish, and Norwegian
  • New option customInitialLoaderDelegate prevents the SDK from showing its loading screen during initial network requests
  • Some payment method configurations are now validated when the SDK is started to prevent common late errors

Changed

  • PCI Proxy flow: Changed error message when an invalid card is received for tokenization

Fixed

  • Minor bugs

2.5.0

24 Dec 12:23
Compare
Choose a tag to compare

🎄🎅🏻 Closing 2022 with enhanced error messages - Merry X-mas!

Starting 2.5.0, we return the same error names as our JSON API when something goes wrong. Merchants interested in error details can check TransactionError's backendError property.

Added

  • Added backendError in TransactionError with error name from our JSON API. Unexpected internal errors will not return a backend error.
  • Added support for the JSON API parameters refno2 and refno3
  • Added forward compatibility for new payment methods

Changed

  • SSL errors are now handled internally. Note: TransactionError code 0 (technical) is now only returned for unexpected internal errors, no longer for SSL or certificate pinning errors.

Fixed

  • Minor bugs

2.4.0

22 Nov 09:43
Compare
Choose a tag to compare

💳 CVV Only flow for PCI Proxy merchants

We added a new flow for PCI Proxy merchants that allows capturing the CVV only (no card, no expiry date). Consumers are taken to the final card screen for this flow and have to complete it by simply adding their CVV. This flow can help check the CVV of a previously tokenized card (e.g., through a different provider).

Added

  • Added the CVV Only flow for PCI Proxy merchants

Changed

  • Increased minimum supported Xcode version from 12.5.1 to 13.4.1
  • Improved PCI Proxy error handling
  • Updated Reka logo

2.3.1

03 Oct 12:50
Compare
Choose a tag to compare

🎉 New features for PCI Proxy merchants!

We have added more data to our PCI Proxy flows: Our SDK now returns the card information in addition to the tokenization ID.

⚠️ Important Changes - only relevant to PCI Proxy merchants

  • PCIPTokenizationDelegate no longer returns the tokenizationId directly, the tokenizationId is now contained in PCIPTokenizationSuccess
  • PCIPTokenizationRequest has been renamed to PCIPTokenization
  • PCIPTokenizationRequestOptions has been renamed to PCIPTokenizationOptions
  • PCIPTokenizationRequestDelegate has been renamed to PCIPTokenizationDelegate
  • PCIPTokenizationRequestError has been renamed to PCIPTokenizationError

Added

  • The PCI Proxy flow now returns card information in addition to the tokenization ID

Changed

  • API renaming to be more consistent with other Datatrans APIs