Introduction

Welcome to the OneLinQ API portal. Your starting point for making great apps! It allows you to consume Open Banking or PSD2 functionality from many banks in Europe via one unified API interface. Our API portal offers an easy and secure way to try out our platform and gives a preview of upcoming functionality. It allows developers to get familiar with our APIs, therefore we have put a lot of effort in our documentation and made all the endpoints available in a sandbox environment for easy testing.

In this portal we have published several Open Banking and PSD2 API standards that are available today. Select the standard you prefer, choose the destination bank and start testing.

Supported Countries

Country

Connectivity Status

Austria

Sandbox and Production

Belgium

Sandbox and Production

Bulgaria

Sandbox and Production

 Croatia

Sandbox and Production

Cyprus

Sandbox

Czech Republic

Sandbox and Production

Denmark

Sandbox

Estonia

Sandbox and Production

Finland

Sandbox

France

Sandbox and Production

Germany

Sandbox and Production

Greece

Sandbox and Production

Hungary

Sandbox

Ireland

Sandbox and Production

Italy

Sandbox and Production

Latvia

Sandbox and Production

Liechtenstein

Sandbox

Lithuania

Sandbox and Production

Luxembourg

Sandbox and Production

Malta

Sandbox

Netherlands

Sandbox and Production

Norway

Sandbox and Production

Poland

Sandbox and Production

Portugal

Sandbox and Production

Romania

Sandbox and Production

Slovakia

Sandbox and Production

Slovenia

Sandbox and Production

Spain

Sandbox and Production

Sweden

Sandbox and Production

United Kingdom

Sandbox and Production

We are constantly adding new banks as they are available. Please provide your interest in specific banks and countries and developer URLs provided by these banks here.

Remark: The OneLinQ API portal is in Beta mode. We are currently allowing access to only to the public sandbox and/or development environments provided by the banks.

Supported Destination API standard

Bank Format

Version

ABN Amro1.0
Czech1.1
Czech3.1
OBWG3.1.X
Polish2.1
Slovakia2.0
Starling2.0
STET1.4.X
The Berlin Group NextGenPSD21.1, 1.2, 1.3.x

What are Open Banking API’s?

Mainly driven by the Payment Service Directive 2 (PSD2) many banks have published open API’s that enable third party developers to build applications and services around the financial institution. The majority of these API’s support Account Information Services (AIS) and Payment Initiation Services (PIS). This means that you can get the account balance or a list of transactions of a bank account, in the meantime it also allows you to create a payment that will be executed by the bank after authorization. In all cases user’s consent is required and the requests sent to the bank must be authorized by the user using the credentials issued by the bank.

For Account Information Services it is possible to get an authorization (i.e. token) that lasts up-to 90 days. This allows you to get balance and transaction information for the bank accounts that where part of this authorization, until the token expires.

OneLinQ API

In this API portal we have also published the OneLinQ API. We recommend this API as it will give you the best experience. The OneLinQ API implementation is a RESTful service and the requests and responses produced by the OneLinQ API are in JavaScript Object Notation, JSON format. The OneLinQ API come in two versions: basic and full. In the basic variant we have reduced the number of mandatory fields by enabling intelligent enrichments on our platform. You only need to provide the most relevant elements for making a payment or getting a list of transactions. We have tried to make it as easy as possible. For newcomers into Open Banking or PSD2 this will give the best experience.

The full variant of the OneLinQ API gives you maximum control. All the elements, whether mandatory or not, are available. As the basic variant is fully compatible with the full version you can always choose to switch to the full version later.

Sign-up

In order to start consuming our API’s you need to sign-up. This is very easy and only a few steps are required. Click on the sign up button that is available on top of every page. This will open the sign-up form where you are asked to provide some basic details like company name, e-mail address and username.

Register Application

To invoke our APIs, you have to register an application in the portal. This application enables you to keep track of application-specific credentials that are issued in the Register Application step. Furthermore, it shows all API’s that are used by your application. The registration can be done separately or will automatically start when you subscribe to an API without having an application created yet. An overview of all your registered applications can be obtained anytime from the user account menu, which is available to users that have signed-up.

Select API and subscribe

When you have created an account, you are able to view the endpoints of the APIs that are published on the portal. Select the API you want to test or implement and subscribe to one of the available plans.You can choose one of the plan from the product you have subscribed.There are two types of plans available namely Silver and Gold with each having different rate limts.

Go to the Product section on this page for more details of all the different product we offer.The detail about the different plans offered can be found by click on the required product.

Authentication

To use any of the API’s that are published in this portal, you first need to authenticate your application and retrieve an access token. The type of access token dependents on the bank you connect to, however in most cases it will be handled via the OAuth2 authorization protocol.

