Skip to content

Releases: TrueLayer/truelayer-android-sdk-demo

4.1.6

Choose a tag to compare

@tl-lukasz-franieczek tl-lukasz-franieczek released this 10 Apr 08:10
3b07133

Please check readme for more details about the changes

This patch version includes bug fixes and improvements:

  • Removed autoselection of bank based purely on cross-merchant recommendation.

4.1.5

Choose a tag to compare

@tl-lukasz-franieczek tl-lukasz-franieczek released this 03 Mar 15:32
e2ac4ee

Please check readme for more details about the changes

This patch version includes bug fixes and improvements. Specifically ones that affect:

  • Improvements of payment journey for users with multiple accounts stored.

4.1.4

Choose a tag to compare

@tl-lukasz-franieczek tl-lukasz-franieczek released this 25 Feb 11:36
b688176

Please check readme for more details about the changes

This patch version includes bug fixes and improvements. Specifically ones that affect:

  • Handling edge cases of certain SDK integrations.

4.1.3

Choose a tag to compare

@tl-lukasz-franieczek tl-lukasz-franieczek released this 20 Feb 12:26
79317ec

Please check readme for more details about the changes

This patch version includes bug fixes and improvements. Specificly ones that affect:

  • Handling edge cases of certain SDK integrations.
  • Improving user journey in some EUR payments.

All the libraries and versions and the integration method remain as with the 4.1.0, except the following:

  • androidx.compose.compose-bom : 2025.12.00
  • lifecycle : 2.10.0
  • gradle : gradle-8.13.1

4.1.1

Choose a tag to compare

@tl-lukasz-franieczek tl-lukasz-franieczek released this 13 Nov 09:20
e3edb98

Please check readme for more details about the changes

4.1.1

This patch version contains bugfixes and improvements, all the libraries and version
and the integration method remain as with the 4.1.0.

General improvements and bug fixes

  • Improved the bottom sheet behaviour.
  • Handling edge cases of certain SDK integrations.
  • Improving user journey in some GBP payments.

4.1.0

Version 4.1.0 includes all the features of 4.x.x, including
a refreshed user experience with a new, seamless UI and support for payment retries.

The following new features are available automatically for all GBP single payments and EUR payments in Ireland:

  • A single-screen, modern, declarative UI system under the hood, allowing for smooth transitions and improved user experience.

  • Retries: allow your users to change bank on the fly, or retry failed payments without restarting the SDK.

  • Cancellation screen streamlining: more insight on why users are abandoning their payments.

  • Preselected providers for returning users: automatically select the last used provider, allowing for faster one-click payments and more engaged, better converting users.

  • This update contains minor bug fixes, improvements and underlying library updates.

4.0.1

Choose a tag to compare

@tl-lukasz-franieczek tl-lukasz-franieczek released this 09 Sep 11:24
0eace0c

A new, gorgeous, conversion-driven UI in parity with the 2025 TrueLayer Web Hosted Payments Page, with the following new features available automatically for all GBP and EUR single payments:

  • A single-screen, modern, declarative UI system under the hood, allowing for smooth transitions and overall snappier look and feel.
  • Retries: allow your users to change bank on the fly, or retry failed payments without restarting the SDK.
  • Cancellation screen streamlining: more insight on why users are abandoning their payments.
  • Preselected providers for returning users: automatically select the last used provider, allowing for faster one-click payments and more engaged, better converting users.

The following requests do not support the New UI and will fallback onto the legacy UI, as seen in versions 3.9.1 and below:

  • Mandates / recurring payments
  • EUR payments for countries other than Ireland

Contains minor bug fixes, improvements and underlying library updates.
The update from version 3.8.0, 3.9.x to version 4.0.1 should be seamless.

This version is set to use:

  • kotlin : 2.1.20
  • compose-bom : 2025.06.01
  • desugaring : 2.1.5
  • androidx.datastore.datastore-preferences : 1.1.7

Other libraries have been updated:

  • androidx.activity.activity-compose : 1.10.1
  • androidx.appcompat.appcompat : 1.7.1
  • androidx.compose.runtime.runtime-tracing : 1.8.3
  • androidx.core.core-ktx : 1.16.0
  • androidx.fragment.fragment-ktx : 1.8.8
  • androidx.lifecycle.lifecycle-livedata-ktx : 2.9.1
  • androidx.lifecycle.lifecycle-runtime-compose-android : 2.9.1
  • androidx.lifecycle.lifecycle-runtime-ktx : 2.9.1
  • androidx.lifecycle.lifecycle-viewmodel-compose : 2.9.1
  • androidx.lifecycle.lifecycle-viewmodel-ktx : 2.9.1
  • androidx.navigation.navigation-compose : 2.9.1
  • androidx.room.room-compiler : 2.7.1
  • androidx.room.room-ktx : 2.7.1
  • androidx.room.room-runtime : 2.7.1
  • androidx.work.work-multiprocess : 2.10.2
  • androidx.work.work-runtime-ktx : 2.10.2
  • com.android.tools.desugar_jdk_libs : 2.1.5
  • io.coil-kt.coil-compose : 2.7.0
  • io.coil-kt.coil-svg : 2.7.0
  • io.coil-kt.coil : 2.7.0
  • org.jetbrains.kotlinx.kotlinx-coroutines-android : 1.10.2
  • org.jetbrains.kotlinx.kotlinx-coroutines-core : 1.10.2
  • org.jetbrains.kotlinx.kotlinx-coroutines-test : 1.10.2

