OpenFinance
Development Portal

openFinance API Framework XS2A API as PSD2 Interface Implementation Guidelines - Extended Payment Initiation Service (2.1)

The Berlin Group - A European Standards Initiative | info@: info@berlin-group.org | URL: https://www.berlin-group.org/

License: Creative Commons Attribution 4.0 International Public License

The specific function in the Extended Payment Initiation Services is to make the initiation phase more flexible, i.e. * separate authorisation and actual initiation processes as well as * unbundle risk management functionality from the actual payment initiation, but already apply e.g. limit and balance checks during the authorisation and hence * potentially secure the future payment initiation in addition.

Get transaction status

GET /v2/{extended-payment-service5}/{payment-product}/{paymentId}/status

Can check the status of a payment authorisation for deferred or recurring payments, resp. payment initiation in the case of secured-payments.

Parameter Type Description
extended-payment-service5 string , required

Extended Payment Initiation Service. The default list is: * secured-payments XFPIS, * deferred-payments for XDPIS, * secured-deferred-payments for XDFPIS, * multiple-deferred-payments for XMDPIS, * secured-multiple-deferred-payments for XMDFPIS * recurring-payments for XRPIS * secured-recurring-payments for XRFPIS and * multiple-recurring-payments for XMRPIS

Allowed values: secured-payments, deferred-payments, secured-deferred-payments, multiple-deferred-payments, secured-multiple-deferred-payments, recurring-payments, secured-recurring-payments, multiple-recurring-payments

Example: multiple-recurring-payments

payment-product string , required

The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT). The ASPSP will publish which of the payment products/endpoints will be supported. The following payment products are supported: - For request bodies with JSON encoding: -- sepa-credit-transfers -- micro-sepa-credit-transfers -- instant-sepa-credit-transfers -- target-2-payments -- cross-border-credit-transfers The ASPSP will publish which of the payment products/endpoints will be supported. For definitions of basic non euro generic products see [oFA PFDom]. Further products might be published by the ASPSP within its XS2A documentation. These new product types will end in further endpoints of the XS2A Interface.

Allowed values: sepa-credit-transfers, micro-sepa-credit-transfers, instant-sepa-credit-transfers, target-2-payments, cross-border-credit-transfers

Example: sepa-credit-transfers

paymentId string , required

Resource identification of the related payment.

Example: fe7552ee-0728-4bd1-baf7-94942331e478

Allowed length: max: 70

Header Type Description
Digest string , optional

Integrity hash of the request body in the form SHA-256=<base64>. For an empty body, use the hash of an empty string. See Signing requests for how the Digest and signature are built.

Example: SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A=

x-jws-signature string , optional

Detached JSON Web Signature over the signed request headers and body. See Signing requests for how it is constructed.

X-Request-ID string , required

Unique ID of the request, set by the initiating party and echoed back in the response.

Example: 99391c7e-ad88-49ec-a2ad-99ddcb1f7721

Format: uuid

Select a status code to see the structure and an example of the response.

Field Type Description
psuMessage string , optional
reasonCode string , optional

Additional information on the reason for e.g. rejecting the request

Allowed values: AM04, AM21, BEXX, CN01, DS0C, DS0D, DS0A, DS04, FOCR, SL11, TKSP, TKXP, AM02, DT05, AC05, AC06, DS0K, DT01, UPAY, EOL1

apiClientMessages array[object] , optional

Errors and warnings describing why the request failed. See Errors for the message format.

reasonProprietary string , optional

Proprietary additional information on the reason for e.g. rejecting the request. Remark: If an ISO Code is available it should be used instead of Proprietary Reasons. Further restrictions could be defined by API Access Schemes.

transactionStatus string , required

Status after successful authorisation is for deferred payments the following * ACFC in case of a funds authorisation * ACSP in case of a funds reservation Status after successful authorisation is for recurring payments the following * ACTC Remark: If the PSU does not complete a required SCA within the required timeframe the payment resource's status must be set to "RJCT". Particularly, if a multi-level-SCA is required and the number of successful SCAs during the required timeframe is insufficient, the status must also be set to "RJCT".

Allowed values: ACCC, ACCP, ACSC, ACSP, ACTC, ACWC, ACWP, RCVD, PDNG, RJCT, CANC, ACFC, PATC, PART, PRES, RVCM, RVNC, RCVC

remainingAuthorisedAmount object , optional

After successful authorisation and only in case of multiple deferred payments or multiple recurring payments. This attribute is showing the maximum amount which can still be initiated on this resource by multiple deferred payments initiations or during the current execution period by multiple recurring payment initiations.

_links object , optional

Should refer to next steps if a potential situation blocking the finalisation of the payment can be resolved via the interface e.g. for re-submission of credentials.