OP Accounts API (v3.0)

Download OpenAPI specification:Download

Support: api@op.fi


OP Accounts V3.0 API was available for onboarding in the sandbox and in production for selected partners only. At the moment, we don't approve new applications. For all licensed TPPs, we offer our PSD2 APIs.

OP Accounts V3.0 API provides easy access to private customers' account and transaction information from their Current Accounts. It features a simplified API, reduced headers and flattened response models for smoother consumption. In short, Accounts V3.0 reflects our accumulated knowledge of how to design great banking APIs.

Sandbox

Currently, OP Accounts V3.0 API is not available for onboarding in the sandbox.

Production access

OP Accounts V3.0 API is for selected partners only and the onboarding happens based on partner negotiation. We are currently not onboarding new partners.

Note that using Accounts V3.0 in production requires a valid AISP license from a financial authority, e.g. Financial Supervisory Authority (FIN-FSA).

Accounts

Get Accounts

Returns all accounts owned and consented to by the end user (account owner).

Account balance will only be returned if the end user has consented to the application accessing the account's information.

header Parameters
x-api-key
required
string
Example: dxB2AFwnwraQRrAsLZpJ5T4IrNGp7fhx

An application-specific key for accessing the API, acquired from the Developer Portal.

authorization
required
string
Example: Bearer 6c18c234b1b18b1d97c7043e2e41135c293d0da9

Authorization token granted during the authorization process.

accept
required
string
Example: application/hal+json

Defines the content-types, expressed as MIME-types, that the client is able to understand. Currently only application/json and application/hal+json are supported.

Responses

Request samples

curl -X GET https://N/A/accounts/v3/accounts \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' 

Response samples

Content type
application/json; charset=UTF-8
{
  • "accounts": [
    ],
  • "_links": {
    }
}

Get Single Account

Returns the information of a single account. The operation will only return the requested information if the user has provided consent to the application seeing this data.

Account balance will only be returned if the end user has consented to the application accessing the account's information.

path Parameters
accountId
required
string
Example: bhQ9c4g36DiRk_H9TvL1US7-G5WOfOcLZ_7d2D5f0WM.ZDf75jTNOXLX1UJO68INfg.ljJKhsD3AD4QmJaujtH9qA

A unique surrogate identifier for the account.

header Parameters
x-api-key
required
string
Example: dxB2AFwnwraQRrAsLZpJ5T4IrNGp7fhx

An application-specific key for accessing the API, acquired from the Developer Portal.

authorization
required
string
Example: Bearer 6c18c234b1b18b1d97c7043e2e41135c293d0da9

Authorization token granted during the authorization process.

accept
required
string
Example: application/hal+json

Defines the content-types, expressed as MIME-types, that the client is able to understand. Currently only application/json and application/hal+json are supported.

Responses

Request samples

curl -X GET https://N/A/accounts/v3/accounts/{accountId} \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' 

Response samples

Content type
application/json; charset=UTF-8
{
  • "accountId": "bhQ9c4g36DiRk_H9TvL1US7-G5WOfOcLZ_7d2D5f0WM.ZDf75jTNOXLX1UJO68INfg.ljJKhsD3AD4QmJaujtH9qA",
  • "name": "KÄYTTÖTILI",
  • "nickname": "Mark's grocery account",
  • "balance": "202.56",
  • "currency": "EUR",
  • "identifierScheme": "IBAN",
  • "identifier": "FI1659986920182946",
  • "servicerScheme": "BIC",
  • "servicerIdentifier": "OKOYFIHH",
  • "_links": {
    }
}

Get Account Transactions

Returns transactions of an account.

Returned transactions are limited to the time frame set by the client with the maximum of three months. If no such time frame is set, or the time-frame is open-ended (only one parameter supplied), the number of transactions is limited to 150 (or pageSize if set).

Transactions will only include one of the creditor and debtor properties, depending on the type of the transaction.

path Parameters
accountId
required
string
Example: bhQ9c4g36DiRk_H9TvL1US7-G5WOfOcLZ_7d2D5f0WM.ZDf75jTNOXLX1UJO68INfg.ljJKhsD3AD4QmJaujtH9qA

A unique surrogate identifier for the account.

query Parameters
fromBookingDateTime
string <date-time>
Example: fromBookingDateTime=2017-09-01T00:00:00Z

