Funds Confirmation - v3.1.2

  1. Overview
  2. Endpoints
    1. POST /funds-confirmations
  3. Data Model
    1. Funds Confirmation - Request
      1. UML Diagram
      2. Data Dictionary
    2. Funds Confirmation - Response
      1. UML Diagram
      2. Data Dictionary
  4. Usage Examples
    1. Funds Confirmation
      1. Example with all permitted fields
        1. Request
        2. Response
      2. Example with a USD account
        1. Request
        2. Response

Overview

The Funds Confirmation resource is used by an CBPII to request to confirm funds are available.

This resource description should be read in conjunction with a compatible Confirmation of Funds API Profile.

Endpoints

| Resource |HTTP Operation |Endpoint |Mandatory ? |Scope |Grant Type |Message Signing |Idempotency Key |Request Object |Response Object | | — |— |— |— |— |— |— |— |— |— | | funds-confirmation |POST |POST /funds-confirmations |Mandatory |fundsconfirmations |Authorization Code |No |No |OBFundsConfirmation1 |OBFundsConfirmationResponse1 |

POST /funds-confirmations

If the CBPII would like to confirm funds with the ASPSP, it should create a new funds-confirmation resource, and check the funds available flag in the response.

  • The ASPSP creates the funds-confirmation resource and responds with a unique FundsConfirmationId to refer to the resource, and a flag confirming if funds are available.
  • The CBPII must use a token issued via an authorization code grant and specify the ConsentId in the request payload.
  • This CBPII must use a currency of the account.

Data Model

This data dictionary section gives the detail on the payload content.

Funds Confirmation - Request

The OBFundsConfirmation1 object will be used for the following:

  • Request to POST /funds-confirmations

UML Diagram

OBFundsConfirmation1

Notes:

  • Funds can only be confirmed against the currency of the account, ASPSP must reject the request when Amount is in a different currency than the currency of the underlying account.

Data Dictionary

NameOccurrenceXPathEnhancedDefinitionClassCodesPattern
OBFundsConfirmation1 OBFundsConfirmation1 OBFundsConfirmation1  
Data1..1OBFundsConfirmation1/Data OBFundsConfirmationData1  
ConsentId1..1OBFundsConfirmation1/Data/ConsentIdUnique identification as assigned by the ASPSP to uniquely identify the funds confirmation consent resource.Max128Text  
Reference1..1OBFundsConfirmation1/Data/ReferenceUnique reference, as assigned by the CBPII, to unambiguously refer to the request related to the payment transaction.Max35Text  
InstructedAmount1..1OBFundsConfirmation1/Data/InstructedAmountAmount of money to be confirmed as available funds in the debtor account. Contains an Amount and a Currency.OBActiveOrHistoricCurrencyAndAmount  
Amount1..1OBFundsConfirmation1/Data/InstructedAmount/AmountA number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.OBActiveCurrencyAndAmount_SimpleType ^\d{1,13}.\d{1,5}$
Currency1..1OBFundsConfirmation1/Data/InstructedAmount/CurrencyA code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 “Codes for the representation of currencies and funds”.ActiveOrHistoricCurrencyCode ^[A-Z]{3,3}$

Funds Confirmation - Response

The OBFundsConfirmationResponse1 object will be used for the following:

  • Response to POST /funds-confirmations

UML Diagram

OBFundsConfirmationResponse1

Notes:

The OBFundsConfirmationResponse1 object contains the same information as the OBFundsConfirmation1, but with additional fields:

  • FundsConfirmationId - to uniquely identify the funds-confirmation resource.
  • FundsAvailable - to indicate the result of a confirmation of funds check.
  • CreationDateTime - to indicate when the resource was created.

Data Dictionary

