One API for all your open banking providers

An open banking API links a customer's bank account to read balances and transactions (AIS) and to start payments from it (PIS). Each provider has its own API. Unirail puts them behind one API and SDK. Adding or switching a provider doesn't change your code. Plaid, Yapily and Enable Banking are integrated today. Tell us which provider you need next. Your provider credentials stay in your own vault.

Open banking providers in the catalogue

Each lane is an open banking provider in the catalogue. Pick one to see what it covers for bank data and payments and where Unirail routes to it.

Unirail API One SDK, one set of endpoints /v1/link_sessions /v1/payment_intents /v1/route_decisions
Your app Credentials stay in your vault

Enable Banking

Integrated

Once you connect Enable Banking in the dashboard, Unirail can route to it where a row says routed.

Bank data (AIS)

  • Account details 30 countries, routed in 14 countries
  • Balances 30 countries
  • Transactions 30 countries

Payments (PIS)

  • Single payments 30 countries, routed in 14 countries
  • Scheduled payments 30 countries
  • Bulk payments 30 countries
Enable Banking coverage by country

What the API covers

Coverage from the catalogue, with the providers Unirail routes to today in amber. Each capability opens its provider-by-country table and sources.

Bank data (AIS)

Read a linked account with the customer's consent.

  • Account details Enable Banking, Plaid, Yapily, GoCardless, Moneytree, Neonomics, Tink, TrueLayer 34 countries · routed in 15 countries
  • Balances Enable Banking, GoCardless, Neonomics, Plaid, TrueLayer, Yapily 33 countries · listed only
  • Transactions Enable Banking, GoCardless, Neonomics, Plaid, Tink, TrueLayer, Yapily 33 countries · listed only
  • Account insights Plaid, Tink, Yapily 21 countries · listed only
  • Account ownership Enable Banking, Plaid, Yapily, Moneytree, Neonomics, Tink 22 countries · routed in 15 countries

Payments (PIS)

Start a payment from the customer's account, approved at their bank.

  • Single payments Enable Banking, Plaid, Yapily, GoCardless, Neonomics, OpenPayd, PayNow QR, Tink, TrueLayer 32 countries · routed in 15 countries
  • Scheduled payments Enable Banking, Neonomics, Plaid, Tink 31 countries · listed only
  • Sweeping VRP Plaid, Tink, TrueLayer, Yapily 1 country · routed in 1 country
  • Commercial VRP GoCardless, Plaid, TrueLayer, Yapily 1 country · listed only
  • Bulk payments Enable Banking, Neonomics, Tink, Yapily 31 countries · listed only

The endpoints

These are the v1 endpoints behind bank links and payments, from the live OpenAPI document. Every write takes an Idempotency-Key. A retry with the same key can't create a second payment.

  • POST /v1/accounts Register account details a payee gave you (not linked through a provider)
  • GET /v1/events List events in order; page with after to replay anything a webhook missed
  • GET /v1/institutions List the banks reachable through this environment's connections
  • POST /v1/link_sessions Start linking a customer's bank account
  • POST /v1/link_sessions/{id}/advance Continue after the user returns from the provider
  • POST /v1/outcomes Report how a decided operation went (updates reliability and contract usage)
  • POST /v1/payment_intents Create a payment intent from an accepted quote (your provider moves the money)
  • POST /v1/payment_intents/{id}/advance Continue after the user returns from approving
  • GET /v1/rails List the integrated and listed rails in the provider catalogue
  • POST /v1/route_decisions Decide the rail and cost for an operation from masked metadata (no names or account numbers)
  • POST /v1/route_quotes Find and price the routes between two accounts
  • GET /v1/routing_snapshot Get everything the decision engine reads, for running @unirail/router yourself (no secrets)

Open banking API questions

What is an open banking API?

An open banking API lets an app, with the customer's consent, read their bank account (account information, AIS) or start a payment from it (payment initiation, PIS). Regulated providers such as Plaid, Yapily and Enable Banking connect to the banks; your app talks to the provider's API.

Which providers does Unirail's open banking API cover?

Unirail routes to Plaid and Yapily in the UK and to Enable Banking in 14 European countries today. TrueLayer, Tink, Neonomics, GoCardless and others are listed for comparison, with coverage from their own documentation. Unirail doesn't route to them yet.

Do my provider credentials pass through Unirail?

In Decide mode they never leave your platform. Your backend calls the provider through @unirail/executor with credentials from your own vault. With Execute mode, Unirail reads them from your Infisical vault over OIDC federation and caches them in memory for up to five minutes. They're never written to disk or a database. Revoking the Infisical grant stops any new reads.

Is it the same API for the UK and Europe?

Yes, the same endpoints cover both. Accounts are payto:// addresses, such as payto://scan for a UK sort code and account number or payto://iban for an IBAN. Which provider handles a given country comes from your connections and the routing decision.

What's the difference between AIS and PIS?

AIS (account information services) reads account details, balances and transactions from a linked account. PIS (payment initiation services) starts a payment from the account for the customer to approve at their bank.

How do I try it?

Start by requesting early access. Once your account is set up, connect a provider's sandbox with your own credentials and start a link session or a route decision. The API reference lists every v1 endpoint.

Link accounts and take payments through one API

Once you have an account, you can start in test mode with Plaid, Yapily and Enable Banking.