Most of the OneLinQ product APIs requires client id, client secret, and OAuth2 access token to be sent in the API request header X-IBM-Client-Id, X-IBM-Client-Secret and Authorisation respectively. In some cases client id needs to be sent as query parameter client_id.

Only TPPs / Fintechs with valid client id & client secret will be able to consume the APIs. Client id & secret can be generated by creating an application on the API Portal.

OneLinQ currently has implemented the OAuth2 grant types:

  • Client credentials grant
  • Authorization code grant

Client Credentials

For accessing OneLinQ product APIs that don't need the authorization of a TPP/Fintech customer, OAuth2 client credentials grant flow needs to be used. This flow is sometimes called "two legged OAuth2" or "server-to-server".

Endpoints which needs to be used to generate the client credentials access token -

/token – Please refer the API documentation for more details on the request / response structure.

Example request / response:

# Client credential access token

POST https://sandbox-api.onelinq.io/advanced/v1.0/token

Request:

POST /advanced/v1.0/token
content-type: application/x-www-form-urlencoded
x-ibm-client-id:
x-ibm-client-secret:
accept: */*
accept-encoding: gzip, deflate
grant_type=client_credentials&bank_name=MDLOGBXX&scope=accounts

Response:

HTTP/1.1 200
status: 200
connection: Keep-Alive
content-type: application/json
x-global-transaction-id: 86309829
access-control-expose-headers: APIm-Debug-Trans-Id, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-Global-Transaction-ID
access-control-allow-origin: *
access-control-allow-methods: POST
content-encoding: gzip
{
"access_token":"e3572a7a-2588-43fd-ac64-f07b6c55459b",
"token_type":"Bearer"
}

Authorization code

Some of the OneLinQ product APIs requires authorization from the customer. In this case you will use the OAuth2 Authorization code grant flow, which will provide your application with specific access for getting the customer data approved by the customer. This flow is sometimes called "three legged OAuth2".

Endpoints which needs to be used to generate the authorization code access token -

/authorize - Please refer the API documentation for more details on the request / response structure.

Example request / response:

# Authorize

Request:

GET /advanced/v1.0/authorize
accept: */*
accept-encoding: gzip, deflate

Response:

HTTP/1.1 302
status: 302
connection: Keep-Alive
content-type: application/json
x-global-transaction-id: 103022193
cache-control: private
access-control-expose-headers: APIm-Debug-Trans-Id, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-Global-Transaction-ID
access-control-allow-origin: *
access-control-allow-methods: GET
content-encoding: gzip
{
}

/token – Please refer the API documentation for more details on the request / response structure.

Example request / response:

# Authorize code access token

POST https://sandbox-api.onelinq.io/advanced/v1.0/token

Request:

