---
title: "Retrieve a list of transactions"
method: GET
path: "/transactions"
tags: ["Transactions"]
---

# Retrieve a list of transactions

`GET /transactions`

## Request

- Base URL: `https://b2b.revolut.com/api/1.0`
- URL: `https://b2b.revolut.com/api/1.0/transactions`
- Auth: HTTP bearer

Retrieve the historical transactions based on the provided query criteria.

The transactions are sorted by the `created_at` date in reverse chronological order, and they're **paginated**. 
The maximum number of transactions returned per page is specified by the `count` parameter. 
To get the next page of results, make a new request and use the `created_at` date from the last item of the previous page as the value for the `to` parameter.

:::note
The API returns a maximum of 1,000 transactions per request.
:::

For more details, see the guides: [Retrieve transactions](https://developer.revolut.com/docs/guides/manage-accounts/accounts-and-transactions/retrieve-transactions).

## Query parameters

- `from` string, date-time or date
- `to` string, date-time or date
- `account` string, uuid
- `count` integer
- `type` 'atm' | 'card_payment' | 'card_refund' | 'card_chargeback' | 'card_credit' | 'charge' | 'charge_refund' | 'exchange' | 'transfer' | 'loan' | 'fee' | 'refund' | 'topup' | 'topup_return' | 'tax' | 'tax_refund' | 'rev_payment': Indicates the transaction type.
- `request_id` string
- `state` string[]

## Response `200`

List of historical transactions retrieved

- Transaction[]
  - `id` string, required: The ID of the transaction.
  - `type` 'atm' | 'card_payment' | 'card_refund' | 'card_chargeback' | 'card_credit' | 'charge' | 'charge_refund' | 'exchange' | 'transfer' | 'loan' | 'fee' | 'refund' | 'topup' | 'topup_return' | 'tax' | 'tax_refund' | 'rev_payment', required: Indicates the transaction type.
  - `request_id` string: The request ID that you provided previously.
  - `state` 'created' | 'pending' | 'completed' | 'declined' | 'failed' | 'reverted', required: Indicates the transaction state. Possible values: | Value | Description | | --- | --- | | **`created`** | The transaction has been created and is either processed asynchronously or scheduled for a later time. | | **`pending`** | The transaction is pending until it's being processed. If the transfer is made between Revolut accounts, this state is skipped and the transaction is executed instantly. | | **`completed`** | The transaction was successful. | | **`declined`** | The transaction was unsuccessful. This can happen for a variety of reasons, for example, insufficient account balance, wrong receiver information, etc. | | **`failed`** | The transaction was unsuccessful. This can happen for a variety of reasons, for example, invalid API calls, blocked payments, etc. | | **`reverted`** | The transaction was reverted. This can happen for a variety of reasons, for example, the receiver being inaccessible. |
  - `reason_code` string: The reason code when the transaction `state` is `declined` or `failed`.
  - `created_at` string, date-time, required: The date and time the transaction was created in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
  - `updated_at` string, date-time, required: The date and time the transaction was last updated in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
  - `completed_at` string, date-time: The date and time the transaction was completed in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. This is required when the transaction `state` is `completed`.
  - `scheduled_for` string, date: The scheduled date of the payment, if applicable. Provided in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
  - `related_transaction_id` string, uuid: The ID of the original transaction to which this transaction is related. Returned, for example, when this transaction is a refund of the related transaction, or for transactions related to cashback.
  - `merchant` TransactionMerchant: The information about the merchant (only for card transactions).
    - `id` string, uuid: The ID of the merchant.
    - `name` string: The name of the merchant. If `full_name` is available and merchant mapping applies, this is the cleaned, mapped name.
    - `full_name` string: The original merchant name supplied by the card network.
    - `city` string: The city of the merchant.
    - `category_code` string: The category code of the merchant.
    - `country` string: The bank country of the merchant, provided as an [ISO 3166](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes) code. Typically 3 letters, though in some cases, card networks might provide it as a 2-letter code.
  - `reference` string: The payment reference.
  - `legs` TransactionLeg[], required: The legs of the transaction: - For transactions between your Revolut accounts, there can be 2 legs, for example, an internal transfer made out of the GBP account and into the EUR account. - For transactions in other cases, there is only 1 leg.
    - `leg_id` string, uuid, required: The ID of the leg.
    - `amount` number, double, required: The amount of the transaction.
    - `fee` number, double: The amount of the transaction fee.
    - `currency` string, required: [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code in upper case.
    - `bill_amount` number, double: The billing amount for cross-currency payments.
    - `bill_currency` string: [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code in upper case.
    - `account_id` string, uuid, required: The ID of the account that the transaction is associated with.
    - `counterparty` TransactionCounterparty
      - `account_id` string, uuid: The ID of the counterparty account.
      - `account_type` 'self' | 'revolut' | 'external', required: Indicates the type of the account.
      - `id` string, uuid: The ID of the counterparty.
    - `description` string: The transaction leg purpose.
    - `balance` number, double: The total balance of the account that the transaction is associated with.
  - `card` TransactionCard: The details of the card associated with the transaction.
    - `id` string, uuid: The ID of the card.
    - `card_number` string: The masked card number.
    - `first_name` string: The first name of the cardholder.
    - `last_name` string: The last name of the cardholder.
    - `phone` string: The phone number of the cardholder in [E.164](https://en.wikipedia.org/wiki/E.164) format.
    - `references` CardReference[]: Card references ([`references`](https://developer.revolut.com/docs/api/business#get-card#response)). :::note These are the references that were assigned to the card at the time the transaction was made. Any [update](https://developer.revolut.com/docs/api/business#update-card-references) to card references does not affect existing transactions. :::
      - `name` string, required: The name of the card reference. Must be unique.
      - `value` string, required: The value for this reference.
  - `auth_code` string: The authorization code from the card network. Returned for card transactions when the authorization code is available.

## Other responses

- `default`: Unexpected error

---

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