The NextGenPSD2 Framework Version 1.3.12 offers a modern, open, harmonised and interoperable set of Application Programming Interfaces (APIs) as the safest and most efficient way to provide data securely. The NextGenPSD2 Framework reduces XS2A complexity and costs, addresses the problem of multiple competing standards in Europe and, aligned with the goals of the Euro Retail Payments Board, enables European banking customers to benefit from innovative products and services ('Banking as a Service') by granting TPPs safe and secure (authenticated and authorised) access to their bank accounts and financial data.
The possible Approaches are:
Not every message defined in this API definition is necessary for all approaches. Furthermore this API definition does not differ between methods which are mandatory, conditional, or optional. Therefore for a particular implementation of a Berlin Group PSD2 compliant API it is only necessary to support a certain subset of the methods defined in this API definition.
Please have a look at the implementation guidelines if you are not sure which message has to be used for the approach you are going to use.
This API definition is based on the Implementation Guidelines of the Berlin Group PSD2 API. It is not a replacement in any sense. The main specification is (at the moment) always the Implementation Guidelines of the Berlin Group PSD2 API.
This API definition contains the REST-API for requests from the PISP to the ASPSP.
This API definition contains the messages for all different approaches defined in the Implementation Guidelines.
According to the OpenAPI-Specification [https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.1.md]
"If in is "header" and the name field is "Accept", "Content-Type" or "Authorization", the parameter definition SHALL be ignored."
The element "Accept" will not be defined in this file at any place.
The elements "Content-Type" and "Authorization" are implicitly defined by the OpenApi tags "content" and "security".
There are several predefined types which might occur in payment initiation messages, but are not used in the standard JSON messages in the Implementation Guidelines. Therefore they are not used in the corresponding messages in this file either. We added them for the convenience of the user. If there is a payment product, which needs these fields, one can easily use the predefined types. But the ASPSP need not to accept them in general.
We omit the definition of all standard HTTP header elements (mandatory/optional/conditional) except they are mentioned in the Implementation Guidelines. Therefore the implementer might add these in his own realisation of a PSD2 complient API in addition to the elements defined in this file.
The Berlin Group definition of UTF-8 strings in context of the PSD2 API has to support at least the following characters
a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9
/ - ? : ( ) . , ' +
Space
The component for Payment Initiation Service (PIS) offers the following services:
This method is used to initiate a payment at the ASPSP.
This method to initiate a payment initiation at the ASPSP can be sent with either a JSON body.
There are the following payment products:
Furthermore the request body depends on the payment-service:
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 Initiation 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.
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
Consent-ID | string (consentId) 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-IP-Address required | string <ipv4> Example: 192.168.8.78 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 | 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 parameter TPP-Decoupled-Preferred and 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-Decoupled-Preferred | 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. Remark for Future: TPP-Redirect-Preferred and TPP-Decoupled-Preferred will be revised in future versions, maybe merged. Currently kept separate for downward compatibility. |
TPP-Redirect-URI | string <uri> 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 | string <uri> 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-Rejection-NoFunds-Preferred | 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 | 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 | 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 | 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
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.
endToEndIdentification | string <= 35 characters |
required | object (accountReference) Reference to an account by either
|
required | object (amount) |
required | object (accountReference) Reference to an account by either
|
creditorAgent | string (bicfi) [A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){... BICFI |
creditorAgentName | string (creditorAgentName) <= 140 characters Creditor agent name. |
creditorName required | string (creditorName) <= 70 characters Creditor name. |
object (address) | |
remittanceInformationUnstructured | string (remittanceInformationUnstructured) <= 140 characters Unstructured remittance information. |
{- "instructedAmount": {
- "currency": "EUR",
- "amount": "123.50"
}, - "debtorAccount": {
- "iban": "DE40100100103307118608"
}, - "creditorName": "Merchant123",
- "creditorAccount": {
- "iban": "DE02100100109307118603"
}, - "remittanceInformationUnstructured": "Ref Number Merchant"
}
Response in case of a redirect with an implicitly created authorisation sub-resource
{- "transactionStatus": "RCVD",
- "paymentId": "1234-wertiq-983",
- "_links": {
- "self": {
- "href": "/psd2/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "status": {
- "href": "/psd2/v1/payments/1234-wertiq-983/status"
}, - "scaStatus": {
- "href": "/psd2/v1/payments/1234-wertiq-983/authorisations/123auth456"
}
}
}
Returns the content of a payment object
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "endToEndIdentification": "string",
- "debtorAccount": {
- "iban": "FR7612345987650123456789014",
- "bban": "BARC12345612345678",
- "pan": "5409050000000000",
- "maskedPan": "123456xxxxxx1234",
- "msisdn": "+49 170 1234567",
- "other": {
- "identification": "string",
- "schemeNameCode": "string",
- "schemeNameProprietary": "string",
- "issuer": "string"
}, - "currency": "EUR",
- "cashAccountType": "string"
}, - "instructedAmount": {
- "currency": "EUR",
- "amount": "123"
}, - "creditorAccount": {
- "iban": "FR7612345987650123456789014",
- "bban": "BARC12345612345678",
- "pan": "5409050000000000",
- "maskedPan": "123456xxxxxx1234",
- "msisdn": "+49 170 1234567",
- "other": {
- "identification": "string",
- "schemeNameCode": "string",
- "schemeNameProprietary": "string",
- "issuer": "string"
}, - "currency": "EUR",
- "cashAccountType": "string"
}, - "creditorAgent": "AAAADEBBXXX",
- "creditorName": "Creditor Name",
- "creditorAddress": {
- "streetName": "rue blue",
- "buildingnNumber": "89",
- "townName": "Paris",
- "postCode": "75000",
- "country": "FR"
}, - "remittanceInformationUnstructured": "Ref Number Merchant",
- "transactionStatus": "ACCP",
- "tppMessage": [
- {
- "category": "ERROR",
- "code": "string",
- "path": "string",
- "text": "string"
}
]
}
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
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
TPP-Redirect-Preferred | 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 parameter TPP-Decoupled-Preferred and 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-Decoupled-Preferred | 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. Remark for Future: TPP-Redirect-Preferred and TPP-Decoupled-Preferred will be revised in future versions, maybe merged. Currently kept separate for downward compatibility. |
TPP-Nok-Redirect-URI | string <uri> 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 | string <uri> 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-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "transactionStatus": "ACTC",
- "_links": {
- "self": {
- "href": "/psd2/v1/payments/123456scheduled789"
}, - "status": {
- "href": "/psd2/v1/payments/123456scheduled789/status"
}, - "startAuthorisation": {
- "href": "/psd2/v1/payments/123456scheduled789/cancellation-authorisations"
}
}
}
Check the transaction status of a payment initiation.
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "transactionStatus": "ACCP"
}
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/{payment-product} 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:
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
TPP-Redirect-Preferred | 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 parameter TPP-Decoupled-Preferred and 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 | string <uri> 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 | string <uri> 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 | 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 | 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 | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
null
{- "scaStatus": "received",
- "authorisationId": "123auth456",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
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.
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "authorisationIds": [
- "123auth456"
]
}
This method returns the SCA status of a payment initiation's authorisation sub-resource.
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "scaStatus": "psuAuthenticated",
- "psuMessage": "string",
- "psuName": "string",
- "trustedBeneficiaryFlag": false,
- "_links": {
- "scaRedirect": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaOAuth": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "confirmation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithAuthenticationMethodSelection": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "selectAuthenticationMethod": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithTransactionAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "authoriseTransaction": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "self": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "status": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaStatus": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "account": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "balances": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactionDetails": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardAccount": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardTransactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "first": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "next": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "previous": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "last": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "download": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property1": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property2": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}
}, - "tppMessage": [
- {
- "category": "ERROR",
- "code": "string",
- "path": "string",
- "text": "string"
}
]
}
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:
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:
There are the following request types on this access path:
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{ }
Response of an update PSU identification for a payment initiation request for the decoupled approach.
{- "scatransactionStatus": "psuIdentified",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
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/{payment-product} 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:
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
TPP-Redirect-Preferred | 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 parameter TPP-Decoupled-Preferred and 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 | string <uri> 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 | string <uri> 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 | 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 | 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 | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
null
{- "scaStatus": "received",
- "authorisationId": "123auth456",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
Retrieve a list of all created cancellation authorisation sub-resources.
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "authorisationIds": [
- "123auth456"
]
}
This method returns the SCA status of a payment initiation's authorisation sub-resource.
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "scaStatus": "psuAuthenticated",
- "psuMessage": "string",
- "psuName": "string",
- "trustedBeneficiaryFlag": false,
- "_links": {
- "scaRedirect": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaOAuth": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "confirmation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithAuthenticationMethodSelection": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "selectAuthenticationMethod": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithTransactionAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "authoriseTransaction": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "self": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "status": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaStatus": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "account": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "balances": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactionDetails": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardAccount": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardTransactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "first": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "next": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "previous": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "last": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "download": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property1": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property2": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}
}, - "tppMessage": [
- {
- "category": "ERROR",
- "code": "string",
- "path": "string",
- "text": "string"
}
]
}
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:
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:
There are the following request types on this access path:
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{ }
Response of an update PSU identification for a payment initiation request for the decoupled approach.
{- "scatransactionStatus": "psuIdentified",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
The Account Information Service (AIS) offers the following services:
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.
withBalance | 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. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID required | string (consentId) This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Response in case of an example, where the consent has been given on two different IBANs.
{- "accounts": [
- {
- "resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e80f",
- "iban": "DE2310010010123456789",
- "currency": "EUR",
- "product": "Girokonto",
- "cashAccountType": "CACC",
- "name": "Main Account",
- "_links": {
- "balances": {
- "href": "/psd2/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/balances"
}, - "transactions": {
- "href": "/psd2/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions"
}
}
}, - {
- "resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e81e",
- "iban": "DE2310010010123456788",
- "currency": "USD",
- "product": "Fremdwährungskonto",
- "cashAccountType": "CACC",
- "name": "US Dollar Account",
- "_links": {
- "balances": {
- "href": "/psd2/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e81e/balances"
}
}
}
]
}
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
account-id required | string (accountId) Example: qwer3456tzui7890 This identification is denoting the addressed (card) account. The account-id is retrieved by using a "Read Account List" or "Read Card Account list" call. The account-id is the "resourceId" attribute of the account structure. Its value is constant at least throughout the lifecycle of a given consent. |
withBalance | 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. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID required | string (consentId) This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Account details for a regular Account.
{- "account": {
- "resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e80f",
- "iban": "FR7612345987650123456789014",
- "currency": "EUR",
- "ownerName": "Heike Mustermann",
- "product": "Girokonto",
- "cashAccountType": "CACC",
- "name": "Main Account",
- "_links": {
- "balances": {
- "href": "/psd2/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/balances"
}, - "transactions": {
- "href": "/psd2/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions"
}
}
}
}
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.
account-id required | string (accountId) Example: qwer3456tzui7890 This identification is denoting the addressed (card) account. The account-id is retrieved by using a "Read Account List" or "Read Card Account list" call. The account-id is the "resourceId" attribute of the account structure. Its value is constant at least throughout the lifecycle of a given consent. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID required | string (consentId) This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Response for a read balance request in case of a regular account.
{- "account": {
- "iban": "FR7612345987650123456789014"
}, - "balances": [
- {
- "balanceAmount": {
- "currency": "EUR",
- "amount": "500.00"
}, - "balanceType": "closingBooked",
- "referenceDate": "2017-10-25"
}, - {
- "balanceAmount": {
- "currency": "EUR",
- "amount": "900.00"
}, - "balanceType": "expected",
- "lastChangeDateTime": "2017-10-25T15:30:35.035Z"
}
]
}
Read transaction reports or transaction lists of a given account addressed by "account-id", depending on the steering parameter "bookingStatus" together with balances.
For a given account, additional parameters are e.g. the attributes "dateFrom" and "dateTo". The ASPSP might add balance information, if transaction lists without balances are not supported.
account-id required | string (accountId) Example: qwer3456tzui7890 This identification is denoting the addressed (card) account. The account-id is retrieved by using a "Read Account List" or "Read Card Account list" call. The account-id is the "resourceId" attribute of the account structure. Its value is constant at least throughout the lifecycle of a given consent. |
dateFrom | string <date> 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 | string <date> 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 | 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 required | string Enum: "information" "booked" "pending" "both" "all" Permitted codes are
|
deltaList | 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 | 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. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID required | string (consentId) This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Response in JSON format for an access on a regular account.
{- "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": "1234568",
- "debtorName": "Paul Simpson",
- "debtorAccount": {
- "iban": "NL76RABO0359400371"
}, - "transactionAmount": {
- "currency": "EUR",
- "amount": "343.01"
}, - "bookingDate": "2017-10-25",
- "valueDate": "2017-10-26",
- "remittanceInformationUnstructured": "Example 2"
}
], - "pending": [
- {
- "transactionId": "1234569",
- "creditorName": "Claude Renault",
- "creditorAccount": {
- "iban": "FR7612345987650123456789014"
}, - "transactionAmount": {
- "currency": "EUR",
- "amount": "-100.03"
}, - "valueDate": "2017-10-26",
- "remittanceInformationUnstructured": "Example 3"
}
], - "_links": {
- "account": {
- "href": "/psd2/v1/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f"
}
}
}
}
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.
account-id required | string (accountId) Example: qwer3456tzui7890 This identification is denoting the addressed (card) account. The account-id is retrieved by using a "Read Account List" or "Read Card Account list" call. The account-id is the "resourceId" attribute of the account structure. Its value is constant at least throughout the lifecycle of a given consent. |
transactionId required | string (transactionId) Example: 3dc3d5b3-7023-4848-9853-f5400a64e80f This identification is given by the attribute transactionId of the corresponding entry of a transaction list. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID required | string (consentId) This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Example for transaction details.
{- "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"
}
}
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.
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID required | string (consentId) This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Card account list example.
{- "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": "nonInvoiced",
- "balanceAmount": {
- "currency": "EUR",
- "amount": "4175.86"
}
}
], - "_links": {
- "transactions": {
- "href": "/psd2/v1/card-accounts/3d9a81b3-a47d-4130-8765-a9c0ff861b99/transactions"
}
}
}
]
}
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.
account-id required | string (accountId) Example: qwer3456tzui7890 This identification is denoting the addressed (card) account. The account-id is retrieved by using a "Read Account List" or "Read Card Account list" call. The account-id is the "resourceId" attribute of the account structure. Its value is constant at least throughout the lifecycle of a given consent. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID required | string (consentId) This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Card account details example.
{- "cardAccount": {
- "resourceId": "3d9a81b3-a47d-4130-8765-a9c0ff861b99",
- "maskedPan": "525412******3241",
- "currency": "EUR",
- "debitAccounting": true,
- "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": "nonInvoiced",
- "balanceAmount": {
- "currency": "EUR",
- "amount": "4175.86"
}
}
], - "_links": {
- "transactions": {
- "href": "/psd2/v1/card-accounts/3d9a81b3-a47d-4130-8765-a9c0ff861b99/transactions"
}
}
}
}
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.
account-id required | string (accountId) Example: qwer3456tzui7890 This identification is denoting the addressed (card) account. The account-id is retrieved by using a "Read Account List" or "Read Card Account list" call. The account-id is the "resourceId" attribute of the account structure. Its value is constant at least throughout the lifecycle of a given consent. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID required | string (consentId) This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Response in case of card account balance request.
{- "cardAccount": {
- "maskedPan": "525412******3241"
}, - "balances": [
- {
- "debitAccounting": true
}, - {
- "balanceType": "interimBooked",
- "balanceAmount": {
- "currency": "EUR",
- "amount": "14355.78"
}
}, - {
- "balanceType": "nonInvoiced",
- "balanceAmount": {
- "currency": "EUR",
- "amount": "4175.86"
}
}
]
}
Reads account data from a given card account addressed by "account-id".
account-id required | string (accountId) Example: qwer3456tzui7890 This identification is denoting the addressed (card) account. The account-id is retrieved by using a "Read Account List" or "Read Card Account list" call. The account-id is the "resourceId" attribute of the account structure. Its value is constant at least throughout the lifecycle of a given consent. |
dateFrom | string <date> 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 | string <date> 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 | 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 required | string Enum: "booked" "pending" "both" Permitted codes are
|
deltaList | 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 |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
Consent-ID required | string (consentId) This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "cardAccount": {
- "iban": "FR7612345987650123456789014",
- "bban": "BARC12345612345678",
- "pan": "5409050000000000",
- "maskedPan": "123456xxxxxx1234",
- "msisdn": "+49 170 1234567",
- "other": {
- "identification": "string",
- "schemeNameCode": "string",
- "schemeNameProprietary": "string",
- "issuer": "string"
}, - "currency": "EUR",
- "cashAccountType": "string"
}, - "debitAccounting": true,
- "cardTransactions": {
- "booked": [
- {
- "cardTransactionId": "string",
- "terminalId": "string",
- "transactionDate": "2019-08-24",
- "acceptorTransactionDateTime": "2019-08-24T14:15:22Z",
- "bookingDate": "2019-08-24",
- "valueDate": "2019-08-24",
- "transactionAmount": {
- "currency": "EUR",
- "amount": "123"
}, - "grandTotalAmount": {
- "currency": "EUR",
- "amount": "123"
}, - "currencyExchange": [
- {
- "sourceCurrency": "EUR",
- "exchangeRate": "string",
- "unitCurrency": "EUR",
- "targetCurrency": "EUR",
- "quotationDate": "2019-08-24",
- "contractIdentification": "string"
}
], - "originalAmount": {
- "currency": "EUR",
- "amount": "123"
}, - "markupFee": {
- "currency": "EUR",
- "amount": "123"
}, - "markupFeePercentage": "0.3",
- "cardAcceptorId": "string",
- "cardAcceptorAddress": {
- "streetName": "rue blue",
- "buildingnNumber": "89",
- "townName": "Paris",
- "postCode": "75000",
- "country": "FR"
}, - "cardAcceptorPhone": "string",
- "merchantCategoryCode": "stri",
- "maskedPAN": "123456xxxxxx1234",
- "transactionDetails": "string",
- "invoiced": true,
- "proprietaryBankTransactionCode": "string"
}
], - "pending": [
- {
- "cardTransactionId": "string",
- "terminalId": "string",
- "transactionDate": "2019-08-24",
- "acceptorTransactionDateTime": "2019-08-24T14:15:22Z",
- "bookingDate": "2019-08-24",
- "valueDate": "2019-08-24",
- "transactionAmount": {
- "currency": "EUR",
- "amount": "123"
}, - "grandTotalAmount": {
- "currency": "EUR",
- "amount": "123"
}, - "currencyExchange": [
- {
- "sourceCurrency": "EUR",
- "exchangeRate": "string",
- "unitCurrency": "EUR",
- "targetCurrency": "EUR",
- "quotationDate": "2019-08-24",
- "contractIdentification": "string"
}
], - "originalAmount": {
- "currency": "EUR",
- "amount": "123"
}, - "markupFee": {
- "currency": "EUR",
- "amount": "123"
}, - "markupFeePercentage": "0.3",
- "cardAcceptorId": "string",
- "cardAcceptorAddress": {
- "streetName": "rue blue",
- "buildingnNumber": "89",
- "townName": "Paris",
- "postCode": "75000",
- "country": "FR"
}, - "cardAcceptorPhone": "string",
- "merchantCategoryCode": "stri",
- "maskedPAN": "123456xxxxxx1234",
- "transactionDetails": "string",
- "invoiced": true,
- "proprietaryBankTransactionCode": "string"
}
], - "_links": {
- "cardAccount": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "card": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "first": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "next": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "previous": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "last": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property1": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property2": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}
}
}, - "balances": [
- {
- "balanceAmount": {
- "currency": "EUR",
- "amount": "123"
}, - "balanceType": "closingBooked",
- "creditLimitIncluded": false,
- "lastChangeDateTime": "2019-08-24T14:15:22Z",
- "referenceDate": "2019-08-24",
- "lastCommittedTransaction": "string"
}
], - "_links": {
- "download": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property1": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property2": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}
}
}
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
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
TPP-Redirect-Preferred | 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 parameter TPP-Decoupled-Preferred and 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-Decoupled-Preferred | 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. Remark for Future: TPP-Redirect-Preferred and TPP-Decoupled-Preferred will be revised in future versions, maybe merged. Currently kept separate for downward compatibility. |
TPP-Redirect-URI | string <uri> 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 | string <uri> 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-Brand-Logging-Information | 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 | 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 | 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-IP-Address required | string <ipv4> Example: 192.168.8.78 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 | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Request body for a consents request.
required | object (accountAccess) Requested access services for a consent. |
recurringIndicator required | boolean (recurringIndicator) "true", if the consent is for recurring access to the account data. "false", if the consent is for one access to the account data. |
validUntil required | string <date> (validUntil) This parameter is defining a valid until date (including the mentioned date) for the requested consent. The content is the local ASPSP date in ISO-Date format, e.g. 2017-10-30. Future dates might get adjusted by ASPSP. If a maximal available date is requested, a date in far future is to be used: "9999-12-31". In both cases the consent object to be retrieved by the get consent request will contain the adjusted date. |
frequencyPerDay required | integer (frequencyPerDay) >= 1 This field indicates the requested maximum frequency for an access without PSU involvement per day. For a one-off access, this attribute is set to "1". The frequency needs to be greater equal to one. If not otherwise agreed bilaterally between TPP and ASPSP, the frequency is less equal to 4. |
combinedServiceIndicator required | boolean If "true" indicates that a payment initiation service will be addressed in the same "session". |
Consent request on dedicated accounts.
{- "access": {
- "balances": [
- {
- "iban": "DE40100100103307118608"
}, - {
- "iban": "DE02100100109307118603",
- "currency": "USD"
}, - {
- "iban": "DE67100100101306118605"
}
], - "transactions": [
- {
- "iban": "DE40100100103307118608"
}, - {
- "maskedPan": "123456xxxxxx1234"
}
]
}, - "recurringIndicator": "true",
- "validUntil": "2017-11-01",
- "frequencyPerDay": 4
}
Consent request response in case of a redirect.
{- "consentStatus": "received",
- "consentId": "1234-wertiq-983",
- "_links": {
- "status": {
- "href": "/psd2/v1/consents/1234-wertiq-983/status"
}, - "scaStatus": {
- "href": "/psd2/v1/consents/1234-wertiq-983/authorisations/123auth567"
}
}
}
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.
consentId required | string (consentId) ID of the corresponding consent object as returned by an account information consent request. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Consent request on account list or without indication of accounts.
{- "access": {
- "balances": [
- {
- "iban": "DE2310010010123456789"
}
], - "transactions": [
- {
- "iban": "DE2310010010123456789"
}, - {
- "pan": "123456xxxxxx3457"
}
]
}, - "recurringIndicator": "true",
- "validUntil": "2017-11-01",
- "frequencyPerDay": 4,
- "consentStatus": "valid",
- "_links": {
- "account": {
- "href": "/psd2/v1/accounts"
}
}
}
The TPP can delete an account information consent object if needed.
consentId required | string (consentId) ID of the corresponding consent object as returned by an account information consent request. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "tppMessages": [
- {
- "category": "ERROR",
- "code": "FORMAT_ERROR",
- "path": "string",
- "text": "string"
}
], - "_links": {
- "scaRedirect": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaOAuth": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "confirmation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithAuthenticationMethodSelection": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "selectAuthenticationMethod": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithTransactionAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "authoriseTransaction": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "self": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "status": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaStatus": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "account": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "balances": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactionDetails": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardAccount": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardTransactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "first": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "next": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "previous": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "last": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "download": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property1": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property2": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}
}
}
Read the status of an account information consent resource.
consentId required | string (consentId) ID of the corresponding consent object as returned by an account information consent request. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
Response for a consent status request.
{- "consentStatus": "valid"
}
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:
consentId required | string (consentId) ID of the corresponding consent object as returned by an account information consent request. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
TPP-Redirect-Preferred | 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 parameter TPP-Decoupled-Preferred and 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 | string <uri> 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 | string <uri> 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 | 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 | 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 | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
null
{- "scaStatus": "received",
- "authorisationId": "123auth456",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
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.
consentId required | string (consentId) ID of the corresponding consent object as returned by an account information consent request. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "authorisationIds": [
- "123auth456"
]
}
This method returns the SCA status of a consent initiation's authorisation sub-resource.
consentId required | string (consentId) ID of the corresponding consent object as returned by an account information consent request. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "scaStatus": "psuAuthenticated",
- "psuMessage": "string",
- "psuName": "string",
- "trustedBeneficiaryFlag": false,
- "_links": {
- "scaRedirect": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaOAuth": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "confirmation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithAuthenticationMethodSelection": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "selectAuthenticationMethod": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithTransactionAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "authoriseTransaction": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "self": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "status": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaStatus": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "account": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "balances": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactionDetails": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardAccount": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardTransactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "first": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "next": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "previous": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "last": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "download": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property1": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property2": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}
}, - "tppMessage": [
- {
- "category": "ERROR",
- "code": "string",
- "path": "string",
- "text": "string"
}
]
}
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:
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:
There are the following request types on this access path:
consentId required | string (consentId) ID of the corresponding consent object as returned by an account information consent request. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{ }
Response of an update PSU identification for a payment initiation request for the decoupled approach.
{- "scatransactionStatus": "psuIdentified",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
Processes on starting authorisations, update PSU identification or PSU authentication data and explicit authorisation of transactions by using SCA are very similar in PIS and AIS services. The API calls supporting these processes are described in the following independently from the service/endpoint. For reasons of clarity, the endpoints are defined always for the Payment Initiation Service, the payment cancellation, the Account Information Service (Consents) separately. These processes usually are used following a hyperlink of the ASPSP.
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/{payment-product} 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:
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
TPP-Redirect-Preferred | 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 parameter TPP-Decoupled-Preferred and 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 | string <uri> 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 | string <uri> 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 | 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 | 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 | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
null
{- "scaStatus": "received",
- "authorisationId": "123auth456",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
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.
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "authorisationIds": [
- "123auth456"
]
}
This method returns the SCA status of a payment initiation's authorisation sub-resource.
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "scaStatus": "psuAuthenticated",
- "psuMessage": "string",
- "psuName": "string",
- "trustedBeneficiaryFlag": false,
- "_links": {
- "scaRedirect": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaOAuth": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "confirmation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithAuthenticationMethodSelection": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "selectAuthenticationMethod": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithTransactionAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "authoriseTransaction": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "self": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "status": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaStatus": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "account": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "balances": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactionDetails": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardAccount": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardTransactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "first": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "next": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "previous": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "last": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "download": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property1": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property2": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}
}, - "tppMessage": [
- {
- "category": "ERROR",
- "code": "string",
- "path": "string",
- "text": "string"
}
]
}
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:
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:
There are the following request types on this access path:
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{ }
Response of an update PSU identification for a payment initiation request for the decoupled approach.
{- "scatransactionStatus": "psuIdentified",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
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/{payment-product} 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:
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
TPP-Redirect-Preferred | 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 parameter TPP-Decoupled-Preferred and 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 | string <uri> 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 | string <uri> 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 | 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 | 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 | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
null
{- "scaStatus": "received",
- "authorisationId": "123auth456",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
This method returns the SCA status of a payment initiation's authorisation sub-resource.
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "scaStatus": "psuAuthenticated",
- "psuMessage": "string",
- "psuName": "string",
- "trustedBeneficiaryFlag": false,
- "_links": {
- "scaRedirect": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaOAuth": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "confirmation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithAuthenticationMethodSelection": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "selectAuthenticationMethod": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithTransactionAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "authoriseTransaction": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "self": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "status": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaStatus": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "account": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "balances": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactionDetails": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardAccount": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardTransactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "first": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "next": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "previous": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "last": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "download": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property1": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property2": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}
}, - "tppMessage": [
- {
- "category": "ERROR",
- "code": "string",
- "path": "string",
- "text": "string"
}
]
}
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:
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:
There are the following request types on this access path:
payment-service required | string Value: "payments" Payment service: Possible values are:
|
payment-product required | string Enum: "sepa-credit-transfers" "instant-sepa-credit-transfers" "target-2-payments" The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported:
|
paymentId required | string (paymentId) Example: 1234-wertiq-983 Resource identification of the generated payment initiation resource. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. |
PSU-IP-Port | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{ }
Response of an update PSU identification for a payment initiation request for the decoupled approach.
{- "scatransactionStatus": "psuIdentified",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
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:
consentId required | string (consentId) ID of the corresponding consent object as returned by an account information consent request. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
TPP-Redirect-Preferred | 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 parameter TPP-Decoupled-Preferred and 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 | string <uri> 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 | string <uri> 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 | 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 | 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 | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
null
{- "scaStatus": "received",
- "authorisationId": "123auth456",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}
This method returns the SCA status of a consent initiation's authorisation sub-resource.
consentId required | string (consentId) ID of the corresponding consent object as returned by an account information consent request. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{- "scaStatus": "psuAuthenticated",
- "psuMessage": "string",
- "psuName": "string",
- "trustedBeneficiaryFlag": false,
- "_links": {
- "scaRedirect": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaOAuth": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "confirmation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuIdentification": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateProprietaryData": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updatePsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "updateAdditionalEncryptedPsuAuthentication": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithAuthenticationMethodSelection": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "selectAuthenticationMethod": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "startAuthorisationWithTransactionAuthorisation": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "authoriseTransaction": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "self": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "status": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "scaStatus": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "account": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "balances": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "transactionDetails": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardAccount": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "cardTransactions": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "first": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "next": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "previous": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "last": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "download": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property1": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}, - "property2": {
- "href": "/v1/payments/sepa-credit-transfers/1234-wertiq-983"
}
}, - "tppMessage": [
- {
- "category": "ERROR",
- "code": "string",
- "path": "string",
- "text": "string"
}
]
}
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:
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:
There are the following request types on this access path:
consentId required | string (consentId) ID of the corresponding consent object as returned by an account information consent request. |
authorisationId required | string (authorisationId) Example: 123auth456 Resource identification of the related SCA. |
X-Request-ID required | string <uuid> Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ID of the request, unique to the call, as determined by the initiating party. |
Digest | string Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A= Is contained if and only if the "Signature" element is contained in the header of the request. |
Signature | string Example: keyId="SN=9FA1,CA=CN=D-TRUST CA 2-1 2015,O=D-Trust GmbH,C=DE",algorithm="rsa-sha256", headers="Digest X-Request-ID PSU-ID TPP-Redirect-URI Date", signature="Base64(RSA-SHA256(signing string))"
A signature of the request by the TPP on application level. This might be mandated by ASPSP. |
TPP-Signature-Certificate | string <byte> The certificate used for signing the request, in base64 encoding. Must be contained if a signature is contained. |
PSU-ID | string Example: PSU-1234 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 | 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 | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-Corporate-ID-Type | string Might be mandated in the ASPSP's documentation. Only used in a corporate context. |
PSU-IP-Address | string <ipv4> Example: 192.168.8.78 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 | string Example: 1234 The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. |
PSU-Accept | 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 | 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 | 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 | 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 | string The forwarded Agent header field of the HTTP request between PSU and TPP, if available. |
PSU-Http-Method | string Enum: "GET" "POST" "PUT" "PATCH" "DELETE" HTTP method used at the PSU ? TPP interface, if available. Valid values are:
|
PSU-Device-ID | string <uuid> Example: 99435c7e-ad88-49ec-a2ad-99ddcb1f5555 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 | stringGEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9... Example: GEO:52.506931;13.144558 The forwarded Geo Location of the corresponding http request between PSU and TPP if available. |
{ }
Response of an update PSU identification for a payment initiation request for the decoupled approach.
{- "scatransactionStatus": "psuIdentified",
- "psuMessage": "Please use your BankApp for transaction Authorisation.",
- "_links": {
- "scaStatus": {
- "href": "/v1/payments/qwer3456tzui7890/authorisations/123auth456"
}
}
}