---
title: "Retrieve all transactions"
method: GET
path: "/accounts/{AccountId}/transactions"
tags: ["Transactions"]
---

# Retrieve all transactions

`GET /accounts/{AccountId}/transactions`

## Request

- Base URL: `https://oba-auth.revolut.com`
- URL: `https://oba-auth.revolut.com/accounts/{AccountId}/transactions`
- Auth: API key in header `Authorization`

Get all the recent transactions for an account.

:::note
In compliance with PSD2 SCA regulations, full transaction history can only be accessed within the first 5 minutes after the Revolut user has authorised the consent.
After those 5 minutes, transaction history is restricted to the last 90 days counting from the moment the API request is made, and older transactions are not returned.

Additionally, after those 5 minutes, unless the user is present and actively requesting data, you should not retrieve transaction data of an individual account more than 4 times within a 24-hour period.
:::

See also [Tutorials: Get account and transaction information](https://developer.revolut.com/docs/guides/build-banking-apps/tutorials/get-account-and-transaction-information).

## Path parameters

- `AccountId` string, required

## Query parameters

- `fromBookingDateTime` string, date-time
- `toBookingDateTime` string, date-time

## Headers

- `x-fapi-financial-id` string, required
- `x-fapi-customer-last-logged-time` string
- `x-fapi-customer-ip-address` string
- `x-fapi-interaction-id` string
- `Authorization` string, required
- `x-customer-user-agent` string

## Response `200`

Transactions Read

- OBReadTransaction4
  - `Data` object, required
    - `Transaction` OBTransaction4[]: The details about the transaction.
      - `AccountId` string, required: The unique and immutable ID to identify the account resource. This ID has no meaning to the account owner.
      - `TransactionId` string: The unique and immutable ID to identify the transaction within an servicing institution.
      - `CreditDebitIndicator` 'Credit' | 'Debit', required: Indicates whether the transaction is a credit or a debit entry.
      - `Status` 'Booked' | 'Pending', required: The status of a transaction entry on the books of the account servicer.
      - `BookingDateTime` string, date-time, required: The date and time when the transaction entry is created in Revolut's systems. Represented in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date-time format including timezone. :::note[Offline transactions] For offline transactions, this value reflects when the transaction is recorded by Revolut, not when the transaction was originally initiated. The original transaction date is available in `SupplementaryData.StartedDate`. :::
      - `ValueDateTime` string, date-time: The date and time when the transaction is completed. Returned only for transactions with `Status=Booked`. Represented in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date-time format including timezone.
      - `Amount` object, required: Amount of money in the cash transaction entry. This amount includes the amount in `ChargeAmount`.
        - `Amount` string, required: The amount of money where the unit of currency is explicit and compliant with [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217).
        - `Currency` string, required: [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code in upper case.
      - `ChargeAmount` object: Transaction charges to be paid by the charge bearer.
        - `Amount` string, required: The amount of money where the unit of currency is explicit and compliant with [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217).
        - `Currency` string, required: [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code in upper case.
      - `CurrencyExchange` OBCurrencyExchange5: A list of elements to provide details on the currency exchange.
        - `SourceCurrency` string, required: The currency that is exchanged from.
        - `TargetCurrency` string: The currency that is exchanged to.
        - `UnitCurrency` string: The currency that the exchange rate is expressed in. For example, for 1 GBP = xxx EUR, the `UnitCurrency` value is GBP.
        - `ExchangeRate` string, required: The exchange rate used to convert an amount of money from one currency into another. This reflects the price that one currency was bought at with another currency. :::note `ExchangeRate` expresses the ratio between `UnitCurrency` and `QuotedCurrency`: **`ExchangeRate` = `UnitCurrency`/`QuotedCurrency`**. :::
        - `InstructedAmount` object: Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.
          - `Amount` string, required: The amount of money where the unit of currency is explicit and compliant with [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217).
          - `Currency` string, required: [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code in upper case.
      - `ProprietaryBankTransactionCode` object: A list of elements to fully identify a proprietary bank transaction code.
        - `Code` string, required: The proprietary bank transaction code to identify the underlying transaction.
        - `Issuer` string: The identification of the issuer of the proprietary bank transaction code.
      - `SupplementaryData` object: The additional information that cannot be captured in the structured fields and/or any other specific block.
        - `StartedDate` string, date-time: The date and time the transaction started in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. Returned if it is different from `BookingDateTime`. For example, if the transaction was an offline card transaction made during a flight and would be booked at a later time or date, this field indicates the actual date and time the transaction took place, as provided by the merchant.
      - `TransactionInformation` string: The additional information of the transaction, which is unstructured text.
      - `Balance` OBTransactionCashBalance: A list of elements used to define the balance as a numerical representation of the net increases and decreases in an account after a transaction entry is applied to the account.
        - `CreditDebitIndicator` 'Credit' | 'Debit', required: Indicates whether the balance is a credit or a debit balance. :::note A zero balance is considered a credit balance. :::
        - `Type` 'ClosingAvailable' | 'ClosingBooked' | 'ClosingCleared' | 'Expected' | 'ForwardAvailable' | 'Information' | 'InterimAvailable' | 'InterimBooked' | 'InterimCleared' | 'OpeningAvailable' | 'OpeningBooked' | 'OpeningCleared' | 'PreviouslyClosedBooked', required: The balance type.
        - `Amount` OBActiveOrHistoricCurrencyAndAmount, required: The amount of the cash balance after a transaction entry is applied to the account.
          - `Amount` string, required: The amount of money where the unit of currency is explicit and compliant with [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217).
          - `Currency` string, required: [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code in upper case.
      - `MerchantDetails` OBMerchantDetails1: The details of the merchant involved in the transaction.
        - `MerchantName` string: The name of the merchant.
      - `CreditorAccount` OBCashAccount6: The unique ID of the account in the case of a transaction.
        - `SchemeName` 'UK.OBIE.IBAN' | 'UK.OBIE.SortCodeAccountNumber' | 'US.RoutingNumberAccountNumber' | 'US.BranchCodeAccountNumber': The name of the identification scheme.
        - `Identification` string: The account ID that the institution assigns to identify an account, which is known by the account owner.
        - `Name` string: The account name that the account servicing institution assigns. The account name is the name or names of the account owner(s) represented at an account level. The account name is not the product name or the nickname of the account.
        - `SecondaryIdentification` string: The secondary account ID that the account servicing institution assigns. Building societies can use this ID to identify accounts with a roll number in addition to a sort code and account number combination.
      - `DebtorAccount` OBCashAccount6: The unique ID of the account in the case of a transaction.
        - `SchemeName` 'UK.OBIE.IBAN' | 'UK.OBIE.SortCodeAccountNumber' | 'US.RoutingNumberAccountNumber' | 'US.BranchCodeAccountNumber': The name of the identification scheme.
        - `Identification` string: The account ID that the institution assigns to identify an account, which is known by the account owner.
        - `Name` string: The account name that the account servicing institution assigns. The account name is the name or names of the account owner(s) represented at an account level. The account name is not the product name or the nickname of the account.
        - `SecondaryIdentification` string: The secondary account ID that the account servicing institution assigns. Building societies can use this ID to identify accounts with a roll number in addition to a sort code and account number combination.
      - `CardInstrument` object: The set of elements to describe the card instrument used in the transaction.
        - `CardSchemeName` string, required: The brand of the payment card. Possible values include `VISA`, `MASTERCARD`, and `MAESTRO`.
        - `Identification` string: The last four digits of the card's PAN (Primary Account Number).
        - `Name` string: The name of the cardholder.
  - `Links` Links, required: Links relevant to the payload.
    - `Self` string, uri, required: The absolute URI to the resource.
    - `Next` string, uri: The absolute URI to the next pagination resource.
    - `Prev` string, uri: The absolute URI to the previous pagination resource.
  - `Meta` Meta, required: Meta data relevant to the payload.
    - `TotalPages` integer: Used for pagination. Indicates how many pages of results are available.

## Other responses

- `400`: Bad request
- `401`: Unauthorized Returned, for instance, when the access token has expired or is invalid, for example, when the consent has been revoked, or when the consent lacks necessary permissions.
- `403`: Forbidden
- `405`: Method Not Allowed
- `406`: Not Acceptable
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/revolut/apis/open-banking-api.md) - [All operations](https://skmtc.dev/revolut/apis/open-banking-api/llms.txt) - [OpenAPI document](https://skmtc.dev/revolut/apis/open-banking-api/revisions/e2a5bcac7971?raw)
