Api documentation
Api documentation get started
Api documentation
References - NextGenPSD2XS2AFrameworkforCroatia 1.3.9 May 27nd 2022 - HR Country Specific Json Yaml
Payment initiation request
POST /v1/{payment-service}/{payment-product}
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 (Mandatory Support of ASPSP)
- cross-border-credit-transfers (Mandatory Support of ASPSP)
- domestic-credit-transfers-hr (Mandatory Support of ASPSP)
- hr-rtgs-payments (Optional Support of ASPSP)
Payment products with payment information in pain.001 XML format:
- pain.001-credit-transfers
It is important to note that the support for pain.001 XML format is only supported for the bulk payments using the Croatian specific pain.001-credit-transfers!
Furthermore the request body depends on the payment-service
payments: A single payment initiation request.
In case of single payments, only the JSON format is mandatory. The pain.001 message implementations are ASPSP specific, see individual standard descriptions for your ASPSP.
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.
Single and mulitilevel SCA Processes
The Payment Initiation requests are independent from the need of one or 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.
Parameter | Type/Format | Description |
---|---|---|
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID
|
Header / string |
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. |
PSU-ID-Type
|
Header / string |
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. |
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. If not available, the TPP shall use the IP Address used by the TPP when submitting this request. |
TPP-Redirect-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a redirect over an embedded SCA approach. If it equals "false", the TPP 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. |
TPP-Redirect-URI
|
Header / string |
URI of the TPP, where the transaction flow shall be redirected to after a Redirect. Mandated for the Redirect SCA Approach, specifically when TPP-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. |
TPP-Nok-Redirect-URI
|
Header / string |
If this URI is contained, the TPP is asking to redirect the transaction flow to this address instead of the TPP-Redirect-URI in case of a negative result of the redirect SCA method. This might be ignored by the ASPSP. |
TPP-Explicit-Authorisation-Preferred
|
Header / boolean |
If it equals "true", the TPP 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 TPP. This especially indicates that the TPP assumes a direct authorisation of the transaction in the next step, without using a signing basket. |
TPP-Rejection-NoFunds-Preferred
|
Header / boolean |
If it equals "true" then the TPP 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 TPP 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. |
TPP-Brand-Logging-Information
|
Header / string |
This header might be used by TPPs to inform the ASPSP about the brand used by the TPP towards the PSU. This information is meant for logging entries to enhance communication between ASPSP and PSU or ASPSP and TPP. This header might be ignored by the ASPSP. |
TPP-Notification-URI
|
Header / string |
URI for the Endpoint of the TPP-API to which the status of the payment initiation should be sent. This header field may by ignored by the ASPSP. For security reasons, it shall be ensured that the TPP-Notification-URI as introduced above is secured by the TPP eIDAS QWAC used for identification of the TPP. The following applies: URIs which are provided by TPPs in TPP-Notification-URI shall comply with the domain secured by the eIDAS QWAC certificate of the TPP in the field CN or SubjectAltName of the certificate. Please note that in case of example-TPP.com as certificate entry TPP- Notification-URI like www.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications or notifications.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications would be compliant. Wildcard definitions shall be taken into account for compliance checks by the ASPSP. ASPSPs may respond with ASPSP-Notification-Support set to false, if the provided URIs do not comply. |
TPP-Notification-Content-Preferred
|
Header / string |
The string has the form status=X1, ..., Xn where Xi is one of the constants SCA, PROCESS, LAST and where constants are not repeated. The usage of the constants supports the of following semantics: SCA: A notification on every change of the scaStatus attribute for all related authorisation processes is preferred by the TPP. PROCESS: A notification on all changes of consentStatus or transactionStatus attributes is preferred by the TPP. LAST: Only a notification on the last consentStatus or transactionStatus as available in the XS2A interface is preferred by the TPP. This header field may be ignored, if the ASPSP does not support resource notification services for the related TPP. |
Consent-ID
|
Header / |
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. |
TPP-Decoupled-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a decoupled SCA approach. If it equals "false", the TPP prefers not to use the decoupled approach for SCA. The ASPSP will then choose between the embedded or the redirect 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 parameter TPP-Redirect-Preferred and the SCA method chosen by the TPP/PSU. The parameter might be ignored by the ASPSP. If both parameters TPP-Redirect-Preferred and TPP-Decoupled-Preferred are present and true, the request is still not rejected, but it is up to the ASPSP, which approach will actually be used. |
paymentInitiation
|
body / |
JSON request body for a payment inition request message. There are the following payment-products supported:
There are the following payment-services supported:
All optional, conditional and predefined but not yet used fields are defined. |
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
Sample Request
{
"instructedAmount": {
"currency": "EUR",
"amount": "123.50"
},
"debtorAccount": {
"iban": "DE40100100103307118608"
},
"creditorName": "Merchant123",
"creditorAccount": {
"iban": "DE02100100109307118603"
},
"remittanceInformationUnstructured": "Ref Number Merchant"
}
Response
201 - CREATED
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"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"
}
}
}
Get payment information
GET /v1/{payment-service}/{payment-product}/{paymentId}
Returns the content of a payment object
Parameter | Type/Format | Description |
---|---|---|
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
paymentId
|
Path / |
Resource identification of the generated payment initiation resource. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
Payment cancellation request
DELETE /v1/{payment-service}/{payment-product}/{paymentId}
This method initiates the cancellation of a payment. Depending on the payment-service, the payment-product and the ASPSP's implementation, this TPP call might be sufficient to cancel a payment. If an authorisation of the payment cancellation is mandated by the ASPSP, a corresponding hyperlink will be contained in the response message.
Cancels the addressed payment with resource identification paymentId if applicable to the payment-service, payment-product and received in product related timelines (e.g. before end of business day for scheduled payments of the last business day before the scheduled execution day).
The response to this DELETE command will tell the TPP whether the
- access method was rejected,
- access method was successful, or
- access method is generally applicable, but further authorisation processes are needed.
Parameter | Type/Format | Description |
---|---|---|
TPP-Explicit-Authorisation-Preferred
|
Header / boolean |
If it equals "true", the TPP 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 TPP. This especially indicates that the TPP assumes a direct authorisation of the transaction in the next step, without using a signing basket. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
TPP-Redirect-URI
|
Header / string |
URI of the TPP, where the transaction flow shall be redirected to after a Redirect. Mandated for the Redirect SCA Approach, specifically when TPP-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. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
TPP-Nok-Redirect-URI
|
Header / string |
If this URI is contained, the TPP is asking to redirect the transaction flow to this address instead of the TPP-Redirect-URI in case of a negative result of the redirect SCA method. This might be ignored by the ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
TPP-Redirect-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a redirect over an embedded SCA approach. If it equals "false", the TPP 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. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Decoupled-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a decoupled SCA approach. If it equals "false", the TPP prefers not to use the decoupled approach for SCA. The ASPSP will then choose between the embedded or the redirect 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 parameter TPP-Redirect-Preferred and the SCA method chosen by the TPP/PSU. The parameter might be ignored by the ASPSP. If both parameters TPP-Redirect-Preferred and TPP-Decoupled-Preferred are present and true, the request is still not rejected, but it is up to the ASPSP, which approach will actually be used. |
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
paymentId
|
Path / |
Resource identification of the generated payment initiation resource. |
Response
202 - Received
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"transactionStatus": "ACTC",
"_links": {
"self": {
"href": "/v1/payments/123456scheduled789"
},
"status": {
"href": "/v1/payments/123456scheduled789/status"
},
"startAuthorisation": {
"href": "/v1/payments/123456scheduled789/cancellation-authorisations"
}
}
}
Payment initiation status request
GET /v1/{payment-service}/{payment-product}/{paymentId}/status
Check the transaction status of a payment initiation.
Parameter | Type/Format | Description |
---|---|---|
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
paymentId
|
Path / |
Resource identification of the generated payment initiation resource. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"transactionStatus": "ACCP"
}
Will deliver an array of resource identifications to all generated cancellation authorisation sub-resources
GET /v1/{payment-service}/{payment-product}/{paymentId}/cancellation-authorisations
Retrieve a list of all created cancellation authorisation sub-resources.
Parameter | Type/Format | Description |
---|---|---|
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
paymentId
|
Path / |
Resource identification of the generated payment initiation resource. |
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"cancellationIds": [
"123auth456"
]
}
Create consent
POST /v1/consents
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.
Optional Extension: As an option, an ASPSP might optionally accept a specific access right on the access on all PSD2 related services for all available accounts.
As another option an ASPSP might optionally also accept a command, where only access rights are inserted without mentioning the addressed account. The relation to accounts is then handled afterwards between PSU and ASPSP. This option is not supported for the Embedded SCA Approach. As a last option, an ASPSP might in addition accept a command with access rights
- to see the list of available payment accounts or
- to see the list of available payment accounts with balances.
Parameter | Type/Format | Description |
---|---|---|
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID
|
Header / string |
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. |
PSU-ID-Type
|
Header / string |
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. |
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
TPP-Redirect-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a redirect over an embedded SCA approach. If it equals "false", the TPP 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. |
TPP-Redirect-URI
|
Header / string |
URI of the TPP, where the transaction flow shall be redirected to after a Redirect. Mandated for the Redirect SCA Approach, specifically when TPP-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. |
TPP-Nok-Redirect-URI
|
Header / string |
If this URI is contained, the TPP is asking to redirect the transaction flow to this address instead of the TPP-Redirect-URI in case of a negative result of the redirect SCA method. This might be ignored by the ASPSP. |
TPP-Explicit-Authorisation-Preferred
|
Header / boolean |
If it equals "true", the TPP 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 TPP. This especially indicates that the TPP assumes a direct authorisation of the transaction in the next step, without using a signing basket. |
TPP-Brand-Logging-Information
|
Header / string |
This header might be used by TPPs to inform the ASPSP about the brand used by the TPP towards the PSU. This information is meant for logging entries to enhance communication between ASPSP and PSU or ASPSP and TPP. This header might be ignored by the ASPSP. |
TPP-Notification-Content-Preferred
|
Header / string |
The string has the form status=X1, ..., Xn where Xi is one of the constants SCA, PROCESS, LAST and where constants are not repeated. The usage of the constants supports the of following semantics: SCA: A notification on every change of the scaStatus attribute for all related authorisation processes is preferred by the TPP. PROCESS: A notification on all changes of consentStatus or transactionStatus attributes is preferred by the TPP. LAST: Only a notification on the last consentStatus or transactionStatus as available in the XS2A interface is preferred by the TPP. This header field may be ignored, if the ASPSP does not support resource notification services for the related TPP. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. If not available, the TPP shall use the IP Address used by the TPP when submitting this request. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
TPP-Notification-URI
|
Header / string |
URI for the Endpoint of the TPP-API to which the status of the payment initiation should be sent. This header field may by ignored by the ASPSP. For security reasons, it shall be ensured that the TPP-Notification-URI as introduced above is secured by the TPP eIDAS QWAC used for identification of the TPP. The following applies: URIs which are provided by TPPs in TPP-Notification-URI shall comply with the domain secured by the eIDAS QWAC certificate of the TPP in the field CN or SubjectAltName of the certificate. Please note that in case of example-TPP.com as certificate entry TPP- Notification-URI like www.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications or notifications.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications would be compliant. Wildcard definitions shall be taken into account for compliance checks by the ASPSP. ASPSPs may respond with ASPSP-Notification-Support set to false, if the provided URIs do not comply. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
TPP-Decoupled-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a decoupled SCA approach. If it equals "false", the TPP prefers not to use the decoupled approach for SCA. The ASPSP will then choose between the embedded or the redirect 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 parameter TPP-Redirect-Preferred and the SCA method chosen by the TPP/PSU. The parameter might be ignored by the ASPSP. If both parameters TPP-Redirect-Preferred and TPP-Decoupled-Preferred are present and true, the request is still not rejected, but it is up to the ASPSP, which approach will actually be used. |
consents
|
body / object |
Request body for a consents request. |
Sample Request
{
"access": {
"balances": [
{
"iban": "DE40100100103307118608"
},
{
"iban": "DE40100100103307118608"
},
{
"iban": "DE02100100109307118603",
"currency": "USD"
},
{
"iban": "DE02100100109307118603",
"currency": "USD"
},
{
"iban": "DE67100100101306118605"
},
{
"iban": "DE67100100101306118605"
}
],
"transactions": [
{
"iban": "DE40100100103307118608"
},
{
"iban": "DE40100100103307118608"
},
{
"maskedPan": "123456xxxxxx1234"
},
{
"maskedPan": "123456xxxxxx1234"
}
]
},
"recurringIndicator": "true",
"validUntil": "2017-11-01",
"frequencyPerDay": "4"
}
Response
201 - Created
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"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"
}
}
}
Get consent request
GET /v1/consents/{consentId}
Returns the content of an account information consent object. This is returning the data for the TPP especially in cases, where the consent was directly managed between ASPSP and PSU e.g. in a redirect SCA Approach.
Parameter | Type/Format | Description |
---|---|---|
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
consentId
|
Path / |
ID of the corresponding consent object as returned by an account information consent request. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"access": {
"balances": [
{
"iban": "DE2310010010123456789"
},
{
"iban": "DE2310010010123456789"
}
],
"transactions": [
{
"iban": "DE2310010010123456789"
},
{
"iban": "DE2310010010123456789"
},
{
"pan": "123456xxxxxx3457"
},
{
"pan": "123456xxxxxx3457"
}
]
},
"recurringIndicator": "true",
"validUntil": "2017-11-01",
"frequencyPerDay": "4",
"consentStatus": "valid",
"_links": {
"account": {
"href": "/v1/accounts"
}
}
}
Delete consent
DELETE /v1/consents/{consentId}
The TPP can delete an account information consent object if needed.
Parameter | Type/Format | Description |
---|---|---|
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
consentId
|
Path / |
ID of the corresponding consent object as returned by an account information consent request. |
Response
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
Consent status request
GET /v1/consents/{consentId}/status
Read the status of an account information consent resource.
Parameter | Type/Format | Description |
---|---|---|
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
consentId
|
Path / |
ID of the corresponding consent object as returned by an account information consent request. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"consentStatus": "valid"
}
Get consent authorisation sub-resources request
GET /v1/consents/{consentId}/authorisations
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.
Parameter | Type/Format | Description |
---|---|---|
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
consentId
|
Path / |
ID of the corresponding consent object as returned by an account information consent request. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"authorisationIds": [
"123auth456"
]
}
Read transaction list of an account
GET /v1/card-accounts/{account-id}/transactions
Reads account data from a given card account addressed by "account-id".
Parameter | Type/Format | Description |
---|---|---|
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID
|
Header / |
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
account-id
|
Path / |
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. |
dateFrom
|
Query / string |
Conditional: Starting date (inclusive the date dateFrom) of the transaction list, mandated if no delta access is required and if bookingStatus does not equal "information. 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. |
dateTo
|
Query / string |
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. |
entryReferenceFrom
|
Query / string |
This data attribute is indicating that the AISP is in favour to get all transactions after the transaction with identification entryReferenceFrom alternatively to the above defined period. This is a implementation of a delta access. If this data element is contained, the entries "dateFrom" and "dateTo" might be ignored by the ASPSP if a delta report is supported. Optional if supported by API provider. |
bookingStatus
|
Query / string |
Permitted codes are
|
deltaList
|
Query / boolean |
This data attribute is indicating that the AISP is in favour to get all transactions after the last report access for this PSU on the addressed account. This is another implementation of a delta access-report. This delta indicator might be rejected by the ASPSP if this function is not supported. Optional if supported by API provider |
withBalance
|
Query / boolean |
If contained, this function reads the list of accessible payment accounts including the booking balance, if granted by the PSU in the related consent and available by the ASPSP. This parameter might be ignored by the ASPSP. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
Read card account balances
GET /v1/card-accounts/{account-id}/balances
Reads balance data from a given card 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 card account list" call.
Parameter | Type/Format | Description |
---|---|---|
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID
|
Header / |
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
account-id
|
Path / |
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. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"cardAccount": {
"maskedPan": "525412******3241"
},
"balances": [
{
"balanceType": "interimBooked",
"balanceAmount": {
"currency": "EUR",
"amount": "14355.78"
}
},
{
"balanceType": "interimBooked",
"balanceAmount": {
"currency": "EUR",
"amount": "14355.78"
}
},
{
"balanceType": "nonInvoiced",
"balanceAmount": {
"currency": "EUR",
"amount": "4175.86"
}
},
{
"balanceType": "nonInvoiced",
"balanceAmount": {
"currency": "EUR",
"amount": "4175.86"
}
}
]
}
Read details about a card account
GET /v1/card-accounts/{account-id}
Reads details about a card account. 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.
Parameter | Type/Format | Description |
---|---|---|
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID
|
Header / |
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
account-id
|
Path / |
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. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"cardAccount": {
"resourceId": "3d9a81b3-a47d-4130-8765-a9c0ff861b99",
"maskedPan": "525412******3241",
"currency": "EUR",
"ownerName": "Heike Mustermann",
"name": "Main",
"product": "Basic Credit",
"status": "enabled",
"creditLimit": {
"currency": "EUR",
"amount": "15000"
},
"balances": [
{
"balanceType": "interimBooked",
"balanceAmount": {
"currency": "EUR",
"amount": "14355.78"
}
},
{
"balanceType": "interimBooked",
"balanceAmount": {
"currency": "EUR",
"amount": "14355.78"
}
},
{
"balanceType": "nonInvoiced",
"balanceAmount": {
"currency": "EUR",
"amount": "4175.86"
}
},
{
"balanceType": "nonInvoiced",
"balanceAmount": {
"currency": "EUR",
"amount": "4175.86"
}
}
],
"_links": {
"transactions": {
"href": "/v1/card-accounts/3d9a81b3-a47d-4130-8765-a9c0ff861b99/transactions"
}
}
}
}
Read a list of card accounts
GET /v1/card-accounts
Reads a list of card accounts with additional information, e.g. balance information. 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 card accounts depends then on the PSU ID and the stored consent addressed by consentId, respectively the OAuth2 access token.
Parameter | Type/Format | Description |
---|---|---|
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID
|
Header / |
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"cardAccounts": [
{
"resourceId": "3d9a81b3-a47d-4130-8765-a9c0ff861b99",
"maskedPan": "525412******3241",
"currency": "EUR",
"name": "Main",
"product": "Basic Credit",
"status": "enabled",
"creditLimit": {
"currency": "EUR",
"amount": "15000"
},
"balances": [
{
"balanceType": "interimBooked",
"balanceAmount": {
"currency": "EUR",
"amount": "14355.78"
}
},
{
"balanceType": "interimBooked",
"balanceAmount": {
"currency": "EUR",
"amount": "14355.78"
}
},
{
"balanceType": "nonInvoiced",
"balanceAmount": {
"currency": "EUR",
"amount": "4175.86"
}
},
{
"balanceType": "nonInvoiced",
"balanceAmount": {
"currency": "EUR",
"amount": "4175.86"
}
}
],
"_links": {
"transactions": {
"href": "/v1/card-accounts/3d9a81b3-a47d-4130-8765-a9c0ff861b99/transactions"
}
}
},
{
"resourceId": "3d9a81b3-a47d-4130-8765-a9c0ff861b99",
"maskedPan": "525412******3241",
"currency": "EUR",
"name": "Main",
"product": "Basic Credit",
"status": "enabled",
"creditLimit": {
"currency": "EUR",
"amount": "15000"
},
"balances": [
{
"balanceType": "interimBooked",
"balanceAmount": {
"currency": "EUR",
"amount": "14355.78"
}
},
{
"balanceType": "interimBooked",
"balanceAmount": {
"currency": "EUR",
"amount": "14355.78"
}
},
{
"balanceType": "nonInvoiced",
"balanceAmount": {
"currency": "EUR",
"amount": "4175.86"
}
},
{
"balanceType": "nonInvoiced",
"balanceAmount": {
"currency": "EUR",
"amount": "4175.86"
}
}
],
"_links": {
"transactions": {
"href": "/v1/card-accounts/3d9a81b3-a47d-4130-8765-a9c0ff861b99/transactions"
}
}
}
]
}
Read account list
GET /v1/accounts
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.
Parameter | Type/Format | Description |
---|---|---|
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
Consent-ID
|
Header / |
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
withBalance
|
Query / boolean |
If contained, this function reads the list of accessible payment accounts including the booking balance, if granted by the PSU in the related consent and available by the ASPSP. This parameter might be ignored by the ASPSP. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"accounts": [
{
"resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e80f",
"iban": "DE2310010010123456789",
"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-f5400a64e80f",
"iban": "DE2310010010123456789",
"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": "DE2310010010123456788",
"currency": "USD",
"product": "Fremdw?hrungskonto",
"cashAccountType": "CACC",
"name": "US Dollar Account",
"_links": {
"balances": {
"href": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e81g/balances"
}
}
},
{
"resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e81g",
"iban": "DE2310010010123456788",
"currency": "USD",
"product": "Fremdw?hrungskonto",
"cashAccountType": "CACC",
"name": "US Dollar Account",
"_links": {
"balances": {
"href": "/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e81g/balances"
}
}
}
]
}
Read account details
GET /v1/accounts/{account-id}
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.
NOTE: The account-id can represent a multicurrency account. In this case the currency code is set to "XXX".
Give detailed information about the addressed account.
Give detailed information about the addressed account together with balance information
Parameter | Type/Format | Description |
---|---|---|
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
Consent-ID
|
Header / |
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
account-id
|
Path / |
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. |
withBalance
|
Query / boolean |
If contained, this function reads the list of accessible payment accounts including the booking balance, if granted by the PSU in the related consent and available by the ASPSP. This parameter might be ignored by the ASPSP. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"account": {
"resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e80f",
"iban": "FR7612345987650123456789014",
"currency": "EUR",
"ownerName": "Heike Mustermann",
"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"
}
}
}
}
Read balance
GET /v1/accounts/{account-id}/balances
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.
Parameter | Type/Format | Description |
---|---|---|
account-id
|
Path / |
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. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Consent-ID
|
Header / |
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"account": {
"iban": "FR7612345987650123456789014"
},
"balances": [
{
"balanceType": "closingBooked",
"balanceAmount": {
"currency": "EUR",
"amount": "500.00"
},
"referenceDate": "2017-10-25"
},
{
"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"
},
{
"balanceType": "expected",
"balanceAmount": {
"currency": "EUR",
"amount": "900.00"
},
"lastChangeDateTime": "2017-10-25T15:30:35.035Z"
}
]
}
Read transaction list of an account
GET /v1/accounts/{account-id}/transactions
Read transaction reports or transaction lists of a given account ddressed 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". The ASPSP might add balance information, if transaction lists without balances are not supported.
Parameter | Type/Format | Description |
---|---|---|
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID
|
Header / |
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
withBalance
|
Query / boolean |
If contained, this function reads the list of accessible payment accounts including the booking balance, if granted by the PSU in the related consent and available by the ASPSP. This parameter might be ignored by the ASPSP. |
deltaList
|
Query / boolean |
This data attribute is indicating that the AISP is in favour to get all transactions after the last report access for this PSU on the addressed account. This is another implementation of a delta access-report. This delta indicator might be rejected by the ASPSP if this function is not supported. Optional if supported by API provider |
bookingStatus
|
Query / string |
Permitted codes are
|
dateFrom
|
Query / string |
Conditional: Starting date (inclusive the date dateFrom) of the transaction list, mandated if no delta access is required and if bookingStatus does not equal "information. 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. |
dateTo
|
Query / string |
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. |
entryReferenceFrom
|
Query / string |
This data attribute is indicating that the AISP is in favour to get all transactions after the transaction with identification entryReferenceFrom alternatively to the above defined period. This is a implementation of a delta access. If this data element is contained, the entries "dateFrom" and "dateTo" might be ignored by the ASPSP if a delta report is supported. Optional if supported by API provider. |
account-id
|
Path / |
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. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"account": {
"iban": "DE2310010010123456788"
},
"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": "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"
},
{
"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"
},
{
"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"
}
}
}
}
Read transaction details
GET /v1/accounts/{account-id}/transactions/{transactionId}
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.
Parameter | Type/Format | Description |
---|---|---|
transactionId
|
Path / |
This identification is given by the attribute transactionId of the corresponding entry of a transaction list. |
account-id
|
Path / |
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. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID
|
Header / |
This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"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-RDDT-ESDD"
}
}
Start the authorisation process for a consent
POST /v1/consents/{consentId}/authorisations
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 ASPSP might make the usage of this access method unnecessary, since the related authorisation resource will be automatically created by the ASPSP after the submission of the consent data with the first POST consents call.
The start authorisation process is a process which is needed for creating a new authorisation or cancellation sub-resource.
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 TPP.
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.
- The ASPSP has indicated with an 'startAuthorisation' hyperlink in the preceding payment cancellation response that an explicit start of the authorisation process is needed by the TPP. The 'startAuthorisation' hyperlink can transport more information about data which needs to be uploaded by using the extended forms as indicated above.
- The related payment cancellation request cannot be applied yet since a multilevel SCA is mandate for executing the cancellation.
- The signing basket needs to be authorised yet.
Parameter | Type/Format | Description |
---|---|---|
consentId
|
Path / |
ID of the corresponding consent object as returned by an account information consent request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID
|
Header / string |
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. |
PSU-ID-Type
|
Header / string |
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. |
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
TPP-Redirect-URI
|
Header / string |
URI of the TPP, where the transaction flow shall be redirected to after a Redirect. Mandated for the Redirect SCA Approach, specifically when TPP-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. |
TPP-Nok-Redirect-URI
|
Header / string |
If this URI is contained, the TPP is asking to redirect the transaction flow to this address instead of the TPP-Redirect-URI in case of a negative result of the redirect SCA method. This might be ignored by the ASPSP. |
TPP-Notification-URI
|
Header / string |
URI for the Endpoint of the TPP-API to which the status of the payment initiation should be sent. This header field may by ignored by the ASPSP. For security reasons, it shall be ensured that the TPP-Notification-URI as introduced above is secured by the TPP eIDAS QWAC used for identification of the TPP. The following applies: URIs which are provided by TPPs in TPP-Notification-URI shall comply with the domain secured by the eIDAS QWAC certificate of the TPP in the field CN or SubjectAltName of the certificate. Please note that in case of example-TPP.com as certificate entry TPP- Notification-URI like www.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications or notifications.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications would be compliant. Wildcard definitions shall be taken into account for compliance checks by the ASPSP. ASPSPs may respond with ASPSP-Notification-Support set to false, if the provided URIs do not comply. |
TPP-Notification-Content-Preferred
|
Header / string |
The string has the form status=X1, ..., Xn where Xi is one of the constants SCA, PROCESS, LAST and where constants are not repeated. The usage of the constants supports the of following semantics: SCA: A notification on every change of the scaStatus attribute for all related authorisation processes is preferred by the TPP. PROCESS: A notification on all changes of consentStatus or transactionStatus attributes is preferred by the TPP. LAST: Only a notification on the last consentStatus or transactionStatus as available in the XS2A interface is preferred by the TPP. This header field may be ignored, if the ASPSP does not support resource notification services for the related TPP. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
TPP-Redirect-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a redirect over an embedded SCA approach. If it equals "false", the TPP 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. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
|
body / |
|
Response
201 - Created
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"scaStatus": "received",
"authorisationId": "123auth456",
"psuMessage": "Please use your BankApp for transaction Authorisation.",
"_links": {
"scaStatus": {
"href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
Read the SCA status of the consent authorisation
GET /v1/consents/{consentId}/authorisations/{authorisationId}
This method returns the SCA status of a consent initiation's authorisation sub-resource.
Parameter | Type/Format | Description |
---|---|---|
authorisationId
|
Path / |
Resource identification of the related SCA. |
consentId
|
Path / |
ID of the corresponding consent object as returned by an account information consent request. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
Update PSU Data for consents
PUT /v1/consents/{consentId}/authorisations/{authorisationId}
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.
This methods updates PSU data on the cancellation authorisation resource if needed.
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 needs 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 needs a reduced header, therefore many optional elements are not present. Maybe in a later version the access path will change.
Parameter | Type/Format | Description |
---|---|---|
PSU-ID
|
Header / string |
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. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-ID-Type
|
Header / string |
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. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. It shall be contained if and only if this request was actively initiated by the PSU. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
authorisationId
|
Path / |
Resource identification of the related SCA. |
consentId
|
Path / |
ID of the corresponding consent object as returned by an account information consent request. |
|
body / |
|
Sample Request
{}
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
406 - Not Acceptable
409 - Conflict
429 - Too Many Requests
{
"scatransactionStatus": "psuIdentified",
"psuMessage": "Please use your BankApp for transaction Authorisation.",
"_links": {
"scaStatus": {
"href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
Confirmation of funds request
POST /v1/funds-confirmations
Creates a confirmation of funds request at the ASPSP. Checks whether a specific amount is available at point of time of the request on an account linked to a given tuple card issuer(TPP)/card number, or addressed by IBAN and TPP respectively. If the related extended services are used a conditional Consent-ID is contained in the header. This field is contained but commented out in this specification.
Parameter | Type/Format | Description |
---|---|---|
confirmationOfFunds
|
body / object |
Request body for a confirmation of funds request. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Authorization
|
Header / |
This field might be used in case where a consent was agreed between ASPSP and PSU through an OAuth2 based protocol, facilitated by the TPP. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Sample Request
{
"cardNumber": "12345678901234",
"account": {
"iban": "DE23100120020123456789"
},
"instructedAmount": {
"currency": "EUR",
"amount": "123"
}
}
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"fundsAvailable": "true"
}
Create a signing basket resource
POST /v1/signing-baskets
Create a signing basket resource for authorising several transactions with one SCA method. The resource identifications of these transactions are contained in the payload of this access method
Parameter | Type/Format | Description |
---|---|---|
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
TPP-Notification-Content-Preferred
|
Header / string |
The string has the form status=X1, ..., Xn where Xi is one of the constants SCA, PROCESS, LAST and where constants are not repeated. The usage of the constants supports the of following semantics: SCA: A notification on every change of the scaStatus attribute for all related authorisation processes is preferred by the TPP. PROCESS: A notification on all changes of consentStatus or transactionStatus attributes is preferred by the TPP. LAST: Only a notification on the last consentStatus or transactionStatus as available in the XS2A interface is preferred by the TPP. This header field may be ignored, if the ASPSP does not support resource notification services for the related TPP. |
TPP-Notification-URI
|
Header / string |
URI for the Endpoint of the TPP-API to which the status of the payment initiation should be sent. This header field may by ignored by the ASPSP. For security reasons, it shall be ensured that the TPP-Notification-URI as introduced above is secured by the TPP eIDAS QWAC used for identification of the TPP. The following applies: URIs which are provided by TPPs in TPP-Notification-URI shall comply with the domain secured by the eIDAS QWAC certificate of the TPP in the field CN or SubjectAltName of the certificate. Please note that in case of example-TPP.com as certificate entry TPP- Notification-URI like www.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications or notifications.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications would be compliant. Wildcard definitions shall be taken into account for compliance checks by the ASPSP. ASPSPs may respond with ASPSP-Notification-Support set to false, if the provided URIs do not comply. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
TPP-Explicit-Authorisation-Preferred
|
Header / boolean |
If it equals "true", the TPP 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 TPP. This especially indicates that the TPP assumes a direct authorisation of the transaction in the next step, without using a signing basket. |
TPP-Nok-Redirect-URI
|
Header / string |
If this URI is contained, the TPP is asking to redirect the transaction flow to this address instead of the TPP-Redirect-URI in case of a negative result of the redirect SCA method. This might be ignored by the ASPSP. |
TPP-Redirect-URI
|
Header / string |
URI of the TPP, where the transaction flow shall be redirected to after a Redirect. Mandated for the Redirect SCA Approach, specifically when TPP-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. |
TPP-Redirect-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a redirect over an embedded SCA approach. If it equals "false", the TPP 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. |
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-ID-Type
|
Header / string |
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. |
PSU-ID
|
Header / string |
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. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. If not available, the TPP shall use the IP Address used by the TPP when submitting this request. |
Consent-ID
|
Header / |
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. |
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
TPP-Decoupled-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a decoupled SCA approach. If it equals "false", the TPP prefers not to use the decoupled approach for SCA. The ASPSP will then choose between the embedded or the redirect 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 parameter TPP-Redirect-Preferred and the SCA method chosen by the TPP/PSU. The parameter might be ignored by the ASPSP. If both parameters TPP-Redirect-Preferred and TPP-Decoupled-Preferred are present and true, the request is still not rejected, but it is up to the ASPSP, which approach will actually be used. |
signingBasket
|
body / object |
Request body for a confirmation of an establishing signing basket request |
Sample Request
{
"paymentIds": [
"123qwert456789",
"12345qwert7899"
]
}
Response
201 - Created
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"transactionStatus": "RCVD",
"basketId": "1234-basket-567",
"_links": {
"self": {
"href": "/v1/signing-baskets/1234-basket-567"
},
"status": {
"href": "/v1/signing-baskets/1234-basket-567/status"
},
"startAuthorisation": {
"href": "/v1/signing-baskets/1234-basket-567/authorisations"
}
}
}
Returns the content of an signing basket object
GET /v1/signing-baskets/{basketId}
Returns the content of a signing basket object.
Parameter | Type/Format | Description |
---|---|---|
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
basketId
|
Path / |
This identification of the corresponding signing basket object. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"payments": [
"1234pay567",
"1234pay568",
"1234pay888"
],
"transactionStatus": "ACTC"
}
Delete the signing basket
DELETE /v1/signing-baskets/{basketId}
Delete the signing basket structure as long as no (partial) authorisation has yet been applied. The undlerying transactions are not affected by this deletion.
Remark: The signing basket as such is not deletable after a first (partial) authorisation has been applied. Nevertheless, single transactions might be cancelled on an individual basis on the XS2A interface.
Parameter | Type/Format | Description |
---|---|---|
basketId
|
Path / |
This identification of the corresponding signing basket object. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
Response
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
Read the status of the signing basket
GET /v1/signing-baskets/{basketId}/status
Returns the status of a signing basket object.
Parameter | Type/Format | Description |
---|---|---|
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-ID-Type
|
Header / string |
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. |
PSU-ID
|
Header / string |
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. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
basketId
|
Path / |
This identification of the corresponding signing basket object. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
Start the authorisation process for a signing basket
POST /v1/signing-baskets/{basketId}/authorisations
Create an authorisation sub-resource and start the authorisation process of a signing basket. 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 signing-baskets.
The ASPSP might make the usage of this access method unnecessary in case of only one SCA process needed, since the related authorisation resource might be automatically created by the ASPSP after the submission of the payment data with the first POST signing basket call.
The start authorisation process is a process which is needed for creating a new authorisation or cancellation sub-resource.
This applies in the following scenarios:
- The ASPSP has indicated with a 'startAuthorisation' hyperlink in the preceding payment
initiation response that an explicit start of the authorisation process is needed by the TPP.
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.
- The ASPSP has indicated with a 'startAuthorisation' hyperlink in the preceding payment cancellation response that an explicit start of the authorisation process is needed by the TPP. The 'startAuthorisation' hyperlink can transport more information about data which needs to be uploaded by using the extended forms as indicated above.
- The related payment cancellation request cannot be applied yet since a multilevel SCA is mandate for executing the cancellation.
- The signing basket needs to be authorised yet.
Parameter | Type/Format | Description |
---|---|---|
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Nok-Redirect-URI
|
Header / string |
If this URI is contained, the TPP is asking to redirect the transaction flow to this address instead of the TPP-Redirect-URI in case of a negative result of the redirect SCA method. This might be ignored by the ASPSP. |
TPP-Redirect-URI
|
Header / string |
URI of the TPP, where the transaction flow shall be redirected to after a Redirect. Mandated for the Redirect SCA Approach, specifically when TPP-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. |
TPP-Redirect-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a redirect over an embedded SCA approach. If it equals "false", the TPP 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. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID
|
Header / string |
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. |
PSU-ID-Type
|
Header / string |
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. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
TPP-Notification-Content-Preferred
|
Header / string |
The string has the form status=X1, ..., Xn where Xi is one of the constants SCA, PROCESS, LAST and where constants are not repeated. The usage of the constants supports the of following semantics: SCA: A notification on every change of the scaStatus attribute for all related authorisation processes is preferred by the TPP. PROCESS: A notification on all changes of consentStatus or transactionStatus attributes is preferred by the TPP. LAST: Only a notification on the last consentStatus or transactionStatus as available in the XS2A interface is preferred by the TPP. This header field may be ignored, if the ASPSP does not support resource notification services for the related TPP. |
TPP-Notification-URI
|
Header / string |
URI for the Endpoint of the TPP-API to which the status of the payment initiation should be sent. This header field may by ignored by the ASPSP. For security reasons, it shall be ensured that the TPP-Notification-URI as introduced above is secured by the TPP eIDAS QWAC used for identification of the TPP. The following applies: URIs which are provided by TPPs in TPP-Notification-URI shall comply with the domain secured by the eIDAS QWAC certificate of the TPP in the field CN or SubjectAltName of the certificate. Please note that in case of example-TPP.com as certificate entry TPP- Notification-URI like www.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications or notifications.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications would be compliant. Wildcard definitions shall be taken into account for compliance checks by the ASPSP. ASPSPs may respond with ASPSP-Notification-Support set to false, if the provided URIs do not comply. |
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
TPP-Decoupled-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a decoupled SCA approach. If it equals "false", the TPP prefers not to use the decoupled approach for SCA. The ASPSP will then choose between the embedded or the redirect 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 parameter TPP-Redirect-Preferred and the SCA method chosen by the TPP/PSU. The parameter might be ignored by the ASPSP. If both parameters TPP-Redirect-Preferred and TPP-Decoupled-Preferred are present and true, the request is still not rejected, but it is up to the ASPSP, which approach will actually be used. |
|
body / |
|
basketId
|
Path / |
This identification of the corresponding signing basket object. |
Response
201 - Created
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"scaStatus": "received",
"authorisationId": "123auth456",
"psuMessage": "Please use your BankApp for transaction Authorisation.",
"_links": {
"scaStatus": {
"href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
Get signing basket authorisation sub-resources request
GET /v1/signing-baskets/{basketId}/authorisations
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.
Parameter | Type/Format | Description |
---|---|---|
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
basketId
|
Path / |
This identification of the corresponding signing basket object. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"authorisationIds": [
"123auth456"
]
}
Update PSU data for signing basket
PUT /v1/signing-baskets/{basketId}/authorisations/{authorisationId}
This method update PSU data on the signing basket resource if needed. It may authorise a igning basket 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.
This methods updates PSU data on the cancellation authorisation resource if needed.
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 needs 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 needs a reduced header, therefore many optional elements are not present. Maybe in a later version the access path will change.
Parameter | Type/Format | Description |
---|---|---|
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-ID-Type
|
Header / string |
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. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
PSU-ID
|
Header / string |
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. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
|
body / |
|
basketId
|
Path / |
This identification of the corresponding signing basket object. |
authorisationId
|
Path / |
Resource identification of the related SCA. |
Sample Request
{}
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"scatransactionStatus": "psuIdentified",
"psuMessage": "Please use your BankApp for transaction Authorisation.",
"_links": {
"scaStatus": {
"href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
Read the SCA status of the signing basket authorisation
GET /v1/signing-baskets/{basketId}/authorisations/{authorisationId}
This method returns the SCA status of a signing basket's authorisation sub-resource.
Parameter | Type/Format | Description |
---|---|---|
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
authorisationId
|
Path / |
Resource identification of the related SCA. |
basketId
|
Path / |
This identification of the corresponding signing basket object. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
Start the authorisation process for a payment initiation
POST /v1/{payment-service}/{payment-product}/{paymentId}/authorisations
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 ASPSP might make the usage of this access method unnecessary in case of only one SCA process needed, since the related authorisation resource might be automatically created by the ASPSP after the submission of the payment data with the first POST payments/ call.
The start authorisation process is a process which is needed for creating a new authorisation or cancellation sub-resource.
This applies in the following scenarios:
- The ASPSP has indicated with a 'startAuthorisation' hyperlink in the preceding Payment
initiation response that an explicit start of the authorisation process is needed by the TPP.
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.
- The ASPSP has indicated with a 'startAuthorisation' hyperlink in the preceding Payment cancellation response that an explicit start of the authorisation process is needed by the TPP. The 'startAuthorisation' hyperlink can transport more information about data which needs to be uploaded by using the extended forms as indicated above.
- The related payment cancellation request cannot be applied yet since a multilevel SCA is mandate for executing the cancellation.
- The signing basket needs to be authorised yet.
Parameter | Type/Format | Description |
---|---|---|
TPP-Redirect-URI
|
Header / string |
URI of the TPP, where the transaction flow shall be redirected to after a Redirect. Mandated for the Redirect SCA Approach, specifically when TPP-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. |
TPP-Nok-Redirect-URI
|
Header / string |
If this URI is contained, the TPP is asking to redirect the transaction flow to this address instead of the TPP-Redirect-URI in case of a negative result of the redirect SCA method. This might be ignored by the ASPSP. |
TPP-Notification-URI
|
Header / string |
URI for the Endpoint of the TPP-API to which the status of the payment initiation should be sent. This header field may by ignored by the ASPSP. For security reasons, it shall be ensured that the TPP-Notification-URI as introduced above is secured by the TPP eIDAS QWAC used for identification of the TPP. The following applies: URIs which are provided by TPPs in TPP-Notification-URI shall comply with the domain secured by the eIDAS QWAC certificate of the TPP in the field CN or SubjectAltName of the certificate. Please note that in case of example-TPP.com as certificate entry TPP- Notification-URI like www.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications or notifications.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications would be compliant. Wildcard definitions shall be taken into account for compliance checks by the ASPSP. ASPSPs may respond with ASPSP-Notification-Support set to false, if the provided URIs do not comply. |
TPP-Notification-Content-Preferred
|
Header / string |
The string has the form status=X1, ..., Xn where Xi is one of the constants SCA, PROCESS, LAST and where constants are not repeated. The usage of the constants supports the of following semantics: SCA: A notification on every change of the scaStatus attribute for all related authorisation processes is preferred by the TPP. PROCESS: A notification on all changes of consentStatus or transactionStatus attributes is preferred by the TPP. LAST: Only a notification on the last consentStatus or transactionStatus as available in the XS2A interface is preferred by the TPP. This header field may be ignored, if the ASPSP does not support resource notification services for the related TPP. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
TPP-Redirect-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a redirect over an embedded SCA approach. If it equals "false", the TPP 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. |
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-ID-Type
|
Header / string |
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. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
PSU-ID
|
Header / string |
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. |
|
body / |
|
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
paymentId
|
Path / |
Resource identification of the generated payment initiation resource. |
Response
201 - Created
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"scaStatus": "received",
"authorisationId": "123auth456",
"psuMessage": "Please use your BankApp for transaction Authorisation.",
"_links": {
"scaStatus": {
"href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
Get payment initiation authorisation sub-resources request
GET /v1/{payment-service}/{payment-product}/{paymentId}/authorisations
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.
Parameter | Type/Format | Description |
---|---|---|
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
paymentId
|
Path / |
Resource identification of the generated payment initiation resource. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"authorisationIds": [
"123auth456"
]
}
Read the SCA status of the payment authorisation
GET /v1/{payment-service}/{payment-product}/{paymentId}/authorisations/{authorisationId}
This method returns the SCA status of a payment initiation's authorisation sub-resource.
Parameter | Type/Format | Description |
---|---|---|
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
paymentId
|
Path / |
Resource identification of the generated payment initiation resource. |
authorisationId
|
Path / |
Resource identification of the related SCA. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
Update PSU data for payment initiation
PUT /v1/{payment-service}/{payment-product}/{paymentId}/authorisations/{authorisationId}
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 needs 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 needs a reduced header, therefore many optional elements are not present. Maybe in a later version the access path will change.
Parameter | Type/Format | Description |
---|---|---|
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID
|
Header / string |
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. |
PSU-ID-Type
|
Header / string |
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. |
|
body / |
|
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
paymentId
|
Path / |
Resource identification of the generated payment initiation resource. |
authorisationId
|
Path / |
Resource identification of the related SCA. |
Sample Request
{}
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"scatransactionStatus": "psuIdentified",
"psuMessage": "Please use your BankApp for transaction Authorisation.",
"_links": {
"scaStatus": {
"href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
Start the authorisation process for the cancellation of the addressed payment
POST /v1/{payment-service}/{payment-product}/{paymentId}/cancellation-authorisations
Creates an authorisation sub-resource and start the authorisation process of the cancellation of the addressed payment. 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 cancellation-authorisation.
The ASPSP might make the usage of this access method unnecessary in case of only one SCA process needed, since the related authorisation resource might be automatically created by the ASPSP after the submission of the payment data with the first POST payments/ call.
The start authorisation process is a process which is needed for creating a new authorisation or cancellation sub-resource.
This applies in the following scenarios:
- The ASPSP has indicated with a 'startAuthorisation' hyperlink in the preceding payment
initiation response that an explicit start of the authorisation process is needed by the TPP.
The 'startAuthorisation' hyperlink can transport more information about data which needs to be
uploaded by using the extended forms:
- 'startAuthorisationWithPsuIdentfication'
- 'startAuthorisationWithPsuAuthentication'
- 'startAuthorisationWithAuthentciationMethodSelection'
- The related payment initiation cannot yet be executed since a multilevel SCA is mandated.
- The ASPSP has indicated with a 'startAuthorisation' hyperlink in the preceding payment cancellation response that an explicit start of the authorisation process is needed by the TPP. The 'startAuthorisation' hyperlink can transport more information about data which needs to be uploaded by using the extended forms as indicated above.
- The related payment cancellation request cannot be applied yet since a multilevel SCA is mandate for executing the cancellation.
- The signing basket needs to be authorised yet.
Parameter | Type/Format | Description |
---|---|---|
|
body / |
|
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
TPP-Redirect-Preferred
|
Header / boolean |
If it equals "true", the TPP prefers a redirect over an embedded SCA approach. If it equals "false", the TPP 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. |
TPP-Redirect-URI
|
Header / string |
URI of the TPP, where the transaction flow shall be redirected to after a Redirect. Mandated for the Redirect SCA Approach, specifically when TPP-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. |
TPP-Nok-Redirect-URI
|
Header / string |
If this URI is contained, the TPP is asking to redirect the transaction flow to this address instead of the TPP-Redirect-URI in case of a negative result of the redirect SCA method. This might be ignored by the ASPSP. |
TPP-Notification-URI
|
Header / string |
URI for the Endpoint of the TPP-API to which the status of the payment initiation should be sent. This header field may by ignored by the ASPSP. For security reasons, it shall be ensured that the TPP-Notification-URI as introduced above is secured by the TPP eIDAS QWAC used for identification of the TPP. The following applies: URIs which are provided by TPPs in TPP-Notification-URI shall comply with the domain secured by the eIDAS QWAC certificate of the TPP in the field CN or SubjectAltName of the certificate. Please note that in case of example-TPP.com as certificate entry TPP- Notification-URI like www.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications or notifications.example-TPP.com/xs2a-client/v1/ASPSPidentifcation/mytransaction- id/notifications would be compliant. Wildcard definitions shall be taken into account for compliance checks by the ASPSP. ASPSPs may respond with ASPSP-Notification-Support set to false, if the provided URIs do not comply. |
TPP-Notification-Content-Preferred
|
Header / string |
The string has the form status=X1, ..., Xn where Xi is one of the constants SCA, PROCESS, LAST and where constants are not repeated. The usage of the constants supports the of following semantics: SCA: A notification on every change of the scaStatus attribute for all related authorisation processes is preferred by the TPP. PROCESS: A notification on all changes of consentStatus or transactionStatus attributes is preferred by the TPP. LAST: Only a notification on the last consentStatus or transactionStatus as available in the XS2A interface is preferred by the TPP. This header field may be ignored, if the ASPSP does not support resource notification services for the related TPP. |
PSU-ID-Type
|
Header / string |
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. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-ID
|
Header / string |
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. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
paymentId
|
Path / |
Resource identification of the generated payment initiation resource. |
Response
201 - Created
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"scaStatus": "received",
"authorisationId": "123auth456",
"psuMessage": "Please use your BankApp for transaction Authorisation.",
"_links": {
"scaStatus": {
"href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
Read the SCA status of the payment cancellation's authorisation
GET /v1/{payment-service}/{payment-product}/{paymentId}/cancellation-authorisations/{cancellationId}
This method returns the SCA status of a payment initiation's authorisation sub-resource.
Parameter | Type/Format | Description |
---|---|---|
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
paymentId
|
Path / |
Resource identification of the generated payment initiation resource. |
cancellationId
|
Path / |
Identification for cancellation resource. |
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
Update PSU data for payment initiation cancellation
PUT /v1/{payment-service}/{payment-product}/{paymentId}/cancellation-authorisations/{cancellationId}
This method updates PSU data on the cancellation authorisation resource if needed. It may authorise a cancellation of the 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.
This methods updates PSU data on the cancellation authorisation resource if needed.
There are several possible update PSU data requests in the context of a cancellation authorisation within the 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 needs 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 needs a reduced header, therefore many optional elements are not present. Maybe in a later version the access path will change.
Parameter | Type/Format | Description |
---|---|---|
PSU-Corporate-ID
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-ID-Type
|
Header / string |
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. |
PSU-ID
|
Header / string |
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. |
TPP-Signature-Certificate
|
Header / string |
The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Signature
|
Header / string |
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
Digest
|
Header / string |
Is contained if and only if the "Signature" element is contained in the header of the request. |
PSU-User-Agent
|
Header / string |
The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Accept-Language
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Encoding
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept-Charset
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-Accept
|
Header / string |
The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. |
PSU-IP-Port
|
Header / string |
The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address
|
Header / string |
The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-Corporate-ID-Type
|
Header / string |
Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
X-Request-ID
|
Header / string |
ID of the request, unique to the call, as determined by the initiating party. |
PSU-Geo-Location
|
Header / string |
The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
PSU-Device-ID
|
Header / string |
UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available. UUID identifies either a device or a device dependant application installation. In case of an installation identification this ID needs to be unaltered until removal from device. |
PSU-Http-Method
|
Header / string |
HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
cancellationId
|
Path / |
Identification for cancellation resource. |
paymentId
|
Path / |
Resource identification of the generated payment initiation resource. |
payment-service
|
Path / string |
Payment service: Possible values are:
|
payment-product
|
Path / string |
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 Croatian version of the standard deviates slightly, as described in the country specific appendix to the implementation guidelines. The following payment products are supported for single payments:
The following payment products are supported for bulk payments:
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. : For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. There are plenty of country specificic scheme variants. Remark |
|
body / |
|
Sample Request
{}
Response
200 - OK
400 - Bad Request
401 - Unauthorized
403 - Forbidden
404 - Not found
405 - Method Not Allowed
409 - Conflict
{
"scatransactionStatus": "psuIdentified",
"psuMessage": "Please use your BankApp for transaction Authorisation.",
"_links": {
"scaStatus": {
"href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
PUT v1/payments/{paymentId}
Parameter | Type/Format | Description |
---|
Response
GET v1/account-list
Parameter | Type/Format | Description |
---|