| Name |Occurrence |XPath |EnhancedDefinition |Class |Codes |Pattern | | — |— |— |— |— |— |— | | OBFundsConfirmationResponse1 | |OBFundsConfirmationResponse1 | |OBFundsConfirmationResponse1 | | | | Data |1..1 |OBFundsConfirmationResponse1/Data | |OBFundsConfirmationDataResponse1 | | | | FundsConfirmationId |1..1 |OBFundsConfirmationResponse1/Data/FundsConfirmationId |Unique identification as assigned by the ASPSP to uniquely identify the funds confirmation resource. |Max40Text | | | | ConsentId |1..1 |OBFundsConfirmationResponse1/Data/ConsentId |Unique identification as assigned by the ASPSP to uniquely identify the funds confirmation consent resource. |Max128Text | | | | CreationDateTime |1..1 |OBFundsConfirmationResponse1/Data/CreationDateTime |Date and time at which the resource was created. |ISODateTime | | | | FundsAvailable |1..1 |OBFundsConfirmationResponse1/Data/FundsAvailable |Flag to indicate the result of a confirmation of funds check. |xs:boolean | | | | Reference |1..1 |OBFundsConfirmationResponse1/Data/Reference |Unique reference, as assigned by the CBPII, to unambiguously refer to the request related to the payment transaction. |Max35Text | | | | InstructedAmount |1..1 |OBFundsConfirmationResponse1/Data/InstructedAmount |Amount of money to be confirmed as available funds in the debtor account. Contains an Amount and a Currency. |OBActiveOrHistoricCurrencyAndAmount | | | | Amount |1..1 |OBFundsConfirmationResponse1/Data/InstructedAmount/Amount |A number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217. |OBActiveCurrencyAndAmount_SimpleType | |^\d{1,13}.\d{1,5}$ | | Currency |1..1 |OBFundsConfirmationResponse1/Data/InstructedAmount/Currency |A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 “Codes for the representation of currencies and funds”. |ActiveOrHistoricCurrencyCode | |^[A-Z]{3,3}$ |

Usage Examples

Funds Confirmation

Example with all permitted fields

Request

Post Funds Confirmation Request

POST /funds-confirmations HTTP/1.1
Content-Type: application/json
Authorization: Bearer 1t1satruthun1v3rs4lly
Accept: application/json; charset=utf-8
x-fapi-interaction-id: hook5i13-ntIg-4th3-rP41-3ro535touch3
{
  "Data": {
    "ConsentId": "88379",
	"Reference": "Purchase01",
    "InstructedAmount": {
       "Amount": "20.00",
       "Currency": "GBP"
    }
  }
}
Response

Post Funds Confirmation Response

HTTP/1.1 201 Created
Content-Type: application/json
x-fapi-interaction-id: hook5i13-ntIg-4th3-rP41-3ro535touch3
{
  "Data": {
    "FundsConfirmationId": "123456",
    "ConsentId": "88379",
    "CreationDateTime": "2017-05-02T00:00:00+00:00",
	"FundsAvailable": true,
	"Reference": "Purchase01",
    "InstructedAmount": {
       "Amount": "20.00",
       "Currency": "GBP"
    }
  },
  "Links": {
    "Self": "https://api.alphabank.com/open-banking/v3.1/cbpii/funds-confirmations/123456"
  },
  "Meta": {}
}

Example with a USD account

A funds confirmation check can be made in a currency other than GBP as long as the InstructedAmount is in the currency of the payment account.

In this example, a USD funds check is made on a USD payment account.

Request

Post Funds Confirmation Request

POST /funds-confirmations HTTP/1.1
Content-Type: application/json
Authorization: Bearer 1t1satruthun1v3rs4lly
Accept: application/json; charset=utf-8
x-fapi-interaction-id: hook5i13-ntIg-4th3-rP41-3ro535touch3
{
  "Data": {
    "ConsentId": "912304",
	"Reference": "Purchase02",
    "InstructedAmount": {
       "Amount": "20.00",
       "Currency": "USD"
    }
  }
}
Response

Post Funds Confirmation Response

HTTP/1.1 201 Created
Content-Type: application/json
x-fapi-interaction-id: hook5i13-ntIg-4th3-rP41-3ro535touch3
{
  "Data": {
    "FundsConfirmationId": "836403",
    "ConsentId": "912304",
    "CreationDateTime": "2017-06-02T00:00:00+00:00",
	"FundsAvailable": true,
	"Reference": "Purchase02",
    "InstructedAmount": {
       "Amount": "20.00",
       "Currency": "USD"
    }
  },
  "Links": {
    "Self": "https://api.alphabank.com/open-banking/v3.1/cbpii/funds-confirmations/836403"
  },
  "Meta": {}
}