ISO 8601-compatible date-time string representing the earliest date-time from which transactions will be queried. Timezone must not be set. Set time to to 00:00:00 for Date-only queries.

toBookingDateTime
string <date-time>
Example: toBookingDateTime=2020-05-23T00:00:00Z

ISO 8601-compatible date-time string representing the latest date-time up to which transactions will be queried. Timezone must not be set. Set time to 00:00:00 for Date-only queries.

pageSize
integer <= 150
Default: 150

Number of transactions to be returned per each page.

forwardPagingToken
string
Example: forwardPagingToken=_ih3KV-S_SEZBWgmlXXJUA.iGWZUY3eo3eJ1REU7RPPgw.9ARfLf6eSda1rqhqD8ndyA

Paging token used to retrieve the next page of data. Tokens are available in the links located in the _links object.

header Parameters
x-api-key
required
string
Example: dxB2AFwnwraQRrAsLZpJ5T4IrNGp7fhx

An application-specific key for accessing the API, acquired from the Developer Portal.

authorization
required
string
Example: Bearer 6c18c234b1b18b1d97c7043e2e41135c293d0da9

Authorization token granted during the authorization process.

accept
required
string
Example: application/hal+json

Defines the content-types, expressed as MIME-types, that the client is able to understand. Currently only application/json and application/hal+json are supported.

Responses

Request samples

curl -X GET https://N/A/accounts/v3/accounts/{accountId}/transactions \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' 

Response samples

Content type
application/json; charset=UTF-8
{
  • "transactions": [
    ],
  • "_links": {
    }
}

cards

List authorized cards

header Parameters
x-api-key
required
string
Example: dxB2AFwnwraQRrAsLZpJ5T4IrNGp7fhx

An application-specific key for accessing the API, acquired from the Developer Portal.

authorization
required
string
Example: Bearer 6c18c234b1b18b1d97c7043e2e41135c293d0da9

Authorization token granted during the authorization process.

accept
required
string
Example: application/hal+json

Defines the content-types, expressed as MIME-types, that the client is able to understand. Currently only application/json and application/hal+json are supported.

Responses

Request samples

curl -X GET https://N/A/accounts/v3/cards \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' 

Response samples

Content type
application/json; charset=UTF-8
{
  • "cards": [
    ],
  • "_links": {
    }
}

Cards

Get Card Transactions

No description yet.

path Parameters
cardId
required
string
Example: DDA9c4g36DiRk_H9TvL1US7-G5WOfOcLZ_7d2D5f0WM.ZDf75jTNOXLX1UJO68INfG.ljJKhsD3AD4QmJaujtH9qE

A unique surrogate identifier for the card.

query Parameters
fromBookingDateTime
string <date-time>
Example: fromBookingDateTime=2017-09-01T00:00:00Z

ISO 8601-compatible date-time string representing the earliest date-time from which transactions will be queried. Timezone must not be set. Set time to to 00:00:00 for Date-only queries.

toBookingDateTime
string <date-time>
Example: toBookingDateTime=2020-05-23T00:00:00Z

ISO 8601-compatible date-time string representing the latest date-time up to which transactions will be queried. Timezone must not be set. Set time to 00:00:00 for Date-only queries.

forwardPagingToken
string
Example: forwardPagingToken=_ih3KV-S_SEZBWgmlXXJUA.iGWZUY3eo3eJ1REU7RPPgw.9ARfLf6eSda1rqhqD8ndyA

Paging token used to retrieve the next page of data. Tokens are available in the links located in the _links object.

header Parameters
x-api-key
required
string
Example: dxB2AFwnwraQRrAsLZpJ5T4IrNGp7fhx

An application-specific key for accessing the API, acquired from the Developer Portal.

authorization
required
string
Example: Bearer 6c18c234b1b18b1d97c7043e2e41135c293d0da9

Authorization token granted during the authorization process.

accept
required
string
Example: application/hal+json

Defines the content-types, expressed as MIME-types, that the client is able to understand. Currently only application/json and application/hal+json are supported.

Responses

Request samples

curl -X GET https://N/A/accounts/v3/cards/{cardId}/transactions \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' 

Response samples

Content type
application/json; charset=UTF-8
{
  • "transactions": [
    ],
  • "_links": {
    }
}