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

# Fetch revenue summary for a timeframe

> This endpoint allows fetching the revenue summary for a given operator within a specified timeframe, broken down by payment methods and currency.



## OpenAPI

````yaml post /summary-report/revenue
openapi: 3.1.0
info:
  title: Operator Financial Reporting API
  description: >

    Operator Financial Reporting API is a collection of endpoints (currently
    available only in US region) 

    that allows parking operators and data aggregators to fetch parking
    transactions report

    which will be generated in JSON or CSV formats.


    ## API Usage Workflow


    1. Authenticate using the `auth/v1` endpoint to obtain a JWT token

    2. Use the token in subsequent requests in the X-Authorization header

    3. Generate a report using the `/report/generate` endpoint

    4. Check report status using the URL returned in the response

    5. Since reports take time to generate, the API follows a polling approach
    where users request a report, then periodically check its status until
    completion.

    6. Download the completed report when status indicates it's ready


    ## Authentication of API user


    API users must authenticate using JWT tokens passed in the `X-Authorization`
    header with the format `Bearer YOUR-JWT-TOKEN`.

    Tokens can be obtained from the `auth/v1` endpoint using client credentials
    (clientId and clientSecret).


    For testing purposes, you can request test credentials from the support
    team.


    ## Error Handling


    The API returns appropriate HTTP status codes and detailed error messages:

    * 400: Bad Request - Invalid parameters or request structure

    * 401: Unauthorized - Missing or invalid authentication token

    * 403: Forbidden - Insufficient permissions for the requested operation

    * 429: Too Many Requests - Rate limit exceeded

    * 500: Internal Server Error - Something went wrong on the server side


    **Important Note**: When checking report status, if the report generation
    fails, the API returns a 200 OK HTTP status code with a problem details
    object in the response body containing status code 400. 

    Client applications should always check the response content type
    (application/problem+json) and examine the response body to properly handle
    error scenarios.



    ## Testing in Staging Environment


    * URL: https://operator-financial-reporting.staging.ezprk.dev

    * Database: Contains sample parking transactions for testing purposes

    * Test Operator ID: 60879 (use this ID for testing report generation)

    * Data Range: Test data is available for last two days, each day having 5
    records

    * Authentication: Use test credentials provided by the support team

    * Rate Limits: 30 requests per 10 min in test environment


    ## Report Formats and Limitations


    * Available formats: JSON or CSV

    * Maximum report size: 100,000 records

    * Historical data available: Up to 3 months from current date

    * Default columns: Always included in the report

    * Additional fields: Can be requested as needed


    The report contains default columns and additional fields requested by the
    user.


    ## Response Format and Pagination


    * All successful responses use HAL+JSON format with hypermedia links

    * Long-running operations follow the HATEOAS pattern with self-referencing
    links

    * Reports follow an asynchronous generation pattern with status polling


    ## Environment URLs


    * Production US: https://operator-financial-reporting.usa.ezprk.net

    * Staging: https://operator-financial-reporting.staging.ezprk.dev
  version: 2025.0.0
servers:
  - url: https://operator-financial-reporting.staging.ezprk.dev
    description: Staging
  - url: https://operator-financial-reporting.usa.ezprk.net
    description: Production US
security: []
tags:
  - name: Report Resource
    description: API for generating and downloading reports
  - name: Authentication Resource
    description: API for authentication
paths:
  /summary-report/revenue:
    post:
      tags:
        - Summary Report Resource
      summary: Fetch revenue summary for a timeframe
      description: >-
        This endpoint allows fetching the revenue summary for a given operator
        within a specified timeframe, broken down by payment methods and
        currency.
      operationId: getRevenueSummary
      requestBody:
        description: Request body containing parameters for report generation
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RevenueSummaryRequestDto'
            examples:
              Revenue Summary Report Request:
                summary: Example of a revenue summary report request
                description: Revenue Summary Report Request
                value:
                  operatorId: 12345
                  startDate: '2026-01-14'
                  endDate: '2026-01-15'
        required: true
      responses:
        '200':
          description: Revenue summary successfully retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RevenueSummaryResponseDto'
              examples:
                Revenue Summary Response:
                  summary: Example of a successful revenue summary response
                  description: Revenue summary broken down by payment type and currency
                  value:
                    transmissionDateTime: '2026-03-10T10:30:00Z'
                    operatorId: 12345
                    startDate: '2026-03-01T00:00:00Z'
                    endDate: '2026-03-07T23:59:59Z'
                    revenue:
                      - paymentType: CARD
                        currency: USD
                        totalPaymentAmount: 1234.56
                        totalTransactionFee: 123.45
                        totalParkingAmount: 1111.11
                      - paymentType: Wallet
                        currency: USD
                        totalPaymentAmount: 567.89
                        totalTransactionFee: 56.78
                        totalParkingAmount: 511.11
      security:
        - jwt: []
components:
  schemas:
    RevenueSummaryRequestDto:
      type: object
      description: Request parameters for revenue summary
      properties:
        operatorId:
          type: integer
          format: int64
        startDate:
          type: string
          format: date
        endDate:
          type: string
          format: date
    RevenueSummaryResponseDto:
      type: object
      description: Response containing revenue summary for a specific period
      properties:
        transmissionDateTime:
          type: string
          format: date-time
          description: Date and time of report transmission
          example: '2026-01-15T10:30:00'
        operatorId:
          type: integer
          format: int64
          description: Operator identifier
          example: 12345
        startDate:
          type: string
          format: date-time
          description: Start date of the reporting period
          example: '2026-01-01T00:00:00'
        endDate:
          type: string
          format: date-time
          description: End date of the reporting period
          example: '2026-01-07T23:59:59'
        revenue:
          type: array
          description: List of revenue items grouped by payment type and currency
          items:
            $ref: '#/components/schemas/RevenueSummaryItem'
    RevenueSummaryItem:
      type: object
      description: Revenue item for a specific payment type and currency
      properties:
        paymentType:
          type: string
          description: Payment type
          example: CARD
        currency:
          type: string
          description: Currency code in ISO 4217 format
          example: USD
        totalPaymentAmount:
          type: number
          description: Total revenue amount
          example: 1234.56
        totalTransactionFee:
          type: number
          description: Total transaction fee
          example: 1234.56
        totalParkingAmount:
          type: number
          description: Total parking amount
          example: 1234.56
  securitySchemes:
    jwt:
      type: apiKey
      description: >-
        For the header value, use the format: `Bearer YOUR-JWT-TOKEN`. You can
        get the token from the  auth/v1 endpoint.
      name: X-Authorization
      in: header

````