--- swagger: "2.0" info: version: "1.0" title: Payment Initialisation Service description: "# Summary\nThe **NextGenPSD2** *Framework Version 1.3* offers a modern, open, harmonised and interoperable set of \nApplication Programming Interfaces (APIs) as the safest and most efficient way to provide data securely. \nThe NextGenPSD2 Framework reduces XS2A complexity and costs, addresses the problem of multiple competing standards \nin Europe and, aligned with the goals of the Euro Retail Payments Board,\nenables European banking customers to benefit from innovative products and services ('Banking as a Service') \nby granting TPPs safe and secure (authenticated and authorised) access to their bank accounts and financial data.\n\nThe possible Approaches are:\n * Redirect SCA Approach\n * OAuth SCA Approach\n \ * Decoupled SCA Approach\n * Embedded SCA Approach without SCA method\n * Embedded SCA Approach with only one SCA method available\n * Embedded SCA Approach with Selection of a SCA method\n\n Not every message defined in this API definition is necessary for all approaches. \n Furthermore this API definition does not differ between methods which are mandatory, conditional, or optional\n Therefore for a particular implementation of a Berlin Group PSD2 compliant API it is only necessary to support \n a certain subset of the methods defined in this API definition.\n\n \ **Please have a look at the implementation guidelines if you are not sure \n \ which message has to be used for the approach you are going to use.**\n\n## Some General Remarks Related to this version of the OpenAPI Specification:\n* **This API definition is based on the Implementation Guidelines of the Berlin Group PSD2 API.** \n It is not an replacement in any sense.\n The main specification is (at the moment) always the Implementation Guidelines of the Berlin Group PSD2 API.\n* **This API definition contains the REST-API for requests from the PISP to the ASPSP.**\n* **This API definition contains the messages for all different approaches defined in the Implementation Guidelines.**\n* According to the OpenAPI-Specification [https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.1.md]\n \ \n \"If in is \"header\" and the name field is \"Accept\", \"Content-Type\" or \"Authorization\", the parameter definition SHALL be ignored.\"\n \n The element \"Accept\" will not be defined in this file at any place.\n \n The elements \"Content-Type\" and \"Authorization\" are implicitly defined by the OpenApi tags \"content\" and \"security\".\n \n* There are several predefined types which might occur in payment initiation messages, \n but are not used in the standard JSON messages in the Implementation Guidelines.\n Therefore they are not used in the corresponding messages in this file either.\n We added them for the convenience of the user.\n If there is a payment product, which need these field, one can easily use the predefined types.\n But the ASPSP need not to accept them in general.\n \ \n* **We omit the definition of all standard HTTP header elements (mandatory/optional/conditional) \n except they are mention in the Implementation Guidelines.**\n Therefore the implementer might add the in his own realisation of a PSD2 comlient API in addition to the elements define in this file.\n \n## General Remarks on Data Types\n\nThe Berlin Group definition of UTF-8 strings in context of the PSD2 API have to support at least the following characters\n\na 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\n\nA 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\n\n0 1 2 3 4 5 6 7 8 9\n\n/ - ? : ( ) . , ' +\n\nSpace\n" contact: email: dev@crowdpolicy.com name: Bank of Thessaly url: http://www.bankofthessaly.gr/ x-ibm-name: payment-initialisation-service host: api.nextgenpsd2.crowdapps.net basePath: / schemes: - https consumes: - application/json produces: - application/json paths: /v1/{payment-service}/{payment-product}: post: description: "This method is used to initiate a payment at the ASPSP.\n\n## Variants of Payment Initiation Requests\n\nThis method to initiate a payment initiation at the ASPSP can be sent with either a JSON body or an pain.001 body depending on the payment product in the path.\n\nThere are the following **payment products**:\n\n - Payment products with payment information in *JSON* format:\n - ***sepa-credit-transfers***\n - ***instant-sepa-credit-transfers***\n \ - ***target-2-payments***\n - ***cross-border-credit-transfers***\n \ - Payment products with payment information in *pain.001* XML format:\n \ - ***pain.001-sepa-credit-transfers***\n - ***pain.001-instant-sepa-credit-transfers***\n \ - ***pain.001-target-2-payments***\n - ***pain.001-cross-border-credit-transfers***\n\nFurthermore the request body depends on the **payment-service**\n * ***payments***: A single payment initiation request.\n * ***bulk-payments***: A collection of several payment iniatiation requests.\n \n In case of a *pain.001* message there are more than one payments contained in the *pain.001 message.\n \ \n In case of a *JSON* there are several JSON payment blocks contained in a joining list.\n * ***periodic-payments***: \n Create a standing order initiation resource for recurrent i.e. periodic payments addressable under {paymentId} \n with all data relevant for the corresponding payment product and the execution of the standing order contained in a JSON body. \n\nThis is the first step in the API to initiate the related recurring/periodic payment.\n \ \n## Single and mulitilevel SCA Processes\n\nThe Payment Initiation Requests are independent from the need of one ore multilevel \nSCA processing, i.e. independent from the number of authorisations needed for the execution of payments. \n\nBut the response messages are specific to either one SCA processing or multilevel SCA processing. \n\nFor payment initiation with multilevel SCA, this specification requires an explicit start of the authorisation, \ni.e. links directly associated with SCA processing like 'scaRedirect' or 'scaOAuth' cannot be contained in the \nresponse message of a Payment Initation Request for a payment, where multiple authorisations are needed. \nAlso if any data is needed for the next action, like selecting an SCA method is not supported in the response, \nsince all starts of the multiple authorisations are fully equal. \nIn these cases, first an authorisation sub-resource has to be generated following the 'startAuthorisation' link.\n" summary: initiatePayment tags: - Payment Initiation Service (PIS) operationId: V1ByPaymentServiceAndPaymentProductPost deprecated: false produces: - application/json consumes: - application/x-www-form-urlencoded parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: PSU-IP-Address in: header required: true type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-ID in: header required: false type: string description: |- Client ID of the PSU in the ASPSP client interface. Might be mandated in the ASPSP's documentation. Is not contained if an OAuth2 based authentication was performed in a pre-step or an OAuth2 based SCA was performed in an preceeding AIS service in the same session. - name: PSU-ID-Type in: header required: false type: string description: Type of the PSU-ID, needed in scenarios where PSUs have several PSU-IDs as access possibility. - name: PSU-Corporate-ID in: header required: false type: string description: Might be mandated in the ASPSP's documentation. Only used in a corporate context. - name: PSU-Corporate-ID-Type in: header required: false type: string description: Might be mandated in the ASPSP's documentation. Only used in a corporate context. - name: Consent-ID in: header required: false type: string description: |- This data element may be contained, if the payment initiation transaction is part of a session, i.e. combined AIS/PIS service. This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation. - name: TPP-Redirect-Preferred in: header required: false enum: - "true" - "false" type: string description: |- If it equals "true", the TPP prefers a redirect over an embedded SCA approach. If it equals "false", the TPP prefers not to be redirected for SCA. The ASPSP will then choose between the Embedded or the Decoupled SCA approach, depending on the choice of the SCA procedure by the TPP/PSU. If the parameter is not used, the ASPSP will choose the SCA approach to be applied depending on the SCA method chosen by the TPP/PSU. - name: TPP-Redirect-URI in: header required: false type: string description: "URI of the TPP, where the transaction flow shall be redirected to after a Redirect.\n\nMandated for the Redirect SCA Approach (including OAuth2 SCA approach), specifically \nwhen TPP-Redirect-Preferred equals \"true\".\nIt is recommended to always use this header field.\n\n**Remark for Future:** \nThis field might be changed to mandatory in the next version of the specification." - name: TPP-Nok-Redirect-URI in: header required: false type: string description: |- 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. - name: TPP-Explicit-Authorisation-Preferred in: header required: false enum: - "true" - "false" type: string description: "If it equals \"true\", the TPP prefers to start the authorisation process separately, \ne.g. because of the usage of a signing basket. \nThis preference might be ignored by the ASPSP, if a signing basket is not supported as functionality.\n\nIf it equals \"false\" or if the parameter is not used, there is no preference of the TPP. \nThis especially indicates that the TPP assumes a direct authorisation of the transaction in the next step, \nwithout using a signing basket." - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. - name: xml_sct in: formData required: false type: string description: "" - name: json_standingorderType in: formData required: false type: string description: "The body part 2 of a periodic payment initation request containes the execution related informations \nof the periodic payment." responses: 201: description: CREATED schema: type: object headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 Location: type: string ASPSP-SCA-Approach: type: string default: EMBEDDED 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error /v1/{payment-service}/{payment-product}/{paymentId}: get: description: Returns the content of a payment object summary: getPaymentInformation tags: - Payment Initiation Service (PIS) operationId: V1PaymentIdByPaymentServiceAndPaymentProductGet deprecated: false produces: - application/json parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: paymentId in: path required: true type: string description: Resource identification of the generated payment initiation resource. - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-IP-Address in: header required: false type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. responses: 200: description: OK schema: type: object headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error delete: description: "This method initiates the cancellation of a payment. \nDepending on the payment-service, the payment-product and the ASPSP's implementation, \nthis TPP call might be sufficient to cancel a payment. \nIf an authorisation of the payment cancellation is mandated by the ASPSP, \na corresponding hyperlink will be contained in the response message.\n\nCancels 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). \n\nThe response to this DELETE command will tell the TPP whether the \n * access method was rejected\n * access method was successful, or\n * access method is generally applicable, but further authorisation processes are needed.\n" summary: cancelPayment tags: - Payment Initiation Service (PIS) operationId: V1PaymentIdByPaymentServiceAndPaymentProductDelete deprecated: false produces: - application/json parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: paymentId in: path required: true type: string description: Resource identification of the generated payment initiation resource. - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-IP-Address in: header required: false type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. responses: 202: description: OK schema: $ref: '#/definitions/paymentInitiationCancelResponse-204_202' headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS_CANC' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error /v1/{payment-service}/{payment-product}/{paymentId}/status: get: description: Check the transaction status of a payment initiation. summary: getPaymentInitiationStatus tags: - Payment Initiation Service (PIS) operationId: V1PaymentIdStatusByPaymentServiceAndPaymentProductGet deprecated: false produces: - application/json parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: paymentId in: path required: true type: string description: Resource identification of the generated payment initiation resource. - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-IP-Address in: header required: false type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. responses: 200: description: OK schema: $ref: '#/definitions/paymentInitiationStatusResponse-200_json' headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error /v1/{payment-service}/{payment-product}/{paymentId}/authorisations: post: description: "Create an authorisation sub-resource and start the authorisation process. \nThe message might in addition transmit authentication and authorisation related data. \n\nThis method is iterated n times for a n times SCA authorisation in a \ncorporate context, each creating an own authorisation sub-endpoint for \nthe corresponding PSU authorising the transaction.\n\nThe ASPSP might make the usage of this access method unnecessary in case \nof only one SCA process needed, since the related authorisation resource \nmight be automatically created by the ASPSP after the submission of the \npayment data with the first POST payments/{payment-product} call.\n\nThe start authorisation process is a process which is needed for creating a new authorisation \nor cancellation sub-resource. \n\nThis applies in the following scenarios:\n\n * The ASPSP has indicated with an 'startAuthorisation' hyperlink in the preceeding Payment \n Initiation Response that an explicit start of the authorisation process is needed by the TPP. \n The 'startAuthorisation' hyperlink can transport more information about data which needs to be \n uploaded by using the extended forms.\n * 'startAuthorisationWithPsuIdentfication', \n * 'startAuthorisationWithPsuAuthentication' #TODO\n * 'startAuthorisationWithAuthentciationMethodSelection' \n * The related payment initiation cannot yet be executed since a multilevel SCA is mandated.\n * The ASPSP has indicated with an 'startAuthorisation' hyperlink in the preceeding \n Payment Cancellation Response that an explicit start of the authorisation process is needed by the TPP. \n The 'startAuthorisation' hyperlink can transport more information about data which needs to be uploaded \n by using the extended forms as indicated above.\n * The related payment cancellation request cannot be applied yet since a multilevel SCA is mandate for \n executing the cancellation.\n * The signing basket needs to be authorised yet.\n" summary: startPaymentAuthorisation tags: - Payment Initiation Service (PIS) operationId: V1PaymentIdAuthorisationsByPaymentServiceAndPaymentProductPost deprecated: false produces: - application/json parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: paymentId in: path required: true type: string description: Resource identification of the generated payment initiation resource. - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: PSU-ID in: header required: false type: string description: |- Client ID of the PSU in the ASPSP client interface. Might be mandated in the ASPSP's documentation. Is not contained if an OAuth2 based authentication was performed in a pre-step or an OAuth2 based SCA was performed in an preceeding AIS service in the same session. - name: PSU-ID-Type in: header required: false type: string description: Type of the PSU-ID, needed in scenarios where PSUs have several PSU-IDs as access possibility. - name: PSU-Corporate-ID in: header required: false type: string description: Might be mandated in the ASPSP's documentation. Only used in a corporate context. - name: PSU-Corporate-ID-Type in: header required: false type: string description: Might be mandated in the ASPSP's documentation. Only used in a corporate context. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-IP-Address in: header required: false type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. responses: 201: description: Created schema: $ref: '#/definitions/startScaprocessResponse' headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ASPSP-SCA-Approach: type: string default: EMBEDDED 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error get: description: | Read a list of all authorisation subresources IDs which have been created. This function returns an array of hyperlinks to all generated authorisation sub-resources. summary: getPaymentInitiationAuthorisation tags: - Payment Initiation Service (PIS) operationId: V1PaymentIdAuthorisationsByPaymentServiceAndPaymentProductGet deprecated: false produces: - application/json parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: paymentId in: path required: true type: string description: Resource identification of the generated payment initiation resource. - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-IP-Address in: header required: false type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. responses: 200: description: OK schema: $ref: '#/definitions/authorisations' headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error /v1/{payment-service}/{payment-product}/{paymentId}/authorisations/{authorisationId}: get: description: | This method returns the SCA status of a payment initiation's authorisation sub-resource. summary: getPaymentInitiationScaStatus tags: - Payment Initiation Service (PIS) operationId: V1PaymentIdAuthorisationsAuthorisationIdByPaymentServiceAndPaymentProductGet deprecated: false produces: - application/json parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: paymentId in: path required: true type: string description: Resource identification of the generated payment initiation resource. - name: authorisationId in: path required: true type: string description: Resource identification of the related SCA. - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-IP-Address in: header required: false type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. responses: 200: description: OK schema: $ref: '#/definitions/scaStatusResponse' headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error put: description: "This methods updates PSU data on the authorisation resource if needed. \nIt may authorise a payment within the Embedded SCA Approach where needed.\n\nIndependently from the SCA Approach it supports e.g. the selection of \nthe authentication method and a non-SCA PSU authentication.\n\nThere are several possible Update PSU Data requests in the context of payment initiation services needed, \nwhich depends on the SCA approach:\n\n* Redirect SCA Approach:\n \ A specific Update PSU Data Request is applicable for \n * the selection of authentication methods, before choosing the actual SCA approach.\n* Decoupled SCA Approach:\n A specific Update PSU Data Request is only applicable for\n \ * adding the PSU Identification, if not provided yet in the Payment Initiation Request or the Account Information Consent Request, or if no OAuth2 access token is used, or\n * the selection of authentication methods.\n* Embedded SCA Approach: \n The Update PSU Data Request might be used \n * to add credentials as a first factor authentication data of the PSU and\n * to select the authentication method and\n * transaction authorisation.\n\nThe SCA Approach might depend on the chosen SCA method. \nFor that reason, the following possible Update PSU Data request can apply to all SCA approaches:\n\n* Select an SCA method in case of several SCA methods are available for the customer.\n\nThere are the following request types on this access path:\n * Update PSU Identification\n \ * Update PSU Authentication\n * Select PSU Autorization Method \n WARNING: This method need a reduced header, \n therefore many optional elements are not present. \n Maybe in a later version the access path will change.\n \ * Transaction Authorisation\n WARNING: This method need a reduced header, \n therefore many optional elements are not present. \n Maybe in a later version the access path will change.\n" summary: updatePaymentPsuData tags: - Payment Initiation Service (PIS) operationId: V1PaymentIdAuthorisationsAuthorisationIdByPaymentServiceAndPaymentProductPut deprecated: false produces: - application/json parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: paymentId in: path required: true type: string description: Resource identification of the generated payment initiation resource. - name: authorisationId in: path required: true type: string description: Resource identification of the related SCA. - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-ID in: header required: false type: string description: |- Client ID of the PSU in the ASPSP client interface. Might be mandated in the ASPSP's documentation. Is not contained if an OAuth2 based authentication was performed in a pre-step or an OAuth2 based SCA was performed in an preceeding AIS service in the same session. - name: PSU-ID-Type in: header required: false type: string description: Type of the PSU-ID, needed in scenarios where PSUs have several PSU-IDs as access possibility. - name: PSU-Corporate-ID in: header required: false type: string description: Might be mandated in the ASPSP's documentation. Only used in a corporate context. - name: PSU-Corporate-ID-Type in: header required: false type: string description: Might be mandated in the ASPSP's documentation. Only used in a corporate context. - name: PSU-IP-Address in: header required: false type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. - name: body in: body required: false description: "" schema: type: object responses: 200: description: OK schema: type: object headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ASPSP-SCA-Approach: type: string default: EMBEDDED 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error /v1/{payment-service}/{payment-product}/{paymentId}/cancellation-authorisations: post: description: "Creates an authorisation sub-resource and start the authorisation process of the cancellation of the addressed payment. \nThe message might in addition transmit authentication and authorisation related data.\n\nThis method is iterated n times for a n times SCA authorisation in a \ncorporate context, each creating an own authorisation sub-endpoint for \nthe corresponding PSU authorising the cancellation-authorisation.\n\nThe ASPSP might make the usage of this access method unnecessary in case \nof only one SCA process needed, since the related authorisation resource \nmight be automatically created by the ASPSP after the submission of the \npayment data with the first POST payments/{payment-product} call.\n\nThe start authorisation process is a process which is needed for creating a new authorisation \nor cancellation sub-resource. \n\nThis applies in the following scenarios:\n\n * The ASPSP has indicated with an 'startAuthorisation' hyperlink in the preceeding Payment \n Initiation Response that an explicit start of the authorisation process is needed by the TPP. \n The 'startAuthorisation' hyperlink can transport more information about data which needs to be \n uploaded by using the extended forms.\n * 'startAuthorisationWithPsuIdentfication', \n * 'startAuthorisationWithPsuAuthentication' #TODO\n * 'startAuthorisationWithAuthentciationMethodSelection' \n * The related payment initiation cannot yet be executed since a multilevel SCA is mandated.\n * The ASPSP has indicated with an 'startAuthorisation' hyperlink in the preceeding \n Payment Cancellation Response that an explicit start of the authorisation process is needed by the TPP. \n The 'startAuthorisation' hyperlink can transport more information about data which needs to be uploaded \n by using the extended forms as indicated above.\n * The related payment cancellation request cannot be applied yet since a multilevel SCA is mandate for \n executing the cancellation.\n * The signing basket needs to be authorised yet.\n" summary: startPaymentInitiationCancellationAuthorisation tags: - Payment Initiation Service (PIS) operationId: V1PaymentIdCancellationAuthorisationsByPaymentServiceAndPaymentProductPost deprecated: false produces: - application/json parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: paymentId in: path required: true type: string description: Resource identification of the generated payment initiation resource. - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-ID in: header required: false type: string description: |- Client ID of the PSU in the ASPSP client interface. Might be mandated in the ASPSP's documentation. Is not contained if an OAuth2 based authentication was performed in a pre-step or an OAuth2 based SCA was performed in an preceeding AIS service in the same session. - name: PSU-ID-Type in: header required: false type: string description: Type of the PSU-ID, needed in scenarios where PSUs have several PSU-IDs as access possibility. - name: PSU-Corporate-ID in: header required: false type: string description: Might be mandated in the ASPSP's documentation. Only used in a corporate context. - name: PSU-Corporate-ID-Type in: header required: false type: string description: Might be mandated in the ASPSP's documentation. Only used in a corporate context. - name: PSU-IP-Address in: header required: false type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. responses: 201: description: Created schema: $ref: '#/definitions/startScaprocessResponse' headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ASPSP-SCA-Approach: type: string default: EMBEDDED 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error get: description: | Retrieve a list of all created cancellation authorisation sub-resources. summary: getPaymentInitiationCancellationAuthorisationInformation tags: - Payment Initiation Service (PIS) operationId: V1PaymentIdCancellationAuthorisationsByPaymentServiceAndPaymentProductGet deprecated: false produces: - application/json parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: paymentId in: path required: true type: string description: Resource identification of the generated payment initiation resource. - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-IP-Address in: header required: false type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. responses: 200: description: OK schema: type: array items: type: string headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error /v1/{payment-service}/{payment-product}/{paymentId}/cancellation-authorisations/{cancellationId}: get: description: | This method returns the SCA status of a payment initiation's authorisation sub-resource. summary: getPaymentCancellationScaStatus tags: - Payment Initiation Service (PIS) operationId: V1PaymentIdCancellationAuthorisationsCancellationIdByPaymentServiceAndPaymentProductGet deprecated: false produces: - application/json parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: paymentId in: path required: true type: string description: Resource identification of the generated payment initiation resource. - name: cancellationId in: path required: true type: string description: Identification for cancellation resource. - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-IP-Address in: header required: false type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. responses: 200: description: OK schema: $ref: '#/definitions/scaStatusResponse' headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error put: description: "This method updates PSU data on the cancellation authorisation resource if needed. \nIt may authorise a cancellation of the payment within the Embedded SCA Approach where needed.\n\nIndependently from the SCA Approach it supports e.g. the selection of \nthe authentication method and a non-SCA PSU authentication.\n\nThis methods updates PSU data on the cancellation authorisation resource if needed. \n\nThere are several possible Update PSU Data requests in the context of a cancellation authorisation within the payment initiation services needed, \nwhich depends on the SCA approach:\n\n* Redirect SCA Approach:\n \ A specific Update PSU Data Request is applicable for \n * the selection of authentication methods, before choosing the actual SCA approach.\n* Decoupled SCA Approach:\n A specific Update PSU Data Request is only applicable for\n \ * adding the PSU Identification, if not provided yet in the Payment Initiation Request or the Account Information Consent Request, or if no OAuth2 access token is used, or\n * the selection of authentication methods.\n* Embedded SCA Approach: \n The Update PSU Data Request might be used \n * to add credentials as a first factor authentication data of the PSU and\n * to select the authentication method and\n * transaction authorisation.\n\nThe SCA Approach might depend on the chosen SCA method. \nFor that reason, the following possible Update PSU Data request can apply to all SCA approaches:\n\n* Select an SCA method in case of several SCA methods are available for the customer.\n\nThere are the following request types on this access path:\n * Update PSU Identification\n \ * Update PSU Authentication\n * Select PSU Autorization Method \n WARNING: This method need a reduced header, \n therefore many optional elements are not present. \n Maybe in a later version the access path will change.\n \ * Transaction Authorisation\n WARNING: This method need a reduced header, \n therefore many optional elements are not present. \n Maybe in a later version the access path will change.\n" summary: updatePaymentCancellationPsuData tags: - Payment Initiation Service (PIS) operationId: V1PaymentIdCancellationAuthorisationsCancellationIdByPaymentServiceAndPaymentProductPut deprecated: false produces: - application/json parameters: - name: payment-service in: path required: true enum: - payments - bulk-payments - periodic-payments type: string description: |- Payment service: Possible values are: * payments * bulk-payments * periodic-payments - name: payment-product in: path required: true enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers type: string description: "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\nThe ASPSP will publish which of the payment products/endpoints will be supported.\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - instant-sepa-credit-transfers\n - target-2-payments\n \ - cross-border-credit-transfers\n - pain.001-sepa-credit-transfers\n \ - pain.001-instant-sepa-credit-transfers\n - pain.001-target-2-payments\n \ - pain.001-cross-border-credit-transfers\n\n**Remark:** For all SEPA Credit Transfer based endpoints which accept XML encoding, \nthe XML pain.001 schemes provided by EPC are supported by the ASPSP as a minimum for the body content. \nFurther XML schemes might be supported by some communities.\n\n**Remark:** For cross-border and TARGET-2 payments only community wide pain.001 schemes do exist. \nThere are plenty of country specificic scheme variants." - name: paymentId in: path required: true type: string description: Resource identification of the generated payment initiation resource. - name: cancellationId in: path required: true type: string description: Identification for cancellation resource. - name: X-Request-ID in: header required: true type: string format: uuid description: ID of the request, unique to the call, as determined by the initiating party. - name: Digest in: header required: false type: string description: Is contained if and only if the "Signature" element is contained in the header of the request. - name: Signature in: header required: false type: string description: A signature of the request by the TPP on application level. This might be mandated by ASPSP. - name: TPP-Signature-Certificate in: header required: false type: string description: "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained." - name: PSU-ID in: header required: false type: string description: |- Client ID of the PSU in the ASPSP client interface. Might be mandated in the ASPSP's documentation. Is not contained if an OAuth2 based authentication was performed in a pre-step or an OAuth2 based SCA was performed in an preceeding AIS service in the same session. - name: PSU-ID-Type in: header required: false type: string description: Type of the PSU-ID, needed in scenarios where PSUs have several PSU-IDs as access possibility. - name: PSU-Corporate-ID in: header required: false type: string description: Might be mandated in the ASPSP's documentation. Only used in a corporate context. - name: PSU-Corporate-ID-Type in: header required: false type: string description: Might be mandated in the ASPSP's documentation. Only used in a corporate context. - name: PSU-IP-Address in: header required: false type: string description: The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP. - name: PSU-IP-Port in: header required: false type: string description: The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available. - name: PSU-Accept in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Charset in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Encoding in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-Accept-Language in: header required: false type: string description: The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available. - name: PSU-User-Agent in: header required: false type: string description: The forwarded Agent header field of the HTTP request between PSU and TPP, if available. - name: PSU-Http-Method in: header required: false enum: - GET - POST - PUT - PATCH - DELETE type: string description: |- HTTP method used at the PSU ? TPP interface, if available. Valid values are: * GET * POST * PUT * PATCH * DELETE - name: PSU-Device-ID in: header required: false type: string format: uuid description: |- 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 need to be unaltered until removal from device. - name: PSU-Geo-Location in: header required: false type: string pattern: (GEO:)[0-9]{1,3}\.[-][0-9]{6}\,[-][0-9]{1,3}\.[0-9]{6} description: The forwarded Geo Location of the corresponding http request between PSU and TPP if available. - name: body in: body required: false description: "" schema: type: object responses: 200: description: OK schema: type: object headers: X-Request-ID: type: string default: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721 ASPSP-SCA-Approach: type: string default: EMBEDDED 400: description: Bad Request schema: $ref: '#/definitions/Error400_NG_PIS' 401: description: Unauthorized schema: $ref: '#/definitions/Error401_NG_PIS' 403: description: Forbidden schema: $ref: '#/definitions/Error403_NG_PIS' 404: description: Not found schema: $ref: '#/definitions/Error404_NG_PIS' 405: description: Method Not Allowed schema: $ref: '#/definitions/Error405_NG_PIS' 406: description: Not Acceptable 408: description: Request Timeout 415: description: Unsupported Media Type 429: description: Too Many Requests 503: description: Service Unavailable default: description: Internal Server Error definitions: transactionStatus: title: transactionStatus description: "The transaction status is filled with codes of the ISO 20022 data table:\n- 'ACCC': 'AcceptedSettlementCompleted' -\n Settlement on the creditor's account has been completed.\n- 'ACCP': 'AcceptedCustomerProfile' - \n Preceding check of technical validation was successful. \n Customer profile check was also successful.\n- 'ACSC': 'AcceptedSettlementCompleted' - \n Settlement on the debtor�s account has been completed.\n \n **Usage:** this can be used by the first agent to report to the debtor that the transaction has been completed. \n \n **Warning:** this status is provided for transaction status reasons, not for financial information. \n It can only be used after bilateral agreement.\n- 'ACSP': 'AcceptedSettlementInProcess' - \n All preceding checks such as technical validation and customer profile were successful and therefore the payment initiation has been accepted for execution.\n- 'ACTC': 'AcceptedTechnicalValidation' - \n Authentication and syntactical and semantical validation are successful.\n- 'ACWC': 'AcceptedWithChange' - \n Instruction is accepted but a change will be made, such as date or remittance not sent.\n- 'ACWP': 'AcceptedWithoutPosting' - \n Payment instruction included in the credit transfer is accepted without being posted to the creditor customer�s account.\n- 'RCVD': 'Received' - \n \ Payment initiation has been received by the receiving agent.\n- 'PDNG': 'Pending' - \n Payment initiation or individual transaction included in the payment initiation is pending. \n Further checks and status update will be performed.\n- 'RJCT': 'Rejected' - \n Payment initiation or individual transaction included in the payment initiation has been rejected.\n- 'CANC': 'Cancelled'\n Payment initiation has been cancelled before execution\n Remark: This code is still requested from ISO20022.\n- 'ACFC': 'AcceptedFundsChecked' -\n Preceeding check of technical validation and customer profile was successful and an automatic funds check was positive .\n Remark: This code is still requested from ISO20022.\n- 'PATC': 'PartiallyAcceptedTechnical'\n Correct The payment initiation needs multiple authentications, where some but not yet all have been performed. Syntactical and semantical validations are successful.\n Remark: This code is still requested from ISO20022." example: ACCC type: string enum: - ACCC - ACCP - ACSC - ACSP - ACTC - ACWC - ACWP - RCVD - PDNG - RJCT - CANC - ACFC - PATC transactionStatus_SB: title: transactionStatus_SB description: "The transaction status is filled with codes of the ISO 20022 data table.\nOnly the codes RCVD, PATC, ACTC, ACWC and RJCT are used:\n- 'ACSP': 'AcceptedSettlementInProcess' - \n All preceding checks such as technical validation and customer profile were successful and therefore the payment initiation has been accepted for execution.\n- 'ACTC': 'AcceptedTechnicalValidation' - \n Authentication and syntactical and semantical validation are successful.\n- 'ACWC': 'AcceptedWithChange' - \n Instruction is accepted but a change will be made, such as date or remittance not sent.\n- 'RCVD': 'Received' - \n Payment initiation has been received by the receiving agent.\n- 'RJCT': 'Rejected' - \n Payment initiation or individual transaction included in the payment initiation has been rejected." example: ACSC type: string enum: - ACSC - ACTC - ACWC - RCVD - RJCT scaStatus: title: scaStatus description: "This data element is containing information about the status of the SCA method applied. \n\nThe following codes are defined for this data type.\n\n \ * 'received':\n An authorisation or cancellation-authorisation resource has been created successfully.\n * 'psuIdentified':\n The PSU related to the authorisation or cancellation-authorisation resource has been identified.\n \ * 'psuAuthenticated':\n The PSU related to the authorisation or cancellation-authorisation resource has been identified and authenticated e.g. by a password or by an access token.\n * 'scaMethodSelected':\n The PSU/TPP has selected the related SCA routine. \n If the SCA method is chosen implicitly since only one SCA method is available, \n then this is the first status to be reported instead of 'received'.\n * 'started':\n The addressed SCA routine has been started.\n \ * 'finalised':\n The SCA routine has been finalised successfully.\n * 'failed':\n The SCA routine failed\n * 'exempted':\n SCA was exempted for the related transaction, the related authorisation is successful." example: received type: string enum: - received - psuIdentified - psuAuthenticated - scaMethodSelected - started - finalised - failed - exempted consentStatus: title: consentStatus description: "This is the overall lifecycle status of the consent.\n\nValid values are:\n - 'received': The consent data have been received and are technically correct. \n The data is not authorised yet.\n - 'rejected': The consent data have been rejected e.g. since no successful authorisation has taken place.\n \ - 'valid': The consent is accepted and valid for GET account data calls and others as specified in the consent object.\n - 'revokedByPsu': The consent has been revoked by the PSU towards the ASPSP.\n - 'expired': The consent expired.\n \ - 'terminatedByTpp': The corresponding TPP has terminated the consent by applying the DELETE method to the consent resource.\n\nThe ASPSP might add further codes. These codes then shall be contained in the ASPSP's documentation of the XS2A interface \nand has to be added to this API definition as well." example: received type: string enum: - received - rejected - valid - revokedByPsu - expired - terminatedByTpp authenticationObject: title: authenticationObject description: Authentication Object type: object properties: authenticationType: $ref: '#/definitions/authenticationType' authenticationVersion: description: |- Depending on the "authenticationType". This version can be used by differentiating authentication tools used within performing OTP generation in the same authentication type. This version can be referred to in the ASPSP?s documentation. type: string authenticationMethodId: description: An identification provided by the ASPSP for the later identification of the authentication method selection. example: myAuthenticationID type: string maxLength: 35 name: description: |- This is the name of the authentication method defined by the PSU in the Online Banking frontend of the ASPSP. Alternatively this could be a description provided by the ASPSP like "SMS OTP on phone +49160 xxxxx 28". This name shall be used by the TPP when presenting a list of authentication methods to the PSU, if available. example: SMS OTP on phone +49160 xxxxx 28 type: string explanation: description: Detailed information about the SCA method for the PSU. example: Detailed information about the SCA method for the PSU. type: string required: - authenticationType - authenticationMethodId authenticationType: title: authenticationType description: "Type of the authentication method.\n\nMore authentication types might be added during implementation projects and documented in the ASPSP documentation.\n\n \ - 'SMS_OTP': An SCA method, where an OTP linked to the transaction to be authorised is sent to the PSU through a SMS channel.\n - 'CHIP_OTP': An SCA method, where an OTP is generated by a chip card, e.g. an TOP derived from an EMV cryptogram. \n To contact the card, the PSU normally needs a (handheld) device. \n With this device, the PSU either reads the challenging data through a visual interface like flickering or \n the PSU types in the challenge through the device key pad. \n The device then derives an OTP from the challenge data and displays the OTP to the PSU.\n - 'PHOTO_OTP': An SCA method, where the challenge is a QR code or similar encoded visual data \n which can be read in by a consumer device or specific mobile app. \n The device resp. the specific app than derives an OTP from the visual challenge data and displays \n the OTP to the PSU.\n - 'PUSH_OTP': An OTP is pushed to a dedicated authentication APP and displayed to the PSU." example: SMS_OTP type: string enum: - SMS_OTP - CHIP_OTP - PHOTO_OTP - PUSH_OTP signingBasket: title: signingBasket description: |- JSON Body of a establish signing basket request. The body shall contain at least one entry. type: object properties: paymentIds: description: A list of paymentIds type: array items: type: string minItems: 1 consentIds: description: A list of consentIds type: array items: type: string minItems: 1 challengeData: title: challengeData description: |- It is contained in addition to the data element 'chosenScaMethod' if challenge data is needed for SCA. In rare cases this attribute is also used in the context of the 'startAuthorisationWithPsuAuthentication' link. type: object properties: image: description: |- PNG data (max. 512 kilobyte) to be displayed to the PSU, Base64 encoding, cp. [RFC4648]. This attribute is used only, when PHOTO_OTP or CHIP_OTP is the selected SCA method. type: string data: description: String challenge data type: string imageLink: description: A link where the ASPSP will provides the challenge image for the TPP. type: string otpMaxLength: description: The maximal length for the OTP to be typed in by the PSU. type: integer format: int32 otpFormat: $ref: '#/definitions/OtpFormat' additionalInformation: description: |- Additional explanation for the PSU to explain e.g. fallback mechanism for the chosen SCA method. The TPP is obliged to show this to the PSU. type: string authorisations: title: authorisations description: An array of all authorisationIds type: object properties: authorisationIds: description: An array of all authorisationIds type: array items: type: string required: - authorisationIds accountReference: title: accountReference description: "Reference to an account by either\n * IBAN, of a payment accounts, or\n * BBAN, for payment accounts if there is no IBAN, or \n * the Primary Account Number (PAN) of a card, can be tokenised by the ASPSP due to PCI DSS requirements, or\n * the Primary Account Number (PAN) of a card in a masked form, or\n * an alias to access a payment account via a registered mobile phone number (MSISDN)." type: object properties: iban: description: IBAN of an account example: FR7612345987650123456789014 type: string pattern: '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}' bban: description: "Basic Bank Account Number (BBAN) Identifier\n\nThis data element can be used in the body of the Consent Request\n Message for retrieving Account access Consent from this Account. This\n data elements is used for payment Accounts which have no IBAN.\n ISO20022: Basic Bank Account Number (BBAN). \n \n Identifier used nationally by financial institutions, i.e., in individual countries, \n generally as part of a National Account Numbering Scheme(s), \n which uniquely identifies the account of a customer." example: BARC12345612345678 type: string pattern: '[a-zA-Z0-9]{1,30}' pan: description: Primary Account Number according to ISO/IEC 7812. example: "5409050000000000" type: string maxLength: 35 maskedPan: description: Masked Primary Account Number example: 123456xxxxxx1234 type: string maxLength: 35 msisdn: description: Mobile phone number. example: +49 170 1234567 type: string maxLength: 35 currency: description: ISO 4217 Alpha 3 currency code example: EUR type: string pattern: '[A-Z]{3}' balanceType: title: balanceType description: "The following balance types are defined:\n - \"closingBooked\": \n Balance of the account at the end of the pre-agreed account reporting period. \n It is the sum of the opening booked balance at the beginning of the period and all entries booked \n to the account during the pre-agreed account reporting period.\n \n For card-accounts, this is composed of\n \ \n - invoiced, but not yet paid entries\n \n - \"expected\":\n \ Balance composed of booked entries and pending items known at the time of calculation, \n which projects the end of day balance if everything is booked on the account and no other entry is posted.\n \n For card accounts, this is composed of \n - invoiced, but not yet paid entries, \n - not yet invoiced but already booked entries and\n - pending items (not yet booked)\n \ \n - \"authorised\":\n The expected balance together with the value of a pre-approved credit line the ASPSP makes permanently available to the user.\n \ \n For card-accounts:\n \n \"money to spend with the value of a pre-approved credit limit on the card account\"\n \n - \"openingBooked\":\n \ Book balance of the account at the beginning of the account reporting period. \n It always equals the closing book balance from the previous report.\n \ - \"interimAvailable\":\n Available balance calculated in the course of the account ?servicer?s business day, \n at the time specified, and subject to further changes during the business day. \n The interim balance is calculated on the basis of booked credit and debit items during the calculation \n time/period specified.\n \n For card-accounts, this is composed of\n - invoiced, but not yet paid entries, \n - not yet invoiced but already booked entries\n \ - \"forwardAvailable\":\n Forward available balance of money that is at the disposal of the account owner on the date specified.\n - \"nonInvoiced\": \n Only for card accounts, to be checked yet." example: closingBooked type: string enum: - closingBooked - expected - authorised - openingBooked - interimAvailable - forwardAvailable - nonInvoiced accountAccess: title: accountAccess description: Requested access services for a consent. type: object properties: accounts: description: "Is asking for detailed account information. \n\nIf the array is empty, the TPP is asking for an accessible account list. \nThis may be restricted in a PSU/ASPSP authorization dialogue.\nIf the array is empty, also the arrays for balances or transactions shall be empty, if used." type: array items: $ref: '#/definitions/accountReference' balances: description: "Is asking for balances of the addressed accounts.\n\nIf the array is empty, the TPP is asking for the balances of all accessible account lists. \nThis may be restricted in a PSU/ASPSP authorization dialogue.\nIf the array is empty, also the arrays for accounts or transactions shall be empty, if used." type: array items: $ref: '#/definitions/accountReference' transactions: description: "Is asking for transactions of the addressed accounts. \n\nIf the array is empty, the TPP is asking for the transactions of all accessible account lists. \nThis may be restricted in a PSU/ASPSP authorization dialogue.\nIf the array is empty, also the arrays for accounts or balances shall be empty, if used." type: array items: $ref: '#/definitions/accountReference' availableAccounts: $ref: '#/definitions/AvailableAccounts' allPsd2: $ref: '#/definitions/AllPsd2' accountStatus: title: accountStatus description: |- Account status. The value is one of the following: - "enabled": account is available - "deleted": account is terminated - "blocked": account is blocked e.g. for legal reasons If this field is not used, than the account is available in the sense of this specification. example: enabled type: string enum: - enabled - deleted - blocked accountDetails: title: accountDetails description: |- The ASPSP shall give at least one of the account reference identifiers: - iban - bban - pan - maskedPan - msisdn If the account is a multicurrency account currency code in "currency" is set to "XXX". type: object properties: resourceId: description: This shall be filled, if addressable resource are created by the ASPSP on the /accounts or /card-accounts endpoint. type: string iban: description: IBAN of an account example: FR7612345987650123456789014 type: string pattern: '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}' bban: description: "Basic Bank Account Number (BBAN) Identifier\n\nThis data element can be used in the body of the Consent Request\n Message for retrieving Account access Consent from this Account. This\n data elements is used for payment Accounts which have no IBAN.\n ISO20022: Basic Bank Account Number (BBAN). \n \n Identifier used nationally by financial institutions, i.e., in individual countries, \n generally as part of a National Account Numbering Scheme(s), \n which uniquely identifies the account of a customer." example: BARC12345612345678 type: string pattern: '[a-zA-Z0-9]{1,30}' msisdn: description: Mobile phone number. example: +49 170 1234567 type: string maxLength: 35 currency: description: ISO 4217 Alpha 3 currency code example: EUR type: string pattern: '[A-Z]{3}' name: description: Name of the account given by the bank or the PSU in online-banking. type: string maxLength: 35 product: description: Product name of the bank for this account, proprietary definition. type: string maxLength: 35 cashAccountType: description: ExternalCashAccountType1Code from ISO 20022. type: string status: $ref: '#/definitions/accountStatus' bic: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' linkedAccounts: description: Case of a set of pending card transactions, the APSP will provide the relevant cash account the card is set up on. type: string maxLength: 70 usage: $ref: '#/definitions/Usage' details: description: |- Specifications that might be provided by the ASPSP - characteristics of the account - characteristics of the relevant card type: string maxLength: 140 balances: description: |- A list of balances regarding this account, e.g. the current balance, the last booked balance. The list migght be restricted to the current ballance. type: array items: $ref: '#/definitions/balance' _links: $ref: '#/definitions/_linksAccountDetails' required: - currency cardAccountDetails: title: cardAccountDetails description: Card account details type: object properties: resourceId: description: |- This is the data element to be used in the path when retrieving data from a dedicated account. This shall be filled, if addressable resource are created by the ASPSP on the /card-accounts endpoint. type: string maskedPan: description: Masked Primary Account Number example: 123456xxxxxx1234 type: string maxLength: 35 currency: description: ISO 4217 Alpha 3 currency code example: EUR type: string pattern: '[A-Z]{3}' name: description: Name of the account given by the bank or the PSU in online-banking. type: string maxLength: 35 product: description: Product name of the bank for this account, proprietary definition. type: string maxLength: 35 status: $ref: '#/definitions/accountStatus' usage: $ref: '#/definitions/Usage' details: description: |- Specifications that might be provided by the ASPSP - characteristics of the account - characteristics of the relevant card type: string maxLength: 140 creditLimit: $ref: '#/definitions/amount' balances: description: |- A list of balances regarding this account, e.g. the current balance, the last booked balance. The list migght be restricted to the current ballance. type: array items: $ref: '#/definitions/balance' _links: $ref: '#/definitions/_linksAccountDetails' required: - maskedPan - currency accountList: title: accountList description: List of accounts with details. type: object properties: accounts: type: array items: $ref: '#/definitions/accountDetails' required: - accounts cardAccountList: title: cardAccountList description: List of card accounts with details. type: object properties: cardAccounts: type: array items: $ref: '#/definitions/cardAccountDetails' required: - cardAccounts accountReport: title: accountReport description: |- JSON based account report. This account report contains transactions resulting from the query parameters. 'booked' shall be contained if bookingStatus parameter is set to "booked" or "both". 'pending' is not contained if the bookingStatus parameter is set to "booked". type: object properties: booked: description: Array of transaction details type: array items: $ref: '#/definitions/transactionDetails' pending: description: Array of transaction details type: array items: $ref: '#/definitions/transactionDetails' _links: $ref: '#/definitions/_linksAccountReport' required: - _links cardAccountReport: title: cardAccountReport description: |- JSON based card account report. This card account report contains transactions resulting from the query parameters. type: object properties: booked: description: Array of transaction details type: array items: $ref: '#/definitions/cardTransaction' pending: description: Array of transaction details type: array items: $ref: '#/definitions/cardTransaction' _links: $ref: '#/definitions/_linksCardAccountReport' required: - booked - _links transactionDetails: title: transactionDetails description: Transaction details type: object properties: transactionId: description: "the Transaction Id can be used as access-ID in the API, where more details on an transaction is offered. \nIf this data attribute is provided this shows that the AIS can get access on more details about this \ntransaction using the GET Transaction Details Request" type: string entryReference: description: "Is the identification of the transaction as used e.g. for reference for deltafunction on application level. \nThe same identification as for example used within camt.05x messages." type: string maxLength: 35 endToEndId: description: Unique end to end identity. type: string maxLength: 35 mandateId: description: Identification of Mandates, e.g. a SEPA Mandate ID. type: string maxLength: 35 checkId: description: Identification of a Cheque. type: string maxLength: 35 creditorId: description: Identification of Creditors, e.g. a SEPA Creditor ID. type: string maxLength: 35 bookingDate: description: The Date when an entry is posted to an account on the ASPSPs books. type: string format: date valueDate: description: The Date at which assets become available to the account owner in case of a credit. type: string format: date transactionAmount: $ref: '#/definitions/amount' exchangeRate: description: Array of exchange rates type: array items: $ref: '#/definitions/exchangeRate' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAccount: $ref: '#/definitions/accountReference' ultimateCreditor: description: Ultimate Creditor example: Ultimate Creditor type: string maxLength: 70 debtorName: description: Debtor Name example: Debtor Name type: string maxLength: 70 debtorAccount: $ref: '#/definitions/accountReference' ultimateDebtor: description: Ultimate Debtor example: Ultimate Debtor type: string maxLength: 70 remittanceInformationUnstructured: type: string maxLength: 140 remittanceInformationStructured: description: |- Reference as contained in the structured remittance reference structure (without the surrounding XML structure). Different from other places the content is containt in plain form not in form of a structered field. type: string maxLength: 140 purposeCode: $ref: '#/definitions/purposeCode' bankTransactionCode: description: "Bank transaction code as used by the ASPSP and using the sub elements of this structured code defined by ISO 20022. \n\nThis code type is concatenating the three ISO20022 Codes \n * Domain Code, \n * Family Code, and \n * SubFamiliy Code \nby hyphens, resulting in �DomainCode�-�FamilyCode�-�SubFamilyCode�." example: PMNT-RCDT-ESCT type: string proprietaryBankTransactionCode: description: "Proprietary bank transaction code as used within a community or within an ASPSP e.g. \nfor MT94x based transaction reports." type: string maxLength: 35 _links: $ref: '#/definitions/_linksTransactionDetails' required: - transactionAmount cardTransaction: title: cardTransaction description: Card transaction information type: object properties: cardTransactionId: description: Unique end to end identity. type: string maxLength: 35 terminalId: description: Identification of the Terminal, where the card has been used. type: string maxLength: 35 transactionDate: description: Date of the actual card transaction type: string format: date bookingDate: description: The Date when an entry is posted to an account on the ASPSPs books. type: string format: date transactionAmount: $ref: '#/definitions/amount' exchangeRate: description: Array of exchange rates type: array items: $ref: '#/definitions/exchangeRate' originalAmount: $ref: '#/definitions/amount' markupFee: $ref: '#/definitions/amount' markupFeePercentage: type: string cardAcceptorId: type: string maxLength: 35 cardAcceptorAddress: $ref: '#/definitions/address' cardAcceptorCategoryCode: description: Card Acceptor Category Code of the Card Acceptor as given in the related card transaction. type: string maskedPAN: description: Masked Primary Account Number example: 123456xxxxxx1234 type: string maxLength: 35 transactionDetails: type: string maxLength: 140 invoiced: type: boolean proprietaryBankTransactionCode: description: "Proprietary bank transaction code as used within a community or within an ASPSP e.g. \nfor MT94x based transaction reports." type: string maxLength: 35 required: - transactionAmount exchangeRate: title: exchangeRate description: Exchange Rate type: object properties: sourceCurrency: description: ISO 4217 Alpha 3 currency code example: EUR type: string pattern: '[A-Z]{3}' rate: type: string unitCurrency: type: string targetCurrency: description: ISO 4217 Alpha 3 currency code example: EUR type: string pattern: '[A-Z]{3}' rateDate: type: string format: date rateContract: type: string required: - sourceCurrency - rate - unitCurrency - targetCurrency - rateDate balance: title: balance description: A single balance element type: object properties: balanceAmount: $ref: '#/definitions/amount' balanceType: $ref: '#/definitions/balanceType' lastChangeDateTime: description: "This data element might be used to indicate e.g. with the expected or booked balance that no action is known \non the account, which is not yet booked." type: string format: date-time referenceDate: description: Reference date of the balance type: string format: date lastCommittedTransaction: description: "\"entryReference\" of the last commited transaction to support the TPP in identifying whether all \nPSU transactions are already known." type: string maxLength: 35 required: - balanceAmount - balanceType address: title: address example: street: rue blue buildingnNumber: "89" city: Paris postalCode: "75000" country: FR type: object properties: street: type: string maxLength: 70 buildingNumber: type: string city: type: string postalCode: type: string country: description: ISO 3166 ALPHA2 country code example: SE type: string pattern: '[A-Z]{2}' required: - country amount: title: amount example: currency: EUR amount: "123" type: object properties: currency: description: ISO 4217 Alpha 3 currency code example: EUR type: string pattern: '[A-Z]{3}' amount: description: |- The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. **Example:** Valid representations for EUR with up to two decimals are: * 1056 * 5768.2 * -1.50 * 5877.78 example: "5877.78" type: string pattern: -?[0-9]{1,14}(\.[0-9]{1,3})? required: - currency - amount remittanceInformationStructured: title: remittanceInformationStructured description: Structured remittance information type: object properties: reference: type: string maxLength: 35 referenceType: type: string maxLength: 35 referenceIssuer: type: string maxLength: 35 required: - reference purposeCode: title: purposeCode description: |- ExternalPurpose1Code from ISO 20022. Values from ISO 20022 External Code List ExternalCodeSets_1Q2018 June 2018. example: BKDF type: string enum: - BKDF - BKFE - BKFM - BKIP - BKPP - CBLK - CDCB - CDCD - CDCS - CDDP - CDOC - CDQC - ETUP - FCOL - MTUP - ACCT - CASH - COLL - CSDB - DEPT - INTC - LIMA - NETT - BFWD - CCIR - CCPC - CCPM - CCSM - CRDS - CRPR - CRSP - CRTL - EQPT - EQUS - EXPT - EXTD - FIXI - FWBC - FWCC - FWSB - FWSC - MARG - MBSB - MBSC - MGCC - MGSC - OCCC - OPBC - OPCC - OPSB - OPSC - OPTN - OTCD - REPO - RPBC - RPCC - RPSB - RPSC - RVPO - SBSC - SCIE - SCIR - SCRP - SHBC - SHCC - SHSL - SLEB - SLOA - SWBC - SWCC - SWPT - SWSB - SWSC - TBAS - TBBC - TBCC - TRCP - AGRT - AREN - BEXP - BOCE - COMC - CPYR - GDDS - GDSV - GSCB - LICF - MP2B - POPE - ROYA - SCVE - SERV - SUBS - SUPP - TRAD - CHAR - COMT - MP2P - ECPG - ECPR - ECPU - EPAY - CLPR - COMP - DBTC - GOVI - HLRP - HLST - INPC - INPR - INSC - INSU - INTE - LBRI - LIFI - LOAN - LOAR - PENO - PPTI - RELG - RINP - TRFD - FORW - FXNT - ADMG - ADVA - BCDM - BCFG - BLDM - BNET - CBFF - CBFR - CCRD - CDBL - CFEE - CGDD - CORT - COST - CPKC - DCRD - DSMT - DVPM - EDUC - FACT - FAND - FCPM - FEES - GOVT - ICCP - IDCP - IHRP - INSM - IVPT - MCDM - MCFG - MSVC - NOWS - OCDM - OCFG - OFEE - OTHR - PADD - PTSP - RCKE - RCPT - REBT - REFU - RENT - REOD - RIMB - RPNT - RRBN - RVPM - SLPI - SPLT - STDY - TBAN - TBIL - TCSC - TELI - TMPG - TPRI - TPRP - TRNC - TRVC - WEBI - ANNI - CAFI - CFDI - CMDT - DERI - DIVD - FREX - HEDG - INVS - PRME - SAVG - SECU - SEPI - TREA - UNIT - FNET - FUTR - ANTS - CVCF - DMEQ - DNTS - HLTC - HLTI - HSPC - ICRF - LTCF - MAFC - MARF - MDCS - VIEW - CDEP - SWFP - SWPP - SWRS - SWUF - ADCS - AEMP - ALLW - ALMY - BBSC - BECH - BENE - BONU - CCHD - COMM - CSLP - GFRP - GVEA - GVEB - GVEC - GVED - GWLT - HREC - PAYR - PEFC - PENS - PRCP - RHBS - SALA - SSBE - LBIN - LCOL - LFEE - LMEQ - LMFI - LMRK - LREB - LREV - LSFL - ESTX - FWLV - GSTX - HSTX - INTX - NITX - PTXP - RDTX - TAXS - VATX - WHLD - TAXR - B112 - BR12 - TLRF - TLRR - AIRB - BUSB - FERB - RLWY - TRPT - CBTV - ELEC - ENRG - GASB - NWCH - NWCM - OTLC - PHON - UBIL - WTER frequencyCode: title: frequencyCode description: |- The following codes from the "EventFrequency7Code" of ISO 20022 are supported. - "Daily" - "Weekly" - "EveryTwoWeeks" - "Monthly" - "EveryTwoMonths" - "Quarterly" - "SemiAnnual" - "Annual" example: Daily type: string enum: - Daily - Weekly - EveryTwoWeeks - Monthly - EveryTwoMonths - Quarterly - SemiAnnual - Annual dayOfExecution: title: dayOfExecution description: |- Day of execution as string. This string consists of up two characters. Leading zeroes are not allowed. 31 is ultimo of the month. example: 1 type: integer format: int32 enum: - "1" - "2" - "3" - "4" - "5" - "6" - "7" - "8" - "9" - "10" - "11" - "12" - "13" - "14" - "15" - "16" - "17" - "18" - "19" - "20" - "21" - "22" - "23" - "24" - "25" - "26" - "27" - "28" - "29" - "30" - "31" executionRule: title: executionRule description: "\"following\" or \"preceeding\" supported as values. \nThis data attribute defines the behavior when recurring payment dates falls on a weekend or bank holiday. \nThe payment is then executed either the \"preceeding\" or \"following\" working day.\nASPSP might reject the request due to the communicated value, if rules in Online-Banking are not supporting \nthis execution rule." example: following type: string enum: - following - preceeding psuData: title: psuData description: PSU Data for Update PSU Authentication. type: object properties: password: description: Password type: string required: - password paymentInitiationSct_json: title: paymentInitiationSct_json description: Body for a SCT payment initation. type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: description: Unstructured remittance information example: Ref Number Merchant type: string maxLength: 140 required: - debtorAccount - instructedAmount - creditorAccount - creditorName paymentInitiationSctInst_json: title: paymentInitiationSctInst_json description: Body for a SCT INST payment initation. type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 required: - debtorAccount - instructedAmount - creditorAccount - creditorName paymentInitiationTarget2_json: title: paymentInitiationTarget2_json description: Body for a TARGET-2 payment initation. type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 required: - debtorAccount - instructedAmount - creditorAccount - creditorName paymentInitiationCrossBorder_json: title: paymentInitiationCrossBorder_json description: JSON body for a cross-border payment initation. type: object properties: debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 required: - debtorAccount - instructedAmount - creditorAccount - creditorName paymentInitiationSctBulkElement_json: title: paymentInitiationSctBulkElement_json description: Body for a bulk SCT payment initation. type: object properties: endToEndIdentification: type: string maxLength: 35 instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: description: Unstructured remittance information example: Ref Number Merchant type: string maxLength: 140 required: - instructedAmount - creditorAccount - creditorName paymentInitiationSctInstBulkElement_json: title: paymentInitiationSctInstBulkElement_json description: Body for a SCT INST payment initation. type: object properties: endToEndIdentification: type: string maxLength: 35 instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 required: - instructedAmount - creditorAccount - creditorName paymentInitiationTarget2BulkElement_json: title: paymentInitiationTarget2BulkElement_json description: Body for a bulk TARGET-2 payment initation. type: object properties: endToEndIdentification: type: string maxLength: 35 instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 required: - instructedAmount - creditorAccount - creditorName paymentInitiationCrossBorderBulkElement_json: title: paymentInitiationCrossBorderBulkElement_json description: JSON body for a cross-border payment initation. type: object properties: instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 required: - instructedAmount - creditorAccount - creditorName periodicPaymentInitiationSct_json: title: periodicPaymentInitiationSct_json description: JSON Body for a periodic SCT payment initation. type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: description: Unstructured remittance information example: Ref Number Merchant type: string maxLength: 140 startDate: description: The first applicable day of execution starting from this date is the first payment. type: string format: date endDate: description: |- The last applicable day of execution If not given, it is an infinite standing order. type: string format: date executionRule: $ref: '#/definitions/executionRule' frequency: $ref: '#/definitions/frequencyCode' dayOfExecution: $ref: '#/definitions/dayOfExecution' required: - debtorAccount - instructedAmount - creditorAccount - creditorName - startDate - frequency periodicPaymentInitiationSctInst_json: title: periodicPaymentInitiationSctInst_json description: JSON Body for a periodic SCT INST payment initation. type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 startDate: description: The first applicable day of execution starting from this date is the first payment. type: string format: date endDate: description: |- The last applicable day of execution If not given, it is an infinite standing order. type: string format: date executionRule: $ref: '#/definitions/executionRule' frequency: $ref: '#/definitions/frequencyCode' dayOfExecution: $ref: '#/definitions/dayOfExecution' required: - debtorAccount - instructedAmount - creditorAccount - creditorName - startDate - frequency periodicPaymentInitiationTarget2_json: title: periodicPaymentInitiationTarget2_json description: JSON Body for a periodic target-2 payment initation. type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 startDate: description: The first applicable day of execution starting from this date is the first payment. type: string format: date endDate: description: |- The last applicable day of execution If not given, it is an infinite standing order. type: string format: date executionRule: $ref: '#/definitions/executionRule' frequency: $ref: '#/definitions/frequencyCode' dayOfExecution: $ref: '#/definitions/dayOfExecution' required: - debtorAccount - instructedAmount - creditorAccount - creditorName - startDate - frequency periodicPaymentInitiationCrossBorder_json: title: periodicPaymentInitiationCrossBorder_json description: JSON body for a periodic cross-border payment initation. type: object properties: debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 startDate: description: The first applicable day of execution starting from this date is the first payment. type: string format: date endDate: description: |- The last applicable day of execution If not given, it is an infinite standing order. type: string format: date executionRule: $ref: '#/definitions/executionRule' frequency: $ref: '#/definitions/frequencyCode' dayOfExecution: $ref: '#/definitions/dayOfExecution' required: - debtorAccount - instructedAmount - creditorAccount - creditorName - startDate - frequency bulkPaymentInitiationSct_json: title: bulkPaymentInitiationSct_json description: JSON Body for a bulk SCT payment initation. type: object properties: batchBookingPreferred: description: "If this element equals 'true', the PSU prefers only one booking entry. \nIf this element equals 'false', the PSU prefers individual booking of all contained individual transactions. \n\nThe ASPSP will follow this preference according to contracts agreed on with the PSU." example: false type: boolean requestedExecutionDate: type: string format: date debtorAccount: $ref: '#/definitions/accountReference' payments: description: A list of JSON bodies for SCT payments. type: array items: $ref: '#/definitions/paymentInitiationSctBulkElement_json' required: - debtorAccount - payments bulkPaymentInitiationSctInst_json: title: bulkPaymentInitiationSctInst_json description: JSON Body for a bulk SCT INST payment initation. type: object properties: batchBookingPreferred: description: "If this element equals 'true', the PSU prefers only one booking entry. \nIf this element equals 'false', the PSU prefers individual booking of all contained individual transactions. \n\nThe ASPSP will follow this preference according to contracts agreed on with the PSU." example: false type: boolean requestedExecutionDate: type: string format: date debtorAccount: $ref: '#/definitions/accountReference' payments: description: A list of JSON bodies for SCT INST payments. type: array items: $ref: '#/definitions/paymentInitiationSctInstBulkElement_json' required: - debtorAccount - payments bulkPaymentInitiationTarget2_json: title: bulkPaymentInitiationTarget2_json description: JSON Body for a bulk TARGET-2 payment initation. type: object properties: batchBookingPreferred: description: "If this element equals 'true', the PSU prefers only one booking entry. \nIf this element equals 'false', the PSU prefers individual booking of all contained individual transactions. \n\nThe ASPSP will follow this preference according to contracts agreed on with the PSU." example: false type: boolean requestedExecutionDate: type: string format: date debtorAccount: $ref: '#/definitions/accountReference' payments: description: A list of JSON bodies for TARGET-2 payments. type: array items: $ref: '#/definitions/paymentInitiationTarget2BulkElement_json' required: - debtorAccount - payments bulkPaymentInitiationCrossBorder_json: title: bulkPaymentInitiationCrossBorder_json description: JSON body for a bulk cross-border payment initation. type: object properties: batchBookingPreferred: description: "If this element equals 'true', the PSU prefers only one booking entry. \nIf this element equals 'false', the PSU prefers individual booking of all contained individual transactions. \n\nThe ASPSP will follow this preference according to contracts agreed on with the PSU." example: false type: boolean requestedExecutionDate: type: string format: date debtorAccount: $ref: '#/definitions/accountReference' payments: description: A List of JSON bodies for cross-border payments. type: array items: $ref: '#/definitions/paymentInitiationCrossBorderBulkElement_json' required: - debtorAccount - payments consents: title: consents description: Content of the body of a consent request. type: object properties: access: $ref: '#/definitions/accountAccess' recurringIndicator: description: |- "true", if the consent is for recurring access to the account data. "false", if the consent is for one access to the account data. example: false type: boolean validUntil: description: "This parameter is requesting a valid until date for the requested consent. \nThe content is the local ASPSP date in ISO-Date Format, e.g. 2017-10-30. \n\nFuture dates might get adjusted by ASPSP. \n\nIf a maximal available date is requested, a date in far future is to be used: \"9999-12-31\". \n\nIn both cases the consent object to be retrieved by the GET Consent Request will contain the adjusted date." example: "2020-12-31" type: string format: date frequencyPerDay: description: |- This field indicates the requested maximum frequency for an access without PSU involvement per day. For a one-off access, this attribute is set to "1". example: 4 type: integer format: int32 combinedServiceIndicator: description: If "true" indicates that a payment initiation service will be addressed in the same "session". example: false type: boolean required: - access - recurringIndicator - validUntil - frequencyPerDay - combinedServiceIndicator updatePsuAuthentication: title: updatePsuAuthentication description: |- Content of the body of a Update PSU Authentication Request Password subfield is used. type: object properties: psuData: $ref: '#/definitions/psuData' required: - psuData selectPsuAuthenticationMethod: title: selectPsuAuthenticationMethod description: Content of the body of a Select PSU Authentication Method Request type: object properties: authenticationMethodId: description: An identification provided by the ASPSP for the later identification of the authentication method selection. example: myAuthenticationID type: string maxLength: 35 required: - authenticationMethodId transactionAuthorisation: title: transactionAuthorisation description: Content of the body of a Transaction Authorisation Request type: object properties: scaAuthenticationData: description: "SCA authentication data, depending on the chosen authentication method. \nIf the data is binary, then it is base64 encoded." type: string required: - scaAuthenticationData periodicPaymentInitiationMultipartBody: title: periodicPaymentInitiationMultipartBody description: "The multipart message definition for the initiation of a periodic payment initiation \nwhere the information of the payment is contained in an pain.001 message (Part 1) and \nthe additional informations related to the periodic payment is an additional JSON message (Part 2)." type: object properties: xml_sct: type: object json_standingorderType: $ref: '#/definitions/periodicPaymentInitiation_xml-Part2-standingorderType_json' periodicPaymentInitiation_xml-Part2-standingorderType_json: title: periodicPaymentInitiation_xml-Part2-standingorderType_json description: "The body part 2 of a periodic payment initation request containes the execution related informations \nof the periodic payment." type: object properties: startDate: description: The first applicable day of execution starting from this date is the first payment. type: string format: date endDate: description: |- The last applicable day of execution If not given, it is an infinite standing order. type: string format: date executionRule: $ref: '#/definitions/executionRule' frequency: $ref: '#/definitions/frequencyCode' dayOfExecution: $ref: '#/definitions/dayOfExecution' required: - startDate - frequency paymentInitiationStatusResponse-200_json: title: paymentInitiationStatusResponse-200_json description: Body of the response for a successful payment initiation status request in case of an JSON based endpoint. type: object properties: transactionStatus: $ref: '#/definitions/transactionStatus' required: - transactionStatus paymentInitationRequestResponse-201: title: paymentInitationRequestResponse-201 description: Body of the response for a successful payment initiation request. type: object properties: transactionStatus: $ref: '#/definitions/transactionStatus' paymentId: description: Resource identification of the generated payment initiation resource. example: 1234-wertiq-983 type: string transactionFees: $ref: '#/definitions/amount' transactionFeeIndicator: description: |- If equals 'true', the transaction will involve specific transaction cost as shown by the ASPSP in their public price list or as agreed between ASPSP and PSU. If equals 'false', the transaction will not involve additional specific transaction costs to the PSU. type: boolean scaMethods: description: |- This data element might be contained, if SCA is required and if the PSU has a choice between different authentication methods. Depending on the risk management of the ASPSP this choice might be offered before or after the PSU has been identified with the first relevant factor, or if an access token is transported. If this data element is contained, then there is also an hyperlink of type 'startAuthorisationWithAuthenticationMethodSelection' contained in the response body. These methods shall be presented towards the PSU for selection by the TPP. type: array items: $ref: '#/definitions/authenticationObject' chosenScaMethod: $ref: '#/definitions/authenticationObject' challengeData: $ref: '#/definitions/challengeData' _links: $ref: '#/definitions/_linksPaymentInitiation' psuMessage: description: Text to be displayed to the PSU type: string maxLength: 512 tppMessages: type: array items: $ref: '#/definitions/tppMessage2XX' required: - transactionStatus - paymentId - _links paymentInitationRequestMultiLevelScaResponse-201: title: paymentInitationRequestMultiLevelScaResponse-201 description: Body of the response for a successful payment initiation request. type: object properties: transactionStatus: $ref: '#/definitions/transactionStatus' paymentId: description: Resource identification of the generated payment initiation resource. example: 1234-wertiq-983 type: string transactionFees: $ref: '#/definitions/amount' transactionFeeIndicator: description: |- If equals 'true', the transaction will involve specific transaction cost as shown by the ASPSP in their public price list or as agreed between ASPSP and PSU. If equals 'false', the transaction will not involve additional specific transaction costs to the PSU. type: boolean _links: $ref: '#/definitions/_linksPaymentInitiationMultiLevelSca' psuMessage: description: Text to be displayed to the PSU type: string maxLength: 512 tppMessages: type: array items: $ref: '#/definitions/tppMessage2XX' required: - transactionStatus - paymentId - _links paymentInitiationCancelResponse-204_202: title: paymentInitiationCancelResponse-204_202 description: Body of the response for a successful cancel payment request. type: object properties: transactionStatus: $ref: '#/definitions/transactionStatus' scaMethods: description: |- This data element might be contained, if SCA is required and if the PSU has a choice between different authentication methods. Depending on the risk management of the ASPSP this choice might be offered before or after the PSU has been identified with the first relevant factor, or if an access token is transported. If this data element is contained, then there is also an hyperlink of type 'startAuthorisationWithAuthenticationMethodSelection' contained in the response body. These methods shall be presented towards the PSU for selection by the TPP. type: array items: $ref: '#/definitions/authenticationObject' chosenScaMethod: $ref: '#/definitions/authenticationObject' challengeData: $ref: '#/definitions/challengeData' _links: $ref: '#/definitions/_linksPaymentInitiationCancel' required: - transactionStatus paymentInitiationSctWithStatusResponse: title: paymentInitiationSctWithStatusResponse description: JSON response body consistion of the corresponding SCT payment initation JSON body together with an optional transaction status field. type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: description: Unstructured remittance information example: Ref Number Merchant type: string maxLength: 140 transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - instructedAmount - creditorAccount - creditorName paymentInitiationSctInstWithStatusResponse: title: paymentInitiationSctInstWithStatusResponse description: JSON response body consistion of the corresponding SCT INST payment initation JSON body together with an optional transaction status field. type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - instructedAmount - creditorAccount - creditorName paymentInitiationTarget2WithStatusResponse: title: paymentInitiationTarget2WithStatusResponse description: "JSON response body consistion of the corresponding TARGET-2 payment initation JSON body together with an \noptional transaction status field." type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - instructedAmount - creditorAccount - creditorName paymentInitiationCrossBorderWithStatusResponse: title: paymentInitiationCrossBorderWithStatusResponse description: JSON response body consistion of the corresponding cross-border payment initation JSON body together with an optional transaction status field. type: object properties: debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - instructedAmount - creditorAccount - creditorName periodicPaymentInitiationSctWithStatusResponse: title: periodicPaymentInitiationSctWithStatusResponse description: JSON response body consistion of the corresponding periodic SCT payment initation JSON body together with an optional transaction status field. type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: description: Unstructured remittance information example: Ref Number Merchant type: string maxLength: 140 startDate: description: The first applicable day of execution starting from this date is the first payment. type: string format: date endDate: description: |- The last applicable day of execution If not given, it is an infinite standing order. type: string format: date executionRule: $ref: '#/definitions/executionRule' frequency: $ref: '#/definitions/frequencyCode' dayOfExecution: $ref: '#/definitions/dayOfExecution' transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - instructedAmount - creditorAccount - creditorName - startDate - frequency periodicPaymentInitiationSctInstWithStatusResponse: title: periodicPaymentInitiationSctInstWithStatusResponse description: JSON response body consistion of the corresponding periodic SCT INST payment initation JSON body together with an optional transaction status field. type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: description: Unstructured remittance information example: Ref Number Merchant type: string maxLength: 140 startDate: description: The first applicable day of execution starting from this date is the first payment. type: string format: date endDate: description: |- The last applicable day of execution If not given, it is an infinite standing order. type: string format: date executionRule: $ref: '#/definitions/executionRule' frequency: $ref: '#/definitions/frequencyCode' dayOfExecution: $ref: '#/definitions/dayOfExecution' transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - instructedAmount - creditorAccount - creditorName - startDate - frequency periodicPaymentInitiationTarget2WithStatusResponse: title: periodicPaymentInitiationTarget2WithStatusResponse description: "JSON response body consistion of the corresponding periodic TARGET-2 payment initation JSON body together with \nan optional transaction status field." type: object properties: endToEndIdentification: type: string maxLength: 35 debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 startDate: description: The first applicable day of execution starting from this date is the first payment. type: string format: date endDate: description: |- The last applicable day of execution If not given, it is an infinite standing order. type: string format: date executionRule: $ref: '#/definitions/executionRule' frequency: $ref: '#/definitions/frequencyCode' dayOfExecution: $ref: '#/definitions/dayOfExecution' transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - instructedAmount - creditorAccount - creditorName - startDate - frequency periodicPaymentInitiationCrossBorderWithStatusResponse: title: periodicPaymentInitiationCrossBorderWithStatusResponse description: JSON response body consistion of the corresponding periodic cross-border payment initation JSON body together with an optional transaction status field. type: object properties: debtorAccount: $ref: '#/definitions/accountReference' instructedAmount: $ref: '#/definitions/amount' creditorAccount: $ref: '#/definitions/accountReference' creditorAgent: description: BICFI example: AAAADEBBXXX type: string pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}' creditorName: description: Creditor Name example: Creditor Name type: string maxLength: 70 creditorAddress: $ref: '#/definitions/address' remittanceInformationUnstructured: type: string maxLength: 140 startDate: description: The first applicable day of execution starting from this date is the first payment. type: string format: date endDate: description: |- The last applicable day of execution If not given, it is an infinite standing order. type: string format: date executionRule: $ref: '#/definitions/executionRule' frequency: $ref: '#/definitions/frequencyCode' dayOfExecution: $ref: '#/definitions/dayOfExecution' transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - instructedAmount - creditorAccount - creditorName - startDate - frequency bulkPaymentInitiationSctWithStatusResponse: title: bulkPaymentInitiationSctWithStatusResponse description: JSON response body consistion of the corresponding bulk SCT payment initation JSON body together with an optional transaction status field. type: object properties: batchBookingPreferred: description: "If this element equals 'true', the PSU prefers only one booking entry. \nIf this element equals 'false', the PSU prefers individual booking of all contained individual transactions. \n\nThe ASPSP will follow this preference according to contracts agreed on with the PSU." example: false type: boolean requestedExecutionDate: type: string format: date debtorAccount: $ref: '#/definitions/accountReference' payments: description: A list of JSON bodies for SCT payments. type: array items: $ref: '#/definitions/paymentInitiationSct_json' transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - payments bulkPaymentInitiationSctInstWithStatusResponse: title: bulkPaymentInitiationSctInstWithStatusResponse description: JSON response body consistion of the corresponding bulk SCT INST payment initation JSON body together with an optional transaction status field. type: object properties: batchBookingPreferred: description: "If this element equals 'true', the PSU prefers only one booking entry. \nIf this element equals 'false', the PSU prefers individual booking of all contained individual transactions. \n\nThe ASPSP will follow this preference according to contracts agreed on with the PSU." example: false type: boolean requestedExecutionDate: type: string format: date debtorAccount: $ref: '#/definitions/accountReference' payments: description: A list of JSON bodies for SCT INST payments. type: array items: $ref: '#/definitions/paymentInitiationSctInst_json' transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - payments bulkPaymentInitiationTarget2WithStatusResponse: title: bulkPaymentInitiationTarget2WithStatusResponse description: JSON response body consistion of the corresponding bulk TARGET-2 payment initation JSON body together with an optional transaction status field. type: object properties: batchBookingPreferred: description: "If this element equals 'true', the PSU prefers only one booking entry. \nIf this element equals 'false', the PSU prefers individual booking of all contained individual transactions. \n\nThe ASPSP will follow this preference according to contracts agreed on with the PSU." example: false type: boolean requestedExecutionDate: type: string format: date debtorAccount: $ref: '#/definitions/accountReference' payments: description: A list of JSON bodies for TARGET-2 payments. type: array items: $ref: '#/definitions/paymentInitiationTarget2_json' transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - payments bulkPaymentInitiationCrossBorderWithStatusResponse: title: bulkPaymentInitiationCrossBorderWithStatusResponse description: JSON response body consistion of the corresponding bulk cross-border payment initation JSON body together with an optional transaction status field. type: object properties: batchBookingPreferred: description: "If this element equals 'true', the PSU prefers only one booking entry. \nIf this element equals 'false', the PSU prefers individual booking of all contained individual transactions. \n\nThe ASPSP will follow this preference according to contracts agreed on with the PSU." example: false type: boolean requestedExecutionDate: type: string format: date debtorAccount: $ref: '#/definitions/accountReference' payments: description: A list of JSON bodies for cross-border payments. type: array items: $ref: '#/definitions/paymentInitiationCrossBorder_json' transactionStatus: $ref: '#/definitions/transactionStatus' required: - debtorAccount - payments scaStatusResponse: title: scaStatusResponse description: Body of the JSON response with SCA Status type: object properties: scaStatus: $ref: '#/definitions/scaStatus' startScaprocessResponse: title: startScaprocessResponse description: Body of the JSON response for a Start SCA authorisation request. type: object properties: scaStatus: $ref: '#/definitions/scaStatus' scaMethods: description: |- This data element might be contained, if SCA is required and if the PSU has a choice between different authentication methods. Depending on the risk management of the ASPSP this choice might be offered before or after the PSU has been identified with the first relevant factor, or if an access token is transported. If this data element is contained, then there is also an hyperlink of type 'startAuthorisationWithAuthenticationMethodSelection' contained in the response body. These methods shall be presented towards the PSU for selection by the TPP. type: array items: $ref: '#/definitions/authenticationObject' chosenScaMethod: $ref: '#/definitions/authenticationObject' challengeData: $ref: '#/definitions/challengeData' _links: $ref: '#/definitions/_linksStartScaProcess' psuMessage: description: Text to be displayed to the PSU type: string maxLength: 512 required: - scaStatus - _links updatePsuIdenticationResponse: title: updatePsuIdenticationResponse description: Body of the JSON response for a successful update PSU Identification request. type: object properties: _links: $ref: '#/definitions/_linksUpdatePsuIdentification' scaStatus: $ref: '#/definitions/scaStatus' psuMessage: description: Text to be displayed to the PSU type: string maxLength: 512 required: - _links - scaStatus updatePsuAuthenticationResponse: title: updatePsuAuthenticationResponse description: Body of the JSON response for a successful update PSU Authentication request. type: object properties: chosenScaMethod: $ref: '#/definitions/authenticationObject' challengeData: $ref: '#/definitions/challengeData' scaMethods: description: |- This data element might be contained, if SCA is required and if the PSU has a choice between different authentication methods. Depending on the risk management of the ASPSP this choice might be offered before or after the PSU has been identified with the first relevant factor, or if an access token is transported. If this data element is contained, then there is also an hyperlink of type 'startAuthorisationWithAuthenticationMethodSelection' contained in the response body. These methods shall be presented towards the PSU for selection by the TPP. type: array items: $ref: '#/definitions/authenticationObject' _links: $ref: '#/definitions/_linksUpdatePsuAuthentication' scaStatus: $ref: '#/definitions/scaStatus' psuMessage: description: Text to be displayed to the PSU type: string maxLength: 512 required: - scaStatus selectPsuAuthenticationMethodResponse: title: selectPsuAuthenticationMethodResponse description: Body of the JSON response for a successful select PSU Authentication Method request. type: object properties: chosenScaMethod: $ref: '#/definitions/authenticationObject' challengeData: $ref: '#/definitions/challengeData' _links: $ref: '#/definitions/_linksSelectPsuAuthenticationMethod' scaStatus: $ref: '#/definitions/scaStatus' psuMessage: description: Text to be displayed to the PSU type: string maxLength: 512 required: - scaStatus signingBasketResponse-200: title: signingBasketResponse-200 description: |- Body of the JSON response for a successful get signing basket request. * 'payments': payment initiations which shall be authorised through this signing basket. * 'consents': consent objects which shall be authorised through this signing basket. * 'transactionStatus': Only the codes RCVD, ACTC, RJCT are used. type: object properties: payments: description: A list of paymentIds type: array items: type: string minItems: 1 consents: description: A list of consentIds type: array items: type: string minItems: 1 transactionStatus: $ref: '#/definitions/transactionStatus' required: - transactionStatus signingBasketStatusResponse-200: title: signingBasketStatusResponse-200 type: object properties: transactionStatus: $ref: '#/definitions/transactionStatus_SB' required: - transactionStatus signingBasketResponse-201: title: signingBasketResponse-201 description: Body of the JSON response for a successful create signing basket request. type: object properties: transactionStatus: $ref: '#/definitions/transactionStatus' basketId: description: Resource identification of the generated signing basket resource. example: 1234-basket-567 type: string scaMethods: description: |- This data element might be contained, if SCA is required and if the PSU has a choice between different authentication methods. Depending on the risk management of the ASPSP this choice might be offered before or after the PSU has been identified with the first relevant factor, or if an access token is transported. If this data element is contained, then there is also an hyperlink of type 'startAuthorisationWithAuthenticationMethodSelection' contained in the response body. These methods shall be presented towards the PSU for selection by the TPP. type: array items: $ref: '#/definitions/authenticationObject' chosenScaMethod: $ref: '#/definitions/authenticationObject' challengeData: $ref: '#/definitions/challengeData' _links: $ref: '#/definitions/_linksSigningBasket' psuMessage: description: Text to be displayed to the PSU type: string maxLength: 512 tppMessages: type: array items: $ref: '#/definitions/tppMessage2XX' required: - transactionStatus - basketId - _links consentsResponse-201: title: consentsResponse-201 description: Body of the JSON response for a successful conset request. type: object properties: consentStatus: $ref: '#/definitions/consentStatus' consentId: description: ID of the corresponding consent object as returned by an Account Information Consent Request. type: string scaMethods: description: |- This data element might be contained, if SCA is required and if the PSU has a choice between different authentication methods. Depending on the risk management of the ASPSP this choice might be offered before or after the PSU has been identified with the first relevant factor, or if an access token is transported. If this data element is contained, then there is also an hyperlink of type 'startAuthorisationWithAuthenticationMethodSelection' contained in the response body. These methods shall be presented towards the PSU for selection by the TPP. type: array items: $ref: '#/definitions/authenticationObject' chosenScaMethod: $ref: '#/definitions/authenticationObject' challengeData: $ref: '#/definitions/challengeData' _links: $ref: '#/definitions/_linksConsents' message: description: Text to be displayed to the PSU, e.g. in a Decoupled SCA Approach. type: string maxLength: 512 required: - consentStatus - consentId - _links consentStatusResponse-200: title: consentStatusResponse-200 description: Body of the JSON response for a successful get status request for a consent. type: object properties: consentStatus: $ref: '#/definitions/consentStatus' required: - consentStatus consentInformationResponse-200_json: title: consentInformationResponse-200_json description: Body of the JSON response for a successfull get consent request. type: object properties: access: $ref: '#/definitions/accountAccess' recurringIndicator: description: |- "true", if the consent is for recurring access to the account data. "false", if the consent is for one access to the account data. example: false type: boolean validUntil: description: "This parameter is requesting a valid until date for the requested consent. \nThe content is the local ASPSP date in ISO-Date Format, e.g. 2017-10-30. \n\nFuture dates might get adjusted by ASPSP. \n\nIf a maximal available date is requested, a date in far future is to be used: \"9999-12-31\". \n\nIn both cases the consent object to be retrieved by the GET Consent Request will contain the adjusted date." example: "2020-12-31" type: string format: date frequencyPerDay: description: |- This field indicates the requested maximum frequency for an access without PSU involvement per day. For a one-off access, this attribute is set to "1". example: 4 type: integer format: int32 lastActionDate: description: "This date is containing the date of the last action on the consent object either through \nthe XS2A interface or the PSU/ASPSP interface having an impact on the status." example: "2018-07-01" type: string format: date consentStatus: $ref: '#/definitions/consentStatus' required: - access - recurringIndicator - validUntil - frequencyPerDay - lastActionDate - consentStatus readAccountBalanceResponse-200: title: readAccountBalanceResponse-200 description: Body of the response for a successful read balance for an account request. type: object properties: account: $ref: '#/definitions/accountReference' balances: description: |- A list of balances regarding this account, e.g. the current balance, the last booked balance. The list migght be restricted to the current ballance. type: array items: $ref: '#/definitions/balance' required: - balances readCardAccountBalanceResponse-200: title: readCardAccountBalanceResponse-200 description: Body of the response for a successful read balance for a card account request. type: object properties: cardAccount: $ref: '#/definitions/accountReference' balances: description: |- A list of balances regarding this account, e.g. the current balance, the last booked balance. The list migght be restricted to the current ballance. type: array items: $ref: '#/definitions/balance' required: - balances transactionsResponse-200_json: title: transactionsResponse-200_json description: |- Body of the JSON response for a successful read transaction list request. This account report contains transactions resulting from the query parameters. type: object properties: account: $ref: '#/definitions/accountReference' transactions: $ref: '#/definitions/accountReport' balances: description: |- A list of balances regarding this account, e.g. the current balance, the last booked balance. The list migght be restricted to the current ballance. type: array items: $ref: '#/definitions/balance' _links: $ref: '#/definitions/_linksDownload' cardAccountsTransactionsResponse200: title: cardAccountsTransactionsResponse200 description: |- Body of the JSON response for a successful read card account transaction list request. This card account report contains transactions resulting from the query parameters. type: object properties: cardAccount: $ref: '#/definitions/accountReference' cardTransactions: $ref: '#/definitions/cardAccountReport' balances: description: |- A list of balances regarding this account, e.g. the current balance, the last booked balance. The list migght be restricted to the current ballance. type: array items: $ref: '#/definitions/balance' _links: $ref: '#/definitions/_linksDownload' _linksAll: title: _linksAll description: A _link object with all availabel link types type: object properties: scaRedirect: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaOAuth: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisation: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuIdentification: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string updatePsuIdentification: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithProprietaryData: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string updateProprietaryData: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string updatePsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithEncryptedPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string updateEncryptedPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithAuthenticationMethodSelection: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string selectAuthenticationMethod: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithTransactionAuthorisation: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string authoriseTransaction: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string self: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string status: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaStatus: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string account: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string balances: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string transactions: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string transactionDetails: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string cardAccount: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string cardTransactions: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string first: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string next: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string previous: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string last: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string download: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string _linksPaymentInitiation: title: _linksPaymentInitiation description: "A list of hyperlinks to be recognised by the TPP.\nThe actual hyperlinks used in the response depend on the dynamical decisions of the ASPSP when\nprocessing the request.\n\n**Remark:** All links can be relative or full links, to be decided by the ASPSP.\n\nType of links admitted in this response, (further links might be added for ASPSP defined extensions):\n\n* 'scaRedirect': \n In case of an SCA Redirect Approach, the ASPSP is transmitting the link to which to redirect the PSU browser.\n* 'scaOAuth': \n In case of a SCA OAuth2 Approach, the ASPSP is transmitting the URI where the configuration of the Authorisation\n Server can be retrieved. The configuration follows the OAuth 2.0 Authorisation Server Metadata specification.\n* 'startAuthorisation': \n In case, where an explicit start of the transaction authorisation is needed, but no more data needs to be updated \n (no authentication method to be selected, no PSU identification nor PSU authentication data to be uploaded).\n* 'startAuthorisationWithPsuIdentification': \n The link to the authorisation end-point, where the authorisation sub-resource has to be generated while \n uploading the PSU identification data.\n* 'startAuthorisationWithPsuAuthentication': \n The link to the authorisation end-point, where the authorisation sub-resource has to be generated while \n uploading the PSU authentication data.\n * 'startAuthorisationWithEncryptedPsuAuthentication':\n \ Same as startAuthorisactionWithPsuAuthentication where the authentication data need to be encrypted on \n application layer in uploading.\n* 'startAuthorisationWithAuthenticationMethodSelection': \n The link to the authorisation end-point, where the authorisation sub-resource has to be generated while \n selecting the authentication method. \n This link is contained under exactly the same conditions as the data element \"scaMethods\"\n* 'startAuthorisationWithTransactionAuthorisation':\n The link to the authorisation end-point, where the authorisation sub-resource has to be generated while \n \ authorising the transaction e.g. by uploading an OTP received by SMS.\n* 'self': \n The link to the payment initiation resource created by this request.\n This link can be used to retrieve the resource data.\n* 'status': \n The link to retrieve the transaction status of the payment initiation.\n* 'scaStatus': \n \ The link to retrieve the scaStatus of the corresponding authorisation sub-resource. \n This link is only contained, if an authorisation sub-resource has been already created." example: scaRedirect: '{"href":"https://www.testbank.com/asdfasdfasdf"}' self: '{"href":"/v1/payments/sepa-credit-transfers/1234-wertiq-983"}' type: object properties: scaRedirect: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaOAuth: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisation: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuIdentification: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithEncryptedPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithAuthenticationMethodSelection: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithTransactionAuthorisation: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string self: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string status: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaStatus: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string _linksPaymentInitiationMultiLevelSca: title: _linksPaymentInitiationMultiLevelSca description: "Type of links admitted in this response, (further links might be added for ASPSP defined extensions):\n\n * 'startAuthorisation': \n In case, where an explicit start of the transaction authorisation is needed, but no more data needs to be updated (no authentication method to be selected, no PSU identification nor PSU authentication data to be uploaded).\n * 'startAuthorisationWithPsuIdentification': \n The link to the authorisation end-point, where the authorisation sub-resource has to be generated while uploading the PSU identification data.\n * 'startAuthorisationWithPsuAuthentication':\n \ The link to the authorisation end-point, where an authorisation sub-resource has to be generated while uploading the PSU authentication data.\n * 'startAuthorisationWithEncryptedPsuAuthentication':\n \ Same as startAuthorisactionWithPsuAuthentication where the authentication data need to be encrypted on \n application layer in uploading.\n * 'self': \n The link to the payment initiation resource created by this request. This link can be used to retrieve the resource data. \n * 'status': \n The link to retrieve the transaction status of the payment initiation." type: object properties: startAuthorisation: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuIdentification: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string self: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string status: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string _linksPaymentInitiationCancel: title: _linksPaymentInitiationCancel description: "A list of hyperlinks to be recognised by the TPP. The actual hyperlinks used in the response depend on the \ndynamical decisions of the ASPSP when processing the request.\n\nRemark: All links can be relative or full links, to be decided by the ASPSP.\n\nType of links admitted in this response, (further links might be added for ASPSP defined extensions):\n\n * 'startAuthorisation': \n In case, where just the authorisation process of the cancellation needs to be started, \n but no additional data needs to be updated for time being (no authentication method to be selected, \n no PSU identification nor PSU authentication data to be uploaded).\n * 'startAuthorisationWithPsuIdentification': \n In case where a PSU Identification needs to be updated when starting the cancellation authorisation: \n The link to the cancellation-authorisations end-point, where the cancellation sub-resource has to be \n generated while uploading the PSU identification data.\n * 'startAuthorisationWithPsuAuthentication': \n In case of a yet to be created authorisation sub-resource: The link to the cancalation authorisation end-point, \n where the authorisation sub-resource has to be generated while uploading the PSU authentication data.\n * 'startAuthorisationWithEncryptedPsuAuthentication':\n \ Same as startAuthorisactionWithPsuAuthentication where the authentication data need to be encrypted on \n application layer in uploading.\n * 'startAuthorisationWithAuthenticationMethodSelection':\n \ The link to the authorisation end-point, where the cancellation-authorisation sub-resource has to be \n generated while selecting the authentication method. This link is contained under exactly the same \n conditions as the data element 'scaMethods'" type: object properties: startAuthorisation: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuIdentification: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithEncryptedPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithAuthenticationMethodSelection: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string _linksUpdatePsuIdentification: title: _linksUpdatePsuIdentification description: "A list of hyperlinks to be recognised by the TPP. The actual hyperlinks used in the response depend on the dynamical decisions of the ASPSP when processing the request.\n\n**Remark:** All links can be relative or full links, to be decided by the ASPSP.\n\nType of links admitted in this response, (further links might be added for ASPSP \ndefined extensions):\n\n- 'scaStatus': The link to retrieve the scaStatus of the corresponding authorisation sub-resource." type: object properties: scaStatus: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string _linksUpdatePsuAuthentication: title: _linksUpdatePsuAuthentication description: "A list of hyperlinks to be recognised by the TPP. Might be contained, if several authentication methods \nare available for the PSU.\nType of links admitted in this response:\n * 'selectAuthenticationMethod': \n This is a link to a resource, where the TPP can select the applicable second factor authentication \n methods for the PSU, if there were several available authentication methods. \n This link is only contained, if the PSU is already identified or authenticated with the first relevant \n factor or alternatively an access token, if SCA is required and if the PSU has a choice between different \n authentication methods. \n If this link is contained, then there is also the data element 'scaMethods' contained in the response body.\n * 'authoriseTransaction': \n \ The link to the resource, where the \"Transaction Authorisation Request\" is sent to. \n This is the link to the resource which will authorise the transaction by checking the SCA authentication \n data within the Embedded SCA approach.\n * 'scaStatus': \n The link to retrieve the scaStatus of the corresponding authorisation sub-resource." type: object properties: selectAuthenticationMethod: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string authoriseTransaction: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaStatus: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string _linksSelectPsuAuthenticationMethod: title: _linksSelectPsuAuthenticationMethod description: "A list of hyperlinks to be recognised by the TPP. The actual hyperlinks used in \nthe response depend on the dynamical decisions of the ASPSP when processing the request.\n\n**Remark:** All links can be relative or full links, to be decided by the ASPSP. \n\n**Remark:** This method can be applied before or after PSU identification. \nThis leads to many possible hyperlink responses.\nType of links admitted in this response, (further links might be added for ASPSP defined \nextensions):\n\n- \"scaRedirect\": \n In case of an SCA Redirect Approach, the ASPSP is transmitting the link to which to \n redirect the PSU browser.\n- \"scaOAuth\": \n In case of a SCA OAuth2 Approach, the ASPSP is transmitting the URI where the \n configuration of the Authorisation Server can be retrieved. \n The configuration follows the OAuth 2.0 Authorisation Server Metadata specification.\n- \"updatePsuIdentification\": \n The link to the authorisation or cancellation authorisation sub-resource, \n where PSU identification data needs to be uploaded.\n- \"updatePsuAuthentication\":\n The link to the authorisation or cancellation authorisation sub-resource, \n where PSU authentication data needs to be uploaded.\n\"authoriseTransaction\":\n \ The link to the authorisation or cancellation authorisation sub-resource, \n where the authorisation data has to be uploaded, e.g. the TOP received by SMS. \n\"scaStatus\": \n The link to retrieve the scaStatus of the corresponding authorisation sub-resource." type: object properties: scaRedirect: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaOAuth: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string updatePsuIdentification: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string updatePsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string authoriseTransaction: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaStatus: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string _linksStartScaProcess: title: _linksStartScaProcess description: "A list of hyperlinks to be recognised by the TPP. The actual hyperlinks used in the \nresponse depend on the dynamical decisions of the ASPSP when processing the request.\n\n**Remark:** All links can be relative or full links, to be decided by the ASPSP.\n\nType of links admitted in this response, (further links might be added for ASPSP defined \nextensions):\n\n- 'scaRedirect': \n In case of an SCA Redirect Approach, the ASPSP is transmitting the link to which to \n \ redirect the PSU browser.\n- 'scaOAuth': \n In case of a SCA OAuth2 Approach, the ASPSP is transmitting the URI where the configuration of the Authorisation Server can be retrieved. The configuration follows the OAuth 2.0 Authorisation Server Metadata specification.\n- 'updatePsuIdentification': \n The link to the authorisation or cancellation authorisation sub-resource, \n where PSU identification data needs to be uploaded.\n- 'startAuthorisationWithPsuAuthentication':\n \ The link to the authorisation or cancellation authorisation sub-resource, \n where PSU authentication data needs to be uploaded.\n * 'startAuthorisationWithEncryptedPsuAuthentication':\n \ Same as startAuthorisactionWithPsuAuthentication where the authentication data need to be encrypted on \n application layer in uploading.\n- 'selectAuthenticationMethod':\n \ The link to the authorisation or cancellation authorisation sub-resource, \n where the selected authentication method needs to be uploaded. \n This link is contained under exactly the same conditions as the data element 'scaMethods'.\n- 'authoriseTransaction':\n The link to the authorisation or cancellation authorisation sub-resource, \n where the authorisation data has to be uploaded, e.g. the TOP received by SMS. \n- 'scaStatus': \n The link to retrieve the scaStatus of the corresponding authorisation sub-resource." type: object properties: scaRedirect: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaOAuth: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string updatePsuIdentification: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithEncryptedPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string selectAuthenticationMethod: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string authoriseTransaction: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaStatus: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string _linksDownload: title: _linksDownload description: "A list of hyperlinks to be recognised by the TPP.\n\nType of links admitted in this response:\n - \"download\": a link to a resource, where the transaction report might be downloaded from in \n case where transaction reports have a huge size.\n\nRemark: This feature shall only be used where camt-data is requested which has a huge size." type: object properties: download: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string required: - download _linksConsents: title: _linksConsents description: "A list of hyperlinks to be recognised by the TPP.\n\nType of links admitted in this response (which might be extended by single ASPSPs as indicated in its XS2A \ndocumentation):\n - 'scaRedirect': \n In case of an SCA Redirect Approach, the ASPSP is transmitting the link to which to redirect the \n PSU browser.\n - 'scaOAuth': \n In case of an OAuth2 based Redirect Approach, the ASPSP is transmitting the link where the configuration \n of the OAuth2 Server is defined. \n The configuration follows the OAuth 2.0 Authorisation Server Metadata specification. \n - 'startAuthorisation': \n In case, where an explicit start of the transaction authorisation is needed, \n but no more data needs to be updated (no authentication method to be selected, \n no PSU identification nor PSU authentication data to be uploaded).\n - 'startAuthorisationWithPsuIdentification': \n The link to the authorisation end-point, where the authorisation sub-resource has to be generated \n while uploading the PSU identification data.\n - 'startAuthorisationWithPsuAuthentication':\n The link to the authorisation end-point, where the authorisation sub-resource has to be generated \n while uploading the PSU authentication data.\n * 'startAuthorisationWithEncryptedPsuAuthentication':\n \ Same as startAuthorisactionWithPsuAuthentication where the authentication data need to be encrypted on \n application layer in uploading.\n - 'startAuthorisationWithAuthenticationMethodSelection':\n \ The link to the authorisation end-point, where the authorisation sub-resource has to be generated \n while selecting the authentication method. This link is contained under exactly the same conditions \n as the data element 'scaMethods' \n - 'startAuthorisationWithTransactionAuthorisation':\n The link to the authorisation end-point, where the authorisation sub-resource has to be generated \n while authorising the transaction e.g. by uploading an OTP received by SMS.\n - 'self': \n The link to the Establish Account Information Consent resource created by this request. \n This link can be used to retrieve the resource data. \n - 'status': \n The link to retrieve the status of the account information consent.\n - 'scaStatus': The link to retrieve the scaStatus of the corresponding authorisation sub-resource. \n This link is only contained, if an authorisation sub-resource has been already created." type: object properties: scaRedirect: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaOAuth: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisation: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuIdentification: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithEncryptedPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithAuthenticationMethodSelection: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithTransactionAuthorisation: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string self: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string status: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaStatus: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string _linksSigningBasket: title: _linksSigningBasket description: "A list of hyperlinks to be recognised by the TPP. The actual hyperlinks used in the \nresponse depend on the dynamical decisions of the ASPSP when processing the request.\n\nRemark: All links can be relative or full links, to be decided by the ASPSP.\nType of links admitted in this response, (further links might be added for ASPSP defined \nextensions):\n\n * 'scaRedirect': \n In case of an SCA Redirect Approach, the ASPSP is transmitting the link to \n which to redirect the PSU browser.\n * 'scaOAuth': \n In case of a SCA OAuth2 Approach, the ASPSP is transmitting the URI where the configuration of \n the Authorisation Server can be retrieved. The configuration follows the \n OAuth 2.0 Authorisation Server Metadata specification.\n * 'startAuthorisation': \n In case, where an explicit start of the transaction authorisation is needed, \n but no more data needs to be updated (no authentication method to be selected, \n no PSU identification nor PSU authentication data to be uploaded).\n * 'startAuthorisationWithPsuIdentification': \n The link to the authorisation end-point, where the authorisation sub-resource \n has to be generated while uploading the PSU identification data.\n * 'startAuthorisationWithPsuAuthentication':\n \ The link to the authorisation end-point, where the authorisation sub-resource \n has to be generated while uploading the PSU authentication data.\n * 'startAuthorisationWithEncryptedPsuAuthentication':\n The link to the authorisation end-point, where the authorisation sub-resource has \n to be generated while uploading the encrypted PSU authentication data.\n * 'startAuthorisationWithAuthenticationMethodSelection':\n \ The link to the authorisation end-point, where the authorisation sub-resource \n has to be generated while selecting the authentication method. \n This link is contained under exactly the same conditions as the data element 'scaMethods' \n * 'startAuthorisationWithTransactionAuthorisation':\n The link to the authorisation end-point, where the authorisation sub-resource \n has to be generated while authorising the transaction e.g. by uploading an \n OTP received by SMS.\n * 'self': \n The link to the payment initiation resource created by this request. \n This link can be used to retrieve the resource data. \n * 'status': \n The link to retrieve the transaction status of the payment initiation.\n * 'scaStatus': \n The link to retrieve the scaStatus of the corresponding authorisation sub-resource. \n This link is only contained, if an authorisation sub-resource has been already created." type: object properties: scaRedirect: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaOAuth: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisation: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuIdentification: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithEncryptedPsuAuthentication: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithAuthenticationMethodSelection: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string startAuthorisationWithTransactionAuthorisation: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string self: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string status: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string scaStatus: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string _linksAccountReport: title: _linksAccountReport type: object properties: account: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string first: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string next: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string previous: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string last: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string required: - account _linksCardAccountReport: title: _linksCardAccountReport type: object properties: cardAccount: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string first: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string next: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string previous: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string last: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string required: - cardAccount _linksTransactionDetails: title: _linksTransactionDetails type: object properties: transactionDetails: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string required: - transactionDetails _linksAccountDetails: title: _linksAccountDetails description: |- Links to the account, which can be directly used for retrieving account information from this dedicated account. Links to "balances" and/or "transactions" These links are only supported, when the corresponding consent has been already granted. type: object properties: balances: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string transactions: description: Link to a resource example: /v1/payments/sepa-credit-transfers/1234-wertiq-983 type: string tppMessageCategory: title: tppMessageCategory description: Category of the TPP message category example: ERROR type: string enum: - ERROR - WARNING MessageCode2XX: title: MessageCode2XX description: Message codes for HTTP Error codes 2XX. example: WARNING type: string enum: - WARNING MessageCode400_PIS: title: MessageCode400_PIS description: Message codes defined for PIS for HTTP Error code 400 (BAD_REQUEST). example: FORMAT_ERROR type: string enum: - FORMAT_ERROR - PARAMETER_NOT_CONSISTENT - PARAMETER_NOT_SUPPORTED - SERVICE_INVALID - RESOURCE_UNKNOWN - RESOURCE_EXPIRED - RESOURCE_BLOCKED - TIMESTAMP_INVALID - PERIOD_INVALID - SCA_METHOD_UNKNOWN - CONSENT_UNKNOWN - PAYMENT_FAILED - EXECUTION_DATE_INVALID MessageCode401_PIS: title: MessageCode401_PIS description: Message codes defined for PIS for HTTP Error code 401 (UNAUTHORIZED). example: CERTIFICATE_INVALID type: string enum: - CERTIFICATE_INVALID - CERTIFICATE_EXPIRED - CERTIFICATE_BLOCKED - CERTIFICATE_REVOKE - CERTIFICATE_MISSING - SIGNATURE_INVALID - SIGNATURE_MISSING - CORPORATE_ID_INVALID - PSU_CREDENTIALS_INVALID - CONSENT_INVALID - CONSENT_EXPIRED - TOKEN_UNKNOWN - TOKEN_INVALID - TOKEN_EXPIRED - REQUIRED_KID_MISSING MessageCode403_PIS: title: MessageCode403_PIS description: Message codes defined defined for PIS for PIS for HTTP Error code 403 (FORBIDDEN). example: CONSENT_UNKNOWN type: string enum: - CONSENT_UNKNOWN - SERVICE_BLOCKED - RESOURCE_UNKNOWN - RESOURCE_EXPIRED - PRODUCT_INVALID MessageCode404_PIS: title: MessageCode404_PIS description: Message codes defined for PIS for HTTP Error code 404 (NOT FOUND). example: RESOURCE_UNKNOWN type: string enum: - RESOURCE_UNKNOWN - PRODUCT_UNKNOWN MessageCode405_PIS: title: MessageCode405_PIS description: Message codes defined for payment cancelations PIS for HTTP Error code 405 (METHOD NOT ALLOWED). example: SERVICE_INVALID type: string enum: - SERVICE_INVALID MessageCode405_PIS_CANC: title: MessageCode405_PIS_CANC description: Message codes defined for payment cancelations PIS for HTTP Error code 405 (METHOD NOT ALLOWED). example: CANCELLATION_INVALID type: string enum: - CANCELLATION_INVALID - SERVICE_INVALID MessageCode409_PIS: title: MessageCode409_PIS description: Message codes defined for PIS for HTTP Error code 409 (CONFLICT). example: STATUS_INVALID type: string enum: - STATUS_INVALID tppMessage2XX: title: tppMessage2XX type: object properties: category: $ref: '#/definitions/tppMessageCategory' code: description: Message codes for HTTP Error codes 2XX. example: WARNING type: string default: WARNING path: type: string text: description: Additional explaining text to the TPP. type: string maxLength: 512 required: - category - code tppMessage400_PIS: title: tppMessage400_PIS type: object properties: category: $ref: '#/definitions/tppMessageCategory' code: $ref: '#/definitions/MessageCode400_PIS' path: type: string text: description: Additional explaining text to the TPP. type: string maxLength: 512 required: - category - code tppMessage401_PIS: title: tppMessage401_PIS type: object properties: category: $ref: '#/definitions/tppMessageCategory' code: $ref: '#/definitions/MessageCode401_PIS' path: type: string text: description: Additional explaining text to the TPP. type: string maxLength: 512 required: - category - code tppMessage403_PIS: title: tppMessage403_PIS type: object properties: category: $ref: '#/definitions/tppMessageCategory' code: $ref: '#/definitions/MessageCode403_PIS' path: type: string text: description: Additional explaining text to the TPP. type: string maxLength: 512 required: - category - code tppMessage404_PIS: title: tppMessage404_PIS type: object properties: category: $ref: '#/definitions/tppMessageCategory' code: $ref: '#/definitions/MessageCode404_PIS' path: type: string text: description: Additional explaining text to the TPP. type: string maxLength: 512 required: - category - code tppMessage405_PIS: title: tppMessage405_PIS type: object properties: category: $ref: '#/definitions/tppMessageCategory' code: description: Message codes defined for payment cancelations PIS for HTTP Error code 405 (METHOD NOT ALLOWED). example: SERVICE_INVALID type: string default: SERVICE_INVALID path: type: string text: description: Additional explaining text to the TPP. type: string maxLength: 512 required: - category - code tppMessage405_PIS_CANC: title: tppMessage405_PIS_CANC type: object properties: category: $ref: '#/definitions/tppMessageCategory' code: $ref: '#/definitions/MessageCode405_PIS_CANC' path: type: string text: description: Additional explaining text to the TPP. type: string maxLength: 512 required: - category - code tppMessage409_PIS: title: tppMessage409_PIS type: object properties: category: $ref: '#/definitions/tppMessageCategory' code: description: Message codes defined for PIS for HTTP Error code 409 (CONFLICT). example: STATUS_INVALID type: string default: STATUS_INVALID path: type: string text: description: Additional explaining text to the TPP. type: string maxLength: 512 required: - category - code Error400_PIS: title: Error400_PIS description: "Standardised definition of reporting error information according to [RFC7807] \nin case of a HTTP error code 400 for PIS." type: object properties: type: description: "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future." type: string maxLength: 70 title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: $ref: '#/definitions/MessageCode400_PIS' additionalErrors: description: |- Array of Error Information Blocks. Might be used if more than one error is to be communicated type: array items: $ref: '#/definitions/AdditionalError' _links: $ref: '#/definitions/_linksAll' required: - type - code Error401_PIS: title: Error401_PIS description: "Standardised definition of reporting error information according to [RFC7807] \nin case of a HTTP error code 401 for PIS." type: object properties: type: description: "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future." type: string maxLength: 70 title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: $ref: '#/definitions/MessageCode401_PIS' additionalErrors: description: |- Array of Error Information Blocks. Might be used if more than one error is to be communicated type: array items: $ref: '#/definitions/AdditionalError4' _links: $ref: '#/definitions/_linksAll' required: - type - code Error403_PIS: title: Error403_PIS description: "Standardised definition of reporting error information according to [RFC7807] \nin case of a HTTP error code 403 for PIS." type: object properties: type: description: "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future." type: string maxLength: 70 title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: $ref: '#/definitions/MessageCode403_PIS' additionalErrors: description: |- Array of Error Information Blocks. Might be used if more than one error is to be communicated type: array items: $ref: '#/definitions/AdditionalError8' _links: $ref: '#/definitions/_linksAll' required: - type - code Error404_PIS: title: Error404_PIS description: "Standardised definition of reporting error information according to [RFC7807] \nin case of a HTTP error code 404 for PIS." type: object properties: type: description: "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future." type: string maxLength: 70 title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: $ref: '#/definitions/MessageCode404_PIS' additionalErrors: description: |- Array of Error Information Blocks. Might be used if more than one error is to be communicated type: array items: $ref: '#/definitions/AdditionalError12' _links: $ref: '#/definitions/_linksAll' required: - type - code Error405_PIS: title: Error405_PIS description: "Standardised definition of reporting error information according to [RFC7807] \nin case of a HTTP error code 405 for PIS." type: object properties: type: description: "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future." type: string maxLength: 70 title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: description: Message codes defined for payment cancelations PIS for HTTP Error code 405 (METHOD NOT ALLOWED). example: SERVICE_INVALID type: string default: SERVICE_INVALID additionalErrors: description: |- Array of Error Information Blocks. Might be used if more than one error is to be communicated type: array items: $ref: '#/definitions/AdditionalError16' _links: $ref: '#/definitions/_linksAll' required: - type - code Error405_PIS_CANC: title: Error405_PIS_CANC description: "Standardised definition of reporting error information according to [RFC7807] \nin case of a HTTP error code 405 for a pament cancelation (PIS)." type: object properties: type: description: "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future." type: string maxLength: 70 title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: $ref: '#/definitions/MessageCode405_PIS_CANC' additionalErrors: description: |- Array of Error Information Blocks. Might be used if more than one error is to be communicated type: array items: $ref: '#/definitions/AdditionalError17' _links: $ref: '#/definitions/_linksAll' required: - type - code Error409_PIS: title: Error409_PIS description: "Standardised definition of reporting error information according to [RFC7807] \nin case of a HTTP error code 409 for PIS." type: object properties: type: description: "A URI reference [RFC3986] that identifies the problem type. \nRemark For Future: These URI will be provided by NextGenPSD2 in future." type: string maxLength: 70 title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: description: Message codes defined for PIS for HTTP Error code 409 (CONFLICT). example: STATUS_INVALID type: string default: STATUS_INVALID additionalErrors: description: |- Array of Error Information Blocks. Might be used if more than one error is to be communicated type: array items: $ref: '#/definitions/AdditionalError22' _links: $ref: '#/definitions/_linksAll' required: - type - code Error400_NG_PIS: title: Error400_NG_PIS description: | NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 400. type: object properties: tppMessages: type: array items: $ref: '#/definitions/tppMessage400_PIS' _links: $ref: '#/definitions/_linksAll' Error401_NG_PIS: title: Error401_NG_PIS description: | NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401. type: object properties: tppMessages: type: array items: $ref: '#/definitions/tppMessage401_PIS' _links: $ref: '#/definitions/_linksAll' Error403_NG_PIS: title: Error403_NG_PIS description: | NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 403. type: object properties: tppMessages: type: array items: $ref: '#/definitions/tppMessage403_PIS' _links: $ref: '#/definitions/_linksAll' Error404_NG_PIS: title: Error404_NG_PIS description: | NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 404. type: object properties: tppMessages: type: array items: $ref: '#/definitions/tppMessage404_PIS' _links: $ref: '#/definitions/_linksAll' Error405_NG_PIS: title: Error405_NG_PIS description: | NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401. type: object properties: tppMessages: type: array items: $ref: '#/definitions/tppMessage405_PIS' _links: $ref: '#/definitions/_linksAll' Error405_NG_PIS_CANC: title: Error405_NG_PIS_CANC description: | NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 401. type: object properties: tppMessages: type: array items: $ref: '#/definitions/tppMessage405_PIS_CANC' _links: $ref: '#/definitions/_linksAll' Error409_NG_PIS: title: Error409_NG_PIS description: NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 409. type: object properties: tppMessages: type: array items: $ref: '#/definitions/tppMessage409_PIS' _links: $ref: '#/definitions/_linksAll' AdditionalError: title: AdditionalError description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. type: object properties: title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: $ref: '#/definitions/MessageCode400_PIS' required: - code AdditionalError4: title: AdditionalError4 description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. type: object properties: title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: $ref: '#/definitions/MessageCode401_PIS' required: - code AdditionalError8: title: AdditionalError8 description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. type: object properties: title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: $ref: '#/definitions/MessageCode403_PIS' required: - code AdditionalError12: title: AdditionalError12 description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. type: object properties: title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: $ref: '#/definitions/MessageCode404_PIS' required: - code AdditionalError16: title: AdditionalError16 description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. type: object properties: title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: description: Message codes defined for payment cancelations PIS for HTTP Error code 405 (METHOD NOT ALLOWED). example: SERVICE_INVALID type: string default: SERVICE_INVALID required: - code AdditionalError17: title: AdditionalError17 description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. type: object properties: title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: $ref: '#/definitions/MessageCode405_PIS_CANC' required: - code AdditionalError22: title: AdditionalError22 description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. type: object properties: title: description: "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs." type: string maxLength: 70 detail: description: "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath." type: string maxLength: 512 code: description: Message codes defined for PIS for HTTP Error code 409 (CONFLICT). example: STATUS_INVALID type: string default: STATUS_INVALID required: - code AllPsd2: title: AllPsd2 description: |- Optional if supported by API provider. Only the value "allAccounts" is admitted. example: allAccounts type: string enum: - allAccounts AvailableAccounts: title: AvailableAccounts description: |- Optional if supported by API provider. Only the values "allAccounts" or "allAccountsWithBalances" is admitted. example: allAccounts type: string enum: - allAccounts - allAccountsWithBalances bookingStatus: title: bookingStatus example: booked type: string enum: - booked - pending - both OtpFormat: title: OtpFormat description: The format type of the OTP to be typed in. The admitted values are "characters" or "integer". example: characters type: string enum: - characters - integer payment-product: title: payment-product example: sepa-credit-transfers type: string enum: - sepa-credit-transfers - instant-sepa-credit-transfers - target-2-payments - cross-border-credit-transfers - pain.001-sepa-credit-transfers - pain.001-instant-sepa-credit-transfers - pain.001-target-2-payments - pain.001-cross-border-credit-transfers payment-service: title: payment-service example: payments type: string enum: - payments - bulk-payments - periodic-payments PSU-Http-Method: title: PSU-Http-Method example: GET type: string enum: - GET - POST - PUT - PATCH - DELETE TPP-Explicit-Authorisation-Preferred: title: TPP-Explicit-Authorisation-Preferred example: "true" type: string enum: - "true" - "false" TPP-Redirect-Preferred: title: TPP-Redirect-Preferred example: "true" type: string enum: - "true" - "false" Usage: title: Usage description: |- Specifies the usage of the account * PRIV: private personal account * ORGA: professional account example: PRIV type: string enum: - PRIV - ORGA V1FundsConfirmationsResponse: title: V1FundsConfirmationsResponse description: "Equals \"true\" if sufficient funds are available at the time of the request, \n\"false\" otherwise." type: object properties: fundsAvailable: type: boolean required: - fundsAvailable tags: - name: Payment Initiation Service (PIS) description: | The Decription for Payment Initiation Service (PIS) offers the following services: * Initiation and update of a payment request * Status information of a payment externalDocs: url: https://www.berlin-group.org/nextgenpsd2-downloads description: | Full Documentation of NextGenPSD2 Access to Account Interoperability Framework (General Introduction Paper, Operational Rules, Implementation Guidelines) x-ibm-configuration: enforced: true testable: true phase: realized security: - client_secret: [] client_id: [] securityDefinitions: client_secret: type: apiKey description: "" in: header name: X-IBM-Client-Secret client_id: type: apiKey description: "" in: header name: X-IBM-Client-Id x-ibm-endpoints: - endpointUrl: https://api.eu-gb.apiconnect.appdomain.cloud/devcrowdpolicycom-dev/sb type: - production - development ...