Skip to content

Releases: datatrans/android-sdk

3.7.0

14 Aug 08:54
Compare
Choose a tag to compare

🌷🙌🏻 iDEAL, 3D Secure & More

We've expanded our SDK to iDEAL as a supported payment method and added Google Pay's token registration flow. Additionally, we've provided more flexibility in passing 3D Secure cardholder information.

Added

  • iDEAL as a supported payment method in the SDK
  • Option to pass 3D Secure cardholder information directly when invoking the SDK, supporting scenarios where this information isn't available during the transaction init request
  • Tokenization of Google Pay wallets (via newly added SavedGooglePay) to enable merchant-initiated transactions

Changed

  • Removed validations on the payment method Swiss Pass

Fixed

  • Fixed a bug happening when navigating back in the card flow, resolving issue #12
  • Repackaged classes during SDK obfuscation, resolving issue #22
  • Updated all dependencies, resolving issue #25

3.6.1

19 Apr 16:07
Compare
Choose a tag to compare

Fixed

  • Fixed occasional loading errors during 3D Secure authentication with certain card issuers

3.6.0

21 Mar 18:49
Compare
Choose a tag to compare

⛏️🥞 Better support for PCI Proxy flows with American Express & Improvements

We just added better support for network tokenizations with American Express, relevant for PCI Proxy merchants. We also worked on various bugfixes.

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

  • Enhanced the accessibility role and trait of various buttons

Fixed

  • Bug related to wrong card expiry months with Android's Locale set to Arabic
  • Minor bugs

3.5.1

22 Feb 17:25
Compare
Choose a tag to compare

✨📱 MobilePay Support & Improved Result Notifications!

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
  • Transaction states are now preserved when the Activity is killed in the background
  • Added logString to TransactionException for logging errors in a compact form

Changed

  • Improved SDK notifications: Use the new static Transaction.subscribe method for resilient SDK result notifications, even when the Activity is terminated and recreated. Replace the old listener assignment with:
public override fun onCreate(savedInstanceState: Bundle?) {
  super.onCreate(savedInstanceState)
  Transaction.subscribe(this, myTransactionListener)
}
  • Added mobileToken to TransactionSuccess and TransactionException for better transaction tracking
  • Updated TransactionListener.onTransactionCancel to include mobileToken:
override fun onTransactionCancel(mobileToken: String) {
    ...
}
  • Shifted from FrameLayout to FragmentContainerView for better fragment management in XML layouts
  • For Vipps integrations, update the scheme pattern in your AndroidManifest:
<activity android:name="ch.datatrans.payment.VippsRelayActivity" android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="<appCallbackScheme>.vipps" />
    </intent-filter>
</activity>
  • Added AppNotInstalledException that replaces TWINTNotInstalledException (deprecated). This exception is thrown when a payment app is not installed on the device.

Fixed

  • Fixed a bug where double tapping on the payment method selection list would generate two transactions
  • Removed DCC flows from card registrations
  • Minor bugfixes

3.4.0

01 Nov 18:40
Compare
Choose a tag to compare

🎃🔧 Bugfixes and minor API changes

This release contains a few bugfixes and minor API changes. You can now change your merchant name on the Google Pay sheet, and Byjuno has been renamed CembraPay.

Added

  • Google Pay's totalPriceLabel can now be customized in showCustomLabel, overriding the default Pay {merchantName} on the payment sheet.
  • 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 the length of the placeholder of American Express cards' CVV
  • Fixed a bug related to Google Pay flows when creating an alias
  • Fixed a bug related to Hipercard PCI proxy flows

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-andr

Use savedCardDCCShowMode in TransactionOptions to manually 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

Fixed

  • Paste functionality has been enabled in the input fields
  • Amounts are now correctly formatted for Swiss languages

3.2.0

14 Jul 21:32
Compare
Choose a tag to compare

✨🧽 Added Support for Maestro & China Union Pay

We just added the payment methods Maestro and China Union Pay and various bugfixes.

Added

  • Added the payment method Maestro MAU
  • Added the payment method China Union Pay CUP

Changed

  • Improved accessibility on the credit card and date & CVV screen

Fixed

  • Fixed a bug related to Twint crashing in some flows
  • Fixed a bug related to Vipps’s activity being wrongly obfuscated by proguard
  • Minor bugs

3.1.1

19 Jun 12:07
Compare
Choose a tag to compare

Fixed

  • Saved Dankort cards passed in init are now rendered correctly when starting the SDK
  • The card scanner icon is now hidden completely when disabling the scanner
  • Fixed a bug where some cards starting with 2 were not recognized as Mastercard
  • Fixed a bug related to card.io

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 Android applications. We also fixed a few bugs.

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.
  • Fixed a bug introduced in the last release related to the authentication-only flow for credit cards and Google Pay
  • Minor bugs

3.0.2

04 May 11:11
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 Google's card 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

There is a breaking change if you offer Google Pay in your apps: We now require you to use GooglePayConfig’s builder. With this change, we also introduced many new configuration options for Google Pay.

GooglePayConfig.Builder(
   supportedNetworks = listOf(
      PaymentMethodType.VISA,
      PaymentMethodType.MASTER_CARD,
   ),
   merchantName = "Datatrans"
)
   .build()

The new configuration options are listed in our Android SDK reference. You'll newly have to pass your options as follows:

GooglePayConfig.Builder( ... )
   .showInSavedPaymentMethods()
   .showLargeButton()
   .disablePrepaidCards()
   .build()

If you wish to use the new card scanner, Google Pay must be supported by your app. If your app does not support Google Pay, the old scanner will be used instead.

New Features

A beautiful card scanner (from Google ❤️) is now used for our card scans. This newly introduced scanner is as close to Android 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 the card scanner from Google (Google Pay must be supported by your app!)
  • 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
  • Changed the position in our payment method selection sheet and the visual design of the Google Pay Button
  • Improvements of the various calls done by the Google Pay API - we now process Google Pay payments with 3DS when a consumer uses a card that is not tokenized by Google Pay.

Fixed

  • Fixed a bug related to the American Express CVV length in PCI Proxy flows.
  • Minor bugs