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

> Generates a new banking report and returns a report object.


# Generate a banking report



## OpenAPI

````yaml post /v2/open-banking/reports/{type}
openapi: 3.0.0
info:
  title: Open Banking API
  version: 1.0.0
  description: >
    Open banking endpoints for connect URLs, bank accounts, institutions, and
    banking reports.
servers: []
security:
  - basicAuth: []
paths:
  /v2/open-banking/reports/{type}:
    post:
      summary: Generate a banking report
      description: Generates a new banking report and returns a report object.
      parameters:
        - in: path
          name: type
          required: true
          schema:
            type: string
            enum:
              - voa
              - voi
              - voai
          description: The type of report to generate.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BankingReportRequest'
            example:
              user: 01975b3b-5ba6-3ec1-2148-f595b6d92614
              webhook: https://your-webhook-backend.com
              bank_accounts:
                - '8057637863'
              from_date: '1970-01-19T17:30:50Z'
              report_custom_fields:
                - label: loanID
                  value: '12345'
                  shown: true
              income_stream_confidence_minimum: 50
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BankingReport'
              example:
                id: cde25bb1-5cf4-4544-9df8-04212a781e1b
                user: 01975b3b-5ba6-3ec1-2148-f595b6d92614
                reference_id: cde25bb1-5cf4-4544-9df8-04212a781e1b
                generated_at: '2025-06-10T20:39:35.000Z'
                created_at: '2025-06-10T20:39:35.000Z'
                type: voai
                status: generating
                file_url: www.argyle.com/storagename/pdf
                json_url: www.argyle.com/storagename/json
                accounts: []
                last_synced_at: null
                external_id: null
                source: open-banking
                metadata:
                  origin_report_id: 5u6fx59dnw4b
                  bank_accounts_requested:
                    - '8057637863'
                  from_date: '1970-01-19T17:30:50.000Z'
                  report_custom_fields:
                    - label: loanID
                      value: '12345'
                      shown: true
                  income_stream_confidence_minimum: 50
components:
  schemas:
    BankingReportRequest:
      type: object
      properties:
        user:
          type: string
          format: uuid
          description: ID of the user.
        webhook:
          type: string
          format: uri
          description: >-
            Webhook URL to receive report-related [Connect
            Events](/api-reference/banking-overview#connect-events).
        bank_accounts:
          type: array
          items:
            type: string
          description: >-
            List of [bank account](/api-reference/bank-accounts) IDs to be
            included in the report.
        from_date:
          type: string
          format: date-time
          description: >
            Restrict report to data from on or after this datetime ([ISO
            8601](https://en.wikipedia.org/wiki/ISO_8601)).


            - `VOAI` reports - controls the length of asset history

            - `VOA` reports - controls the length of asset history

            - `VOI` reports - controls the length of income history
        income_from_date:
          type: string
          format: date-time
          description: >
            Restrict report to data from on or after this datetime ([ISO
            8601](https://en.wikipedia.org/wiki/ISO_8601)).


            - `VOAI` reports - controls the length of income history

            - Does not apply to `VOA` or `VOI` reports.
        report_custom_fields:
          type: array
          maxItems: 5
          description: >-
            Include up to `5` custom objects in the report metadata. Often used
            for identifying information.
          items:
            $ref: '#/components/schemas/BankingReportCustomField'
        income_stream_confidence_minimum:
          type: integer
          minimum: 0
          maximum: 100
          description: >
            Limit income streams used in the report to those above this
            confidence value (`0-100` accepted).


            Only available for `VOI` and `VOAI` report types.
      required:
        - user
    BankingReport:
      type: object
      description: Report object.
      example:
        id: cde25bb1-5cf4-4544-9df8-04212a781e1b
        user: 01975b3b-5ba6-3ec1-2148-f595b6d92614
        reference_id: cde25bb1-5cf4-4544-9df8-04212a781e1b
        generated_at: '2025-06-10T20:39:35.000Z'
        created_at: '2025-06-10T20:39:35.000Z'
        type: voai
        status: generated
        file_url: www.argyle.com/storagename/pdf
        json_url: www.argyle.com/storagename/json
        accounts: []
        last_synced_at: null
        external_id: null
        source: open-banking
        metadata:
          origin_report_id: 5u6fx59dnw4b
          bank_accounts_requested:
            - '8057637863'
          from_date: '1970-01-19T17:30:50.000Z'
          report_custom_fields:
            - label: loanID
              value: '12345'
              shown: true
          income_stream_confidence_minimum: 50
      properties:
        id:
          type: string
          format: uuid
          description: Unique ID of the report object.
        user:
          type: string
          format: uuid
          description: ID of the user associated with the report.
        reference_id:
          type: string
          format: uuid
          deprecated: true
          description: Report PDF identifier.
        generated_at:
          type: string
          format: date-time
          deprecated: true
          description: >-
            Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when
            the report was requested.
        created_at:
          type: string
          format: date-time
          description: >-
            Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when
            the report was requested.
        type:
          type: string
          enum:
            - voa
            - voi
            - voai
          description: |
            The type of report.

            - `voa` - Verification of Assets
            - `voi` - Verification of Income
            - `voai` - Verification of Assets and Income
        status:
          type: string
          enum:
            - generating
            - generated
          description: |
            Progress of report generation.

            - `generating` - The report is being generated.
            - `generated` - The report is ready to download.
        file_url:
          type: string
          description: >-
            Download link to the report PDF. Requires [Argyle authentication
            headers](/api-guide/overview#authentication).
        json_url:
          type: string
          description: >-
            Download link to the report in JSON. Requires [Argyle authentication
            headers](/api-guide/overview#authentication).
        accounts:
          type: array
          description: Not used in banking reports.
          items:
            type: object
            additionalProperties: true
        last_synced_at:
          type: string
          format: date-time
          nullable: true
          description: Not used in banking reports.
        external_id:
          type: string
          nullable: true
          description: >-
            The [`external_id`](/api-reference/users#object-external_id) of the
            user, otherwise `null`.
        source:
          type: string
          description: The source of the report data.
        metadata:
          type: object
          description: Additional info.
    BankingReportCustomField:
      type: object
      properties:
        label:
          type: string
          description: Custom field name.
        value:
          type: string
          description: Custom field value.
        shown:
          type: boolean
          description: Show custom field on report PDF.
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: Username = api_key_id, Password = api_key_secret

````