3.9.0

Choose a tag to compare

@tl-lukasz-franieczek tl-lukasz-franieczek released this 31 Jan 15:41
9f877b0

Introduction of AIS+PIS flow for EUR payments. This allows users to select their account instead of typing in the IBAN.

This version is set to use:

  • kotlin : 1.9.25
  • compose-bom : 2024.11.00
  • desugaring : 2.1.3
  • com.android.tools.build:gradle : 8.7.0
  • gradle-8.9
  • targetSDK: 35
  • jvmTarget: 19
  • javaVersion: JavaVersion.VERSION_19

3.8.0

Choose a tag to compare

@tl-lukasz-franieczek tl-lukasz-franieczek released this 06 Nov 14:39
4a01d6d
  • The SDK is no longer sending success message with reason redirect.

  • This allows the user to retry the redirect to the bank app step.
    This is useful when the bank app does not produce the correct screen. The user
    now will have the possibility to get back to the merchant app and click the go to bank button again.

  • This change can reduce the number of abandoned/timed-out payments.

  • The SDK will refresh the payment state at any point when the user switches back to the merchant app.

3.1.0

Choose a tag to compare

@tl-keenen-charles tl-keenen-charles released this 04 Apr 13:59
c202df2
  • Improved the UI for users to learn more about how VRP mandates work.
  • There is a new ResultShown callback you can use to see the payment or mandate result that the user received.
  • Fixed an issue where you would be forced to update all fields if one was incorrect. For example, users would have to update both username and password if validation found that one was incorrect.

3.0.1

Choose a tag to compare

@tl-keenen-charles tl-keenen-charles released this 23 Feb 12:17
cf6167c

Release Notes:

  • The material theme adapter library has been removed. For clients using customisation via XML theming you can follow the migration guide in the docs.
  • The paymentUseCase has parameter has been removed. To use Signup+ you'll now need to specify it on payment creation with the related products field.
  • VRP mandates are now supported on the result screen
  • Improved accessibility
  • Bank branch search now supports a mix of names and search aliases
  • You can search for countries by 2- and 3-character international country codes
  • A new default theme
  • Italian translations are now available
  • Fixed bug to allow a missing account_holder_name field for mandates

Migration Guide

1. UI customisations

To use version 3.x.x of the SDK, you must integrate with Compose to customise your app UI. You can no longer use XML files to do this.

You can integrate without migrating your app to Compose. Here's how:

Enable Compose in your project by adding the code snippet below to the android block in your app-level build.gradle file.

buildFeatures {
    compose = true
}

composeOptions {
    kotlinCompilerExtensionVersion = "1.5.4"
}

Add the following dependencies to your build.gradle file:

implementation("androidx.activity:activity-compose:$latest-version")
implementation("androidx.compose.material3:material3")

Follow the steps for the Compose integration.
For a full list of customisation options, read the Compose customisation guide.

2. Result screen

The direct access to Result Screen has been removed. The result screen is now launched when you re-invoke SDK as described in handling redirects.

The result screen is now enabled by default. If you'd like to opt out and continue with the behaviour of 2.X.X versions of the SDK you can use the setting shouldPresentResultScreen = false on the PaymentContext or MandateContext

PaymentPreferences(
    // if you want SDK to not present the result screen
    shouldPresentResultScreen = false
)

3. Mandatory re-invoking SDK on redirect

IMPORTANT

In order to support some new payment flows, you have to re-invoke the SDK as a part of handling redirect from bank. Without this step payments from some banks will not be able to complete. Use the same PaymentContext/MandateContext as the one you've used to start the payment.

More information on how to do it, as well as some diagrams, in chapter Handle redirects from bank.

4. Kotlin and Android SDK version

The SDK now uses Kotlin version 1.9.22 and a minimum SDK version 24

5. Payment Use Case deprecated

The paymentUseCase property has been deprecated and now SignUp+ payments must be configured when creating the payment with the payments API with the related_products.signup_plus property.