Retreiving Financial Accounts, Transactions and Balances
How to retrieve financial data from connected accounts?
Once a consent is valid you can start fetching account data, including accounts, balances, and transactions from cash, cards, loans, savings, and securities accounts.
1. Request an API bearer token
Create a JWT with srv: "ais/tpp" and send it to /token.
{
"sub": "user-123",
"iss": "tpp/{TPP_ID}",
"srv": "ais/tpp",
"iat": 1728986260,
"exp": 1728986860,
"ttl": 600
}curl --location --request POST 'https://{ENVIRONMENT}.feezback.cloud/token' \
--header 'Content-Type: application/json' \
--data-raw '{
"token": "{GENERATED_JWT_TOKEN}"
}'| Environment | Token endpoint |
|---|---|
| Integration | https://lgs-integ01.feezback.cloud/token |
| Production | https://lgs-prod.feezback.cloud/token |
The returned bearer token is valid for 600 seconds.
2. Retrieve financial data
Use the bearer token to call Feezback's Aggregate Data API.
The userId path parameter is always:
{sub}@{tpp_id}Use the correct TPP API host:
| Environment | TPP API host |
|---|---|
| Integration | https://integ01-tpp.feezback.cloud |
| Production | https://prod-tpp.feezback.cloud |
Send the bearer token in the Authorization header on each request:
curl --location 'https://{TPP_API_HOST}/tpp/v1/users/USERID/accounts' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'X-Tpp-Id: {TPP_ID}'Before fetching data, confirm the consent is valid — see consent status updates.
Recommended data retrieval flow
- Confirm the user has a valid consent.
- List the financial resources covered by the consent: accounts, cards, loans, savings, or securities.
- Use each returned
resourceIdas the resource path parameter for detail, balance, and transaction calls.- Fetch balances when the consent includes
BALANCES. - Fetch transactions when the consent includes
TRANSACTIONS.
- Fetch balances when the consent includes
Account data endpoints
Card data endpoints
Savings, loans, and securities endpoints
V2 transaction endpoints
Make sure to use V2 endpoints for transactions so you get:
- Paginated transaction reads from the dedicated typed transaction tables.
- Unique transactionId value
*recommended when you want to avoid transactions processing duplications.
| Resource | Endpoint |
|---|---|
| Accounts | /tpp/v2/users/USERID/consents/{consentId}/accounts/{accountId}/transactions |
| Cards | /tpp/v2/users/USERID/consents/{consentId}/cards/{cardId}/transactions |
| Savings | /tpp/v2/users/USERID/consents/{consentId}/savings/{savingId}/transactions |
| Loans | /tpp/v2/users/USERID/consents/{consentId}/loans/{loanId}/transactions |
| Securities | /tpp/v2/users/USERID/consents/{consentId}/securities/{securityId}/transactions |
| CSV export | /tpp/v2/export-csv/users/USERID/consents/{consentId}/accounts/{accountId}/transactions |
Pagination differs between v1 and v2:
| Version | page | pageSize |
|---|---|---|
| v1 | 1-based, default 1 | Default 10 |
| v2 | 0-based, default 0 | Default 100, up to 1000 |
Data deletion endpoint
Use the data deletion tasks endpoint to retrieve information about data scheduled for deletion.
GET /tpp/v1/data-deletion-tasksFilter by deletionReason (expirationDeletion | consentDeletion), userId, page, pageSize, and taskStatus (RECEIVED | FAILED) when needed.
Common headers
| Header | Type | Required | Description |
|---|---|---|---|
Authorization | string | Yes | Bearer token returned from /token. |
X-Tpp-Id | string | No | TPP identifier. |
X-Srv | string | No | Service routing header. |
X-Trace-Id | string | No | Request trace identifier. |
X-Request-Wait | integer | No | Maximum number of milliseconds the API waits for external ASPSP responses before returning a 307. |
X-Psu-IP-Address | string | No | End-user IP address when the user is online. |
Origin | string | No | Request origin. |
Common query parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
preventUpdate | boolean | — | Prevents financial data refresh. When present, Feezback does not make account data requests to the ASPSP. |
withInvalid | boolean | — | Includes invalid consents or resources when supported. Without it, consent list calls include only valid consents. |
withBalances | boolean | — | Includes balances in account, card, loan, saving, or securities list responses when supported and covered by consent. |
dateFrom | string | — | Start date for balances or transaction queries. Format: YYYY-MM-DD. |
dateTo | string | Current date | End date for balances or transaction queries. Format: YYYY-MM-DD. |
bookingStatus | string | — | Required for transaction endpoints. Use booked, pending, or both. |
transactionId | string | — | Continues a request after a 307 polling response. Use the transaction ID from the Location header. |
page | integer | v1: 1; v2: 0 | Page number for paginated endpoints. v2 transaction endpoints are zero-based. |
pageSize | integer | v1: 10; v2: 100 | Page size — varies by endpoint version. v2 transaction endpoints support 1 to 1000. |
Response codes
| Code | Meaning | Action |
|---|---|---|
200 | Success. | Process the response. |
204 | No content. | Treat the delete operation as successful. |
Updated 5 days ago