> ## Documentation Index
> Fetch the complete documentation index at: https://docs.whop.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Financial Report

> Returns a financial report (balance activity, income statement, or balance summary) for the given ledger account over the requested date range, or a platform-wide report when account_id is `global` (internal admin access only). Dates are Unix timestamps in seconds (UTC). Use `in_currency` with `currency` to aggregate multi-currency activity into a single display currency via FX conversion.



## OpenAPI

````yaml /openapi/api-v1-native.yml get /financial_reports
openapi: 3.1.0
info:
  title: Whop API
  description: >-
    Hand-written V1 endpoints. Merged into the GraphqlRestProxy-generated schema
    at build time.
  version: v1
servers:
  - url: https://{defaultHost}
    variables:
      defaultHost:
        default: api.whop.com/api/v1
security: []
paths:
  /financial_reports:
    get:
      tags:
        - Ledgers
      summary: Get Financial Report
      description: >-
        Returns a financial report (balance activity, income statement, or
        balance summary) for the given ledger account over the requested date
        range, or a platform-wide report when account_id is `global` (internal
        admin access only). Dates are Unix timestamps in seconds (UTC). Use
        `in_currency` with `currency` to aggregate multi-currency activity into
        a single display currency via FX conversion.
      operationId: getFinancialReport
      parameters:
        - name: account_id
          in: query
          required: true
          schema:
            type: string
          description: >-
            The owning account ID (a biz_ identifier), or `global` for a
            platform-wide report across all ledger accounts (requires internal
            admin access).
        - name: report_type
          in: query
          required: true
          schema:
            type: string
            enum:
              - balance_activity
              - income_statement
              - balance_summary
          description: The type of financial report to generate.
        - name: currency
          in: query
          required: false
          schema:
            type: string
          description: >-
            Filter rows to this currency, for example `usd`. Defaults to `usd`
            unless `in_currency` is provided.
        - name: in_currency
          in: query
          required: false
          schema:
            type: string
          description: Aggregate all activity into this display currency via FX conversion.
        - name: from_date
          in: query
          required: false
          schema:
            type: integer
          description: >-
            Start of the report window as a Unix timestamp (seconds, UTC).
            Required for platform-wide (global) reports.
        - name: to_date
          in: query
          required: false
          schema:
            type: integer
          description: >-
            End of the report window as a Unix timestamp (seconds, UTC).
            Required for platform-wide (global) reports.
        - name: group_by
          in: query
          required: false
          schema:
            type: string
            enum:
              - day
              - week
              - month
            default: month
          description: Grouping granularity for report rows.
        - name: cumulative
          in: query
          required: false
          schema:
            type: boolean
            default: false
          description: >-
            Platform-wide (global) reports only: when true, return cumulative
            balances as of to_date (all history, no lower bound) instead of
            activity within the period.
        - name: scope_account_id
          in: query
          required: false
          schema:
            type: string
          description: >-
            Platform-wide (global) reports only: narrow the report to ledger
            lines on the ledger account owned by this account ID (a biz_
            identifier). Ignored unless account_id is `global`.
      responses:
        '200':
          description: financial report returned
          content:
            application/json:
              schema:
                type: object
                properties:
                  report_type:
                    type: string
                  rows:
                    type: array
                    items:
                      type: object
                      properties:
                        period:
                          type: string
                        grouping:
                          type: string
                        line_category:
                          type: string
                        amount:
                          type: number
                        account_type:
                          type:
                            - string
                            - 'null'
                        account_name:
                          type:
                            - string
                            - 'null'
                        account_ik_path:
                          type:
                            - string
                            - 'null'
                        line_count:
                          type:
                            - integer
                            - 'null'
                      required:
                        - period
                        - grouping
                        - line_category
                        - amount
                  total:
                    type: number
                  beginning_balance:
                    type:
                      - number
                      - 'null'
                  ending_balance:
                    type:
                      - number
                      - 'null'
                  fx_excluded_currencies:
                    type: array
                    items:
                      type: string
                required:
                  - report_type
                  - rows
                  - total
        '400':
          $ref: '#/components/responses/InvalidParameters'
          description: invalid report type
        '401':
          $ref: '#/components/responses/Unauthorized'
          description: missing or invalid authentication
        '403':
          $ref: '#/components/responses/Forbidden'
          description: credential lacks the required balance-read scope
        '404':
          $ref: '#/components/responses/NotFound'
          description: no ledger for that account
      security:
        - bearerAuth:
            - company:balance:read
components:
  responses:
    InvalidParameters:
      description: Invalid Parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/V1ErrorResponse'
    Unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/V1ErrorResponse'
    Forbidden:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/V1ErrorResponse'
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/V1ErrorResponse'
  schemas:
    V1ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              description: Machine-readable error code.
            message:
              type: string
              description: Human-readable error message.
          required:
            - type
            - message
      required:
        - error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: auth-scheme
      description: >-
        An account API key, account scoped JWT, app API key, or user OAuth
        token.

````