React Native SDK

Learn how to integrate our mobile SDKs into your React Native app

Our React Native SDK combines all the features of our Android and iOS SDKs into one simple library that you can use in your React Native project. It communicates with the Payments API to make your integration project easier, and presents native payment initiation screens to your users, returning a simple result to your app.


  • Xcode 14.x and iOS 14.0 and above.
  • Android 7.0 (API level 24) and above.

Payment and mandate authorisation journey

When a customer makes a payment or creates a mandate through your React Native SDK integration:

  1. The user selects to pay through an instant bank payment, or to set up a recurring payment mandate.
  2. Your backend creates a payment or mandate with TrueLayer and receives an id and resource_token.
    If you include signup_plus in related_products at payment creation, the authorisation flow changes to reflect this.
  3. Your app uses the id and resource_token to initialise the SDK.
  4. Your user selects and confirms their bank on the provider selection screen through the mobile SDK. If the bank needs additional information from the user, such as IBAN or branch, then the SDK screens ask the user to enter these.
  5. For banks that use a redirect flow, the mobile SDK redirects your user to their bank's website or app. Your user authorises the payment in their bank's website or app.
  6. Optionally, for banks that use an embedded flow, the mobile SDK collects the user's credentials and handles the strong customer authentication in order to authorise the payment.
  7. Once the authorisation is complete, the user is redirected to your return URI. You can then confirm the result to your user.

Next steps

Learn how to authorise a payment or mandate with the React Native SDK, or how to customise your integration.