openapi: 3.0.1
info:
title: K&H Bank Electra Corporate openAPI
version: "1.1 Febr 26th 2025"
description: |
# Summary
The K&H Bank Electra Corporate openAPI offers a modern, open, harmonised and interoperable set of
Application Programming Interfaces (APIs) as the safest and most efficient way to provide data securely.
The possible Approach is:
* Decoupled SCA Approach
## Some General Remarks Related to this version of the OpenAPI Specification:
* **This API definition is based on the Implementation Guidelines of the Berlin Group PSD2 API.**
It is not an replacement in any sense.
* **This API definition contains the REST-API for requests from the PISP to the ASPSP.**
#servers:
# - url: https://api.testbank.com/psd2
# description: PSD2 server
# - url: https://test-api.testbank.com/psd2
# description: Optional PSD2 test server
paths:
#####################################################
# Payment Information Service
#####################################################
/v1/{payment-service}/{payment-product}:
post:
summary: Payment initiation request
description: |
This method is used to initiate a payment at the ASPSP.
## Variants of Payment Initiation Requests
This method to initiate a payment initiation at the ASPSP can be sent with either a JSON body or an pain.001 body depending on the payment product in the path.
There are the following **payment products**:
- Payment products with payment information in *JSON* format:
- ***sepa-credit-transfers***
- ***cross-border-credit-transfers***
- ***hungarian-credit-transfers***
- Payment products with payment information in *pain.001* XML format:
- ***pain.001-sepa-credit-transfers***
- ***pain.001-cross-border-credit-transfers***
- ***pain.001-hungarian-credit-transfers***
Furthermore the request body depends on the **payment-service**
* ***payments***: A single payment initiation request.
* ***bulk-payments***: A collection of several payment iniatiation requests.
In case of a *pain.001* message there are more than one payments contained in the *pain.001 message.
In case of a *JSON* there are several JSON payment blocks contained in a joining list.
In Electra openAPI: Payments in the collection must have the same debit account otherwise the call will return an error.
* ***periodic-payments***:
Create a standing order initiation resource for recurrent i.e. periodic payments addressable under {paymentId}
with all data relevant for the corresponding payment product and the execution of the standing order contained in a JSON body.
This is the first step in the API to initiate the related recurring/periodic payment.
## Single and mulitilevel SCA Processes
The Payment Initiation Requests are independent from the need of one ore multilevel
SCA processing, i.e. independent from the number of authorisations needed for the execution of payments.
But the response messages are specific to either one SCA processing or multilevel SCA processing.
For payment initiation with multilevel SCA, this specification requires an explicit start of the authorisation,
i.e. links directly associated with SCA processing like 'scaRedirect' or 'scaOAuth' cannot be contained in the
response message of a Payment Initation Request for a payment, where multiple authorisations are needed.
Also if any data is needed for the next action, like selecting an SCA method is not supported in the response,
since all starts of the multiple authorisations are fully equal.
In these cases, first an authorisation sub-resource has to be generated following the 'startAuthorisation' link.
As an exception, if the PSU is already authenticated at the time of the creation of the payment or consent and
this PSU has full right to sign this payment or consent (i.e. multilevel SCA is not requited), then in this case
the authorisation sub-resource will be automatically generated. Upon creating a payment or consent the returned
JSON structure will indicate if an authorisation sub-resource had been automatically generated or not.
operationId: initiatePayment
tags:
- Payment Initiation Service (PIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/paymentService"
- $ref: "#/components/parameters/paymentProduct"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/PSU-ID"
- $ref: "#/components/parameters/PSU-ID-Type"
- $ref: "#/components/parameters/PSU-Corporate-ID"
requestBody:
$ref: "#/components/requestBodies/paymentInitiation"
responses:
'201':
$ref: "#/components/responses/CREATED_201_PaymentInitiation"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_PIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_PIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_PIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_PIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_PIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_PIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_PIS"
'409':
$ref: "#/components/responses/CONFLICT_409_PIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_PIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_PIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_PIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_PIS"
/v1/{payment-service}/{payment-product}/{paymentId}:
get:
summary: Get Payment Information
description: |
Returns the content of a payment object.
Content type of the returned data is base on the content type of
the payment. Is paymentId was created from JSON, payment information will be
replied in JSON. If it was XML, payment information will be XML.
operationId: getPaymentInformation
tags:
- Payment Initiation Service (PIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/paymentService"
- $ref: "#/components/parameters/paymentProductECA"
- $ref: "#/components/parameters/paymentId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_PaymentInitiationInformation"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_PIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_PIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_PIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_PIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_PIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_PIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_PIS"
'409':
$ref: "#/components/responses/CONFLICT_409_PIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_PIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_PIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_PIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_PIS"
delete:
summary: Payment Cancellation Request
description: |
This method initiates the cancellation of a payment.
Payments can only be cancelled as long as they are in RCVD or PATC status.
The response to this DELETE command will tell the Client whether the
* access method was rejected
* access method was successful, or
* access method is generally applicable, but further authorisation processes are needed.
operationId: cancelPayment
tags:
- Payment Initiation Service (PIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/paymentService"
- $ref: "#/components/parameters/paymentProductECA"
- $ref: "#/components/parameters/paymentId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#NO REQUEST BODY
responses:
'204':
$ref: "#/components/responses/NO_CONTENT_204_PaymentInitiationCancel"
#If the DELETE is sufficient for cancelling the payment
'400':
$ref: "#/components/responses/BAD_REQUEST_400_PIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_PIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_PIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_PIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_PIS_CANC"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_PIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_PIS"
'409':
$ref: "#/components/responses/CONFLICT_409_PIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_PIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_PIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_PIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_PIS"
/v1/{payment-service}/{payment-product}/{paymentId}/status:
get:
summary: Payment initiation status request
description: |
Check the transaction status of a payment initiation.
Content type of the returned data is base on the content type of
the payment. Is paymentId was created from JSON, status will be
replied in JSON. If it was XML, status will be XML.
operationId: getPaymentInitiationStatus
tags:
- Payment Initiation Service (PIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/paymentService"
- $ref: "#/components/parameters/paymentProductECA"
- $ref: "#/components/parameters/paymentId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_PaymentInitiationStatus"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_PIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_PIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_PIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_PIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_PIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_PIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_PIS"
'409':
$ref: "#/components/responses/CONFLICT_409_PIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_PIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_PIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_PIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_PIS"
/v1/{payment-service}/{payment-product}/{paymentId}/authorisations:
post:
summary: Start the authorisation process for a payment initiation
description: |
Create an authorisation sub-resource and start the authorisation process.
The message might in addition transmit authentication and authorisation related data.
This method is iterated n times for a n times SCA authorisation in a
corporate context, each creating an own authorisation sub-endpoint for
the corresponding PSU authorising the transaction.
The usage of this access method is unnecessary if the PSU is authenticated
at the time of the POST payments/{payment-product} call and the PSU has
full rights to sign the payment. In this case the related authorisation resource
will be automatically created by the ASPSP.
The start authorisation process is a process which is needed for creating a new authorisation
This applies in the following scenarios:
* The ASPSP has indicated with an 'startAuthorisation' hyperlink in the preceding Payment
Initiation Response that an explicit start of the authorisation process is needed by the Client.
The 'startAuthorisation' hyperlink can transport more information about data which needs to be
uploaded by using the extended forms.
* 'startAuthorisationWithPsuIdentfication',
* 'startAuthorisationWithPsuAuthentication'
* 'startAuthorisationWithEncryptedPsuAuthentication'
* 'startAuthorisationWithAuthentciationMethodSelection'
* The related payment initiation cannot yet be executed since a multilevel SCA is mandated.
operationId: startPaymentAuthorisation
tags:
- Payment Initiation Service (PIS)
- Common Services
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/paymentService"
- $ref: "#/components/parameters/paymentProductECA"
- $ref: "#/components/parameters/paymentId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#method specific header elements
- $ref: "#/components/parameters/PSU-ID"
- $ref: "#/components/parameters/PSU-ID-Type"
- $ref: "#/components/parameters/PSU-Corporate-ID"
requestBody:
content:
application/json:
schema:
oneOf: #Different Authorisation Bodies
- {}
- $ref: "#/components/schemas/updatePsuAuthentication"
- $ref: "#/components/schemas/selectPsuAuthenticationMethod"
- $ref: "#/components/schemas/transactionAuthorisation"
responses:
'201':
$ref: "#/components/responses/CREATED_201_StartScaProcess"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_PIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_PIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_PIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_PIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_PIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_PIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_PIS"
'409':
$ref: "#/components/responses/CONFLICT_409_PIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_PIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_PIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_PIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_PIS"
get:
summary: Get Payment Initiation Authorisation Sub-Resources Request
description: |
Read a list of all authorisation subresources IDs which have been created.
This function returns an array of hyperlinks to all generated authorisation sub-resources.
operationId: getPaymentInitiationAuthorisation
tags:
- Payment Initiation Service (PIS)
- Common Services
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/paymentService"
- $ref: "#/components/parameters/paymentProductECA"
- $ref: "#/components/parameters/paymentId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_Authorisations"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_PIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_PIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_PIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_PIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_PIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_PIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_PIS"
'409':
$ref: "#/components/responses/CONFLICT_409_PIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_PIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_PIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_PIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_PIS"
/v1/{payment-service}/{payment-product}/{paymentId}/authorisations/{authorisationId}:
get:
summary: Read the SCA Status of the payment authorisation
description: |
This method returns the SCA status of a payment initiation's authorisation sub-resource.
operationId: getPaymentInitiationScaStatus
tags:
- Payment Initiation Service (PIS)
- Common Services
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/paymentService"
- $ref: "#/components/parameters/paymentProductECA"
- $ref: "#/components/parameters/paymentId"
- $ref: "#/components/parameters/authorisationId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_ScaStatus"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_PIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_PIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_PIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_PIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_PIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_PIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_PIS"
'409':
$ref: "#/components/responses/CONFLICT_409_PIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_PIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_PIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_PIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_PIS"
put:
summary: Update PSU data for payment initiation
description: |
This methods updates PSU data on the authorisation resource if needed.
It may authorise a payment within the Embedded SCA Approach where needed.
Independently from the SCA Approach it supports e.g. the selection of
the authentication method and a non-SCA PSU authentication.
There are several possible Update PSU Data requests in the context of payment initiation services needed,
which depends on the SCA approach:
* Redirect SCA Approach:
A specific Update PSU Data Request is applicable for
* the selection of authentication methods, before choosing the actual SCA approach.
* Decoupled SCA Approach:
A specific Update PSU Data Request is only applicable for
* adding the PSU Identification, if not provided yet in the Payment Initiation Request or the Account Information Consent Request, or if no OAuth2 access token is used, or
* the selection of authentication methods.
* Embedded SCA Approach:
The Update PSU Data Request might be used
* to add credentials as a first factor authentication data of the PSU and
* to select the authentication method and
* transaction authorisation.
The SCA Approach might depend on the chosen SCA method.
For that reason, the following possible Update PSU Data request can apply to all SCA approaches:
* Select an SCA method in case of several SCA methods are available for the customer.
There are the following request types on this access path:
* Update PSU Identification
* Update PSU Authentication
* Select PSU Autorization Method
WARNING: This method need a reduced header,
therefore many optional elements are not present.
Maybe in a later version the access path will change.
* Transaction Authorisation
WARNING: This method need a reduced header,
therefore many optional elements are not present.
Maybe in a later version the access path will change.
operationId: updatePaymentPsuData
tags:
- Payment Initiation Service (PIS)
- Common Services
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/paymentService"
- $ref: "#/components/parameters/paymentProductECA"
- $ref: "#/components/parameters/paymentId"
- $ref: "#/components/parameters/authorisationId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements # Not always allowed depending on the kind of update which is ask for
- $ref: "#/components/parameters/PSU-ID"
- $ref: "#/components/parameters/PSU-ID-Type"
- $ref: "#/components/parameters/PSU-Corporate-ID"
requestBody:
content:
application/json:
schema:
oneOf: #Different Authorisation Bodies
- {}
- $ref: "#/components/schemas/updatePsuAuthentication"
- $ref: "#/components/schemas/selectPsuAuthenticationMethod"
- $ref: "#/components/schemas/transactionAuthorisation"
examples:
"Update PSU Identification (Decoupled Approach)":
value: {}
"Update PSU Authentication (Embedded Approach)":
$ref: "#/components/examples/updatePsuAuthenticationExample_Embedded"
"Select PSU Authentication Method (Embedded Approach)":
$ref: "#/components/examples/selectPsuAuthenticationMethodExample_Embedded"
"Transaction Authorisation (Embedded Approach)":
$ref: "#/components/examples/transactionAuthorisationExample_Embedded"
responses:
'200':
$ref: "#/components/responses/OK_200_UpdatePsuData"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_PIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_PIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_PIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_PIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_PIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_PIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_PIS"
'409':
$ref: "#/components/responses/CONFLICT_409_PIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_PIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_PIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_PIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_PIS"
#####################################################
# Account Information Service
#####################################################
#####################################################
# Accounts
#####################################################
/v1/accounts:
get:
summary: Read Account List
description: |
Read the identifiers of the available payment account together with
booking balance information, depending on the consent granted.
It is assumed that a consent of the PSU to this access is already given and stored on the ASPSP system.
The addressed list of accounts depends then on the PSU ID and the stored consent addressed by consentId,
respectively the OAuth2 access token.
Returns all identifiers of the accounts, to which an account access has been granted to through
the /consents endpoint by the PSU.
In addition, relevant information about the accounts and hyperlinks to corresponding account
information resources are provided if a related consent has been already granted.
Remark: Note that the /consents endpoint optionally offers to grant an access on all available
payment accounts of a PSU.
In this case, this endpoint will deliver the information about all available payment accounts
of the PSU at this ASPSP.
operationId: getAccountList
tags:
- Account Information Service (AIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path # NO PATH PARAMETER
#query
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/consentId_HEADER_mandatory"
#conditional elemention for AIS
- $ref: "#/components/parameters/PSU-IP-Address_conditionalForAis"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_AccountList"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
/v1/accounts/{account-id}:
get:
summary: Read Account Details
description: |
Reads details about an account, with balances where required.
It is assumed that a consent of the PSU to
this access is already given and stored on the ASPSP system.
The addressed details of this account depends then on the stored consent addressed by consentId,
respectively the OAuth2 access token.
Give detailed information about the addressed account.
Give detailed information about the addressed account together with balance information
operationId: readAccountDetails
tags:
- Account Information Service (AIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/accountId"
#query
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/consentId_HEADER_mandatory"
#conditional elemention for AIS
- $ref: "#/components/parameters/PSU-IP-Address_conditionalForAis"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_AccountDetails"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
/v1/accounts/{account-id}/balances:
get:
summary: Read Balance
description: |
Reads account data from a given account addressed by "account-id".
**Remark:** This account-id can be a tokenised identification due to data protection reason since the path
information might be logged on intermediary servers within the ASPSP sphere.
This account-id then can be retrieved by the "GET Account List" call.
The account-id is constant at least throughout the lifecycle of a given consent.
operationId: getBalances
tags:
- Account Information Service (AIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/accountId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/consentId_HEADER_mandatory"
#conditional elemention for AIS
- $ref: "#/components/parameters/PSU-IP-Address_conditionalForAis"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_Balances"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
/v1/accounts/{account-id}/transactions:
get:
summary: Read transaction list of an account
description: |
Read transaction reports or transaction lists of a given account addressed by "account-id", depending on the steering parameter
"bookingStatus" together with balances.
For a given account, additional parameters are e.g. the attributes "dateFrom" and "dateTo".
operationId: getTransactionList
tags:
- Account Information Service (AIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/accountId"
#query
- $ref: "#/components/parameters/dateFrom"
- $ref: "#/components/parameters/dateTo"
- $ref: "#/components/parameters/bookingStatus"
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/consentId_HEADER_mandatory"
#- $ref: "#/components/parameters/Accept" #Can not defined in Open API. See general comments in the description attached to the top level of the file.
#conditional elemention for AIS
- $ref: "#/components/parameters/PSU-IP-Address_conditionalForAis"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_AccountsTransactions"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
/v1/accounts/{account-id}/transactions/{transactionId}:
get:
summary: Read Transaction Details
description: |
Reads transaction details from a given transaction addressed by "transactionId" on a given account addressed by "account-id".
This call is only available on transactions as reported in a JSON format.
**Remark:** Please note that the PATH might be already given in detail by the corresponding entry of the response of the
"Read Transaction List" call within the _links subfield.
operationId: getTransactionDetails
tags:
- Account Information Service (AIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/accountId"
- $ref: "#/components/parameters/transactionId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/consentId_HEADER_mandatory"
#conditional elemention for AIS
- $ref: "#/components/parameters/PSU-IP-Address_conditionalForAis"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_TransactionDetails"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
#####################################################
# Consents
#####################################################
/v1/consents:
post:
summary: Create consent
description: |
This method create a consent resource, defining access rights to dedicated accounts of
a given PSU-ID. These accounts are addressed explicitly in the method as
parameters as a core function.
**Side Effects**
When this Consent Request is a request where the "recurringIndicator" equals "true",
and if it exists already a former consent for recurring access on account information
for the addressed PSU, then the former consent automatically expires as soon as the new
consent request is authorised by the PSU.
operationId: createConsent
tags:
- Account Information Service (AIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path # NO PATH PARAMETER
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/PSU-ID"
- $ref: "#/components/parameters/PSU-ID-Type"
- $ref: "#/components/parameters/PSU-Corporate-ID"
requestBody:
$ref: "#/components/requestBodies/consents"
responses:
'201':
$ref: "#/components/responses/CREATED_201_Consents"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
/v1/consents/{consentId}:
get:
summary: Get Consent Request
description: |
Returns the content of an account information consent object.
This is returning the data for the Client especially in cases,
where the consent was directly managed between ASPSP and PSU e.g. in a re-direct SCA Approach.
operationId: getConsentInformation
tags:
- Account Information Service (AIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/consentId_PATH"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_ConsentInformation"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
delete:
summary: Delete Consent
description: The Client can delete an account information consent object if needed.
operationId: deleteConsent
tags:
- Account Information Service (AIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/consentId_PATH"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#NO REQUEST BODY
responses:
'204':
$ref: "#/components/responses/NO_CONTENT_204_Consents"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
/v1/consents/{consentId}/status:
get:
summary: Consent status request
description: Read the status of an account information consent resource.
operationId: getConsentStatus
tags:
- Account Information Service (AIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/consentId_PATH"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_ConsentStatus"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
/v1/consents/{consentId}/authorisations:
post:
summary: Start the authorisation process for a consent
description: |
Create an authorisation sub-resource and start the authorisation process of a consent.
The message might in addition transmit authentication and authorisation related data.
his method is iterated n times for a n times SCA authorisation in a
corporate context, each creating an own authorisation sub-endpoint for
the corresponding PSU authorising the consent.
The start authorisation process is a process which is needed for creating a new authorisation
This applies in the following scenarios:
* The ASPSP has indicated with an 'startAuthorisation' hyperlink in the preceding Payment
Initiation Response that an explicit start of the authorisation process is needed by the Client.
The 'startAuthorisation' hyperlink can transport more information about data which needs to be
uploaded by using the extended forms.
* 'startAuthorisationWithPsuIdentfication',
* 'startAuthorisationWithPsuAuthentication'
* 'startAuthorisationWithEncryptedPsuAuthentication'
* 'startAuthorisationWithAuthentciationMethodSelection'
* The related payment initiation cannot yet be executed since a multilevel SCA is mandated.
operationId: startConsentAuthorisation
tags:
- Account Information Service (AIS)
- Common Services
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/consentId_PATH"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/PSU-ID"
- $ref: "#/components/parameters/PSU-ID-Type"
- $ref: "#/components/parameters/PSU-Corporate-ID"
requestBody:
content:
application/json:
schema:
oneOf: #Different Authorisation Bodies
- {}
- $ref: "#/components/schemas/updatePsuAuthentication"
- $ref: "#/components/schemas/selectPsuAuthenticationMethod"
- $ref: "#/components/schemas/transactionAuthorisation"
responses:
'201':
$ref: "#/components/responses/CREATED_201_StartScaProcess"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
get:
summary: Get Consent Authorisation Sub-Resources Request
description: |
Return a list of all authorisation subresources IDs which have been created.
This function returns an array of hyperlinks to all generated authorisation sub-resources.
operationId: getConsentAuthorisation
tags:
- Account Information Service (AIS)
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/consentId_PATH"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_Authorisations"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
/v1/consents/{consentId}/authorisations/{authorisationId}:
get:
summary: Read the SCA status of the consent authorisation.
description: |
This method returns the SCA status of a consent initiation's authorisation sub-resource.
operationId: getConsentScaStatus
tags:
- Account Information Service (AIS)
- Common Services
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/consentId_PATH"
- $ref: "#/components/parameters/authorisationId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_ScaStatus"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
put:
summary: Update PSU Data for consents
description: |
This method update PSU data on the consents resource if needed.
It may authorise a consent within the Embedded SCA Approach where needed.
Independently from the SCA Approach it supports e.g. the selection of
the authentication method and a non-SCA PSU authentication.
There are several possible Update PSU Data requests in the context of a consent request if needed,
which depends on the SCA approach:
* Redirect SCA Approach:
A specific Update PSU Data Request is applicable for
* the selection of authentication methods, before choosing the actual SCA approach.
* Decoupled SCA Approach:
A specific Update PSU Data Request is only applicable for
* adding the PSU Identification, if not provided yet in the Payment Initiation Request or the Account Information Consent Request, or if no OAuth2 access token is used, or
* the selection of authentication methods.
* Embedded SCA Approach:
The Update PSU Data Request might be used
* to add credentials as a first factor authentication data of the PSU and
* to select the authentication method and
* transaction authorisation.
The SCA Approach might depend on the chosen SCA method.
For that reason, the following possible Update PSU Data request can apply to all SCA approaches:
* Select an SCA method in case of several SCA methods are available for the customer.
There are the following request types on this access path:
* Update PSU Identification
* Update PSU Authentication
* Select PSU Autorization Method
WARNING: This method need a reduced header,
therefore many optional elements are not present.
Maybe in a later version the access path will change.
* Transaction Authorisation
WARNING: This method need a reduced header,
therefore many optional elements are not present.
Maybe in a later version the access path will change.
operationId: updateConsentsPsuData
tags:
- Account Information Service (AIS)
- Common Services
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#query # NO QUERY PARAMETER
#header
#path
- $ref: "#/components/parameters/consentId_PATH"
- $ref: "#/components/parameters/authorisationId"
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements # Not always allowed depending on the kind of update which is ask for
- $ref: "#/components/parameters/PSU-ID"
- $ref: "#/components/parameters/PSU-ID-Type"
- $ref: "#/components/parameters/PSU-Corporate-ID"
requestBody:
content:
application/json:
schema:
oneOf: #Different Authorisation Bodies
- {}
- $ref: "#/components/schemas/updatePsuAuthentication"
- $ref: "#/components/schemas/selectPsuAuthenticationMethod"
- $ref: "#/components/schemas/transactionAuthorisation"
examples:
"Update PSU Identification/Additional SCA Process (Embedded Approach)":
value: {}
"Update PSU Authentication (Embedded Approach)":
$ref: "#/components/examples/updatePsuAuthenticationExample_Embedded"
"Select PSU Authentication Method (Embedded Approach)":
$ref: "#/components/examples/selectPsuAuthenticationMethodExample_Embedded"
"Transaction Authorisation (Embedded Approach)":
$ref: "#/components/examples/transactionAuthorisationExample_Embedded"
responses:
'200':
$ref: "#/components/responses/OK_200_UpdatePsuData"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
#####################################################
# Statements
#####################################################
/v1/accounts/{account-id}/statements/statement:
get:
summary: Get the account statements created on a given date
description: |
Get the account statements created on a given date. For daily statements
this is the day referenced in the statement. For other (weekly, monthly)
statements this date is the date on the bank generated the given statement.
Usually this is the last day of the given period (e.g. last day of the month).
operationId: getStatement
tags:
- Electra statement service
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/accountId"
#query
- $ref: "#/components/parameters/statementDate"
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/consentId_HEADER_mandatory"
#- $ref: "#/components/parameters/Accept" #Can not defined in Open API. See general comments in the description attached to the top level of the file.
#conditional elemention for AIS
- $ref: "#/components/parameters/PSU-IP-Address_conditionalForAis"
- $ref: "#/components/parameters/Statement-Export-Accept"
- $ref: "#/components/parameters/Statement-Export-Accept-Charset"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_GetStatement"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
#####################################################
# Payment Import
#####################################################
/v1/import/{import-format}/{import-type}:
post:
summary: Payment import request in different formats.
description: |
This method is used to import payments.
The request body should contain the file to be imported into Electra.
The import service analyses and processes the request body and creates payment resources. These
resouces are the same as the ones created by the "payments" endpoint. Managment and authorisation
of the resouces created by the "import" endpoint must be performed exactly the same as every
other payment resource.
Note that not all import format and import type combinations are supported.
Here is the list of the supported pairings:
* edifact - HUF
* edifact - HVE
* edifact - DEV
* multicash - HUF
* ugiro - CAT
* ugiro - CBE
* postal - PKF
IMPORTANT! One single call to the import service may create more than one payment resource!
The response to the service call will contain the resource ids and uri-s to all created resources.
operationId: import
tags:
- Electra Import service
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/importFormat"
- $ref: "#/components/parameters/importType"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/PSU-ID"
- $ref: "#/components/parameters/PSU-ID-Type"
- $ref: "#/components/parameters/PSU-Corporate-ID"
requestBody:
$ref: "#/components/requestBodies/importFile"
responses:
'201':
$ref: "#/components/responses/CREATED_201_Import"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_PIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_PIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_PIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_PIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_PIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_PIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_PIS"
'409':
$ref: "#/components/responses/CONFLICT_409_PIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_PIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_PIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_PIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_PIS"
/v1/import/{import-format}/{import-type}/{import-id}:
get:
summary: Returns the uploaded import file.
description: |
This method returns the original import file uploaded via the API.
operationId: getImport
tags:
- Electra Import service
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/importFormat"
- $ref: "#/components/parameters/importType"
- $ref: "#/components/parameters/importId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/PSU-ID"
- $ref: "#/components/parameters/PSU-ID-Type"
- $ref: "#/components/parameters/PSU-Corporate-ID"
responses:
'200':
$ref: "#/components/responses/OK_200_GetImport"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_PIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_PIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_PIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_PIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_PIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_PIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_PIS"
'409':
$ref: "#/components/responses/CONFLICT_409_PIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_PIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_PIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_PIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_PIS"
/v1/import/{import-format}/{import-type}/{import-id}/status:
get:
summary: Returns the status of an import object.
description: |
This method returns the status of the import object. It contains the
status of the import request, the errors occured (if there were any).
It also returns the list of paymentIds generated by the import request.
operationId: getImportStatus
tags:
- Electra Import service
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/importFormat"
- $ref: "#/components/parameters/importType"
- $ref: "#/components/parameters/importId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/PSU-ID"
- $ref: "#/components/parameters/PSU-ID-Type"
- $ref: "#/components/parameters/PSU-Corporate-ID"
responses:
'200':
$ref: "#/components/responses/OK_200_GetImportStatus"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_PIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_PIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_PIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_PIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_PIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_PIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_PIS"
'409':
$ref: "#/components/responses/CONFLICT_409_PIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_PIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_PIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_PIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_PIS"
/v1/advices:
get:
summary: Get advice list
description: |
Read available advice lists of a given time interval.
operationId: getAdviceList
tags:
- Electra Advice service
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#query
- $ref: "#/components/parameters/dateFrom"
- $ref: "#/components/parameters/dateTo"
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/consentId_HEADER_mandatory"
#- $ref: "#/components/parameters/Accept" #Can not defined in Open API. See general comments in the description attached to the top level of the file.
#conditional elemention for AIS
- $ref: "#/components/parameters/PSU-IP-Address_conditionalForAis"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_AdviceList"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
/v1/advices/{advice-id}:
get:
summary: Get advice
description: |
Get a specific advice by adviceId, as introduced in the
response to the advice list request.
operationId: getAdvice
tags:
- Electra Advice service
security:
#####################################################
# REMARKS ON SECURITY IN THIS OPENAPI FILE
#In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
- {}
- BearerAuthOAuth: []
parameters:
#path
- $ref: "#/components/parameters/adviceId"
#query # NO QUERY PARAMETER
#header
#common header parameter
- $ref: "#/components/parameters/X-Request-ID"
#header to support the signature function
- $ref: "#/components/parameters/Digest"
- $ref: "#/components/parameters/Signature"
- $ref: "#/components/parameters/ELEAPI-Signature-Certificate"
#method specific header elements
- $ref: "#/components/parameters/consentId_HEADER_mandatory"
#conditional elemention for AIS
- $ref: "#/components/parameters/PSU-IP-Address_conditionalForAis"
#NO REQUEST BODY
responses:
'200':
$ref: "#/components/responses/OK_200_Advice"
'400':
$ref: "#/components/responses/BAD_REQUEST_400_AIS"
'401':
$ref: "#/components/responses/UNAUTHORIZED_401_AIS"
'403':
$ref: "#/components/responses/FORBIDDEN_403_AIS"
'404':
$ref: "#/components/responses/NOT_FOUND_404_AIS"
'405':
$ref: "#/components/responses/METHOD_NOT_ALLOWED_405_AIS"
'406':
$ref: "#/components/responses/NOT_ACCEPTABLE_406_AIS"
'408':
$ref: "#/components/responses/REQUEST_TIMEOUT_408_AIS"
'409':
$ref: "#/components/responses/CONFLICT_409_AIS"
'415':
$ref: "#/components/responses/UNSUPPORTED_MEDIA_TYPE_415_AIS"
'429':
$ref: "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
'500':
$ref: "#/components/responses/INTERNAL_SERVER_ERROR_500_AIS"
'503':
$ref: "#/components/responses/SERVICE_UNAVAILABLE_503_AIS"
components:
#####################################################
# Predefined Components
#####################################################
securitySchemes:
#####################################################
# Predefined Security Schemes:
#
# In this file only the basic security element to transport
# the bearer token of an an OAuth2 process, which has to
# be included inthe HTTP header ist described.
#
# WARNING:
# If you want to use this file for a productive implementation,
# it is recommandes to adjust the security schemes according to
# your system enviroments and security policies.
#####################################################
BearerAuthOAuth:
description: |
Bearer Token.
Is contained only, if an OAuth2 based authentication was performed in a pre-step or
an OAuth2 based SCA was performed in an preceding AIS service in the same session.
type: http
scheme: bearer
schemas:
#####################################################
# Predefined Schemas
#####################################################
paymentId:
description: |
Resource identification of the generated payment initiation resource.
type: string
maxLength: 128
example: "1234-wertiq-983"
# paymentIdList:
# description: A list of paymentIds
# type: array
# minItems: 1
# items:
# $ref: "#/components/schemas/paymentId"
authorisationId:
description: Resource identification of the related SCA
type: string
maxLength: 128
example: "123auth456"
authenticationMethodId:
description: |
An identification provided by the ASPSP for the later identification of the authentication method selection.
type: string
maxLength: 35
example: "myAuthenticationID"
accountId:
description: This identification is denoting the addressed account, where the transaction has been performed.
type: string
maxLength: 35
example: "qwer3456tzui7890"
consentId:
description: |
ID of the corresponding consent object as returned by an Account Information Consent Request.
type: string
maxLength: 128
authorization:
description: |
Authorization by OAuth2 based Protocol.
type: string
# consentIdList:
# description: A list of consentIds
# type: array
# minItems: 1
# items:
# $ref: "#/components/schemas/consentId"
transactionId:
description: |
This identification is given by the attribute transactionId of the corresponding entry of a transaction list.
type: string
maxLength: 128
example: "3dc3d5b3-7023-4848-9853-f5400a64e80f"
# cardTransactionId:
# description: Unique end to end identity.
# type: string
# maxLength: 35
# terminalId:
# description: Identification of the Terminal, where the card has been used.
# type: string
# maxLength: 35
transactionStatus:
description: |
The transaction status is filled with codes of the ISO 20022 data table:
- 'ACCC': 'AcceptedSettlementCompleted' -
Settlement on the creditor's account has been completed.
- 'ACCP': 'AcceptedCustomerProfile' -
Preceding check of technical validation was successful.
Customer profile check was also successful.
- 'ACSC': 'AcceptedSettlementCompleted' -
Settlement on the debtor�s account has been completed.
**Usage:** this can be used by the first agent to report to the debtor that the transaction has been completed.
**Warning:** this status is provided for transaction status reasons, not for financial information.
It can only be used after bilateral agreement.
- 'ACSP': 'AcceptedSettlementInProcess' -
All preceding checks such as technical validation and customer profile were successful and therefore the payment initiation has been accepted for execution.
- 'ACTC': 'AcceptedTechnicalValidation' -
Authentication and syntactical and semantical validation are successful.
- 'ACWC': 'AcceptedWithChange' -
Instruction is accepted but a change will be made, such as date or remittance not sent.
- 'ACWP': 'AcceptedWithoutPosting' -
Payment instruction included in the credit transfer is accepted without being posted to the creditor customer�s account.
- 'RCVD': 'Received' -
Payment initiation has been received by the receiving agent.
- 'PDNG': 'Pending' -
Payment initiation or individual transaction included in the payment initiation is pending.
Further checks and status update will be performed.
- 'RJCT': 'Rejected' -
Payment initiation or individual transaction included in the payment initiation has been rejected.
- 'CANC': 'Cancelled'
Payment initiation has been cancelled before execution
Remark: This codeis accepted as new code by ISO20022.
- 'ACFC': 'AcceptedFundsChecked' -
Preceding check of technical validation and customer profile was successful and an automatic funds check was positive .
Remark: This code is accepted as new code by ISO20022.
- 'PATC': 'PartiallyAcceptedTechnical'
Correct The payment initiation needs multiple authentications, where some but not yet all have been performed. Syntactical and semantical validations are successful.
Remark: This code is accepted as new code by ISO20022.
- 'PART': 'PartiallyAccepted' -
A number of transactions have been accepted, whereas another number of transactions have not yet achieved 'accepted' status.
Remark: This code may be used only in case of bulk payments. It is only used in a situation where all mandated authorisations have been applied, but some payments have been rejected.
type: string
enum:
- "ACCC"
- "ACCP"
- "ACSC"
- "ACSP"
- "ACTC"
- "ACWC"
- "ACWP"
- "RCVD"
- "PDNG"
- "RJCT"
- "CANC"
- "ACFC"
- "PATC"
- "PART"
example: "ACCP"
scaStatus:
description: |
This data element is containing information about the status of the SCA method applied.
The following codes are defined for this data type.
* 'received':
An authorisation resource has been created successfully.
* 'psuIdentified':
The PSU related to the authorisation resource has been identified.
* 'psuAuthenticated':
The PSU related to the authorisation resource has been identified and authenticated e.g. by a password or by an access token.
* 'scaMethodSelected':
The PSU/Client has selected the related SCA routine.
If the SCA method is chosen implicitly since only one SCA method is available,
then this is the first status to be reported instead of 'received'.
* 'started':
The addressed SCA routine has been started.
* 'finalised':
The SCA routine has been finalised successfully.
* 'failed':
The SCA routine failed
* 'exempted':
SCA was exempted for the related transaction, the related authorisation is successful.
type: string
enum:
- "received"
- "psuIdentified"
- "psuAuthenticated"
- "scaMethodSelected"
- "started"
- "finalised"
- "failed"
- "exempted"
example: "psuAuthenticated"
scaAuthenticationData:
description: |
SCA authentication data, depending on the chosen authentication method.
If the data is binary, then it is base64 encoded.
type: string
consentStatus:
description: |
This is the overall lifecycle status of the consent.
Valid values are:
- 'received': The consent data have been received and are technically correct.
The data is not authorised yet.
- 'rejected': The consent data have been rejected e.g. since no successful authorisation has taken place.
- 'valid': The consent is accepted and valid for GET account data calls and others as specified in the consent object.
- 'revokedByPsu': The consent has been revoked by the PSU towards the ASPSP.
- 'expired': The consent expired.
- 'terminatedByClient': The corresponding Client has terminated the consent by applying the DELETE method to the consent resource.
The ASPSP might add further codes. These codes then shall be contained in the ASPSP's documentation of the XS2A interface
and has to be added to this API definition as well.
type: string
enum:
- "received"
- "rejected"
- "valid"
- "revokedByPsu"
- "expired"
- "terminatedByClient"
transactionFeeIndicator:
description: |
If equals 'true', the transaction will involve specific transaction cost as shown by the ASPSP in
their public price list or as agreed between ASPSP and PSU.
If equals 'false', the transaction will not involve additional specific transaction costs to the PSU.
type: boolean
recurringIndicator:
description: |
"true", if the consent is for recurring access to the account data.
"false", if the consent is for one access to the account data.
type: boolean
example: false
combinedServiceIndicator:
description: |
If "true" indicates that a payment initiation service will be addressed in the same "session".
type: boolean
example: false
scaMethods:
description: |
This data element might be contained, if SCA is required and if the PSU has a choice between different
authentication methods.
If this data element is contained, then there is also an hyperlink of type 'startAuthorisationWithAuthenticationMethodSelection'
contained in the response body.
These methods shall be presented towards the PSU for selection by the Client.
type: array
items:
$ref: "#/components/schemas/authenticationObject"
chosenScaMethod:
# description: |
# This data element is only contained in the response if the APSPS has chosen the Embedded SCA Approach,
# if the PSU is already identified e.g. with the first relevant factor or alternatively an access token,
# if SCA is required and if the authentication method is implicitly selected.
$ref: "#/components/schemas/authenticationObject"
authenticationType:
description: |
Type of the authentication method.
More authentication types might be added during implementation projects and documented in the ASPSP documentation.
- 'SMS_OTP': An SCA method, where an OTP linked to the transaction to be authorised is sent to the PSU through a SMS channel.
- 'PUSH_OTP': An OTP is pushed to a dedicated authentication APP and displayed to the PSU.
type: string
enum:
- "SMS_OTP"
- "CHIP_OTP"
- "PHOTO_OTP"
- "PUSH_OTP"
- "ViCA"
authenticationObject:
description: |
Authentication Object
type: object
required:
- authenticationType
- authenticationMethodId
properties:
authenticationType:
$ref: "#/components/schemas/authenticationType"
authenticationMethodId:
$ref: "#/components/schemas/authenticationMethodId"
name:
description: |
This is the name of the authentication method defined by the PSU in the Online Banking frontend of the ASPSP.
Alternatively this could be a description provided by the ASPSP like "SMS OTP on phone +49160 xxxxx 28".
This name shall be used by the Client when presenting a list of authentication methods to the PSU, if available.
type: string
example: "SMS OTP on phone +49160 xxxxx 28"
explanation:
description: |
Detailed information about the SCA method for the PSU.
type: string
example: Detailed information about the SCA method for the PSU.
challengeData:
description: |
It is contained in addition to the data element 'chosenScaMethod' if challenge data is needed for SCA.
In rare cases this attribute is also used in the context of the 'startAuthorisationWithPsuAuthentication' link.
type: object
properties:
image:
type: string
format: byte
description: |
PNG data (max. 512 kilobyte) to be displayed to the PSU,
Base64 encoding, cp. [RFC4648].
This attribute is used only, when PHOTO_OTP or CHIP_OTP
is the selected SCA method.
data:
type: array
items:
type: string
description: A collection of strings as challenge data
imageLink:
type: string
format: url
description: A link where the ASPSP will provides the challenge image for the Client.
otpMaxLength:
type: integer
description: The maximal length for the OTP to be typed in by the PSU.
otpFormat:
type: string
description: The format type of the OTP to be typed in. The admitted values are "characters" or "integer".
enum:
- "characters"
- "integer"
additionalInformation:
type: string
description: |
Additional explanation for the PSU to explain
e.g. fallback mechanism for the chosen SCA method.
The Client is obliged to show this to the PSU.
fundsAvailable:
description: |
Equals true if sufficient funds are available at the time of the request, false otherwise.
This datalemenet is allways contained in a confirmation of funds response.
This data element is contained in a payment status response,
if supported by the ASPSP, if a funds check has been performed and
if the transactionStatus is "ATCT", "ACWC" or "ACCP".
type: boolean
hrefType:
description: Link to a resource
type: object
properties:
href:
$ref: "#/components/schemas/hrefEntry"
hrefEntry:
description: Link to a resource
type: string
maxLength: 2048
example: "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
authorisationsList:
description: An array of all authorisationIds
type: array
items:
$ref: "#/components/schemas/authorisationId"
authorisations:
description: An array of all authorisationIds
type: object
required:
- authorisationIds
properties:
authorisationIds:
$ref: "#/components/schemas/authorisationsList"
accountReference:
description: |
Reference to an account by either
* IBAN, of a payment accounts, or
* BBAN, for payment accounts if there is no IBAN
* an alias to access a payment account via a registered mobile phone number (MSISDN) email, tax id or tax number.
type: object
properties:
iban:
$ref: "#/components/schemas/iban"
bban:
$ref: "#/components/schemas/bban"
msisdn:
$ref: "#/components/schemas/msisdn"
email:
$ref: "#/components/schemas/email"
taxid:
$ref: "#/components/schemas/taxid"
taxnr:
$ref: "#/components/schemas/taxnr"
currency:
$ref: "#/components/schemas/currencyCode"
# accountReferenceIban:
# type: object
# description: |
# Reference to an account by the Primary Account Number (PAN) of a card,
# can be tokenised by the ASPSP due to PCI DSS requirements.
# required:
# - iban
# properties:
# iban:
# $ref: "#/components/schemas/iban"
# currency:
# $ref: "#/components/schemas/currencyCode"
# accountReferenceBban:
# type: object
# description: |
# Reference to an Account.
#
# This data elements is used for payment accounts which have no IBAN.
# required:
# - bban
# properties:
# bban:
# $ref: "#/components/schemas/bban"
# currency:
# $ref: "#/components/schemas/currencyCode"
# accountReferencePan:
# type: object
# description: |
# Reference to an account by the Primary Account Number (PAN) of a card,
# can be tokenised by the ASPSP due to PCI DSS requirements.
# required:
# - pan
# properties:
# pan:
# $ref: "#/components/schemas/pan"
# currency:
# $ref: "#/components/schemas/currencyCode"
# accountReferenceMaskedPan:
# type: object
# description: |
# Reference to an account by the Primary Account Number (PAN) of a card in a masked form.
# required:
# - maskedPan
# properties:
# maskedPan:
# $ref: "#/components/schemas/maskedPan"
# currency:
# $ref: "#/components/schemas/currencyCode"
#
# accountReferenceMsisdn:
# type: object
# description: |
# An alias to access a payment account via a registered mobile phone number.
# required:
# - msisdn
# properties:
# msisdn:
# $ref: "#/components/schemas/msisdn"
# currency:
# $ref: "#/components/schemas/currencyCode"
balanceType:
description: |
The following balance types are defined:
- "closingBooked":
Balance of the account at the end of the pre-agreed account reporting period.
It is the sum of the opening booked balance at the beginning of the period and all entries booked
to the account during the pre-agreed account reporting period.
#For card-accounts, this is composed of
#
# - invoiced, but not yet paid entries
- "expected":
Balance composed of booked entries and pending items known at the time of calculation,
which projects the end of day balance if everything is booked on the account and no other entry is posted.
For card accounts, this is composed of
- invoiced, but not yet paid entries,
- not yet invoiced but already booked entries and
- pending items (not yet booked)
- "authorised":
The expected balance together with the value of a pre-approved credit line the ASPSP makes permanently available to the user.
#For card-accounts:
#
#"money to spend with the value of a pre-approved credit limit on the card account"
- "openingBooked":
Book balance of the account at the beginning of the account reporting period.
It always equals the closing book balance from the previous report.
- "interimAvailable":
Available balance calculated in the course of the account ?servicer?s business day,
at the time specified, and subject to further changes during the business day.
The interim balance is calculated on the basis of booked credit and debit items during the calculation
time/period specified.
#For card-accounts, this is composed of
# - invoiced, but not yet paid entries,
# - not yet invoiced but already booked entries
- "forwardAvailable":
Forward available balance of money that is at the disposal of the account owner on the date specified.
#- "nonInvoiced":
# Only for card accounts, to be checked yet.
type: string
enum:
- "closingBooked"
- "expected"
- "authorised"
- "openingBooked"
- "interimAvailable"
- "interimBooked"
- "forwardAvailable"
- "nonInvoiced"
nonISOBalanceType:
type: string
enum:
- "overdraftLimit"
- "blockedBalance"
- "consolidatedPosition"
- "consolidatedGroupPosition"
- "dailyLimit"
- "availableGroupCoverage"
- "MCODLFreeFunds"
- "municipalityFinancingFacility"
accountAccess:
description: |
Requested access services for a consent.
type: object
properties:
accounts:
description: |
Is asking for detailed account information.
If the array is empty, the Client is asking for an accessible account list.
This may be restricted in a PSU/ASPSP authorization dialogue.
If the array is empty, also the arrays for balances or transactions shall be empty, if used.
type: array
items:
$ref: "#/components/schemas/accountReference"
balances:
description: |
Is asking for balances of the addressed accounts.
If the array is empty, the Client is asking for the balances of all accessible account lists.
This may be restricted in a PSU/ASPSP authorization dialogue.
If the array is empty, also the arrays for accounts or transactions shall be empty, if used.
type: array
items:
$ref: "#/components/schemas/accountReference"
transactions:
description: |
Is asking for transactions of the addressed accounts.
If the array is empty, the Client is asking for the transactions of all accessible account lists.
This may be restricted in a PSU/ASPSP authorization dialogue.
If the array is empty, also the arrays for accounts or balances shall be empty, if used.
type: array
items:
$ref: "#/components/schemas/accountReference"
availableAccounts:
description: |
Optional if supported by API provider.
Only the value "allAccounts" is admitted.
type: string
enum:
- "allAccounts"
- "allAccountsWithBalances"
allPsd2:
description: |
Optional if supported by API provider.
Only the value "allAccounts" is admitted.
type: string
enum:
- "allAccounts"
cashAccountType:
description: |
ExternalCashAccountType1Code from ISO 20022.
type: string
accountStatus:
description: |
Account status. The value is one of the following:
- "enabled": account is available
- "deleted": account is terminated
- "blocked": account is blocked e.g. for legal reasons
If this field is not used, than the account is available in the sense of this specification.
type: string
enum:
- "enabled"
- "deleted"
- "blocked"
accountDetails:
description: |
The ASPSP shall give at least one of the account reference identifiers:
- iban
- bban
- pan
- maskedPan
- msisdn
type: object
required:
- currency
properties:
resourceId:
description: This shall be filled, if addressable resource are created by the ASPSP on the /accounts endpoint #or /card-accounts endpoint.
type: string
iban:
$ref: "#/components/schemas/iban"
bban:
$ref: "#/components/schemas/bban"
msisdn:
$ref: "#/components/schemas/msisdn"
currency:
$ref: "#/components/schemas/currencyCode"
name:
description: Name of the account given by the bank or the PSU in online-banking.
type: string
maxLength: 35
product:
description: Product name of the bank for this account, proprietary definition.
type: string
maxLength: 35
cashAccountType:
$ref: "#/components/schemas/cashAccountType"
status:
$ref: "#/components/schemas/accountStatus"
bic:
$ref: "#/components/schemas/bicfi"
linkedAccounts:
description: Case of a set of pending card transactions, the APSP will provide the relevant cash account the card is set up on.
type: string
maxLength: 70
usage:
description: |
Specifies the usage of the account
* PRIV: private personal account
* ORGA: professional account
type: string
maxLength: 4
enum:
- "PRIV"
- "ORGA"
details:
description: |
Specifications that might be provided by the ASPSP
- characteristics of the account
- characteristics of the relevant card
type: string
maxLength: 140
balances:
$ref: "#/components/schemas/balanceList"
_links:
$ref: "#/components/schemas/_linksAccountDetails"
accountList:
description: |
List of accounts with details.
type: object
required:
- accounts
properties:
accounts:
type: array
items:
$ref: "#/components/schemas/accountDetails"
accountReport:
description: |
JSON based account report.
This account report contains transactions resulting from the query parameters.
type: object
required:
- _links
properties:
booked:
$ref: "#/components/schemas/transactionList"
pending:
$ref: "#/components/schemas/transactionList"
_links:
$ref: "#/components/schemas/_linksAccountReport"
transactionList:
description: Array of transaction details
type: array
items:
$ref: "#/components/schemas/transactionDetails"
transactionDetails:
description: Transaction details
type: object
required:
- transactionAmount
properties:
transactionId:
description: |
the Transaction Id can be used as access-ID in the API, where more details on an transaction is offered.
If this data attribute is provided this shows that the AIS can get access on more details about this
transaction using the GET Transaction Details Request
type: string
endToEndId:
description: Unique end to end identity.
type: string
maxLength: 35
mandateId:
description: Identification of Mandates, e.g. a SEPA Mandate ID.
type: string
maxLength: 35
checkId:
description: Identification of a Cheque.
type: string
maxLength: 35
creditorId:
description: Identification of Creditors, e.g. a SEPA Creditor ID.
type: string
maxLength: 35
bookingDate:
$ref: "#/components/schemas/bookingDate"
valueDate:
description: The Date at which assets become available to the account owner in case of a credit.
type: string
format: date
transactionAmount:
$ref: "#/components/schemas/amount"
currencyExchange:
$ref: "#/components/schemas/reportExchangeRateList"
creditorName:
$ref: "#/components/schemas/creditorName"
creditorAccount:
$ref: "#/components/schemas/accountReference"
ultimateCreditor:
$ref: "#/components/schemas/ultimateCreditor"
debtorName:
$ref: "#/components/schemas/debtorName"
debtorAccount:
$ref: "#/components/schemas/accountReference"
ultimateDebtor:
$ref: "#/components/schemas/ultimateDebtor"
remittanceInformationUnstructured:
$ref: "#/components/schemas/remittanceInformationUnstructured"
remittanceInformationStructured:
description: |
Reference as contained in the structured remittance reference structure (without the surrounding XML structure).
Different from other places the content is containt in plain form not in form of a structered field.
type: string
maxLength: 140
additionalInformation:
description: |
Additional transaction related information to the PSU.
type: string
maxLength: 512
purposeCode:
$ref: "#/components/schemas/purposeCode"
bankTransactionCode:
$ref: "#/components/schemas/bankTransactionCode"
proprietaryBankTransactionCode:
$ref: "#/components/schemas/proprietaryBankTransactionCode"
_links:
$ref: "#/components/schemas/_linksTransactionDetails"
reportExchangeRateList:
description: Array of exchange rates
type: array
items:
$ref: "#/components/schemas/reportExchangeRate"
reportExchangeRate:
description: Exchange Rate
type: object
required:
- sourceCurrency
- exchangeRate
- unitCurrency
- targetCurrency
- quotationDate
properties:
sourceCurrency:
$ref: "#/components/schemas/currencyCode"
exchangeRate:
type: string
unitCurrency:
type: string
targetCurrency:
$ref: "#/components/schemas/currencyCode"
quotationDate:
type: string
format: date
contractIdentification:
type: string
# paymentExchangeRate:
# description: Exchange Rate
# type: object
# properties:
# unitCurrency:
# type: string
# exchangeRate:
# type: string
# contractIdentification:
# type: string
# rateType:
# type: string
# enum:
# - "SPOT"
# - "SALE"
# - "AGRD"
balance:
description: |
A single balance element
type: object
required:
- balanceAmount
properties:
balanceAmount:
$ref: "#/components/schemas/amount"
balanceType:
$ref: "#/components/schemas/balanceType"
nonISOBalanceType:
$ref: "#/components/schemas/nonISOBalanceType"
lastChangeDateTime:
description: |
This data element might be used to indicate e.g. with the expected or booked balance that no action is known
on the account, which is not yet booked.
type: string
format: date-time
referenceDate:
description: Reference date of the balance
type: string
format: date
balanceList:
description: |
A list of balances regarding this account, e.g. the current balance, the last booked balance.
The list migght be restricted to the current ballance.
type: array
items:
$ref: "#/components/schemas/balance"
bicfi:
description: |
BICFI
type: string
pattern: "[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}"
example: "AAAADEBBXXX"
# pan:
# description: |
# Primary Account Number according to ISO/IEC 7812.
# type: string
# maxLength: 35
# #According to ISO the following should be valid.
#maxLength: 19
#minLength: 8
#pattern: "[0-9]{8,19}"
# example: "5409050000000000"
# maskedPan:
# description: |
# Masked Primary Account Number
# type: string
# maxLength: 35
# example: "123456xxxxxx1234"
bban:
description: |
Basic Bank Account Number (BBAN) Identifier
This data element can be used in the body of the Consent Request
Message for retrieving Account access Consent from this Account. This
data elements is used for payment Accounts which have no IBAN.
ISO20022: Basic Bank Account Number (BBAN).
Identifier used nationally by financial institutions, i.e., in individual countries,
generally as part of a National Account Numbering Scheme(s),
which uniquely identifies the account of a customer.
type: string
pattern: "[a-zA-Z0-9]{1,30}"
example: "BARC12345612345678"
msisdn:
type: string
maxLength: 35
description: Mobile phone number.
example: "+49 170 1234567"
email:
type: string
maxLength: 70
description: Email address.
example: john@server.com
taxid:
type: string
maxLength: 12
description: Tax ID.
example: HU1234567890
taxnr:
type: string
maxLength: 10
description: Tax number.
example: HU12345678
iban:
type: string
description: IBAN of an account
pattern: "[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}"
example: "FR7612345987650123456789014"
address:
type: object
required:
- country
properties:
street:
type: string
maxLength: 70
buildingNumber:
type: string
city:
type: string
postalCode:
type: string
country:
$ref: "#/components/schemas/countryCode"
example:
{
street: "rue blue",
buildingNumber: "89",
city: "Paris",
postalCode: "75000",
country: "FR"
}
countryCode:
description: ISO 3166 ALPHA2 country code
type: string
pattern: "[A-Z]{2}"
example: "SE"
# creditorNameAndAddress:
# description: Creditor Name and Address in a free text field
# type: string
# maxLength: 140
# example: "Max Masters, Main Street 1, 12345 City, Example Country"
amount:
type: object
required:
- currency
- amount
properties:
currency:
$ref: "#/components/schemas/currencyCode"
amount:
$ref: "#/components/schemas/amountValue"
example:
{
"currency": "EUR",
"amount": "123"
}
currencyCode:
description: |
ISO 4217 Alpha 3 currency code
type: string
pattern: "[A-Z]{3}"
example: "EUR"
amountValue:
description: |
The amount given with fractional digits, where fractions must be compliant to the currency definition.
Up to 14 significant figures. Negative amounts are signed by minus.
The decimal separator is a dot.
**Example:**
Valid representations for EUR with up to two decimals are:
* 1056
* 5768.2
* -1.50
* 5877.78
type: string
pattern: "-?[0-9]{1,14}(\\.[0-9]{1,3})?"
example: "5877.78"
# chargeBearer:
# description: Charge Bearer. ChargeBearerType1Code from ISO20022
# type: string
# enum:
# - "DEBT"
# - "CRED"
# - "SHAR"
# - "SLEV"
# remittanceInformationStructured:
# description: |
# Structured remittance information
# type: object
# required:
# - reference
# properties:
# reference:
# type: string
# referenceType:
# type: string
# maxLength: 35
# referenceIssuer:
# type: string
# maxLength: 35
remittanceInformationUnstructured:
description: |
Unstructured remittance information
type: string
maxLength: 140
example: "Ref Number Merchant"
# remittanceInformationUnstructuredArray:
# description: |
# Array of unstructured remittance information
# type: array
# items:
# $ref: "#/components/schemas/remittanceInformationUnstructured"
# example: ["Ref Number Merchant", "Some Other Text"]
#####################################################
# Predefined Text Formats
#####################################################
purposeCode:
description: |
ExternalPurpose1Code from ISO 20022.
Values from ISO 20022 External Code List ExternalCodeSets_1Q2018 June 2018.
type: string
enum:
- "BKDF"
- "BKFE"
- "BKFM"
- "BKIP"
- "BKPP"
- "CBLK"
- "CDCB"
- "CDCD"
- "CDCS"
- "CDDP"
- "CDOC"
- "CDQC"
- "ETUP"
- "FCOL"
- "MTUP"
- "ACCT"
- "CASH"
- "COLL"
- "CSDB"
- "DEPT"
- "INTC"
- "LIMA"
- "NETT"
- "BFWD"
- "CCIR"
- "CCPC"
- "CCPM"
- "CCSM"
- "CRDS"
- "CRPR"
- "CRSP"
- "CRTL"
- "EQPT"
- "EQUS"
- "EXPT"
- "EXTD"
- "FIXI"
- "FWBC"
- "FWCC"
- "FWSB"
- "FWSC"
- "MARG"
- "MBSB"
- "MBSC"
- "MGCC"
- "MGSC"
- "OCCC"
- "OPBC"
- "OPCC"
- "OPSB"
- "OPSC"
- "OPTN"
- "OTCD"
- "REPO"
- "RPBC"
- "RPCC"
- "RPSB"
- "RPSC"
- "RVPO"
- "SBSC"
- "SCIE"
- "SCIR"
- "SCRP"
- "SHBC"
- "SHCC"
- "SHSL"
- "SLEB"
- "SLOA"
- "SWBC"
- "SWCC"
- "SWPT"
- "SWSB"
- "SWSC"
- "TBAS"
- "TBBC"
- "TBCC"
- "TRCP"
- "AGRT"
- "AREN"
- "BEXP"
- "BOCE"
- "COMC"
- "CPYR"
- "GDDS"
- "GDSV"
- "GSCB"
- "LICF"
- "MP2B"
- "POPE"
- "ROYA"
- "SCVE"
- "SERV"
- "SUBS"
- "SUPP"
- "TRAD"
- "CHAR"
- "COMT"
- "MP2P"
- "ECPG"
- "ECPR"
- "ECPU"
- "EPAY"
- "CLPR"
- "COMP"
- "DBTC"
- "GOVI"
- "HLRP"
- "HLST"
- "INPC"
- "INPR"
- "INSC"
- "INSU"
- "INTE"
- "LBRI"
- "LIFI"
- "LOAN"
- "LOAR"
- "PENO"
- "PPTI"
- "RELG"
- "RINP"
- "TRFD"
- "FORW"
- "FXNT"
- "ADMG"
- "ADVA"
- "BCDM"
- "BCFG"
- "BLDM"
- "BNET"
- "CBFF"
- "CBFR"
- "CCRD"
- "CDBL"
- "CFEE"
- "CGDD"
- "CORT"
- "COST"
- "CPKC"
- "DCRD"
- "DSMT"
- "DVPM"
- "EDUC"
- "FACT"
- "FAND"
- "FCPM"
- "FEES"
- "GOVT"
- "ICCP"
- "IDCP"
- "IHRP"
- "INSM"
- "IVPT"
- "MCDM"
- "MCFG"
- "MSVC"
- "NOWS"
- "OCDM"
- "OCFG"
- "OFEE"
- "OTHR"
- "PADD"
- "PTSP"
- "RCKE"
- "RCPT"
- "REBT"
- "REFU"
- "RENT"
- "REOD"
- "RIMB"
- "RPNT"
- "RRBN"
- "RVPM"
- "SLPI"
- "SPLT"
- "STDY"
- "TBAN"
- "TBIL"
- "TCSC"
- "TELI"
- "TMPG"
- "TPRI"
- "TPRP"
- "TRNC"
- "TRVC"
- "WEBI"
- "ANNI"
- "CAFI"
- "CFDI"
- "CMDT"
- "DERI"
- "DIVD"
- "FREX"
- "HEDG"
- "INVS"
- "PRME"
- "SAVG"
- "SECU"
- "SEPI"
- "TREA"
- "UNIT"
- "FNET"
- "FUTR"
- "ANTS"
- "CVCF"
- "DMEQ"
- "DNTS"
- "HLTC"
- "HLTI"
- "HSPC"
- "ICRF"
- "LTCF"
- "MAFC"
- "MARF"
- "MDCS"
- "VIEW"
- "CDEP"
- "SWFP"
- "SWPP"
- "SWRS"
- "SWUF"
- "ADCS"
- "AEMP"
- "ALLW"
- "ALMY"
- "BBSC"
- "BECH"
- "BENE"
- "BONU"
- "CCHD"
- "COMM"
- "CSLP"
- "GFRP"
- "GVEA"
- "GVEB"
- "GVEC"
- "GVED"
- "GWLT"
- "HREC"
- "PAYR"
- "PEFC"
- "PENS"
- "PRCP"
- "RHBS"
- "SALA"
- "SSBE"
- "LBIN"
- "LCOL"
- "LFEE"
- "LMEQ"
- "LMFI"
- "LMRK"
- "LREB"
- "LREV"
- "LSFL"
- "ESTX"
- "FWLV"
- "GSTX"
- "HSTX"
- "INTX"
- "NITX"
- "PTXP"
- "RDTX"
- "TAXS"
- "VATX"
- "WHLD"
- "TAXR"
- "B112"
- "BR12"
- "TLRF"
- "TLRR"
- "AIRB"
- "BUSB"
- "FERB"
- "RLWY"
- "TRPT"
- "CBTV"
- "ELEC"
- "ENRG"
- "GASB"
- "NWCH"
- "NWCM"
- "OTLC"
- "PHON"
- "UBIL"
- "WTER"
bankTransactionCode:
description: |
Bank transaction code as used by the ASPSP and using the sub elements of this structured code defined by ISO 20022.
This code type is concatenating the three ISO20022 Codes
* Domain Code,
* Family Code, and
* SubFamiliy Code
by hyphens, resulting in �DomainCode�-�FamilyCode�-�SubFamilyCode�.
type: string
example: "PMNT-RCDT-ESCT"
proprietaryBankTransactionCode:
description: |
Proprietary bank transaction code as used within a community or within an ASPSP e.g.
for MT94x based transaction reports.
type: string
maxLength: 35
# merchantCategoryCode:
# description: Merchant category code
# type: string
# maxLength: 4
# minLength: 4
frequencyCode:
description: |
The following codes from the "EventFrequency7Code" of ISO 20022 are supported.
- "Daily"
- "Weekly"
- "Monthly"
# - "EveryTwoMonths"
- "Quarterly"
- "SemiAnnual"
- "Annual"
type: string
enum:
- "Daily"
- "Weekly"
- "Monthly"
# - "EveryTwoMonths"
- "Quarterly"
- "SemiAnnual"
- "Annual"
frequencyPerDay:
description: |
This field indicates the requested maximum frequency for an access without PSU involvement per day.
For a one-off access, this attribute is set to "1".
The frequency needs to be greater equal to one.
If not otherwise agreed bilaterally between Client and ASPSP, the frequency is less equal to 4.
type: integer
example: 4
minimum: 1
exclusiveMinimum: false
# maximum: 15
# exclusiveMaximum: false
# dayOfExecution:
# description: |
# Day of execution as string.
#
# This string consists of up two characters.
# Leading zeroes are not allowed.
#
# 31 is ultimo of the month.
# type: string
# maxLength: 2
# enum:
# - "1"
# - "2"
# - "3"
# - "4"
# - "5"
# - "6"
# - "7"
# - "8"
# - "9"
# - "10"
# - "11"
# - "12"
# - "13"
# - "14"
# - "15"
# - "16"
# - "17"
# - "18"
# - "19"
# - "20"
# - "21"
# - "22"
# - "23"
# - "24"
# - "25"
# - "26"
# - "27"
# - "28"
# - "29"
# - "30"
# - "31"
# executionRule:
# description: |
# "following" or "preceding" supported as values.
# This data attribute defines the behaviour when recurring payment dates falls on a weekend or bank holiday.
# The payment is then executed either the "preceding" or "following" working day.
# type: string
# enum:
# - "following"
# - "preceding"
psuData:
description: PSU Data for Update PSU Authentication.
type: object
minProperties: 1
properties:
password:
description: Password
type: string
encryptedPassword:
description: Encrypted password.
type: string
additionalPassword:
description: Additional password in plaintext
type: string
additionalEncryptedPassword:
description: Additional encrypted password
type: string
psuMessageText:
description: Text to be displayed to the PSU
type: string
maxLength: 512
creditorName:
description: Creditor Name
type: string
maxLength: 70
example: "Creditor Name"
creditorAgentName:
description: Creditor Agent Name
type: string
maxLength: 70
example: "Creditor Agent Name"
debtorName:
description: Debtor Name
type: string
maxLength: 70
example: "Debtor Name"
ultimateDebtor:
description: Ultimate Debtor
type: string
maxLength: 70
example: "Ultimate Debtor"
# debtorId:
# description: Debtor Id
# type: string
# maxLength: 35
# example: "Debtor Id 1234"
ultimateCreditor:
description: Ultimate Creditor
type: string
maxLength: 70
example: "Ultimate Creditor"
#####################################################
# Predefined Date and Time Related Formats
#####################################################
# transactionDate:
# description: Date of the actual card transaction
# type: string
# format: date
startDate:
description: |
The first applicable day of execution starting from this date is the first payment.
type: string
format: date
endDate:
description: |
The last applicable day of execution
If not given, it is an infinite standing order.
type: string
format: date
bookingDate:
description: |
The Date when an entry is posted to an account on the ASPSPs books.
type: string
format: date
validUntil:
description: |
This parameter is requesting a valid until date for the requested consent.
The content is the local ASPSP date in ISO-Date Format, e.g. 2017-10-30.
Future dates might get adjusted by ASPSP.
If a maximal available date is requested, a date in far future is to be used: "9999-12-31".
In both cases the consent object to be retrieved by the GET Consent Request will contain the adjusted date.
type: string
format: date
example: "2020-12-31"
lastActionDate:
description: |
This date is containing the date of the last action on the consent object either through
the XS2A interface or the PSU/ASPSP interface having an impact on the status.
type: string
format: date
example: "2018-07-01"
#####################################################
# Content of Request Bodies
#####################################################
#####################################################
# Content of Request Bodies - JSON
#####################################################
paymentInitiation_json:
description: |
Generic Body for a payment initation via JSON.
This generic JSON body can be used to represent valid payment initiations for the following JSON based payment product,
which where defined in the Implementation Guidelines:
* hungarian-credit-transfers
* sepa-credit-transfers
* instant-sepa-credit-transfers
* cross-border-credit-transfers
For the convenience of the implementer additional which are already predefinded in the Implementation Guidelines
are included (but commented in source code), such that an ASPSP may add them easily.
Take care: Since the format is intended to fit for all payment products
there are additional conditions which are NOT covered by this specification.
Please check the Implementation Guidelines for detailes.
type: object
required:
- debtorAccount
- instructedAmount
- creditorAccount
- creditorName
properties:
endToEndIdentification:
type: string
maxLength: 35
debtorAccount:
$ref: "#/components/schemas/accountReference"
# debtorId: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/ultimateDebtor"
# ultimateDebtor: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/ultimateDebtor"
instructedAmount:
$ref: "#/components/schemas/amount"
# transactionCurrency: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/currencyCode"
# exchangeRateInformation: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/paymentExchangeRate"
creditorAccount:
$ref: "#/components/schemas/accountReference"
creditorAgent:
$ref: "#/components/schemas/bicfi"
creditorAgentName:
$ref: "#/components/schemas/creditorAgentName"
creditorName:
$ref: "#/components/schemas/creditorName"
creditorAddress:
$ref: "#/components/schemas/address"
# creditorNameAndAddress: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/creditorNameAndAddress"
# ultimateCreditor: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/ultimateCreditor"
# purposeCode: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/purposeCode"
# chargeBearer: #In some payment product N.A. in some Optional in some conditional
# $ref: "#/components/schemas/chargeBearer"
remittanceInformationUnstructured:
$ref: "#/components/schemas/remittanceInformationUnstructured"
# remittanceInformationUnstructuredArray:
# $ref: "#/components/schemas/remittanceInformationUnstructuredArray"
# remittanceInformationStructured: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/remittanceInformationStructured"
requestedExecutionDate: # N.A. for all, but can be used by ASPSP if needed
type: string
format: date
# requestedExecutionTime: # N.A. for all, but can be used by ASPSP if needed
# type: string
# format: date-time
paymentInitiationBulkElement_json:
description: |
Generic body for a bulk payment initation entry.
The bulk entry type is a type which follows the JSON formats for the supported products for single payments
excluding the data elements (if supported):
* debtorAccount
* requestedExecutionDate,
These data elements may not be contained in any bulk entry.
This data object can be used to represent valid bulk payment initiations entry for the following JSON based payment product,
which where defined in the Implementation Guidelines:
* hungarian-credit-transfers
* sepa-credit-transfers
* instant-sepa-credit-transfers
* cross-border-credit-transfers
For the convenience of the implementer additional which are already predefinded in the Implementation Guidelines
are included (but commented in source code), such that an ASPSP may add them easily.
Take care: Since the format is intended to fit for all payment products
there are additional conditions which are NOT covered by this specification.
Please check the Implementation Guidelines for detailes.
type: object
required:
- instructedAmount
- creditorAccount
- creditorName
properties:
endToEndIdentification:
type: string
maxLength: 35
# ultimateDebtor: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/ultimateDebtor"
instructedAmount:
$ref: "#/components/schemas/amount"
# transactionCurrency: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/currencyCode"
# exchangeRateInformation: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/paymentExchangeRate"
creditorAccount:
$ref: "#/components/schemas/accountReference"
creditorAgent:
$ref: "#/components/schemas/bicfi"
creditorAgentName:
$ref: "#/components/schemas/creditorAgentName"
creditorName:
$ref: "#/components/schemas/creditorName"
creditorAddress:
$ref: "#/components/schemas/address"
# creditorNameAndAddress: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/creditorNameAndAddress"
# ultimateCreditor: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/ultimateCreditor"
# purposeCode: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/purposeCode"
# chargeBearer: #In some payment product N.A. in some Optional in some conditional
# $ref: "#/components/schemas/chargeBearer"
remittanceInformationUnstructured:
$ref: "#/components/schemas/remittanceInformationUnstructured"
# remittanceInformationUnstructuredArray:
# $ref: "#/components/schemas/remittanceInformationUnstructuredArray"
# remittanceInformationStructured: # N.A. for all, but can be used by ASPSP if needed
# $ref: "#/components/schemas/remittanceInformationStructured"
periodicPaymentInitiation_json:
description: |
Generic Body for a periodic payment initation via JSON.
This generic JSON body can be used to represent valid periodic payment initiations for the following JSON based payment product,
which where defined in the Implementation Guidelines:
* hungarian-credit-transfers
* sepa-credit-transfers
* cross-border-credit-transfers
For the convenience of the implementer additional which are already predefinded in the Implementation Guidelines
are included (but commented in source code), such that an ASPSP may add them easily.
Take care: Since the format is intended to fit for all payment products
there are additional conditions which are NOT covered by this specification.
Please check the Implementation Guidelines for detailes.
type: object
required:
- debtorAccount
- instructedAmount
- creditorAccount
- creditorName
- startDate
- frequency
properties:
endToEndIdentification:
type: string
maxLength: 35
debtorAccount:
$ref: "#/components/schemas/accountReference"
# ultimateDebtor: # N.A.
# $ref: "#/components/schemas/ultimateDebtor"
instructedAmount:
$ref: "#/components/schemas/amount"
creditorAccount:
$ref: "#/components/schemas/accountReference"
creditorAgent:
$ref: "#/components/schemas/bicfi"
creditorName:
$ref: "#/components/schemas/creditorName"
creditorAddress:
$ref: "#/components/schemas/address"
# ultimateCreditor: # N.A.
# $ref: "#/components/schemas/ultimateCreditor"
# purposeCode: # N.A.
# $ref: "#/components/schemas/purposeCode"
remittanceInformationUnstructured:
$ref: "#/components/schemas/remittanceInformationUnstructured"
# remittanceInformationUnstructuredArray:
# $ref: "#/components/schemas/remittanceInformationUnstructuredArray"
# remittanceInformationStructured: # N.A.
# $ref: "#/components/schemas/remittanceInformationStructured"
# requestedExecutionDate: # N.A.
# type: string
# format: date
# requestedExecutionTime: # N.A.
# type: string
# format: date-time
#Additional Information for periodic payments
startDate:
$ref: "#/components/schemas/startDate"
endDate:
$ref: "#/components/schemas/endDate"
# executionRule:
# $ref: "#/components/schemas/executionRule"
frequency:
$ref: "#/components/schemas/frequencyCode"
# dayOfExecution:
# $ref: "#/components/schemas/dayOfExecution"
bulkPaymentInitiation_json:
description: |
Generic Body for a bulk payment initation via JSON.
type: object
required:
- payments
- debtorAccount
#- paymentInformationId
properties:
# batchBookingPreferred:
# $ref: "#/components/schemas/batchBookingPreferred"
debtorAccount:
$ref: "#/components/schemas/accountReference"
# paymentInformationId:
# description: |
# Unique identification as assigned by the sending party to unambiguously identify this bulk payment.
# type: string
# maxLength: 35
requestedExecutionDate:
type: string
format: date
requestedExecutionTime:
type: string
format: date-time
payments:
description: |
A list of generic JSON bodies payment initations for bulk payments via JSON.
Note: Some fields from single payments do not occcur in a bulk payment element
type: array
items:
$ref: "#/components/schemas/paymentInitiationBulkElement_json"
consents:
description: |
Content of the body of a consent request.
type: object
required:
- access
- recurringIndicator
- validUntil
- frequencyPerDay
- combinedServiceIndicator
properties:
access:
$ref: "#/components/schemas/accountAccess"
recurringIndicator:
$ref: "#/components/schemas/recurringIndicator"
validUntil:
$ref: "#/components/schemas/validUntil"
frequencyPerDay:
$ref: "#/components/schemas/frequencyPerDay"
combinedServiceIndicator:
description: |
If "true" indicates that a payment initiation service will be addressed in the same "session".
type: boolean
example: false
updatePsuAuthentication:
description: |
Content of the body of a Update PSU Authentication Request
Password subfield is used.
type: object
required:
- psuData
properties:
psuData:
$ref: "#/components/schemas/psuData"
selectPsuAuthenticationMethod:
description: |
Content of the body of a Select PSU Authentication Method Request
type: object
required:
- authenticationMethodId
properties:
authenticationMethodId:
$ref: "#/components/schemas/authenticationMethodId"
transactionAuthorisation:
description: |
Content of the body of a Transaction Authorisation Request
type: object
required:
- scaAuthenticationData
properties:
scaAuthenticationData:
$ref: "#/components/schemas/scaAuthenticationData"
#####################################################
# Content of Request Bodies - XML
#####################################################
#####################################################
# Content of Request Bodies - Single Part
#####################################################
paymentInitiationHct_pain.001:
description: |
A pain.001 structure corresponding to the HCT schema
See Hungarian Credit Transfer standard (www.giro.hu).
urn:iso:std:iso:20022:tech:xsd:pain.001.001.03
type: string
paymentInitiationSct_pain.001: #The same schemas are use for single an bulk payment in case of a pain.001
description: |
A pain.001 structure corresponding to the SCT schema
urn:iso:std:iso:20022:tech:xsd:pain.001.001.03
type: string
example:
MIPI-123456789RI-123456789
2017-02-14T20:23:34.000Z
1
123
PaymentInitiator
DE10000000012
PISP
BIPI-123456789RI-123456789
TRF
1
123
SEPA
2017-02-15
PSU Name
HU88999999999999999999999999
SLEV
RI-123456789
123
Merchant123
DE23100120020123456789
Ref Number Merchant-123456
paymentInitiationCrossBorder_pain.001: #The same schemas are use for single an bulk payment in case of a pain.001
description: |
A pain.001 structure corresponding to the cross-border schema
For cross-border payments only community wide pain.001 schemes do exist.
type: string
#####################################################
# Content of Request Bodies - XML -Multipart
#####################################################
periodicPaymentInitiationMultipartBody:
description: |
The multipart message definition for the initiation of a periodic payment initiation
where the information of the payment is contained in an pain.001 message (Part 1) and
the additional informations related to the periodic payment is an additional JSON message (Part 2).
type: object
properties:
xml_sct: #PART 1
oneOf: #The same schemas are used for single and bulk payment in case of a pain.001
- $ref: "#/components/schemas/paymentInitiationHct_pain.001"
#- $ref: "#/components/schemas/paymentInitiationSct_pain.001"
#- $ref: "#/components/schemas/paymentInitiationCrossBorder_pain.001"
json_standingorderType: #PART 2
$ref: "#/components/schemas/periodicPaymentInitiation_xml-Part2-standingorderType_json"
periodicPaymentInitiation_xml-Part2-standingorderType_json:
description: |
The body part 2 of a periodic payment initation request containes the execution related informations
of the periodic payment.
type: object
required:
- startDate
- frequency
properties:
startDate:
$ref: "#/components/schemas/startDate"
endDate:
$ref: "#/components/schemas/endDate"
# executionRule:
# $ref: "#/components/schemas/executionRule"
frequency:
$ref: "#/components/schemas/frequencyCode"
# dayOfExecution:
# $ref: "#/components/schemas/dayOfExecution"
#####################################################
# Content of Response Bodies
#####################################################
paymentInitiationStatusResponse-200_json:
description: Body of the response for a successful payment initiation status request in case of an JSON based endpoint.
type: object
required:
- transactionStatus
properties:
transactionStatus:
$ref: "#/components/schemas/transactionStatus"
paymentInitiationStatusResponse-200_xml:
description: |
Body of the response for a successful payment initiation status request in case of an XML based endpoint.
The status is returned as a pain.002 structure.
urn:iso:std:iso:20022:tech:xsd:pain.002.001.03
The chosen XML schema of the Status Request is following the XML schema definitions of the original pain.001 schema.
(https://www.iso20022.org/iso-20022-message-definitions)
type: string
paymentInitationRequestResponse-201:
description: Body of the response for a successful payment initiation request.
type: object
required:
- transactionStatus
- paymentId
- _links
properties:
transactionStatus:
$ref: "#/components/schemas/transactionStatus"
paymentId:
$ref: "#/components/schemas/paymentId"
transactionFees:
# description: Can be used by the ASPSP to transport transaction fees relevant for the underlying payments.
$ref: "#/components/schemas/amount"
transactionFeeIndicator:
$ref: "#/components/schemas/transactionFeeIndicator"
scaMethods:
$ref: "#/components/schemas/scaMethods"
chosenScaMethod:
$ref: "#/components/schemas/chosenScaMethod"
challengeData:
$ref: "#/components/schemas/challengeData"
_links:
$ref: "#/components/schemas/_linksPaymentInitiation"
psuMessage:
$ref: "#/components/schemas/psuMessageText"
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage2XX"
importRequestResponse-20x:
description: Body of the response for a successful file import request.
type: object
required:
- importId
- paymentIds
properties:
importId:
type: string
paymentIds:
type: array
minItems: 1
items:
$ref: "#/components/schemas/paymentInitationRequestResponse-201"
importFile-200:
description: Original import file uploaded by the caller.
type: string
format: binary
adviceList-200:
description: List of available advices.
type: array
minItems: 0
items:
$ref: "#/components/schemas/adviceListItem-200"
adviceListItem-200:
description: Details of an advice.
type: object
required:
- date
- type
- adviceId
- _links
properties:
date:
type: string
format: date
type:
type: string
maxLength: 3
adviceId:
type: string
_links:
$ref: "#/components/schemas/hrefType"
adviceFile-200:
description: Advice file
type: string
format: binary
paymentInitiationWithStatusResponse:
description: |
Generic JSON response body consistion of the corresponding payment initation JSON body together with an optional transaction status field.
type: object
required:
- debtorAccount
- instructedAmount
- creditorAccount
- creditorName
properties:
endToEndIdentification:
type: string
maxLength: 35
debtorAccount:
$ref: "#/components/schemas/accountReference"
# ultimateDebtor: # N.A.
# $ref: "#/components/schemas/ultimateDebtor"
instructedAmount:
$ref: "#/components/schemas/amount"
creditorAccount:
$ref: "#/components/schemas/accountReference"
creditorAgent:
$ref: "#/components/schemas/bicfi"
creditorName:
$ref: "#/components/schemas/creditorName"
creditorAddress:
$ref: "#/components/schemas/address"
# ultimateCreditor: # N.A.
# $ref: "#/components/schemas/ultimateCreditor"
# purposeCode: # N.A.
# $ref: "#/components/schemas/purposeCode"
remittanceInformationUnstructured:
$ref: "#/components/schemas/remittanceInformationUnstructured"
# remittanceInformationUnstructuredArray:
# $ref: "#/components/schemas/remittanceInformationUnstructuredArray"
# remittanceInformationStructured: # N.A.
# $ref: "#/components/schemas/remittanceInformationStructured"
requestedExecutionDate: # N.A.
type: string
format: date
# requestedExecutionTime: # N.A.
# type: string
# format: date-time
transactionStatus:
$ref: "#/components/schemas/transactionStatus"
periodicPaymentInitiationWithStatusResponse:
description: |
Generic JSON response body consistion of the corresponding periodic payment initation JSON body together with an optional transaction status field.
type: object
required:
- debtorAccount
- instructedAmount
- creditorAccount
- creditorName
- startDate
- frequency
properties:
endToEndIdentification:
type: string
maxLength: 35
debtorAccount:
$ref: "#/components/schemas/accountReference"
# ultimateDebtor: # N.A.
# $ref: "#/components/schemas/ultimateDebtor"
instructedAmount:
$ref: "#/components/schemas/amount"
creditorAccount:
$ref: "#/components/schemas/accountReference"
creditorAgent:
$ref: "#/components/schemas/bicfi"
creditorName:
$ref: "#/components/schemas/creditorName"
creditorAddress:
$ref: "#/components/schemas/address"
# ultimateCreditor: # N.A.
# $ref: "#/components/schemas/ultimateCreditor"
# purposeCode: # N.A.
# $ref: "#/components/schemas/purposeCode"
remittanceInformationUnstructured:
$ref: "#/components/schemas/remittanceInformationUnstructured"
# remittanceInformationUnstructuredArray:
# $ref: "#/components/schemas/remittanceInformationUnstructuredArray"
# remittanceInformationStructured: # N.A.
# $ref: "#/components/schemas/remittanceInformationStructured"
# requestedExecutionDate:
# type: string
# format: date
# requestedExecutionTime:
# type: string
# format: date-time
#Additional Information for periodic payments
startDate:
$ref: "#/components/schemas/startDate"
endDate:
$ref: "#/components/schemas/endDate"
# executionRule:
# $ref: "#/components/schemas/executionRule"
frequency:
$ref: "#/components/schemas/frequencyCode"
# dayOfExecution:
# $ref: "#/components/schemas/dayOfExecution"
transactionStatus:
$ref: "#/components/schemas/transactionStatus"
bulkPaymentInitiationWithStatusResponse:
description: |
Generic JSON response body consistion of the corresponding bulk payment initation JSON body together with an optional transaction status field.
type: object
required:
- payments
- debtorAccount
properties:
# batchBookingPreferred:
# $ref: "#/components/schemas/batchBookingPreferred"
requestedExecutionDate:
type: string
format: date
debtorAccount:
$ref: "#/components/schemas/accountReference"
payments:
description: |
A list of generic JSON bodies payment initations for bulk payments via JSON.
Note: Some fields from single payments do not occcur in a bulk payment element
type: array
items:
$ref: "#/components/schemas/paymentInitiationBulkElement_json"
transactionStatus:
$ref: "#/components/schemas/transactionStatus"
scaStatusResponse:
description: Body of the JSON response with SCA Status
type: object
properties:
scaStatus:
$ref: "#/components/schemas/scaStatus"
startScaprocessResponse:
description: Body of the JSON response for a Start SCA authorisation request.
type: object
required:
- scaStatus
- authorisationId
- _links
properties:
scaStatus:
$ref: "#/components/schemas/scaStatus"
authorisationId:
$ref: "#/components/schemas/authorisationId"
scaMethods:
$ref: "#/components/schemas/scaMethods"
chosenScaMethod:
$ref: "#/components/schemas/chosenScaMethod"
challengeData:
$ref: "#/components/schemas/challengeData"
_links:
$ref: "#/components/schemas/_linksStartScaProcess"
psuMessage:
$ref: "#/components/schemas/psuMessageText"
updatePsuIdenticationResponse:
description: Body of the JSON response for a successful update PSU Identification request.
type: object
required:
- _links
- scaStatus
properties:
scaMethods:
$ref: "#/components/schemas/scaMethods"
_links:
$ref: "#/components/schemas/_linksUpdatePsuIdentification"
scaStatus:
$ref: "#/components/schemas/scaStatus"
psuMessage:
$ref: "#/components/schemas/psuMessageText"
updatePsuAuthenticationResponse:
description: Body of the JSON response for a successful update PSU Authentication request.
type: object
required:
- scaStatus
properties:
chosenScaMethod:
$ref: "#/components/schemas/chosenScaMethod"
challengeData:
$ref: "#/components/schemas/challengeData"
scaMethods:
$ref: "#/components/schemas/scaMethods"
_links:
$ref: "#/components/schemas/_linksUpdatePsuAuthentication"
scaStatus:
$ref: "#/components/schemas/scaStatus"
psuMessage:
$ref: "#/components/schemas/psuMessageText"
selectPsuAuthenticationMethodResponse:
description: Body of the JSON response for a successful select PSU Authentication Method request.
type: object
required:
- scaStatus
properties:
chosenScaMethod:
$ref: "#/components/schemas/chosenScaMethod"
challengeData:
$ref: "#/components/schemas/challengeData"
_links:
$ref: "#/components/schemas/_linksSelectPsuAuthenticationMethod"
scaStatus:
$ref: "#/components/schemas/scaStatus"
psuMessage:
$ref: "#/components/schemas/psuMessageText"
consentsResponse-201:
description: Body of the JSON response for a successful conset request.
type: object
required:
- consentStatus
- consentId
- _links
properties:
consentStatus:
$ref: "#/components/schemas/consentStatus"
consentId:
$ref: "#/components/schemas/consentId"
scaMethods:
$ref: "#/components/schemas/scaMethods"
chosenScaMethod:
$ref: "#/components/schemas/chosenScaMethod"
challengeData:
$ref: "#/components/schemas/challengeData"
_links:
$ref: "#/components/schemas/_linksConsents"
message:
description: Text to be displayed to the PSU, e.g. in a Decoupled SCA Approach.
type: string
maxLength: 512
consentStatusResponse-200:
description: Body of the JSON response for a successful get status request for a consent.
type: object
required:
- consentStatus
properties:
consentStatus:
$ref: "#/components/schemas/consentStatus"
consentInformationResponse-200_json:
description: Body of the JSON response for a successfull get consent request.
type: object
required:
- access
- recurringIndicator
- validUntil
- frequencyPerDay
- lastActionDate
- consentStatus
properties:
access:
$ref: "#/components/schemas/accountAccess"
recurringIndicator:
$ref: "#/components/schemas/recurringIndicator"
validUntil:
$ref: "#/components/schemas/validUntil"
frequencyPerDay:
$ref: "#/components/schemas/frequencyPerDay"
lastActionDate:
$ref: "#/components/schemas/lastActionDate"
consentStatus:
$ref: "#/components/schemas/consentStatus"
_links:
$ref: "#/components/schemas/_linksGetConsent"
readAccountBalanceResponse-200:
description: Body of the response for a successful read balance for an account request.
type: object
required:
- balances
properties:
account:
$ref: "#/components/schemas/accountReference"
balances:
$ref: "#/components/schemas/balanceList"
transactionsResponse-200_json:
description: |
Body of the JSON response for a successful read transaction list request.
This account report contains transactions resulting from the query parameters.
type: object
properties:
account:
$ref: "#/components/schemas/accountReference"
transactions:
$ref: "#/components/schemas/accountReport"
balances:
$ref: "#/components/schemas/balanceList"
camt.052:
description: |
camt.052 XML message
type: string
camt.053:
description: |
camt.053 XML message
type: string
camt.054:
description: |
camt.054 XML message
type: string
#####################################################
# _links
#####################################################
_linksAll:
description: |
A _link object with all availabel link types
type: object
additionalProperties:
$ref: "#/components/schemas/hrefType"
properties:
scaOAuth:
$ref: "#/components/schemas/hrefType"
startAuthorisation:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithPsuIdentification:
$ref: "#/components/schemas/hrefType"
updatePsuIdentification:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithProprietaryData:
$ref: "#/components/schemas/hrefType"
updateProprietaryData:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithPsuAuthentication:
$ref: "#/components/schemas/hrefType"
updatePsuAuthentication:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithEncryptedPsuAuthentication:
$ref: "#/components/schemas/hrefType"
updateEncryptedPsuAuthentication:
$ref: "#/components/schemas/hrefType"
updateAdditionalPsuAuthentication:
$ref: "#/components/schemas/hrefType"
updateAdditionalEncryptedPsuAuthentication:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithAuthenticationMethodSelection:
$ref: "#/components/schemas/hrefType"
selectAuthenticationMethod:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithTransactionAuthorisation:
$ref: "#/components/schemas/hrefType"
authoriseTransaction:
$ref: "#/components/schemas/hrefType"
self:
$ref: "#/components/schemas/hrefType"
status:
$ref: "#/components/schemas/hrefType"
scaStatus:
$ref: "#/components/schemas/hrefType"
account:
$ref: "#/components/schemas/hrefType"
balances:
$ref: "#/components/schemas/hrefType"
transactions:
$ref: "#/components/schemas/hrefType"
transactionDetails:
$ref: "#/components/schemas/hrefType"
first:
$ref: "#/components/schemas/hrefType"
next:
$ref: "#/components/schemas/hrefType"
previous:
$ref: "#/components/schemas/hrefType"
last:
$ref: "#/components/schemas/hrefType"
fromCommonArea:
$ref: "#/components/schemas/hrefType"
_linksPaymentInitiation:
description: |
A list of hyperlinks to be recognised by the Client.
The actual hyperlinks used in the response depend on the dynamical decisions of the ASPSP when
processing the request.
**Remark:** All links can be relative or full links, to be decided by the ASPSP.
Type of links admitted in this response, (further links might be added for ASPSP defined extensions):
# * 'scaRedirect':
# In case of an SCA Redirect Approach, the ASPSP is transmitting the link to which to redirect the PSU browser.
* 'scaOAuth':
In case of a SCA OAuth2 Approach, the ASPSP is transmitting the URI where the configuration of the Authorisation
Server can be retrieved. The configuration follows the OAuth 2.0 Authorisation Server Metadata specification.
* 'startAuthorisation':
In case, where an explicit start of the transaction authorisation is needed, but no more data needs to be updated
(no authentication method to be selected, no PSU identification nor PSU authentication data to be uploaded).
* 'startAuthorisationWithPsuIdentification':
The link to the authorisation end-point, where the authorisation sub-resource has to be generated while
uploading the PSU identification data.
* 'startAuthorisationWithPsuAuthentication':
The link to the authorisation end-point, where the authorisation sub-resource has to be generated while
uploading the PSU authentication data.
* 'startAuthorisationWithEncryptedPsuAuthentication':
Same as startAuthorisactionWithPsuAuthentication where the authentication data need to be encrypted on
application layer in uploading.
* 'startAuthorisationWithAuthenticationMethodSelection':
The link to the authorisation end-point, where the authorisation sub-resource has to be generated while
selecting the authentication method.
This link is contained under exactly the same conditions as the data element "scaMethods"
* 'startAuthorisationWithTransactionAuthorisation':
The link to the authorisation end-point, where the authorisation sub-resource has to be generated while
authorising the transaction e.g. by uploading an OTP received by SMS.
* 'self':
The link to the payment initiation resource created by this request.
This link can be used to retrieve the resource data.
* 'status':
The link to retrieve the transaction status of the payment initiation.
* 'scaStatus':
The link to retrieve the scaStatus of the corresponding authorisation sub-resource.
This link is only contained, if an authorisation sub-resource has been already created.
type: object
additionalProperties:
$ref: "#/components/schemas/hrefType"
properties:
# scaRedirect:
# $ref: "#/components/schemas/hrefType"
scaOAuth:
$ref: "#/components/schemas/hrefType"
startAuthorisation:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithPsuIdentification:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithPsuAuthentication:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithEncryptedPsuAuthentication:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithAuthenticationMethodSelection:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithTransactionAuthorisation:
$ref: "#/components/schemas/hrefType"
self:
$ref: "#/components/schemas/hrefType"
status:
$ref: "#/components/schemas/hrefType"
scaStatus:
$ref: "#/components/schemas/hrefType"
example:
{
"scaRedirect": {"href": "https://www.testbank.com/asdfasdfasdf"},
"self": {"href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"}
}
_linksUpdatePsuIdentification:
description: |
A list of hyperlinks to be recognised by the Client. The actual hyperlinks used in the response depend on the dynamical decisions of the ASPSP when processing the request.
**Remark:** All links can be relative or full links.
Type of links admitted in this response:
- 'scaStatus': The link to retrieve the scaStatus of the corresponding authorisation sub-resource.
- 'selectAuthenticationMethod': This is a link to a resource, where the Client can select the applicable second factor authentication methods for the PSU, if there are several available authentication methods and if the PSU is already sufficiently authenticated.. If this link is contained, then there is also the data element "scaMethods" contained in the response body
type: object
additionalProperties:
$ref: "#/components/schemas/hrefType"
properties:
scaStatus:
$ref: "#/components/schemas/hrefType"
selectAuthenticationMethod:
$ref: "#/components/schemas/hrefType"
_linksUpdatePsuAuthentication:
description: |
A list of hyperlinks to be recognised by the Client. Might be contained, if several authentication methods
are available for the PSU.
Type of links admitted in this response:
* 'updateAdditionalPsuAuthentication':
The link to the payment initiation or account information resource,
which needs to be updated by an additional PSU password.
This link is only contained in rare cases,
where such additional passwords are needed for PSU authentications.
* 'updateAdditionalEncryptedPsuAuthentication':
The link to the payment initiation or account information resource,
which needs to be updated by an additional encrypted PSU password.
This link is only contained in rare cases, where such additional passwords are needed for PSU authentications.
* 'selectAuthenticationMethod':
This is a link to a resource, where the Client can select the applicable second factor authentication
methods for the PSU, if there were several available authentication methods.
This link is only contained, if the PSU is already identified or authenticated with the first relevant
factor or alternatively an access token, if SCA is required and if the PSU has a choice between different
authentication methods.
If this link is contained, then there is also the data element 'scaMethods' contained in the response body.
* 'authoriseTransaction':
The link to the resource, where the "Transaction Authorisation Request" is sent to.
This is the link to the resource which will authorise the transaction by checking the SCA authentication
data within the Embedded SCA approach.
* 'scaStatus':
The link to retrieve the scaStatus of the corresponding authorisation sub-resource.
type: object
additionalProperties:
$ref: "#/components/schemas/hrefType"
properties:
updateAdditionalPsuAuthentication:
$ref: "#/components/schemas/hrefType"
updateAdditionalEncryptedPsuAuthentication:
$ref: "#/components/schemas/hrefType"
selectAuthenticationMethod:
$ref: "#/components/schemas/hrefType"
authoriseTransaction:
$ref: "#/components/schemas/hrefType"
scaStatus:
$ref: "#/components/schemas/hrefType"
_linksSelectPsuAuthenticationMethod:
description: |
A list of hyperlinks to be recognised by the Client. The actual hyperlinks used in
the response depend on the dynamical decisions of the ASPSP when processing the request.
**Remark:** All links can be relative or full links.
**Remark:** This method can be applied before or after PSU identification.
This leads to many possible hyperlink responses.
Type of links admitted in this response:
#- "scaRedirect":
# In case of an SCA Redirect Approach, the ASPSP is transmitting the link to which to
# redirect the PSU browser.
- 'scaOAuth':
In case of a SCA OAuth2 Approach, the ASPSP is transmitting the URI where the
configuration of the Authorisation Server can be retrieved.
The configuration follows the OAuth 2.0 Authorisation Server Metadata specification.
- 'updatePsuIdentification':
The link to the authorisation sub-resource,
where PSU identification data needs to be uploaded.
- 'updatePsuAuthentication':
The link to the authorisation sub-resource,
where PSU authentication data needs to be uploaded.
- 'updateEncryptedPsuAuthentication':
The link to the authorisation sub-resource,
where PSU authentication encrypted data needs to be uploaded.
- 'updateAdditionalPsuAuthentication':
The link to the payment initiation or account information resource,
which needs to be updated by an additional PSU password.
- 'updateAdditionalEncryptedPsuAuthentication':
The link to the payment initiation or account information resource,
which needs to be updated by an additional encrypted PSU password.
- 'authoriseTransaction':
The link to the authorisation sub-resource,
where the authorisation data has to be uploaded, e.g. the TOP received by SMS.
- 'scaStatus':
The link to retrieve the scaStatus of the corresponding authorisation sub-resource.
type: object
additionalProperties:
$ref: "#/components/schemas/hrefType"
properties:
# scaRedirect:
# $ref: "#/components/schemas/hrefType"
scaOAuth:
$ref: "#/components/schemas/hrefType"
updatePsuIdentification:
$ref: "#/components/schemas/hrefType"
updatePsuAuthentication:
$ref: "#/components/schemas/hrefType"
updateAdditionalPsuAuthentication:
$ref: "#/components/schemas/hrefType"
updateAdditionalEncryptedPsuAuthentication:
$ref: "#/components/schemas/hrefType"
authoriseTransaction:
$ref: "#/components/schemas/hrefType"
scaStatus:
$ref: "#/components/schemas/hrefType"
_linksStartScaProcess:
description: |
A list of hyperlinks to be recognised by the Client. The actual hyperlinks used in the
response depend on the dynamical decisions of the ASPSP when processing the request.
**Remark:** All links can be relative or full links.
Type of links admitted in this response:
# - 'scaRedirect':
# In case of an SCA Redirect Approach, the ASPSP is transmitting the link to which to
# redirect the PSU browser.
- 'scaOAuth':
In case of a SCA OAuth2 Approach, the ASPSP is transmitting the URI where the configuration of the Authorisation Server can be retrieved. The configuration follows the OAuth 2.0 Authorisation Server Metadata specification.
- 'updatePsuIdentification':
The link to the authorisation sub-resource,
where PSU identification data needs to be uploaded.
- 'startAuthorisationWithPsuAuthentication':
The link to the authorisation sub-resource,
where PSU authentication data needs to be uploaded.
- 'startAuthorisationWithEncryptedPsuAuthentication':
Same as startAuthorisactionWithPsuAuthentication where the authentication data need to be encrypted on
application layer in uploading.
- 'selectAuthenticationMethod':
The link to the authorisation sub-resource,
where the selected authentication method needs to be uploaded.
This link is contained under exactly the same conditions as the data element 'scaMethods'.
- 'authoriseTransaction':
The link to the authorisation sub-resource,
where the authorisation data has to be uploaded, e.g. the TOP received by SMS.
- 'scaStatus':
The link to retrieve the scaStatus of the corresponding authorisation sub-resource.
type: object
additionalProperties:
$ref: "#/components/schemas/hrefType"
properties:
# scaRedirect:
# $ref: "#/components/schemas/hrefType"
scaOAuth:
$ref: "#/components/schemas/hrefType"
updatePsuIdentification:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithPsuAuthentication:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithEncryptedPsuAuthentication:
$ref: "#/components/schemas/hrefType"
selectAuthenticationMethod:
$ref: "#/components/schemas/hrefType"
authoriseTransaction:
$ref: "#/components/schemas/hrefType"
scaStatus:
$ref: "#/components/schemas/hrefType"
_linksConsents:
description: |
A list of hyperlinks to be recognised by the Client.
Type of links admitted in this response (which might be extended by single ASPSPs as indicated in its XS2A
documentation):
# - 'scaRedirect':
# In case of an SCA Redirect Approach, the ASPSP is transmitting the link to which to redirect the
# PSU browser.
- 'scaOAuth':
In case of an OAuth2 based Redirect Approach, the ASPSP is transmitting the link where the configuration
of the OAuth2 Server is defined.
The configuration follows the OAuth 2.0 Authorisation Server Metadata specification.
- 'startAuthorisation':
In case, where an explicit start of the transaction authorisation is needed,
but no more data needs to be updated (no authentication method to be selected,
no PSU identification nor PSU authentication data to be uploaded).
- 'startAuthorisationWithPsuIdentification':
The link to the authorisation end-point, where the authorisation sub-resource has to be generated
while uploading the PSU identification data.
- 'startAuthorisationWithPsuAuthentication':
The link to the authorisation end-point, where the authorisation sub-resource has to be generated
while uploading the PSU authentication data.
* 'startAuthorisationWithEncryptedPsuAuthentication':
Same as startAuthorisactionWithPsuAuthentication where the authentication data need to be encrypted on
application layer in uploading.
- 'startAuthorisationWithAuthenticationMethodSelection':
The link to the authorisation end-point, where the authorisation sub-resource has to be generated
while selecting the authentication method. This link is contained under exactly the same conditions
as the data element 'scaMethods'
- 'startAuthorisationWithTransactionAuthorisation':
The link to the authorisation end-point, where the authorisation sub-resource has to be generated
while authorising the transaction e.g. by uploading an OTP received by SMS.
- 'self':
The link to the Establish Account Information Consent resource created by this request.
This link can be used to retrieve the resource data.
- 'status':
The link to retrieve the status of the account information consent.
- 'scaStatus': The link to retrieve the scaStatus of the corresponding authorisation sub-resource.
This link is only contained, if an authorisation sub-resource has been already created.
type: object
additionalProperties:
$ref: "#/components/schemas/hrefType"
properties:
#scaRedirect:
# $ref: "#/components/schemas/hrefType"
scaOAuth:
$ref: "#/components/schemas/hrefType"
startAuthorisation:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithPsuIdentification:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithPsuAuthentication:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithEncryptedPsuAuthentication:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithAuthenticationMethodSelection:
$ref: "#/components/schemas/hrefType"
startAuthorisationWithTransactionAuthorisation:
$ref: "#/components/schemas/hrefType"
self:
$ref: "#/components/schemas/hrefType"
status:
$ref: "#/components/schemas/hrefType"
scaStatus:
$ref: "#/components/schemas/hrefType"
_linksGetConsent:
description: |
A list of hyperlinks to be recognised by the Client.
Links of type "account" and/or "cardAccount", depending on the nature of the consent.
type: object
additionalProperties:
$ref: "#/components/schemas/hrefType"
properties:
account:
$ref: "#/components/schemas/hrefType"
card-account:
$ref: "#/components/schemas/hrefType"
_linksAccountReport:
type: object
additionalProperties:
$ref: "#/components/schemas/hrefType"
required:
- account
properties:
account:
$ref: "#/components/schemas/hrefType"
first:
$ref: "#/components/schemas/hrefType"
next:
$ref: "#/components/schemas/hrefType"
previous:
$ref: "#/components/schemas/hrefType"
last:
$ref: "#/components/schemas/hrefType"
_linksTransactionDetails:
type: object
additionalProperties:
$ref: "#/components/schemas/hrefType"
required:
- transactionDetails
properties:
transactionDetails:
$ref: "#/components/schemas/hrefType"
_linksAccountDetails:
description: |
Links to the account, which can be directly used for retrieving account information from this dedicated account.
Links to "balances" and/or "transactions"
These links are only supported, when the corresponding consent has been already granted.
type: object
additionalProperties:
$ref: "#/components/schemas/hrefType"
properties:
balances:
$ref: "#/components/schemas/hrefType"
transactions:
$ref: "#/components/schemas/hrefType"
statement:
description: |
A camt.053 structure.
urn:iso:std:iso:20022:tech:xsd:camt.053.001.02
type: string
example:
021868_20170227
2018-12-14T17:29:29
E 217/2016
DE87200500001234567890
EUR
Account name
2017-02-27T23:59:59
2017-02-27T00:00:00
2017-02-27T23:59:59
1
10005.00
CRDT
BOOK
2017-02-27
2017-02-27
BB05
000000
POSTBALANCE
10005.00
Debtor Name
HU91....
Invoice number 84499573
mt940:
description: |
A sequence of MT940 messages.
type: string
example:
sap:
description: |
SAP format of statement in zip comressed file.
type: string
format: binary
#####################################################
# Client-Messages to Communicate Error Information
#####################################################
#####################################################
# Generic Elements
#####################################################
eleapiMessageCategory:
description: Category of the Client message category
type: string
enum:
- "ERROR"
- "WARNING"
MessageCode2XX:
description: Message codes for HTTP Error codes 2XX.
type: string
enum:
- "WARNING"
MessageCode400_AIS:
description: Message codes defined for AIS for HTTP Error code 400 (BAD_REQUEST).
type: string
enum:
- "FORMAT_ERROR" #gen
- "PARAMETER_NOT_CONSISTENT" #gen
- "PARAMETER_NOT_SUPPORTED" #gen
- "SERVICE_INVALID" #gen
- "RESOURCE_UNKNOWN" #gen
- "RESOURCE_EXPIRED" #gen
- "RESOURCE_BLOCKED" #gen
- "TIMESTAMP_INVALID" #gen
- "PERIOD_INVALID" #gen
- "SCA_METHOD_UNKNOWN" #gen
- "CONSENT_UNKNOWN" #gen
- "SESSIONS_NOT_SUPPORTED" #AIS
MessageCode400_PIS:
description: Message codes defined for PIS for HTTP Error code 400 (BAD_REQUEST).
type: string
enum:
- "FORMAT_ERROR" #gen
- "PARAMETER_NOT_CONSISTENT" #gen
- "PARAMETER_NOT_SUPPORTED" #gen
- "SERVICE_INVALID" #gen
- "RESOURCE_UNKNOWN" #gen
- "RESOURCE_EXPIRED" #gen
- "RESOURCE_BLOCKED" #gen
- "TIMESTAMP_INVALID" #gen
- "PERIOD_INVALID" #gen
- "SCA_METHOD_UNKNOWN" #gen
- "CONSENT_UNKNOWN" #gen
- "PAYMENT_FAILED" #PIS
- "EXECUTION_DATE_INVALID" #PIS
# MessageCode400_PIIS:
# description: Message codes defined for PIIS for HTTP Error code 400 (BAD_REQUEST).
# type: string
# enum:
# - "FORMAT_ERROR" #gen
# - "PARAMETER_NOT_CONSISTENT" #gen
# - "PARAMETER_NOT_SUPPORTED" #gen
# - "SERVICE_INVALID" #gen
# - "RESOURCE_UNKNOWN" #gen
# - "RESOURCE_EXPIRED" #gen
# - "RESOURCE_BLOCKED" #gen
# - "TIMESTAMP_INVALID" #gen
# - "PERIOD_INVALID" #gen
# - "SCA_METHOD_UNKNOWN" #gen
# - "CONSENT_UNKNOWN" #gen
# - "CARD_INVALID" #PIIS
# - "NO_PIIS_ACTIVATION" #PIIS
MessageCode400_SBS:
description: Message codes defined for signing baskets for HTTP Error code 400 (BAD_REQUEST).
type: string
enum:
- "FORMAT_ERROR" #gen
- "PARAMETER_NOT_CONSISTENT" #gen
- "PARAMETER_NOT_SUPPORTED" #gen
- "SERVICE_INVALID" #gen
- "RESOURCE_UNKNOWN" #gen
- "RESOURCE_EXPIRED" #gen
- "RESOURCE_BLOCKED" #gen
- "TIMESTAMP_INVALID" #gen
- "PERIOD_INVALID" #gen
- "SCA_METHOD_UNKNOWN" #gen
- "CONSENT_UNKNOWN" #gen
- "REFERENCE_MIX_INVALID" #SBS
MessageCode401_PIS:
description: Message codes defined for PIS for HTTP Error code 401 (UNAUTHORIZED).
type: string
enum:
- "CERTIFICATE_INVALID" #gen
- "CERTIFICATE_EXPIRED" #gen
- "CERTIFICATE_BLOCKED" #gen
- "CERTIFICATE_REVOKE" #gen
- "CERTIFICATE_MISSING" #gen
- "SIGNATURE_INVALID" #gen
- "SIGNATURE_MISSING" #gen
- "CORPORATE_ID_INVALID" #gen
- "PSU_CREDENTIALS_INVALID" #gen
- "CONSENT_INVALID" #gen, AIS
- "CONSENT_EXPIRED" #gen
- "TOKEN_UNKNOWN" #gen
- "TOKEN_INVALID" #gen
- "TOKEN_EXPIRED" #gen
- "REQUIRED_KID_MISSING" #PIS
MessageCode401_AIS:
description: Message codes defined for AIS for HTTP Error code 401 (UNAUTHORIZED).
type: string
enum:
- "CERTIFICATE_INVALID" #gen
- "CERTIFICATE_EXPIRED" #gen
- "CERTIFICATE_BLOCKED" #gen
- "CERTIFICATE_REVOKE" #gen
- "CERTIFICATE_MISSING" #gen
- "SIGNATURE_INVALID" #gen
- "SIGNATURE_MISSING" #gen
- "CORPORATE_ID_INVALID" #gen
- "PSU_CREDENTIALS_INVALID" #gen
- "CONSENT_INVALID" #gen, AIS
- "CONSENT_EXPIRED" #gen
- "TOKEN_UNKNOWN" #gen
- "TOKEN_INVALID" #gen
- "TOKEN_EXPIRED" #gen
MessageCode401_PIIS:
description: Message codes defined for PIIS for HTTP Error code 401 (UNAUTHORIZED).
type: string
enum:
- "CERTIFICATE_INVALID" #gen
- "CERTIFICATE_EXPIRED" #gen
- "CERTIFICATE_BLOCKED" #gen
- "CERTIFICATE_REVOKE" #gen
- "CERTIFICATE_MISSING" #gen
- "SIGNATURE_INVALID" #gen
- "SIGNATURE_MISSING" #gen
- "CORPORATE_ID_INVALID" #gen
- "PSU_CREDENTIALS_INVALID" #gen
- "CONSENT_INVALID" #gen, AIS
- "CONSENT_EXPIRED" #gen
- "TOKEN_UNKNOWN" #gen
- "TOKEN_INVALID" #gen
- "TOKEN_EXPIRED" #gen
MessageCode401_SBS:
description: Message codes defined for signing baskets for HTTP Error code 401 (UNAUTHORIZED).
type: string
enum:
- "CERTIFICATE_INVALID" #gen
- "CERTIFICATE_EXPIRED" #gen
- "CERTIFICATE_BLOCKED" #gen
- "CERTIFICATE_REVOKE" #gen
- "CERTIFICATE_MISSING" #gen
- "SIGNATURE_INVALID" #gen
- "SIGNATURE_MISSING" #gen
- "CORPORATE_ID_INVALID" #gen
- "PSU_CREDENTIALS_INVALID" #gen
- "CONSENT_INVALID" #gen, AIS
- "CONSENT_EXPIRED" #gen
- "TOKEN_UNKNOWN" #gen
- "TOKEN_INVALID" #gen
- "TOKEN_EXPIRED" #gen
MessageCode403_PIS:
description: Message codes defined defined for PIS for PIS for HTTP Error code 403 (FORBIDDEN).
type: string
enum:
- "CONSENT_UNKNOWN" #gen
- "SERVICE_BLOCKED" #gen
- "RESOURCE_UNKNOWN" #gen
- "RESOURCE_EXPIRED" #gen
- "PRODUCT_INVALID" #PIS
MessageCode403_AIS:
description: Message codes defined for AIS for HTTP Error code 403 (FORBIDDEN).
type: string
enum:
- "CONSENT_UNKNOWN" #gen
- "SERVICE_BLOCKED" #gen
- "RESOURCE_UNKNOWN" #gen
- "RESOURCE_EXPIRED" #gen
MessageCode403_PIIS:
description: Message codes defined for PIIS for HTTP Error code 403 (FORBIDDEN).
type: string
enum:
- "CONSENT_UNKNOWN" #gen
- "SERVICE_BLOCKED" #gen
- "RESOURCE_UNKNOWN" #gen
- "RESOURCE_EXPIRED" #gen
MessageCode403_SBS:
description: Message codes defined for signing baskets for HTTP Error code 403 (FORBIDDEN).
type: string
enum:
- "CONSENT_UNKNOWN" #gen
- "SERVICE_BLOCKED" #gen
- "RESOURCE_UNKNOWN" #gen
- "RESOURCE_EXPIRED" #gen
MessageCode404_PIS:
description: Message codes defined for PIS for HTTP Error code 404 (NOT FOUND).
type: string
enum:
- "RESOURCE_UNKNOWN" #gens
- "PRODUCT_UNKNOWN" #PIS
MessageCode404_AIS:
description: Message codes defined for AIS for HTTP Error code 404 (NOT FOUND).
type: string
enum:
- "RESOURCE_UNKNOWN" #gens
MessageCode404_PIIS:
description: Message codes defined for PIIS for HTTP Error code 404 (NOT FOUND).
type: string
enum:
- "RESOURCE_UNKNOWN" #gens
MessageCode404_SBS:
description: Message codes defined for signing baskets for HTTP Error code 404 (NOT FOUND).
type: string
enum:
- "RESOURCE_UNKNOWN" #gens
MessageCode405_PIS:
description: Message codes defined for payment cancelations PIS for HTTP Error code 405 (METHOD NOT ALLOWED).
type: string
enum:
- "SERVICE_INVALID" #gens
MessageCode405_PIS_CANC:
description: Message codes defined for payment cancelations PIS for HTTP Error code 405 (METHOD NOT ALLOWED).
type: string
enum:
- "CANCELLATION_INVALID" #PIS
- "SERVICE_INVALID" #gens
MessageCode405_AIS:
description: Message codes defined for AIS for HTTP Error code 405 (METHOD NOT ALLOWED).
type: string
enum:
- "SERVICE_INVALID" #gens
MessageCode405_PIIS:
description: Message codes defined for PIIS for HTTP Error code 405 (METHOD NOT ALLOWED).
type: string
enum:
- "SERVICE_INVALID" #gens
MessageCode405_SBS:
description: Message codes defined for SBS for HTTP Error code 405 (METHOD NOT ALLOWED).
type: string
enum:
- "SERVICE_INVALID" #gens
MessageCode406_AIS:
description: Message codes defined for AIS for HTTP Error code 406 (NOT ACCEPTABLE).
type: string
enum:
- "REQUESTED_FORMATS_INVALID" #AIS
MessageCode409_AIS:
description: Message codes defined for AIS for HTTP Error code 409 (CONFLICT).
type: string
enum:
- "STATUS_INVALID" #gen
MessageCode409_PIS:
description: Message codes defined for PIS for HTTP Error code 409 (CONFLICT).
type: string
enum:
- "STATUS_INVALID" #gen
MessageCode409_PIIS:
description: Message codes defined for PIIS for HTTP Error code 409 (CONFLICT).
type: string
enum:
- "STATUS_INVALID" #gen
MessageCode409_SBS:
description: Message codes defined for signing baskets for HTTP Error code 409 (CONFLICT).
type: string
enum:
- "REFERENCE_STATUS_INVALID" #SBS
- "STATUS_INVALID" #gen
MessageCode429_AIS:
description: Message codes for HTTP Error code 429 (TOO MANY REQUESTS).
type: string
enum:
- "ACCESS_EXCEEDED" #AIS
#####################################################
# Next Gen propriatary Client-Messages
#####################################################
eleapiMessageText:
description: Additional explaining text to the Client.
type: string
maxLength: 512
eleapiMessage2XX:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode2XX"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage400_AIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode400_AIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage400_PIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode400_PIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
# eleapiMessage400_PIIS:
# type: object
# required:
# - category
# - code
# properties:
# category:
# $ref: "#/components/schemas/eleapiMessageCategory"
# code:
# $ref: "#/components/schemas/MessageCode400_PIIS"
# path:
# type: string
# text:
# $ref: "#/components/schemas/eleapiMessageText"
eleapiMessage400_SBS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode400_SBS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage401_PIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode401_PIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage401_AIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode401_AIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage401_PIIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode401_PIIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage401_SBS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode401_SBS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage403_PIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode403_PIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage403_AIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode403_AIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage403_PIIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode403_PIIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage403_SBS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode403_SBS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage404_PIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode404_PIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage404_AIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode404_AIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage404_PIIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode404_PIIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage404_SBS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode404_SBS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage405_PIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode405_PIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage405_PIS_CANC:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode405_PIS_CANC"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage405_AIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode405_AIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage405_PIIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode405_PIIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage405_SBS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode405_SBS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage409_PIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode409_PIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage406_AIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode406_AIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage409_AIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode409_AIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage409_PIIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode409_PIIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage409_SBS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode409_SBS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
eleapiMessage429_AIS:
type: object
required:
- category
- code
properties:
category:
$ref: "#/components/schemas/eleapiMessageCategory"
code:
$ref: "#/components/schemas/MessageCode429_AIS"
path:
type: string
text:
$ref: "#/components/schemas/eleapiMessageText"
#####################################################
# RFC7807 Messages
#####################################################
eleapiErrorTitle:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
eleapiErrorDetail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
#####################################################
# RFC7807 Messages
#####################################################
Error400_PIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 400 for PIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode400_PIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode400_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error400_AIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 400 for AIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode400_AIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode400_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
# Error400_PIIS:
# description: |
# Standardised definition of reporting error information according to [RFC7807]
# in case of a HTTP error code 400 for PIIS.
# type: object
# required:
# - type
# - code
# properties:
# type:
# description: |
# A URI reference [RFC3986] that identifies the problem type.
# Remark For Future: These URI will be provided by NextGenPSD2 in future.
# type: string
# format: uri
# maxLength: 70
# title:
# description: |
# Short human readable description of error type.
# Could be in local language.
# To be provided by ASPSPs.
# type: string
# maxLength: 70
# detail:
# description: |
# Detailed human readable text specific to this instance of the error.
# XPath might be used to point to the issue generating the error in addition.
# Remark for Future: In future, a dedicated field might be introduced for the XPath.
# type: string
# maxLength: 512
# code:
# $ref: "#/components/schemas/MessageCode400_PIIS"
# additionalErrors:
# description: |
# Array of Error Information Blocks.
#
# Might be used if more than one error is to be communicated
# type: array
# items: #ErrorInformation
# description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
# type: object
# required:
# - code
# properties:
# title:
# $ref: "#/components/schemas/eleapiErrorTitle"
# detail:
# $ref: "#/components/schemas/eleapiErrorDetail"
# code:
# $ref: "#/components/schemas/MessageCode400_PIIS"
# _links:
# $ref: "#/components/schemas/_linksAll"
Error400_SBS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 400 for signing baskets.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode400_SBS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode400_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
Error401_PIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 401 for PIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode401_PIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode401_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error401_AIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 401 for AIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode401_AIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode401_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error401_PIIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 401 for PIIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode401_PIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode401_PIIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error401_SBS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 401 for signing baskets.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode401_SBS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode401_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
Error403_PIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 403 for PIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode403_PIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode403_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error403_AIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 403 for AIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode403_AIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode403_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error403_PIIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 403 for PIIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode403_PIIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode403_PIIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error403_SBS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 403 for signing baskets.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode403_SBS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode403_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
Error404_PIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 404 for PIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode404_PIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode404_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error404_AIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 404 for AIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode404_AIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode404_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error404_PIIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 404 for PIIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode404_PIIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode404_PIIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error404_SBS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 404 for signing baskets.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode404_SBS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode404_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
Error405_PIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 405 for PIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode405_PIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode405_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error405_PIS_CANC:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 405 for a pament cancelation (PIS).
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode405_PIS_CANC"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode405_PIS_CANC"
_links:
$ref: "#/components/schemas/_linksAll"
Error405_AIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 405 for AIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode405_AIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode405_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error405_PIIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 405 for PIIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode405_PIIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode405_PIIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error405_SBS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 405 for signing baskets.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode405_SBS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode405_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
Error406_AIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 406 for AIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode406_AIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode406_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error409_PIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 409 for PIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode409_PIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode409_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error409_AIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 409 for AIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode409_AIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode409_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error409_PIIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 409 for PIIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode409_PIIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode409_PIIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error409_SBS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 409 for signing baskets.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode409_SBS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: This is a data element to support the declaration of additional errors in the context of [RFC7807].
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode409_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
Error429_AIS:
description: |
Standardised definition of reporting error information according to [RFC7807]
in case of a HTTP error code 429 for AIS.
type: object
required:
- type
- code
properties:
type:
description: |
A URI reference [RFC3986] that identifies the problem type.
Remark For Future: These URI will be provided by NextGenPSD2 in future.
type: string
format: uri
maxLength: 70
title:
description: |
Short human readable description of error type.
Could be in local language.
To be provided by ASPSPs.
type: string
maxLength: 70
detail:
description: |
Detailed human readable text specific to this instance of the error.
XPath might be used to point to the issue generating the error in addition.
Remark for Future: In future, a dedicated field might be introduced for the XPath.
type: string
maxLength: 512
code:
$ref: "#/components/schemas/MessageCode429_AIS"
additionalErrors:
description: |
Array of Error Information Blocks.
Might be used if more than one error is to be communicated
type: array
items: #ErrorInformation
description: |
This is a data element to support the declaration of additional errors in the context of [RFC7807]
in case of a HTTP error code 429 for.
type: object
required:
- code
properties:
title:
$ref: "#/components/schemas/eleapiErrorTitle"
detail:
$ref: "#/components/schemas/eleapiErrorDetail"
code:
$ref: "#/components/schemas/MessageCode429_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
#example:
#$ref: "#/components/examples/RFC7807_ErrorInfoBody"
Error400_NG_PIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 400.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage400_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error400_NG_AIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 400.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage400_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
# Error400_NG_PIIS:
# description: |
# NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 400.
# type: object
# properties:
# eleapiMessages:
# type: array
# items:
# $ref: "#/components/schemas/eleapiMessage400_PIIS"
# _links:
# $ref: "#/components/schemas/_linksAll"
Error400_NG_SBS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 400.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage400_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
Error401_NG_PIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage401_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error401_NG_AIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage401_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error401_NG_PIIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage401_PIIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error401_NG_SBS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage401_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
Error403_NG_PIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 403.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage403_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error403_NG_AIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 403.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage403_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error403_NG_PIIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 403.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage403_PIIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error403_NG_SBS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 403.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage403_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
Error404_NG_PIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 404.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage404_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error404_NG_AIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 404.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage404_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error404_NG_PIIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 404.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage404_PIIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error404_NG_SBS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 404.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage404_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
Error405_NG_PIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage405_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error405_NG_PIS_CANC:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage405_PIS_CANC"
_links:
$ref: "#/components/schemas/_linksAll"
Error405_NG_AIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage405_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error405_NG_PIIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage405_PIIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error405_NG_SBS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage405_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
Error406_NG_AIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 406.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage406_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
Error409_NG_PIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 409.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage409_PIS"
_links:
$ref: "#/components/schemas/_linksAll"
example:
[{
"category": "ERROR",
"code": "STATUS_INVALID",
"text": "additional text information of the ASPSP up to 512 characters"
}]
Error409_NG_AIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 409.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage409_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
example:
[{
"category": "ERROR",
"code": "STATUS_INVALID",
"text": "additional text information of the ASPSP up to 512 characters"
}]
Error409_NG_PIIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 409.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage409_PIIS"
_links:
$ref: "#/components/schemas/_linksAll"
example:
[{
"category": "ERROR",
"code": "STATUS_INVALID",
"text": "additional text information of the ASPSP up to 512 characters"
}]
Error409_NG_SBS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 409.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage409_SBS"
_links:
$ref: "#/components/schemas/_linksAll"
example:
[{
"category": "ERROR",
"code": "STATUS_INVALID",
"text": "additional text information of the ASPSP up to 512 characters"
}]
Error429_NG_AIS:
description: |
NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 429.
type: object
properties:
eleapiMessages:
type: array
items:
$ref: "#/components/schemas/eleapiMessage429_AIS"
_links:
$ref: "#/components/schemas/_linksAll"
example:
[{
"category": "ERROR",
"code": "ACCESS_EXCEEDED",
"text": "additional text information of the ASPSP up to 512 characters"
}]
parameters:
#####################################################
# Predefined Parameters
#####################################################
paymentService:
name: payment-service
in: path
description: |
Payment service:
Possible values are:
* payments
* bulk-payments
* periodic-payments
required: true
schema:
type: string
enum:
- "payments"
- "bulk-payments"
- "periodic-payments"
paymentProduct:
name: payment-product
in: path
description: |
The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).
The ASPSP will publish which of the payment products/endpoints will be supported.
The following payment products are supported:
- sepa-credit-transfers
- cross-border-credit-transfers
- hungarian-credit-transfers
- pain.001-sepa-credit-transfers
- pain.001-cross-border-credit-transfers
- pain.001-hungarian-credit-transfer
**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding,
the XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content.
Further XML schemes might be supported by some communities.
**Remark:** For cross-border payments only community wide
pain.001 schemes do exist.
There are plenty of country specificic scheme variants.
required: true
schema:
type: string
enum:
- sepa-credit-transfers
- cross-border-credit-transfers
- hungarian-credit-transfers
- pain.001-sepa-credit-transfers
- pain.001-cross-border-credit-transfers
- pain.001-hungarian-credit-transfers
paymentProductECA:
name: payment-product
in: path
description: |
The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).
The ASPSP will publish which of the payment products/endpoints will be supported.
The following payment products are supported:
- sepa-credit-transfers
- cross-border-credit-transfers
- hungarian-credit-transfers
- hungarian-direct-credit-transfer
- hungarian-direct-debit-transfer
- hungarian-postal-payment-transfer
- pain.001-sepa-credit-transfers
- pain.001-cross-border-credit-transfers
- pain.001-hungarian-credit-transfer
**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding,
the XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content.
Further XML schemes might be supported by some communities.
**Remark:** For cross-border payments only community wide
pain.001 schemes do exist.
There are plenty of country specificic scheme variants.
required: true
schema:
type: string
enum:
- sepa-credit-transfers
- cross-border-credit-transfers
- hungarian-credit-transfers
- hungarian-direct-credit-transfer
- hungarian-direct-debit-transfer
- hungarian-postal-payment-transfer
- pain.001-sepa-credit-transfers
- pain.001-cross-border-credit-transfers
- pain.001-hungarian-credit-transfers
paymentId:
name: paymentId
in: path
description: Resource identification of the generated payment initiation resource.
required: true
schema:
$ref: "#/components/schemas/paymentId"
authorisationId:
name: authorisationId
in: path
description: Resource identification of the related SCA.
required: true
schema:
$ref: "#/components/schemas/authorisationId"
accountId:
name: account-id
in: path
description: |
This identification is denoting the addressed account.
The account-id is retrieved by using a "Read Account List" call.
The account-id is the "id" attribute of the account structure.
Its value is constant at least throughout the lifecycle of a given consent.
required: true
schema:
$ref: "#/components/schemas/accountId"
transactionId:
name: transactionId
in: path
description: |
This identification is given by the attribute transactionId of the corresponding entry of a transaction list.
required: true
schema:
$ref: "#/components/schemas/transactionId"
consentId_PATH:
name: consentId
in: path
description: |
ID of the corresponding consent object as returned by an Account Information Consent Request.
required: true
schema:
$ref: "#/components/schemas/consentId"
consentId_HEADER_optional:
name: Consent-ID
in: header
description: |
This data element may be contained, if the payment initiation transaction is part of a session, i.e. combined AIS/PIS service.
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation.
required: false
schema:
$ref: "#/components/schemas/consentId"
Authorization:
name: Authorization
in: header
description: |
This field might be used in case where a consent was agreed between ASPSP and PSU through an OAuth2 based protocol,
facilitated by the Client.
required: false
schema:
$ref: "#/components/schemas/authorization"
consentId_HEADER_mandatory:
name: Consent-ID
in: header
description: |
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation.
required: true
schema:
$ref: "#/components/schemas/consentId"
dateFrom:
name: dateFrom
in: query
description: |
Conditional: Starting date (inclusive the date dateFrom) of the transaction list, mandated.
For booked transactions, the relevant date is the booking date.
For pending transactions, the relevant date is the entry date, which may not be transparent
neither in this API nor other channels of the ASPSP.
required: false
schema:
type: string
format: date
dateTo:
name: dateTo
in: query
description: |
End date (inclusive the data dateTo) of the transaction list, default is "now" if not given.
Might be ignored if a delta function is used.
For booked transactions, the relevant date is the booking date.
For pending transactions, the relevant date is the entry date, which may not be transparent
neither in this API nor other channels of the ASPSP.
For booked transactions, the relevant date is the booking date.
For pending transactions, the relevant date is the entry date, which may not be transparent
neither in this API nor other channels of the ASPSP.
required: false
schema:
type: string
format: date
importFormat:
name: import-format
in: path
description: |
Type of the import format file:
Possible values are:
* edifact
* multicash
* ugiro
* postal
required: true
schema:
type: string
enum:
- "edifact"
- "multicash"
- "ugiro"
- "postal"
importType:
name: import-type
in: path
description: |
Type of payments to be imported:
Possible values are:
* HUF
* HVE
* DEV
* CAT
* CBE
* PKF
required: true
schema:
type: string
enum:
- "HUF"
- "HVE"
- "DEV"
- "CAT"
- "CBE"
- "PKF"
importId:
name: import-id
in: path
description: |
Id of an import object.
required: true
schema:
type: string
adviceId:
name: advice-id
in: path
description: |
Id of an advice.
required: true
schema:
type: string
statementDate:
name: date
in: query
description: |
Account statement date.
required: true
schema:
type: string
format: date
bookingStatus:
name: bookingStatus
in: query
description: |
Permitted codes are
* "booked",
required: true
schema:
type: string
enum:
- "booked"
X-Request-ID:
name: X-Request-ID
in: header
description: ID of the request, unique to the call, as determined by the initiating party.
required: true
example: "99391c7e-ad88-49ec-a2ad-99ddcb1f7721"
schema:
type: string
format: uuid
Digest:
name: Digest
in: header
description: Is contained if and only if the "Signature" element is contained in the header of the request.
schema:
type: string
required: false # conditional
example: "SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A="
Signature:
name: Signature
in: header
description: |
A signature of the request by the Client on application level. This might be mandated by ASPSP.
schema:
type: string
required: false # conditional
example: >
keyId="SN=9FA1,CA=CN=D-TRUST%20CA%202-1%202015,O=D-Trust%20GmbH,C=DE",algorithm="rsa-sha256",
headers="Digest X-Request-ID PSU-ID ELEAPI-Redirect-URI Date",
signature="Base64(RSA-SHA256(signing string))"
ELEAPI-Signature-Certificate:
name: ELEAPI-Signature-Certificate
in: header
description: |
The certificate used for signing the request, in base64 encoding.
Must be contained if a signature is contained.
schema:
type: string
format: byte
required: false # conditional
# ELEAPI-Redirect-Preferred:
# name: ELEAPI-Redirect-Preferred
# in: header
# description: |
# If it equals "true", the Client prefers a redirect over an embedded SCA approach.
# If it equals "false", the Client prefers not to be redirected for SCA. The ASPSP will then choose between the Embedded or the Decoupled
# SCA approach, depending on the choice of the SCA procedure by the TPP/PSU.
# If the parameter is not used, the ASPSP will choose the SCA approach to be applied depending on the SCA method chosen by the
# TPP/PSU.
# schema:
# type: string
# enum:
# - "true"
# - "false"
#type: boolean
# required: false
ELEAPI-Redirect-URI:
name: ELEAPI-Redirect-URI
in: header
description: |
URI of the Client, where the transaction flow shall be redirected to after a Redirect.
Mandated for the Redirect SCA Approach, specifically
when ELEAPI-Redirect-Preferred equals "true".
It is recommended to always use this header field.
**Remark for Future:**
This field might be changed to mandatory in the next version of the specification.
schema:
type: string
format: uri
required: false # conditional
ELEAPI-Nok-Redirect-URI:
name: ELEAPI-Nok-Redirect-URI
in: header
description: |
If this URI is contained, the Client is asking to redirect the transaction flow to this address instead of the ELEAPI-Redirect-URI in case
of a negative result of the redirect SCA method. This might be ignored by the ASPSP.
schema:
type: string
format: uri
required: false
# ELEAPI-Explicit-Authorisation-Preferred:
# name: ELEAPI-Explicit-Authorisation-Preferred
# in: header
# description: |
# If it equals "true", the Client prefers to start the authorisation process separately,
# e.g. because of the usage of a signing basket.
# This preference might be ignored by the ASPSP, if a signing basket is not supported as functionality.
#
# If it equals "false" or if the parameter is not used, there is no preference of the Client.
# This especially indicates that the Client assumes a direct authorisation of the transaction in the next step,
# without using a signing basket.
# schema:
# type: string
# enum:
# - "true"
# - "false"
#type: boolean
# required: false
# ELEAPI-Rejection-NoFunds-Preferred:
# name: ELEAPI-Rejection-NoFunds-Preferred
# in: header
# description: |
# If it equals "true" then the Client prefers a rejection of the payment initiation in case the ASPSP is
# providing an integrated confirmation of funds request an the result of this is that not sufficient
# funds are available.
#
# If it equals "false" then the Client prefers that the ASPSP is dealing with the payment initiation like
# in the ASPSPs online channel, potentially waiting for a certain time period for funds to arrive to initiate the payment.
#
# This parameter might be ignored by the ASPSP.
#
# schema:
# type: string
# enum:
# - "true"
# - "false"
#type: boolean
# required: false
PSU-ID:
name: PSU-ID
in: header
description: |
Client ID of the PSU in the ASPSP client interface.
Might be mandated in the ASPSP's documentation.
It might be contained even if an OAuth2 based authentication was performed in a pre-step or an OAuth2 based SCA was performed in an preceding
AIS service in the same session.
In this case the ASPSP might check whether PSU-ID and token match,
according to ASPSP documentation.
schema:
type: string
required: false
example: "PSU-1234"
PSU-ID-Type:
name: PSU-ID-Type
in: header
description: |
Type of the PSU-ID, needed in scenarios where PSUs have several PSU-IDs as access possibility.
In this case, the mean and use are then defined in the ASPSP's documentation.
schema:
type: string
required: false
PSU-Corporate-ID:
name: PSU-Corporate-ID
in: header
description: |
Might be mandated in the ASPSP's documentation. Only used in a corporate context.
schema:
type: string
required: false
PSU-IP-Address_conditionalForAis:
name: PSU-IP-Address
in: header
description: |
The forwarded IP Address header field consists of the corresponding HTTP request
IP Address field between PSU and Client.
It shall be contained if and only if this request was actively initiated by the PSU.
schema:
type: string
format: ipv4
required: false
example: 192.168.8.78
Statement-Export-Accept:
name: Accept
in: header
description: |
Specify the format of the requesed statement. Will be camt53 if not specified.
schema:
type: string
enum:
- "application/xml"
- "SAP"
- "MT940"
required: false
Statement-Export-Accept-Charset:
name: Accept-Charset
in: header
description: |
Specifiy the charset of the requested statement. Will be ignored if selected export format does not support multiple charsets.
schema:
type: string
enum:
- "ISO-8859-2"
- "CP852"
required: false
requestBodies:
#####################################################
# Reusable Request Bodies
#####################################################
paymentInitiation:
description: |
JSON request body for a payment inition request message
There are the following payment-products supported:
* "sepa-credit-transfers" with JSON-Body
* "cross-border-credit-transfers" with JSON-Body
* "hungarian-credit-transfers" with JSON-Body
* "pain.001-sepa-credit-transfers" with XML pain.001.001.03 body for SCT scheme
* "pain.001-hungarian-credit-transfers" with XML pain.001.001.03 body for HCT INST scheme
* "pain.001-cross-border-credit-transfers" with pain.001 body.
Only country specific schemes are currently available
There are the following payment-services supported:
* "payments"
* "periodic-payments"
* "bulk-paments"
All optional, conditional and predefined but not yet used fields are defined.
required: true
content:
application/json:
schema:
oneOf: #Different Payment products in JSON
- $ref: "#/components/schemas/paymentInitiation_json"
- $ref: "#/components/schemas/periodicPaymentInitiation_json"
- $ref: "#/components/schemas/bulkPaymentInitiation_json"
examples:
"Example 1: 'payments' - 'sepa-credit-transfers'":
$ref: "#/components/examples/paymentInitiationSctBody_payments_json"
"Example 2: 'periodic-payments' - 'hungarian-credit-transfers'":
$ref: "#/components/examples/paymentInitiationHctBody_periodic-payments_json"
"Example 3: 'bulk-payments' - 'sepa-credit-transfers'":
$ref: "#/components/examples/paymentInitiationSctBody_bulk-payments_json"
application/xml:
schema:
oneOf: #The same schemas are used for single and bulk payment in case of a pain.001
- $ref: '#/components/schemas/paymentInitiationHct_pain.001'
- $ref: '#/components/schemas/paymentInitiationSct_pain.001'
- $ref: '#/components/schemas/paymentInitiationCrossBorder_pain.001'
examples:
"Example 1: 'payments' - 'pain.001-sepa-credit-transfers'":
$ref: "#/components/examples/pain.001.001_SCT_singleTransaction"
multipart/form-data: #For periodic-payments with pain.001
schema:
$ref: "#/components/schemas/periodicPaymentInitiationMultipartBody"
consents:
description: |
Requestbody for a consents request
content:
application/json:
schema:
$ref: "#/components/schemas/consents"
examples:
"Consent Request on Dedicated Accounts":
$ref: "#/components/examples/consentsExample_DedicatedAccounts"
"Consent on Account List of Available Accounts":
$ref: "#/components/examples/consentsExample_AccountList"
"Consent Request on Account List or without Indication of dedicated Accounts":
$ref: "#/components/examples/consentsExample_without_Accounts"
importFile:
description: |
The import file.
content:
application/octet-stream:
schema:
type: string
# examples:
# "Example":
# $ref: "#/components/examples/confirmationOfFundsExample"
required: true
headers:
#####################################################
# Reusable Response Header Elements
#####################################################
X-Request-ID:
description: ID of the request, unique to the call, as determined by the initiating party.
required: true
example: "99391c7e-ad88-49ec-a2ad-99ddcb1f7721"
schema:
type: string
format: uuid
ASPSP-SCA-Approach:
description: |
This data element must be contained, if the SCA Approach is already fixed.
Possible values are
* EMBEDDED
* DECOUPLED
* REDIRECT
The OAuth SCA approach will be subsumed by REDIRECT.
schema:
type: string
enum:
- "EMBEDDED"
- "DECOUPLED"
- "REDIRECT"
example: "REDIRECT"
required: false
Location:
description: |
Location of the created resource.
schema:
type: string
format: url
required: false
responses:
#####################################################
# Reusabale Responses
#####################################################
#####################################################
# Positive Responses
#####################################################
OK_200_PaymentInitiationInformation:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
oneOf: #Different Payment Products with status
- $ref: "#/components/schemas/paymentInitiationWithStatusResponse"
- $ref: "#/components/schemas/periodicPaymentInitiationWithStatusResponse"
- $ref: "#/components/schemas/bulkPaymentInitiationWithStatusResponse"
application/xml:
schema:
oneOf: #The same schemas are used for single and bulk payment in case of a pain.001
- $ref: '#/components/schemas/paymentInitiationHct_pain.001'
- $ref: '#/components/schemas/paymentInitiationSct_pain.001'
- $ref: '#/components/schemas/paymentInitiationCrossBorder_pain.001'
examples:
"Example 1: 'payments' - 'pain.001-sepa-credit-transfers'":
$ref: "#/components/examples/pain.001.001_SCT_singleTransaction"
multipart/form-data: #For periodic-payments with pain.001
schema:
$ref: "#/components/schemas/periodicPaymentInitiationMultipartBody"
OK_200_PaymentInitiationStatus:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/paymentInitiationStatusResponse-200_json"
examples:
simple:
$ref: "#/components/examples/paymentInitiationStatusResponse_json_Simple"
extended:
$ref: "#/components/examples/paymentInitiationStatusResponse_json_Extended"
application/xml:
schema:
$ref: "#/components/schemas/paymentInitiationStatusResponse-200_xml"
examples:
"Payment Initiation Status Response Body XML for SCT":
$ref: "#/components/examples/pain.002.001_SCT_singleTransaction"
OK_200_Authorisations:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/authorisations"
examples:
Example:
$ref: "#/components/examples/authorisationListExample"
OK_200_PaymentPublished:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#examples:
#Example:
#$ref: "#/components/examples/paymentInitiationCancelResponse-200_202"
OK_200_ScaStatus:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/scaStatusResponse"
OK_200_AccountList:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/accountList"
examples:
"Example 1":
$ref: "#/components/examples/accountListExample1"
OK_200_GetStatement:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/xml:
schema:
$ref: "#/components/schemas/statement"
#examples:
# "Example 1":
# $ref: "#/components/examples/statementExample1"
text/plain:
schema:
$ref: "#/components/schemas/mt940"
application/zip:
schema:
$ref: "#/components/schemas/sap"
OK_200_AccountDetails:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/accountDetails"
examples:
"Regular Account":
$ref: "#/components/examples/accountDetailsRegularAccount"
OK_200_TransactionDetails:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/transactionDetails"
examples:
Example:
$ref: "#/components/examples/transactionDetailsExample"
OK_200_Balances:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/readAccountBalanceResponse-200"
examples:
"Example 1: Regular Account":
$ref: "#/components/examples/balancesExample1_RegularAccount"
OK_200_AccountsTransactions:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/transactionsResponse-200_json"
examples:
"Example 1":
$ref: "#/components/examples/transactionsExample1_RegularAccount_json"
application/xml:
schema:
description: |
Body of the XML response for a successful read transaction list request.
The body has the structure of a either a camt.052 or camt.053 message.
The camt.052 may include pending payments which are not yet finally booked.
The ASPSP will decide on the format due to the chosen parameters,
specifically on the chosen dates relative to the time of the request.
(https://www.iso20022.org/iso-20022-message-definitions)
oneOf: #Different camt messages
- $ref: "#/components/schemas/camt.052"
- $ref: "#/components/schemas/camt.053"
- $ref: "#/components/schemas/camt.054"
OK_200_ConsentInformation:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/consentInformationResponse-200_json"
examples:
Example:
$ref: "#/components/examples/consentsInformationResponseExample"
OK_200_ConsentStatus:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/consentStatusResponse-200"
examples:
Example:
$ref: "#/components/examples/consentStatusResponseExample1"
OK_200_UpdatePsuData:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
ASPSP-SCA-Approach:
$ref: "#/components/headers/ASPSP-SCA-Approach"
content:
application/json:
schema:
oneOf: #Different Authorisation Bodies
- $ref: "#/components/schemas/updatePsuIdenticationResponse" #Update PSU Identification
- $ref: "#/components/schemas/updatePsuAuthenticationResponse" #Update PSU Authentication
- $ref: "#/components/schemas/selectPsuAuthenticationMethodResponse" #Select Authentication Method
- $ref: "#/components/schemas/scaStatusResponse" #Transaction Authorisation
examples:
"Update PSU Identification - Payment Initiation (Decoupled Approach)":
$ref: "#/components/examples/updatePsuIdentificationResponseExample_Decoupled_payments"
"Update PSU Authentication - Payment Initiation (Embedded Approach)":
$ref: "#/components/examples/updatePsuAuthenticationResponseExample_Embedded_payments"
"Select PSU Authentication - Payment Initiation Method (Embedded Approach)":
$ref: "#/components/examples/selectPsuAuthenticationMethodResponseExample_Embedded_payments"
"Transaction Authorisation (Embedded Approach)":
$ref: "#/components/examples/transactionAuthorisationResponseExample"
CREATED_201_PaymentInitiation:
description: CREATED
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
Location:
$ref: "#/components/headers/Location"
ASPSP-SCA-Approach:
$ref: "#/components/headers/ASPSP-SCA-Approach"
content:
application/json:
schema:
$ref: "#/components/schemas/paymentInitationRequestResponse-201"
examples:
"Response in case of a redirect with an implicitly created authorisation sub-resource":
$ref: "#/components/examples/paymentInitiationExample_json_Redirect"
"Response in case of a redirect where an explicit authorisation start is needed":
$ref: "#/components/examples/paymentInitiationExample_json__RedirectExplicitAuthorisation"
"Response in case of an OAuth2 SCA approach approach with implicitly creating an authorisation sub-resource":
$ref: "#/components/examples/paymentInitiationExample_json_OAuth2"
"Response in case of the decoupled approach with explicit start of authorisation needed (will be done with the update PSU identification function)":
$ref: "#/components/examples/paymentInitiationExample_json_Decoupled"
"Response in case of the embedded approach with explicit start of authorisation":
$ref: "#/components/examples/paymentInitiationExample_json_Embedded"
CREATED_201_Import:
description: CREATED
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
Location:
$ref: "#/components/headers/Location"
ASPSP-SCA-Approach:
$ref: "#/components/headers/ASPSP-SCA-Approach"
content:
application/json:
schema:
$ref: "#/components/schemas/importRequestResponse-20x"
examples:
"Response in case of the decoupled approach with explicit start of authorisation needed (will be done with the update PSU identification function)":
$ref: "#/components/examples/importExample_json"
OK_200_GetImport:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
Location:
$ref: "#/components/headers/Location"
ASPSP-SCA-Approach:
$ref: "#/components/headers/ASPSP-SCA-Approach"
content:
application/octet-stream:
schema:
$ref: "#/components/schemas/importFile-200"
OK_200_GetImportStatus:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
Location:
$ref: "#/components/headers/Location"
ASPSP-SCA-Approach:
$ref: "#/components/headers/ASPSP-SCA-Approach"
content:
application/json:
schema:
$ref: "#/components/schemas/importRequestResponse-20x"
examples:
"Response in case of the decoupled approach with explicit start of authorisation needed (will be done with the update PSU identification function)":
$ref: "#/components/examples/importExample_json"
OK_200_Advice:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
Location:
$ref: "#/components/headers/Location"
ASPSP-SCA-Approach:
$ref: "#/components/headers/ASPSP-SCA-Approach"
content:
application/octet-stream:
schema:
$ref: "#/components/schemas/adviceFile-200"
OK_200_AdviceList:
description: OK
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
Location:
$ref: "#/components/headers/Location"
ASPSP-SCA-Approach:
$ref: "#/components/headers/ASPSP-SCA-Approach"
content:
application/json:
schema:
$ref: "#/components/schemas/adviceList-200"
examples:
"Response in case of the decoupled approach with explicit start of authorisation needed (will be done with the update PSU identification function)":
$ref: "#/components/examples/adviceListExample_json"
CREATED_201_StartScaProcess:
description: Created
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
ASPSP-SCA-Approach:
$ref: "#/components/headers/ASPSP-SCA-Approach"
content:
application/json:
schema:
$ref: "#/components/schemas/startScaprocessResponse"
examples:
"Example 1: payments - Decoupled Approach":
$ref: "#/components/examples/startScaProcessResponseExample1"
CREATED_201_Consents:
description: Created
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
ASPSP-SCA-Approach:
$ref: "#/components/headers/ASPSP-SCA-Approach"
content:
application/json:
schema:
$ref: "#/components/schemas/consentsResponse-201"
examples:
"Response in case of a redirect":
$ref: "#/components/examples/consentResponseExample1a_Redirect"
"Response in case of a redirect with a dedicated start of the authorisation process":
$ref: "#/components/examples/consentResponseExample1b_Redirect"
"Response in case of the OAuth2 approach with an implicit generated authorisation resource":
$ref: "#/components/examples/consentResponseExample2_OAuth2"
"Response in case of the decoupled approach":
$ref: "#/components/examples/consentResponseExample3_Decoupled"
"Response in case of the embedded approach":
$ref: "#/components/examples/consentResponseExample4_Embedded"
NO_CONTENT_204_PaymentInitiationCancel:
description: No Content
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#NO RESPONSE BODY
NO_CONTENT_204_Consents:
description: No Content
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#NO RESPONSE BODY
NO_CONTENT_204_SigningBasket:
description: No Content
headers:
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#NO RESPONSE BODY
#####################################################
# Negative Responses
#####################################################
BAD_REQUEST_400_AIS:
description: Bad Request
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error400_NG_AIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error400_AIS"
BAD_REQUEST_400_PIS:
description: Bad Request
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error400_NG_PIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error400_PIS"
BAD_REQUEST_400_PIIS:
description: Bad Request
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error400_NG_AIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error400_AIS"
BAD_REQUEST_400_SBS:
description: Bad Request
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error400_NG_SBS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error400_SBS"
UNAUTHORIZED_401_PIS:
description: Unauthorized
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error401_NG_PIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error401_PIS"
UNAUTHORIZED_401_AIS:
description: Unauthorized
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error401_NG_AIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error401_AIS"
UNAUTHORIZED_401_PIIS:
description: Unauthorized
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error401_NG_PIIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error401_PIIS"
UNAUTHORIZED_401_SBS:
description: Unauthorized
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error401_NG_SBS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error401_SBS"
FORBIDDEN_403_PIS:
description: Forbidden
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error403_NG_PIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error403_PIS"
FORBIDDEN_403_AIS:
description: Forbidden
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error403_NG_AIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error403_AIS"
FORBIDDEN_403_PIIS:
description: Forbidden
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error403_NG_PIIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error403_PIIS"
FORBIDDEN_403_SBS:
description: Forbidden
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error403_NG_SBS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error403_SBS"
NOT_FOUND_404_PIS:
description: Not found
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error404_NG_PIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error404_PIS"
NOT_FOUND_404_AIS:
description: Not found
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error404_NG_AIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error404_AIS"
NOT_FOUND_404_PIIS:
description: Not found
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error404_NG_PIIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error404_PIIS"
NOT_FOUND_404_SBS:
description: Not found
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error404_NG_SBS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error404_SBS"
METHOD_NOT_ALLOWED_405_PIS:
description: Method Not Allowed
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error405_NG_PIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error405_PIS"
METHOD_NOT_ALLOWED_405_PIS_CANC:
description: Method Not Allowed
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error405_NG_PIS_CANC"
application/problem+json:
schema:
$ref: "#/components/schemas/Error405_PIS_CANC"
METHOD_NOT_ALLOWED_405_AIS:
description: Method Not Allowed
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error405_NG_AIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error405_AIS"
METHOD_NOT_ALLOWED_405_PIIS:
description: Method Not Allowed
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error405_NG_PIIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error405_PIIS"
METHOD_NOT_ALLOWED_405_SBS:
description: Method Not Allowed
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error405_NG_SBS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error405_SBS"
NOT_ACCEPTABLE_406_PIS:
description: Not Acceptable
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for PIS in case of HTTP code 406
NOT_ACCEPTABLE_406_AIS:
description: Not Acceptable
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error406_NG_AIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error406_AIS"
NOT_ACCEPTABLE_406_PIIS:
description: Not Acceptable
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for PIIS in case of HTTP code 406
NOT_ACCEPTABLE_406_SBS:
description: Not Acceptable
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for signing in case of HTTP code 406
REQUEST_TIMEOUT_408_PIS:
description: Request Timeout
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for PIS in case of HTTP code 408
REQUEST_TIMEOUT_408_AIS:
description: Request Timeout
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for AIS in case of HTTP code 408
REQUEST_TIMEOUT_408_PIIS:
description: Request Timeout
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for PIIS in case of HTTP code 408
REQUEST_TIMEOUT_408_SBS:
description: Request Timeout
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for signing baskets in case of HTTP code 408
CONFLICT_409_PIS:
description: Conflict
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error409_NG_PIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error409_PIS"
CONFLICT_409_AIS:
description: Conflict
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error409_NG_AIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error409_AIS"
CONFLICT_409_PIIS:
description: Conflict
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error409_NG_PIIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error409_PIIS"
CONFLICT_409_SBS:
description: Conflict
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error409_NG_SBS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error409_SBS"
UNSUPPORTED_MEDIA_TYPE_415_AIS:
description: Unsupported Media Type
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for AIS in case of HTTP code 415
UNSUPPORTED_MEDIA_TYPE_415_PIS:
description: Unsupported Media Type
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for AIS in case of HTTP code 415
UNSUPPORTED_MEDIA_TYPE_415_PIIS:
description: Unsupported Media Type
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for PIIS in case of HTTP code 415
UNSUPPORTED_MEDIA_TYPE_415_SBS:
description: Unsupported Media Type
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for signing baskets in case of HTTP code 415
TOO_MANY_REQUESTS_429_PIS:
description: Too Many Requests
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for PIS in case of HTTP code 429
TOO_MANY_REQUESTS_429_AIS:
description: Too Many Requests
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
content:
application/json:
schema:
$ref: "#/components/schemas/Error429_NG_AIS"
application/problem+json:
schema:
$ref: "#/components/schemas/Error429_AIS"
TOO_MANY_REQUESTS_429_PIIS:
description: Too Many Requests
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for PIIS in case of HTTP code 429
TOO_MANY_REQUESTS_429_SBS:
description: Too Many Requests
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for signing baskets in case of HTTP code 429
INTERNAL_SERVER_ERROR_500_PIS:
description: Internal Server Error
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for PIS in case of HTTP code 500
INTERNAL_SERVER_ERROR_500_AIS:
description: Internal Server Error
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for AIS in case of HTTP code 500
INTERNAL_SERVER_ERROR_500_PIIS:
description: Internal Server Error
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for PIIS in case of HTTP code 500
INTERNAL_SERVER_ERROR_500_SBS:
description: Internal Server Error
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for signing baskets in case of HTTP code 500
SERVICE_UNAVAILABLE_503_PIS:
description: Service Unavailable
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for PIS in case of HTTP code 503
SERVICE_UNAVAILABLE_503_AIS:
description: Service Unavailable
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for AIS in case of HTTP code 503
SERVICE_UNAVAILABLE_503_PIIS:
description: Service Unavailable
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for PIIS in case of HTTP code 503
SERVICE_UNAVAILABLE_503_SBS:
description: Service Unavailable
headers:
Location:
$ref: "#/components/headers/Location"
X-Request-ID:
$ref: "#/components/headers/X-Request-ID"
#No Response body because there are no valid message codes for signing baskets in case of HTTP code 503
examples:
#####################################################
# Predefined Examples
#####################################################
ibanExampleDe_01:
value: "DE02100100109307118603"
ibanExampleDe_02:
value: "DE23100120020123456789"
ibanExampleDe_03:
value: "DE40100100103307118608"
ibanExampleDe_04:
value: "DE67100100101306118605"
ibanExampleDe_05:
value: "DE87200500001234567890"
ibanExampleFr_01:
value: "FR7612345987650123456789014"
ibanExampleNl_01:
value: "NL76RABO0359400371"
ibanExampleSe_01:
value: "SE9412309876543211234567"
maskedPanExample:
value: "123456xxxxxx1234"
uuidExample:
value: "99391c7e-ad88-49ec-a2ad-99ddcb1f7721"
pain.001.001_SCT_singleTransaction:
description: A pain.001.001.03 message in case of SCT
value: >
MIPI-123456789RI-123456789
2017-02-14T20:23:34.000Z
1
123
PaymentInitiator
DE10000000012
PISP
BIPI-123456789RI-123456789
TRF
1
123
SEPA
2017-02-15
PSU Name
HU88999999999999999999999999
SLEV
RI-123456789
123
Merchant123
DE23100120020123456789
Ref Number Merchant-123456
pain.002.001_SCT_singleTransaction:
description: A pain.002.001.03 message in case of SCT
value: >
4572457256725689726906
2017-02-14T20:24:56.021Z
ABCDDEFF
DCBADEFF
MIPI-123456789RI-123456789
pain.001.001.03
2017-02-14T20:23:34.000Z
1
123
ACCT
BIPI-123456789RI-123456789
1
123
ACCT
paymentInitiationSctBody_payments_json:
value:
{
"instructedAmount": {"currency": "EUR", "amount": "123.50"},
"debtorAccount": {"iban": "HU88999999999999999999999999"},
"creditorName": "Merchant123",
"creditorAccount": {"iban": "DE02100100109307118603"},
"remittanceInformationUnstructured": "Ref Number Merchant"
}
paymentInitiationHctBody_periodic-payments_json:
value:
instructedAmount:
currency: HUF
amount: '123'
debtorAccount:
bban: 104021420000000000000000
creditorName: Merchant123
creditorAccount:
iban: HU45116000060000000000000000
startDate: '2018-03-01'
# executionRule: latest
frequency: monthly
# dayOfExecution: '01'
paymentInitiationSctBody_periodic-payments_json:
value:
{
"instructedAmount": {"currency": "EUR", "amount": "123"},
"debtorAccount": {"iban": "HU88999999999999999999999999"},
"creditorName": "Merchant123",
"creditorAccount": {"iban": "DE23100120020123456789"},
"remittanceInformationUnstructured": "Ref Number Abonnement",
"startDate": "2018-03-01",
# "executionRule": "preceding",
"frequency": "monthly",
# "dayOfExecution": "01"
}
paymentInitiationSctBody_bulk-payments_json:
value:
{
# "batchBookingPreferred": "true",
"debtorAccount": {"iban": "HU88999999999999999999999999"},
"paymentInformationId": "my-bulk-identification-1234",
"requestedExecutionDate": "2018-08-01",
"payments":
[
{
instructedAmount": {"currency": "EUR", "amount": "123.50"},
"creditorName": "Merchant123",
"creditorAccount": {"iban": "DE02100100109307118603"},
"remittanceInformationUnstructured": "Ref Number Merchant 1"
}, {
instructedAmount": {"currency": "EUR", "amount": "34.10"},
"creditorName": "Merchant456",
"creditorAccount": {"iban": "FR7612345987650123456789014"},
"remittanceInformationUnstructured": "Ref Number Merchant 2"
}]
}
accountDetailsRegularAccount:
description: Account Details for a regular Account
value:
{
"account":
{
"resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e80f",
"iban": "FR7612345987650123456789014",
"currency": "EUR",
"product": "Girokonto",
"cashAccountType": "CACC",
"name": "Main Account",
"_links":
{
"balances": {"href": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/balances"},
"transactions": {"href": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions"}
}
}
}
accountListExample1:
summary: Account list Example 1
description: Response in case of an example, where the consent has been given on two different IBANs
value:
{"accounts":
[
{"resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e80f",
"iban": "HU88999999999999999999999999",
"currency": "EUR",
"product": "Girokonto",
"cashAccountType": "CACC",
"name": "Main Account",
"_links": {
"balances": {"href": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/balances"},
"transactions": {"href": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions"}}
},
{"resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e81g",
"iban": "HU19888888888888888888888888",
"currency": "USD",
"product": "Fremdwährungskonto",
"cashAccountType": "CACC",
"name": "US Dollar Account",
"_links": {
"balances": {"href": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e81g/balances" }}
}
]}
startScaProcessResponseExample1:
value:
{
"scaStatus": "received",
"psuMessage": "Please use your BankApp for transaction Authorisation.",
"_links":
{
"scaStatus": {"href":"/v1/payments/qwer3456tzui7890/authorisations/123auth456"}
}
}
consentsExample_DedicatedAccounts:
description: Consent request on dedicated accounts
value:
{
"access":
{
"balances": [
{ "iban": "HU88999999999999999999999999" },
{ "iban": "HU19888888888888888888888888",
"currency": "USD"
},
{ "iban": "HU47777777777777777777777777" }
],
"transactions": [
{ "iban": "HU88999999999999999999999999" },
{ "maskedPan": "123456xxxxxx1234" }
]
},
"recurringIndicator": "true",
"validUntil": "2017-11-01",
"frequencyPerDay": "4"
}
consentsExample_AccountList:
description: Consent on Account List of Available Accounts
value:
{"access":
{"availableAccounts": "allAccounts"},
"recurringIndicator": "false",
"validUntil": "2017-08-06",
"frequencyPerDay": "1"
}
consentsExample_without_Accounts:
description: Consent request on account list or without indication of accounts
value:
{"access":
{
"balances": [],
"transactions": []
},
"recurringIndicator": "true",
"validUntil": "2017-11-01",
"frequencyPerDay": "4"
}
updatePsuAuthenticationExample_Embedded:
description: Update PSU Authentication request body for the embedded approach.
value:
{
"psuData": {"password": "start12"}
}
selectPsuAuthenticationMethodExample_Embedded:
description: Select PSU Authentication Method request body for the embedded approach.
value:
{
authenticationMethodId: "myAuthenticationID"
}
transactionAuthorisationExample_Embedded:
description: Transaction Authorisation request body for the embedded approach.
value:
{
"scaAuthenticationData": "123456"
}
consentsInformationResponseExample:
description: Consent request on account list or without indication of accounts
value:
{
"access": {
"balances": [
{"iban": "HU88999999999999999999999999"}
],
"transactions":
[
{"iban": "HU19888888888888888888888888"},
{"pan": "123456xxxxxx3457"}
]
},
"recurringIndicator": "true",
"validUntil": "2017-11-01",
"frequencyPerDay": "4",
"consentStatus": "valid",
"_links": {"account": {"href": "/v1/accounts"}}
}
consentResponseExample1a_Redirect:
description: Consent request Response in case of a redirect
value:
{
"consentStatus": "received",
"consentId": "1234-wertiq-983",
"_links":
{
"scaRedirect": {"href": "https://www.testbank.com/authentication/1234-wertiq-983"},
"status": {"href": "/v1/consents/1234-wertiq-983/status"},
"scaStatus": {"href": "v1/consents/1234-wertiq-983/authorisations/123auth567"}
}
}
consentResponseExample1b_Redirect:
description: Consent request Response in case of a redirect with a dedicated start of the authorisation process
value:
{
"consentStatus": "received",
"consentId": "1234-wertiq-983",
"_links":
{
"startAuthorisation": {"href": "v1/consents/1234-wertiq-983/authorisations"}
}
}
consentResponseExample2_OAuth2:
description: Response in case of the OAuth2 approach with an implicit generated authorisation resource
value:
{
"consentStatus": "received",
"consentId": "1234-wertiq-983",
"_links":
{
"self": {"href": "/v1/consents/1234-wertiq-983"},
"scaStatus": {"href": "v1/consents/1234-wertiq-983/authorisations/123auth567"},
"scaOAuth": {"href": "https://www.testbank.com/oauth/.well-known/oauth-authorization-server"}
}
}
consentResponseExample3_Decoupled:
description: Response in case of the decoupled approach
value:
{
"consentStatus": "received",
"consentId": "1234-wertiq-983",
"_links":
{
"startAuthorisationWithPsuIdentification": {"href": "/v1/consents/1234-wertiq-983/authorisations"}
}
}
consentResponseExample4_Embedded:
description: Response in case of the embedded approach
value:
{
"consentStatus": "received",
"consentId": "1234-wertiq-983",
"_links":
{
"startAuthorisationWithPsuAuthentication": {"href": "/v1/consents/1234-wertiq-983/authorisations"}
}
}
consentStatusResponseExample1:
description: Response for a consent status request.
value:
{
"consentStatus": "valid",
}
paymentInitiationExample_json_Redirect:
description: "Response in case of a redirect with an implicitly created authorisation sub-resource"
value:
{
"transactionStatus": "RCVD",
"paymentId": "1234-wertiq-983",
"_links":
{
"scaRedirect": {"href": "https://www.testbank.com/asdfasdfasdf"},
"self": {"href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"},
"status": {"href": "/v1/payments/1234-wertiq-983/status"},
"scaStatus": {"href": "/v1/payments/1234-wertiq-983/authorisations/123auth456"}
}
}
paymentInitiationExample_json__RedirectExplicitAuthorisation:
description: "Response in case of a redirect with an explicit authorisation start"
value:
{
"transactionStatus": "RCVD",
"paymentId": "1234-wertiq-983",
"_links":
{
"self": {"href": "/v1/payments/1234-wertiq-983"},
"status": {"href": "/v1/payments/1234-wertiq-983/status"},
"startAuthorisation": {"href": "/v1/payments1234-wertiq-983/authorisations"}
}
}
paymentInitiationExample_json_OAuth2:
description: "Response in case of an OAuth2 SCA approach approach with implicitly creating an authorisation sub-resource"
value:
{
"transactionStatus": "RCVD",
"paymentId": "1234-wertiq-983",
"_links":
{
"scaOAuth": {"href": "https://www.testbank.com/oauth/.well-known/oauth-authorization-server"},
"self": {"href": "/v1/payments/1234-wertiq-983"},
"status": {"href": "/v1/payments/1234-wertiq-983/status"},
"scaStatus": {"href": "/v1/payments/1234-wertiq-983/authorisations/123auth456"}
}
}
importExample_json:
description: "List of payments created by the import request"
value:
{
importId: "1234-wertiq-983",
paymentIds:
[
{
"transactionStatus": "RCVD",
"paymentId": "1234-wertiq-983",
"_links":
{
"startAuthorisationWithPsuIdentification": {"href":"/v1/payments/1234-wertiq-983/authorisations"},
"self": {"href": "/v1/payments/1234-wertiq-983"}
}
},
{
"transactionStatus": "RCVD",
"paymentId": "1234-wertiq-984",
"_links":
{
"startAuthorisationWithPsuIdentification": {"href":"/v1/payments/1234-wertiq-984/authorisations"},
"self": {"href": "/v1/payments/1234-wertiq-984"}
}
}
]
}
adviceListExample_json:
description: "List of available advices"
value:
[
{
"date": "2024-01-01",
"type": "CSS",
"adviceId": "1234-wertiq-984",
"_links":
{
"self": {"href": "/v1/advices/1234-wertiq-984"}
}
},
{
"date": "2024-01-01",
"type": "DET",
"adviceId": "1234-wertiq-985",
"_links":
{
"self": {"href": "/v1/advices/1234-wertiq-985"}
}
}
]
paymentInitiationExample_json_Decoupled:
description: "Response in case of the decoupled approach with explicit start of authorisation needed"
value:
{
"transactionStatus": "RCVD",
"paymentId": "1234-wertiq-983",
"_links":
{
"startAuthorisationWithPsuIdentification": {"href":"/v1/payments/1234-wertiq-983/authorisations"},
"self": {"href": "/v1/payments/1234-wertiq-983"}
}
}
paymentInitiationExample_json_Embedded:
description: "Response in case of the embedded approach with explicit start of authorisation"
value:
{
"transactionStatus": "RCVD",
"paymentId": "1234-wertiq-983",
"_links":
{
"startAuthenticationWithPsuAuthentication": {"href": "/v1/payments/1234-wertiq-983/authorisations"},
"self": {"href": "/v1/payments/1234-wertiq-983"}
}
}
paymentInitiationStatusResponse_json_Simple:
value:
{
"transactionStatus": "ACCP"
}
paymentInitiationStatusResponse_json_Extended:
value: |
{
"transactionStatus": "ACCP",
"scaStatus": "Some SCA Status"
}
updatePsuIdentificationResponseExample_Decoupled_payments:
description: Response of an Update PSU Identification for a payment initiation request for the decoupled approach.
value:
{
"scatransactionStatus": "psuIdentified",
"psuMessage": "Please use your BankApp for transaction Authorisation.",
"_links":
{
"scaStatus": {"href":"/v1/payments/qwer3456tzui7890/authorisations/123auth456"}
}
}
updatePsuAuthenticationResponseExample_Embedded_payments:
description: Response of an Update PSU Authentication for a consent request for the embedded approach.
value:
{
"scaStatus": "psuAuthenticated",
_links: {
"authoriseTransaction": {"href": "/v1/payments/1234-wertiq-983/authorisations/123auth456"}
}
}
selectPsuAuthenticationMethodResponseExample_Embedded_payments:
description: Response of a Select PSU Authentication Method payment initiation request for the embedded approach
value:
{
"scaStatus": "scaMethodSelected",
"chosenScaMethod": {
"authenticationType": "SMS_OTP",
"authenticationMethodId": "myAuthenticationID"},
"challengeData": {
"otpMaxLength": "6",
"otpFormat": "integer"},
"_links": {
"authoriseTransaction": {"href": "/v1/payments/1234-wertiq-983/authorisations/123auth456"}
}
}
transactionAuthorisationResponseExample:
description: Response of a Transaction Authorisation request for the embedded approach.
value:
{
"scaStatus": "finalised"
}
balancesExample1_RegularAccount:
description: Response for a read balance request in case of a regular account.
value:
{
"account": {"iban": "FR7612345987650123456789014"},
"balances":
[{"balanceType": "closingBooked",
"balanceAmount": {"currency": "EUR", "amount": "500.00"},
"referenceDate": "2017-10-25"
},
{"balanceType": "expected",
"balanceAmount": {"currency": "EUR","amount": "900.00"},
"lastChangeDateTime": "2017-10-25T15:30:35.035Z"
}]
}
transactionsExample1_RegularAccount_json:
description: Response in JSON format for an access on a regular account
value:
{
"account": {"iban": "HU88999999999999999999999999" },
"transactions":
{
"booked":
[{
"transactionId": "1234567",
"creditorName": "John Miles",
"creditorAccount": {"iban": "DE67100100101306118605"},
"transactionAmount": {"currency": "EUR", "amount": "256.67"},
"bookingDate": "2017-10-25",
"valueDate": "2017-10-26",
"remittanceInformationUnstructured": "Example 1"
},{
"transactionId": "1234568",
"debtorName": "Paul Simpson",
"debtorAccount": {"iban": "NL76RABO0359400371"},
"transactionAmount": {"currency": "EUR", "amount": "343.01"},
"bookingDate": "2017-10-25",
"valueDate": "2017-10-26",
"remittanceInformationUnstructured": "Example 2"
}],
"pending":
[{
"transactionId": "1234569",
"creditorName": "Claude Renault",
"creditorAccount": {"iban": "FR7612345987650123456789014"},
"transactionAmount": {"currency": "EUR", "amount": "-100.03"},
"valueDate": "2017-10-26",
"remittanceInformationUnstructured": "Example 3"
}],
"_links": {"account": {"href": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f"}}
}
}
transactionDetailsExample:
description: Example for transaction details
value:
{
"transactionsDetails":
{
"transactionId": "1234567",
"creditorName": "John Miles",
"creditorAccount": {"iban": "DE67100100101306118605"},
"mandateId": "Mandate-2018-04-20-1234",
"transactionAmount": {"currency": "EUR", "amount": "-256.67"},
"bookingDate": "2017-10-25",
"valueDate": "2017-10-26",
"remittanceInformationUnstructured": "Example 1",
"bankTransactionCode": "PMNT-RCVD-ESDD",
}
}
authorisationListExample:
value:
{
"authorisationIds": ["123auth456"]
}
security:
#####################################################
# Global security options
#####################################################
- {}
tags:
#####################################################
# Predefined Tags to Group Methods
#####################################################
- name: Payment Initiation Service (PIS)
description: |
The Decription for Payment Initiation Service (PIS) offers the following services:
* Initiation and update of a payment request
* Status information of a payment
- name: Account Information Service (AIS)
description: |
The Account Information Service (AIS) offers the following services
* Transaction reports for a given account including balances if applicable.
* Balances of a given account,
* A list of available accounts,
* Account details of a given account or of the list of all accessible accounts relative to a granted consent
- name: Common Services
description: |
Processes on starting authorisations, update PSU identification or PSU authentication data and explicit
authorisation of transactions by using SCA are very similar in PIS and AIS services.
The API calls supporting these processes are described in the following independently from the service/endpoint.
For reasons of clarity, the endpoints are defined always for the Payment Initiation Service, the Payment Cancellation,
and the Account Information Service (Consents) separately.
These processes usually are used following a hyperlink of the ASPSP.