Releases: datatrans/ios-sdk
3.6.3
iOS: 3.6.1
Added
- Added an alternative app callback to enhance support for .NET 8 MAUI
Changed
- Updated Klarna and PayPal dependencies to include privacy manifest files
3.6.0
⛏️🥞 Twint schemes update & better support for PCI Proxy flows with American Express
We just added better support for network tokenizations with American Express, relevant for PCI Proxy merchants. Starting 3.6.0, we also updated the Twint logic to support any Twint application. If you process Twint transactions, please read the breaking note below and update to the latest build asap.
⚠️ Breaking Twint change starting 3.6.0
With the introduction of iOS 15, Apple has imposed a limitation on the Info.plist file within iOS applications, restricting the number of app query scheme entries to a maximum of 50. Any entry beyond this limit will not function, irrespective of the order or sequence of queries. To enable app switch support for newer Twint applications, a renaming of the schemes defined in the array LSApplicationQueriesSchemes
in Info.plist is required.
As the number of Twint banking apps has now exceeded 40, we have introduced a new query mechanism to accommodate more apps while limiting Twint-related entries to 40.
Modifications to your Info.plist file:
- Add the scheme
twint-extended
along withtwint-issuer1
,twint-issuer2
, up totwint-issuer39
. - Remove entries
twint-issuer40
and higher. - Ensure your app contains no more than 50
LSApplicationQueriesSchemes
entries in Info.plist.
If you have limited space due to other integrations, use the SDK option twintMaxIssuerNumber
. Set this value to match your highest twint-issuerXY
scheme. For example, if Info.plist contains up to twint-issuer35
, set the SDK option twintMaxIssuerNumber
to 35
. Make sure the twint-extended
scheme is always included in your Info.plist file.
Important: Whenever possible, allocate the full 40 Twint schemes within LSApplicationQueriesSchemes
. This ensures the best possible user experience, allowing for seamless app switching during payments.
Added
- An error is shown to the user when 3D Secure is not enrolled or supported but required
- Card brand detection on the UI is now synced from a remote endpoint
- Option cardholder to add the cardholder info (email and phone number) in PCI Proxy flows
- Added support for Swissbilling discount amounts (
discountAmount
)
Changed
- Twint schemes in
LSApplicationQueriesSchemes
& schemes logic - please refer to the note above
Fixed
- Minor bugs
3.5.0
✨📱 MobilePay Support & Accessibility Updates!
First release of the year! We just added MobilePay support and significant improvements across the platform.
Added
- The Mobile SDK now supports payments using MobilePay
MBP
- Added support for Diners Club cards issued by Cornercard
Changed
- The payment method selection list and DCC screens have improved for better accessibility, ensuring a more inclusive and user-friendly experience, especially when using screen readers.
Fixed
- Fixed a bug where double tapping on the payment method selection list would generate two transactions
- Minor bugfixes
3.4.0
🎃🔧 Bugfixes and minor API changes
This release contains a few bugfixes, and Byjuno has been renamed CembraPay.
Added
- Support for payment method Half Fare Travelcard PLUS
PLU
- Support for SBB vouchers via Boncard
Changed
- Renamed Byjuno to CembraPay
- Updated the Boncard logo
Fixed
- Fixed a bug related to Hipercard PCI proxy flows
3.3.0
✨💸 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.
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
✨🧽 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
modifierdatatrans(startWithTransaction:)
ordatatrans(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 onPaymentMethodType
- Improved Flutter integration
- Apple Pay is now available even when the user hasn't yet added a card
Fixed
- Minor bugs
3.1.1
Fixed
- Fixed a bug where some cards starting with 2 were not recognized as Mastercard
3.1.0
💵 🗞️ 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
👀 🙉 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