Learn about our Payments product and how you can use it to accept payments from your users.

The TrueLayer Platform is integrated to UK and EU banks which offer Payment Initiation APIs, and provides a single public API which enables clients to request payment via all integrated banks. As our coverage for international banks grow, Payments API v2 offers full coverage to all of our integrated banks.


This feature is in private beta and is currently available to a limited number of clients. To join our private beta, contact Client Care.

To get access to the live Payments API, you must have:

  • Created a TrueLayer account in the Console.
  • Been approved for access to the Payments API v2.

To get support for the Payments API:

Payments glossary

This glossary contains general terms used when we talk about payments and should help you understand the world of payments.

ProviderA TrueLayer-supported bank, through which payments can be initiated.
Provider selectionA screen used by your users to select their bank. You can use the providers endpoint, available for each payment type, to build this.
Authorisation FlowA method by which a bank allows their users to authorise a payment. Currently, we support redirect and embedded authorisation flows, but additional authorisation flows may be supported in future.
redirect Authorisation FlowAn authorisation flow which requires you to redirect your user to their bank's website or app in order to authorise a payment.
embedded Authorisation FlowAn authorisation flow which requires you to present input fields to your user and submit their values to our API in order to authorise a payment.
Return URIThe return_uri that you send to us, when initiating a payment with the redirect authorisation flow. This will be used to redirect the user back to your application or website after they have authorised a payment with their bank.
BeneficiaryThis refers to the bank account receiving the funds. This is most commonly you.
RemitterThis refers to the bank account making the payment. This is most commonly your user.
PSUThis refers to your user.

Integration Checklist

  1. Use our /providers endpoint to build a provider selection screen for your user to choose their bank. All assets are supplied via our /providers endpoint.
  2. Request an access_token from our authentication endpoint.
  3. Create a new payment initiation request, specifying the provider the user has selected.
  4. Handle the response to allow the user to authorise the payment.
    • For the redirect authorisation flow:
      1. Redirect the user to the URI specified in the API response.
      2. Handle the user returning back from the bank on the return_uri you previously set in the console.
    • For the embedded authorisation flow:
      1. Display the inputs specified in the API response to the user.
      2. Submit the values they enter to our submission API.
      3. Repeat if the submission response specifies more inputs.
  5. Poll our GET /v2/single-immediate-payments/{id} endpoint until you see a final status, or provide a webhook URI for us to call you on.


For full guidance on including disclaimers to accept payments, refer to our Help Centre article or contact Client Care.

Test your integration in sandbox

To use the sandbox, use truelayer-sandbox.com instead of truelayer.com when making your requests. Make sure to use the right credentials for the sandbox.

In the sandbox, you will have access to providers that have a sandbox environment. With these providers, you can send a fake payment that will behave like a real one.

Name the payment method

When creating your checkout page, we recommend you label the payment method as Pay by bank transfer instead of using TrueLayer or Open Banking to increase user trust and confidence while paying.

Did this page help you?