Compliance APIsPersonalAccountsConfirmation of Funds API v1

Confirmation of Funds API specific documentation

Overview

The Confirmation of Funds API specification describes the flow and functionality that allows PSD2-regulated TPPs (Client) with the role Card Based Payment Instrument Issuer (CBPII) to get a Y/N response whether Resource Owner (Customer/PSU) has enough funds on their account for a particular payment amount. The Client prior to request confirmation of funds must allow Resource Owner to provide explicit consent to Nordea that Resource Owner has also provided consent to the TPP (Client) for identified account and period. Unlike AIS the consent given to Nordea and Client is “ongoing” and does not expiry after 90 days. However Resource Owner should have possibility to enter expiry date for this consent. Thus, authentication (which consent provisioning is part of) does not need to occur after the initial set up for the specific Client has been completed.

How it works

To be able to perform the Confirmation of Funds service the Client CBPII should get access token which is the result of the Confirmation of Funds Access Authorization service described API Reference. One of the result of access authorization process is establishing consent on a payment account between Resource Owner and Nordea to allow dedicated Client using Confirmation of Funds requests. In the next step Client performs Confirmation of Funds request as such described in this chapter.

Confirmation of Funds API Endpoints

The Confirmation of Funds API for Denmark, Finland, Norway and Sweden has the following endpoint:

EndpointSupported HTTP Methods
/funds-confirmationPOST

Confirmation of Funds Flow

The framework has four roles:

  1. Resource Owner - payment account holder with Nordea (PSU, customer).
  2. Client - TPP, owner of the Client Application consuming Nordea’s Open Banking API.
  3. Nordea Open Banking (API).
  4. Nordea User Interface, enabling the Resource Owner to authenticate themselves and if requested by the TPP, to select accounts for which the agreed access should apply.

The following diagram illustrates how the whole flow works including both phases:

  1. establish consent - Confirmation of Funds Access Authorization API
  2. perform Confirmation of Funds service using access token received in Confirmation of Funds Access Authorization API

Confirmation of funds full flow

Confirmation of Funds example

Following cURL command can be used to fetch Confirmation of Funds response after correct Application ID, Client Secret and Access Token are substituted in it:

This endpoint URL has the following form:

POST /funds-confirmation HTTP/1.1

This endpoint supports POST HTTP method.

The following cURL can be used to fetch Confirmation of Funds from this endpoint.

$ curl 'https://api.nordeaopenbanking.com/personal/v1/funds-confirmation' -i \
 
    ...
	other Header data omitted
	...
    -H 'Authorization: Bearer <ACCESS_TOKEN>' 
    ...
	other Header data omitted
	...
    -H 'X-IBM-Client-Id: <Client ID>' 
    -H 'X-IBM-Client-Secret: <Client Secret>'
 {
        "payment" : {
             "currency" : "EUR",
             "amount" : 100
        },
        "debtor": {
             "account": {
                 "type": "IBAN", 
                 "value": "FI135XXXXXXXXX0081",
                 "currency": "EUR"
        },
       }
...

Here is the response for the query above:

        {
        "funds_confirmation": true | false
	    }       

Mock data for Sandbox API test

To test Confirmation of Funds API use the following mock data:

ibanbbanCurrencyAvailable balance
DK612030154411802820301544118028DKK210.15
DK342030154411754420301544117544DKK0.00
DK382030154411155520301544111555DKK123.60
FI9513783500000209EUR0.00
FI6593857450293470EUR-1145.32
FI3110473500007783EUR123.60
NO226030113284360301132843NOK8702.38
NO286001050317860010503178NOK0.00
NO216001066267560010662675NOK123.60
SE803000000004135130003941351300039SEK91655.91
SE273000000003270462001632704620016SEK-1145.32