POST /advanced/v1.0/token
content-type: application/x-www-form-urlencoded
x-ibm-client-id:
x-ibm-client-secret:
accept: */*
accept-encoding: gzip, deflate
grant_type=authorization_code&bank_name=MDLOGBXX&code=0e3f341a-7944-4c0d-8065-440fc830a256&redirect_uri=http://localhost:8080/callback

Response:

HTTP/1.1 200
status: 200
connection: Keep-Alive
content-type: application/json
x-global-transaction-id: 86352661
access-control-expose-headers: APIm-Debug-Trans-Id, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-Global-Transaction-ID
access-control-allow-origin: *
access-control-allow-methods: POST
content-encoding: gzip
{
"access_token":"29960742-b3e4-4c7c-9cab-477c45bff80a",
"token_type":"Bearer"
}

Support

Are you facing issues or challenges, please visit our support page where we have published some frequently asked questions that could be helpful. This FAQ will be regularly updated, based on your feedback.

If you have signed-up you can also create a support ticket on the same page. We aim to get back as soon as possible to your query or request.

Feedback

We really value your feedback. If you have suggestions or questions, please get in touch with us via this contact form.

Supported source API standard

API Standard

Version

Advanced1.0
OBWG3.1.3
The Berlin Group NextGenPSD21.3.6
STET1.3-Beta

Verification Of Payee Examples

1. Individual – First Name, Middle Name, Last Name (FN-MN-LN)

Reference Name – John Smith Doe

Sr No.

Name in message

Expected Result

1

John Smith Doe

Match

2

Doe John Smith

Match

3

John Doe

Match

4

Doe John

Match

5

J Doe

Match

6

Doe J

Match

7

John Smith

No Match

8

Smith John

No Match

9

J Smith

No Match

10

Smith J

No Match

11

John S

No Match

12

S John

No Match


2. Individual – First Name, Last Name (FN-LN)

Reference Name – John Doe

Sr No.

Name in message

Expected Result

1

John Smith Doe

Match

2

Doe John Smith

Match

3

John Doe

Match

4

Doe John

Match

5

J Doe

Match

6

Doe J

Match


3. Individual – Hyphenated Last Name words

Reference Name – Marrie Keller-Huber

Sr No.

Name in message

Expected Result

1

Marrie Keller-Huber

Match

2

Marrie Keller

Match

3

Marrie Huber

Match

4

Marrie Huber-Keller

No Match

5

M Keller

Match

6

M Huber

Match

7

M Keller-Huber

Match

8

M Huber-Keller

No Match

9

Keller Marie

Match

10

Huber Marie

Match

11

Keller-Huber Marie

Match

12

Keller M or Huber M

No Match


4. Individual – Reference Name does not contain Middle Name

Reference Name – John Doe

Sr No.

Name in message

Expected Result

1

John Smith Doe

No Match

2

Doe John Smith

No Match

3

John Roger Doe

No Match

4

Doe Roger John

No Match

5

John Doe

Match

6

Doe John

Match

7

J Doe

Match

8

Doe J

Match

9

John Smith

No Match

10

Smith John

No Match

11

John S

No Match

12

S John

No Match


5. Individual – Initial First Name and Last Name (IFN-LN)

Reference Name – S Williams

Sr No.

Name in message

Expected Result

1

Sydney Williams

No Match

2

S J Williams

No Match

3

S Williams

Match

4

S W

No Match

5

Williams S

Match

6

W Sydney

No Match


6. Individual – Initial First Name, Initial Middle Name, Last Name (IFN-IMN-LN)

Reference Name – J S Doe

Sr No.

Name in message

Expected Result

1

J S Doe

Match

2

John S Doe

No Match

3

John Smith Doe

No Match

4

J S D

No Match

5

John S D

No Match

6

Doe J S

Match


7. Individual – Initial First Name, Middle Name, Last Name (IFN-MN-LN)

Reference Name – J Smith Doe

Sr No.

Name in message

Expected Result

1

J S Doe

Match

2

John S Doe

No Match

3

John Smith Doe

No Match

4

J S D

No Match

5

John S D

No Match

6

Doe J S

Match


8. Individual – First Name, Initial Middle Name, Last Name (FN-IMN-LN)

Reference Name – John S Doe

Sr No.

Name in message

Expected Result

1

J S Doe

Match

2

John S Doe

Match

3

John Smith Doe

No Match

4

J Smith Doe

No Match

5

John S D

No Match

6

Doe J S

Match


9. Individual – Mononyms (First Name only)

Reference Name – John

Sr No.

Name in message

Expected Result

1

John

Match

2

John S

Match

3

John Smith Doe

No Match

4

John Doe

No Match

5

John D

No Match

6

J

No Match


10. Individual – Ignore Titles

Reference Name – John Doe

Sr No.

Name in message

Expected Result

1

Mr. John Doe

Match

2

Dr. John Doe

Match

3

Mr. John Smith Doe

No Match

4

John Doe

Match

5

Mr. John S

No Match

6

Mr. J D

No Match


11. Individual – Nicknames

Reference Name – William Clinton (Bill is a nickname for William)

Sr No.

Name in message

Expected Result

1

William Clinton

Match

2

Bill Clinton

Match

3

Clinton William

Match

4

Clinton Bill

Match

5

W Clinton

Match

6

B Clinton

No Match


12. Company – Company Name match

Reference Name – Siemens GMBH

Sr No.

Name in message

Expected Result

1

Siemens GMBH

Match

2

Siemens

Match

3

Siemens Incorporated

Match

4

Siemens Limited

Match

5

Siemens Inc

Match

6

Siemens Ltd

Match


13. Company – Words in brackets to be considered as synonyms

Reference Name – Siemens (Schwiez) GMBH

Sr No.

Name in message

Expected Result

1

Siemens GMBH

Match

2

Schwiez GMBH

Match

3

Siemens

Match

4

Schwiez

Match

5

Siemens Inc

Match

6

Siemens (IBM) GMBH

Match


14. Company – Ignore Company indicators

Reference Name – Siemens GMBH

Sr No.

Name in message

Expected Result

1

Siemens GMBH

Match

2

Siemens

Match

3

Siemens Inc

Match

4

Siemens Incorporated

Match

5

Siemens Limited

Match

6

Siemens (IBM) GMBH

Match


15. Company – Synonyms

Reference Name – Core Design Solutions (India) Pvt Ltd and Core Design Solutions, Core Design are added as synonyms.

Sr No.

Name in message

Expected Result

1

Core Design Solutions (India) Pvt Ltd

Match

2

Core Design Solutions

Match

3

Core Design

Match


16. Spelling Correction

Reference Name – John Smith Doe

Sr No.

Name in message

Expected Result

1

John Smith Doe

Match

2

John Smithy Doe

Match

3

Johny Smith Doe

Match