---
title: "List of statements"
method: GET
path: "/statements"
tags: ["Statements"]
---

# List of statements

`GET /statements`

Returns a paginated list of statements. Statements are a record of the balance and the amount of withdrawn and paid to the bank account. Commonly, this statement is sent by the bank to the account holder by a daily or monthly basis. This endpoint fetches all statements from all bank accounts enrolled in Shinkansen Treasury and can be identified by the `account_number` field. List can be filtered by date range and account number.

## Response `200`

List of statements

- Statements — List of statements
  - `statements` Statement[], required — A list of statements
    - `statement_id` string, required — UUID Unique identifier for the statement.
    - `currency` string, required — Currency ISO 4217 code (e.g: `"CLP"`)
    - `opening_balance` Balance, required — An account balance with type
      - `balance_type` 'snapshot' | 'end_of_booking_day' | 'end_of_statement', required — The type of balance. Can be of type: - `snapshot`: A snapshot of the account at a given time. It's usually the most up-to-date balance, but it can be slightly innacurate under some situations for some financial institutions. - `end_of_booking_day`: It's the balance at the end of a banking day. It's extremely unlikely to ever change and will at most be a few days old (depending on the latest banking day). - `end_of_statement`: It's the balance at the end of an official statement. It's always accurate, but it might be weeks or a month old.
      - `book_balance` string, required — Amount, ISO20022-compatible: Up to 18 integer digits, optional decimal separator ".", up to 5 fraction digits (also optional). By using a string we avoid issues with floating-point arithmetic as well as integer type limits on some JSON implementations.
      - `available_balance` string — Amount, ISO20022-compatible: Up to 18 integer digits, optional decimal separator ".", up to 5 fraction digits (also optional). By using a string we avoid issues with floating-point arithmetic as well as integer type limits on some JSON implementations.
      - `timestamp` string, date-time, required — The timestamp of the balance
      - `source` object, required — The source of the balance
        - `source_type` 'account_report' | 'account_statement', required — The type of source. Can be one of: - `account_report`: The balance was obtained from an account report, which is a real-time but not-yet-official information obtained from a bank. - `account_statement`: The balance was obtained from an official account statement.
        - `source_id` string, required — The id of the source
    - `closing_balance` Balance, required — An account balance with type
      - `balance_type` 'snapshot' | 'end_of_booking_day' | 'end_of_statement', required — The type of balance. Can be of type: - `snapshot`: A snapshot of the account at a given time. It's usually the most up-to-date balance, but it can be slightly innacurate under some situations for some financial institutions. - `end_of_booking_day`: It's the balance at the end of a banking day. It's extremely unlikely to ever change and will at most be a few days old (depending on the latest banking day). - `end_of_statement`: It's the balance at the end of an official statement. It's always accurate, but it might be weeks or a month old.
      - `book_balance` string, required — Amount, ISO20022-compatible: Up to 18 integer digits, optional decimal separator ".", up to 5 fraction digits (also optional). By using a string we avoid issues with floating-point arithmetic as well as integer type limits on some JSON implementations.
      - `available_balance` string — Amount, ISO20022-compatible: Up to 18 integer digits, optional decimal separator ".", up to 5 fraction digits (also optional). By using a string we avoid issues with floating-point arithmetic as well as integer type limits on some JSON implementations.
      - `timestamp` string, date-time, required — The timestamp of the balance
      - `source` object, required — The source of the balance
        - `source_type` 'account_report' | 'account_statement', required — The type of source. Can be one of: - `account_report`: The balance was obtained from an account report, which is a real-time but not-yet-official information obtained from a bank. - `account_statement`: The balance was obtained from an official account statement.
        - `source_id` string, required — The id of the source
    - `statement_number` string, required — Identifier of the statement. It can be a number or a code depending of the financial institution.
    - `until_booking_date` string, date, required — Closing date of bank booking for the statement
    - `since_booking_date` string, date, required — Start of the period for the statement
    - `bank_account_id` string, required — UUID Unique identifier of the bank account where the statemenet was booked.

## Other responses

- `403` — Forbidden (e.g: wrong API Key)
- `404` — Account not found.

---

[API](https://skmtc.net/shinkansen/apis/payouts-shinkansen-endpoints.md) · [All operations](https://skmtc.net/shinkansen/apis/payouts-shinkansen-endpoints/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/shinkansen/payouts-shinkansen-endpoints/versions/1e4a6760b7e8/schema)
