Get Transactions History
Using this service, you can get the transactions history data on a payment account authorized by the customer.
The transactions returned are covering a 62-day history period from the current request date (aligned on online banking history).
This service follows the return of the list of current accounts for a customer : a resource identifier corresponding to an account must be provided to obtain the list of transactions.
Access to this method is limited to a maximum of 4 batch per day for one given TPP and PSU (except if the customer PSU is connected).
Prerequisites
The TPP has previously retrieved the list of available accounts for the PSU :
Customer's IBAN should have been forwarded to ASPSP in the "transactions" list of the PUT /consents method (see use case "Forward customer's consent")
The "accountResourceId" is sent in the GET /accounts response / field "resourceId" for this IBAN
URI or accessing this method is given using the field "_links": {"transactions": {"href": ...}} as a response of the GET /accounts using above "AccountresourceId"
Request
"get /accounts/{accountResourceId}/transactions"
See also STET V1.4.0.47 / Part II / section 4.1.4 / page 5
Mandated Parameter
"accountResourceId" : current account for which you want to retrieve transactions history.
This field corresponds to the field "resourceId" obtained in the get/accounts request result page.
Optional parameters
- dateFrom : start date for the sought transactions
- dateTo : end date for the sought transactions
- afterEntryReference : minimum value for the incremental technical identification
The date format for dateFrom et dateTo is based on ISO 8601 standards with the three following allowed formats :
- YYYY-MM-DDTHH:MM:SS.SSS
- YYYY-MM-DDTHH:MM:SS.SSS+HHMM
- YYYY-MM-DDTHH:MM:SS.SSS+HH:MM
Data Returned
As a reminder :
« BOOK » means the transaction was booked and affects the closing booked balance (status used by this API)
« PDNG » means the transaction is about to be booked and does not affect the closing booked balance (status NOT used by this API)
« OTHR » means the transaction is not booked and does not affect the closing booked balance or the instant balance (status used by this API)
In addition to mandatory data returned, the optional STET data "entryReference" has been added for all transactions knowing that it is :
unique value in differed debit transaction life cycle (*)
identical value before & after transaction settlement (from status "OTHR" to "BOOK")
inserted for the following banking operations only :
- differed fund transfer (SEPA SCT Core)
direct debit
differed debit card
(*) Note 1 : except for all schedules of a standing order (considered as one transaction overall)
Note 2 : other types of operations (e. g. Paylib) have this data only for "BOOK" status., except for those rejected
The "entryReference" format is different depending on the type of operations :
type | length | example |
differed fund transfer | 25 char | 1310400000123480007081059 |
direct debit | 30 char | 131040000012342014185G10004997 |
differed debit card | 40 char | 1310400000123420140720170000234978987654 |
other operations | 40 char | 131040000012342021-02-08-09.33.46.621234 |
Example
You can find an example of this request in section "Test our API" and then "Use our sandbox".
See also STET V1.4.0.47 / Part III / section 5.4 / page 9
Acceptance tests
The purpose of these tests is to ensure that the API complies with the STET standard. They should be validated before any application deployment.
Expected Scope = aisp otherwise specified.
Test description | Nature of the test | Data set and Expected Result |
Retrieve all the transactions linked to a PSU's account => Check the presence of transactions | Mandatory | Persona : GEORGES Result : return of the current account transaction history |
Retrieve transactions linked to an unknown account =>HTTP code 404 is returned : {accountId} is invalid | Mandatory | Persona : LEA Result : HTTP code 404 is returned |
HTTP request with an access token which is not authorized to access to this resource (incorrect scope = pisp) => Check that HTTP code 403 is returned - access to resource not allowed | Mandatory | Persona : LEA Result : HTTP code 403 is returned |
HTTP request using POST method => Check that HTTP code 405 is returned | Mandatory | Persona : LEA Result :HTTP code 405 is returned |
Get transactions list with "dateFrom" parameter => Check that the filter is well applied | Mandatory | Persona : GEORGES Result : return of a list of transactions after the date given as input parameter |
Get transactions list with "dateTo" parameter => Check that the filter is well applied | Mandatory | Persona : GEORGES Result :return of a list of transactions before the date given as input parameter, up to the limit of 62 days |
Get transactions list with optional field "entryReference" empty => Check that response field "entryReference" is empty | Mandatory | Persona : GEORGES Result : return a list of transactions with field "entryReference" empty |
Get transactions list with "dateFrom" and "dateTo" parameters => Check that the filter is well applied | Mandatory | Persona : GEORGES Result : return of a list of transactions within the dateFrom and dateTo given as input parameters |
Request with "dateFrom" parameter older than 62 days => Check that HTTP code 400 is returned - Period out of bound expected | Mandatory | Persona : LEA Result : HTTP code 400 is returned |
Request with an invalid "dateFrom" or "dateTo" parameter => Check that HTTP code 400 is returned | Mandatory | Persona : GEORGES Result : HTTP code 400 is returned |
Get no transactions present in the list => Check that HTTP code 204 is returned | Mandatory | Persona : CLAIRE / account FR7617515900000400358074026 Result : HTTP code 204 is returned |