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

# Revenue Report

> Generate a Revenue Report



## OpenAPI

````yaml https://dev.tight.com/v3/api-docs post /v6/reports/revenue
openapi: 3.0.1
info:
  title: Tight API
  contact:
    name: Hurdlr, Inc. (dba Tight)
    url: https://www.tight.com
    email: api@tight.com
  version: 6.0.0
servers:
  - url: https://sandbox.tight.com
    description: Staging Environment
  - url: https://prod.tight.com
    description: Production Environment
security:
  - EmbedToken: []
paths:
  /v6/reports/revenue:
    post:
      tags:
        - Reports
      summary: Revenue Report
      description: Generate a Revenue Report
      operationId: generateRevenueReport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RevenueRequestDto'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/SuccessResponseReportDtoDimensionValueReportDtoBankTransactionReportJson
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                result: FAILURE
                error:
                  - type: REQUIRED
                    message: Amount is required
                    param: amount
        '401':
          description: Not authenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                result: FAILURE
                error:
                  - type: INVALID_TOKEN
                    message: Invalid access token
        '403':
          description: Not authorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                result: FAILURE
                error:
                  - type: FORBIDDEN
                    message: Expired access token
        '404':
          description: Endpoint not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                result: FAILURE
                error:
                  - type: BAD_REQUEST
                    message: Resource not found
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                result: FAILURE
                error:
                  - type: UNKNOWN_ERROR
                    message: Something went wrong. Please try again later.
      security:
        - EmbedToken: []
components:
  schemas:
    RevenueRequestDto:
      type: object
      properties:
        exportType:
          type: string
          description: Export format for the report
          enum:
            - JSON
            - CSV
        recipients:
          $ref: '#/components/schemas/Recipients'
        accountingMethod:
          type: string
          description: >-
            Accounting method to generate the report in. Defaults to the
            company's configured accounting method.
          enum:
            - ACCRUAL
            - CASH
        filters:
          $ref: '#/components/schemas/DateRangeFilters'
        grouping:
          $ref: '#/components/schemas/RevenueGrouping'
    SuccessResponseReportDtoDimensionValueReportDtoBankTransactionReportJson:
      type: object
      properties:
        result:
          type: string
          description: The result of the action performed.
          enum:
            - SUCCESS
            - FAILURE
        data:
          $ref: >-
            #/components/schemas/ReportDtoDimensionValueReportDtoBankTransactionReportJson
    ErrorResponse:
      type: object
      properties:
        result:
          type: string
          description: The result of the action performed.
          enum:
            - SUCCESS
            - FAILURE
        data:
          type: object
          description: The data generated by the action performed.
          nullable: true
        error:
          type: array
          items:
            $ref: '#/components/schemas/ErrorItem'
    Recipients:
      type: object
      properties:
        emails:
          type: array
          description: Primary email recipients
          items:
            type: string
            description: Primary email recipients
      description: Email recipients for the report
    DateRangeFilters:
      type: object
      properties:
        beginDate:
          type: string
          description: Beginning date for the report
          format: date
          example: '2025-01-01'
        endDate:
          type: string
          description: Ending date for the report
          format: date
          example: '2025-12-31'
      description: Filters to apply to the report
    RevenueGrouping:
      type: object
      properties:
        dimensionId:
          type: string
          description: Dimension ID to group the report by
          example: tdim_439512
        column:
          type: string
          description: Column to group revenue by
          example: CUSTOMER
          enum:
            - CATEGORY
            - CUSTOMER
            - BANK_ACCOUNT
      description: Grouping options for the revenue report
    ReportDtoDimensionValueReportDtoBankTransactionReportJson:
      type: object
      properties:
        json:
          type: array
          description: Report data in JSON format
          items:
            $ref: >-
              #/components/schemas/DimensionValueReportDtoBankTransactionReportJson
        url:
          type: string
          description: URL to download the csv report
        meta:
          $ref: '#/components/schemas/ReportMeta'
      description: The data generated by the action performed.
    ErrorItem:
      type: object
      properties:
        type:
          type: string
          description: The type of the error. Safe for programmatic use.
          enum:
            - UNKNOWN_ERROR
            - INVALID_TOKEN
            - EXPIRED_TOKEN
            - FORBIDDEN
            - BAD_REQUEST
            - JSON_ERROR
            - DUPLICATE
            - REQUIRED
            - INVALID_VALUE
            - NOT_MODIFIABLE
            - INVALID_FORMAT
            - NOT_FOUND
        message:
          type: string
          description: >-
            A human-readable message providing more details about the error.
            Safe for displaying to a user.
        param:
          type: string
          description: >-
            If the error is parameter-specific, the parameter related to the
            error. This can be used to display a message near the correct form
            field.
      description: Errors associated with the action performed, if applicable.
    DimensionValueReportDtoBankTransactionReportJson:
      type: object
      properties:
        name:
          type: string
          description: Dimension value name
          example: East Region
        data:
          type: array
          description: Report data
          items:
            $ref: '#/components/schemas/BankTransactionReportJson'
      description: Report data in JSON format
    ReportMeta:
      type: object
      properties:
        title:
          type: string
          description: Report title
        generatedOn:
          type: string
          description: Date and time when the report was generated
          format: date-time
        generatedBy:
          type: string
          description: User who generated the report
          example: John Doe
        footerLine:
          type: string
          description: Footer line for the report
          example: Generated by Tight
      description: Metadata about the generated report
    BankTransactionReportJson:
      type: object
      properties:
        name:
          type: string
          description: Name of the report section
          example: Jan 2025
        total:
          type: integer
          description: Total amount for this section in cents
          format: int32
          example: 150000
        count:
          type: integer
          description: Number of transactions in this section
          format: int32
          example: 42
        data:
          type: array
          description: Data items with URIs to fetch detailed results
          items:
            $ref: '#/components/schemas/ExpenseReportDataItem'
      description: Report data
    ExpenseReportDataItem:
      type: object
      properties:
        uri:
          type: string
          description: URI to fetch the detailed data set for this item
          example: /v6/bankTransactions/query
        filters:
          $ref: '#/components/schemas/JsonNode'
      description: Data items with URIs to fetch detailed results
    JsonNode:
      type: object
      properties:
        empty:
          type: boolean
        array:
          type: boolean
        'null':
          type: boolean
        object:
          type: boolean
        float:
          type: boolean
        string:
          type: boolean
        number:
          type: boolean
        missingNode:
          type: boolean
        valueNode:
          type: boolean
        nodeType:
          type: string
          enum:
            - ARRAY
            - BINARY
            - BOOLEAN
            - MISSING
            - 'NULL'
            - NUMBER
            - OBJECT
            - POJO
            - STRING
        pojo:
          type: boolean
        integralNumber:
          type: boolean
        floatingPointNumber:
          type: boolean
        short:
          type: boolean
        int:
          type: boolean
        long:
          type: boolean
        double:
          type: boolean
        bigDecimal:
          type: boolean
        bigInteger:
          type: boolean
        textual:
          type: boolean
          deprecated: true
        boolean:
          type: boolean
        binary:
          type: boolean
        container:
          type: boolean
        embeddedValue:
          type: boolean
      description: >-
        Custom JSON in which you can store any data with max length of 2000
        characters
      nullable: true
      example:
        internal_key: some_internal_key
        some_other_field: 23434
  securitySchemes:
    EmbedToken:
      type: http
      description: >-
        Bearer authentication header of the form `Bearer <token>`, see
        [Authentication for more
        detail](/api-reference/authentication#partner-level-authentication).
      scheme: bearer

````