openapi: 3.0.0
info:
  title: Audit Partner
  version: 1.0.0
  description: >-
    API for Audit Partners


    <div class="env-panel" data-component-name="EnvPanel"><div
    class="env-panel__header">Servers</div><div class="env-panel__body"><div
    class="env-row"><div class="env-name">Partner Integration Environment
    (Sandbox)</div><div class="env-url-row"><span
    class="env-url">https://apigateway.class-pie.com.au/api/1.0</span><button
    type="button" class="copy-btn"
    data-copy="https://apigateway.class-pie.com.au/api/1.0"
    aria-label="Copy"><svg viewBox="0 0 16 16" fill="none"
    xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><path
    fill-rule="evenodd" clip-rule="evenodd" d="M5.16667 2.66667C5.16667 2.57462
    5.24129 2.5 5.33333 2.5H12C12.092 2.5 12.1667 2.57462 12.1667
    2.66667V10.6667C12.1667 10.7587 12.092 10.8333 12 10.8333H10H5.33333C5.24129
    10.8333 5.16667 10.7587 5.16667 10.6667V4.66667V2.66667ZM4.16667
    4.16667V2.66667C4.16667 2.02233 4.689 1.5 5.33333 1.5H12C12.6443 1.5 13.1667
    2.02233 13.1667 2.66667V10.6667C13.1667 11.311 12.6443 11.8333 12
    11.8333H10.5V13.3333C10.5 13.6428 10.3771 13.9395 10.1583 14.1583C9.9395
    14.3771 9.64275 14.5 9.33333 14.5H2.66667C2.35725 14.5 2.0605 14.3771
    1.84171 14.1583C1.62292 13.9395 1.5 13.6428 1.5 13.3333V5.33333C1.5 5.02391
    1.62292 4.72717 1.84171 4.50838C2.0605 4.28958 2.35725 4.16667 2.66667
    4.16667H4.16667ZM9.5 11.8333V13.3333C9.5 13.3775 9.48244 13.4199 9.45118
    13.4512C9.41993 13.4824 9.37754 13.5 9.33333 13.5H2.66667C2.62246 13.5
    2.58007 13.4824 2.54882 13.4512C2.51756 13.4199 2.5 13.3775 2.5
    13.3333V5.33333C2.5 5.28913 2.51756 5.24674 2.54882 5.21548C2.58007 5.18423
    2.62246 5.16667 2.66667 5.16667H4.16667V10.6667C4.16667 11.311 4.689 11.8333
    5.33333 11.8333H9.5Z" fill="currentColor"/></svg></button></div></div><div
    class="env-row"><div class="env-name">Production Environment</div><div
    class="env-url-row"><span
    class="env-url">https://apigateway.class.com.au/api/1.0</span><button
    type="button" class="copy-btn"
    data-copy="https://apigateway.class.com.au/api/1.0" aria-label="Copy"><svg
    viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"
    aria-hidden="true"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.16667
    2.66667C5.16667 2.57462 5.24129 2.5 5.33333 2.5H12C12.092 2.5 12.1667
    2.57462 12.1667 2.66667V10.6667C12.1667 10.7587 12.092 10.8333 12
    10.8333H10H5.33333C5.24129 10.8333 5.16667 10.7587 5.16667
    10.6667V4.66667V2.66667ZM4.16667 4.16667V2.66667C4.16667 2.02233 4.689 1.5
    5.33333 1.5H12C12.6443 1.5 13.1667 2.02233 13.1667 2.66667V10.6667C13.1667
    11.311 12.6443 11.8333 12 11.8333H10.5V13.3333C10.5 13.6428 10.3771 13.9395
    10.1583 14.1583C9.9395 14.3771 9.64275 14.5 9.33333 14.5H2.66667C2.35725
    14.5 2.0605 14.3771 1.84171 14.1583C1.62292 13.9395 1.5 13.6428 1.5
    13.3333V5.33333C1.5 5.02391 1.62292 4.72717 1.84171 4.50838C2.0605 4.28958
    2.35725 4.16667 2.66667 4.16667H4.16667ZM9.5 11.8333V13.3333C9.5 13.3775
    9.48244 13.4199 9.45118 13.4512C9.41993 13.4824 9.37754 13.5 9.33333
    13.5H2.66667C2.62246 13.5 2.58007 13.4824 2.54882 13.4512C2.51756 13.4199
    2.5 13.3775 2.5 13.3333V5.33333C2.5 5.28913 2.51756 5.24674 2.54882
    5.21548C2.58007 5.18423 2.62246 5.16667 2.66667
    5.16667H4.16667V10.6667C4.16667 11.311 4.689 11.8333 5.33333 11.8333H9.5Z"
    fill="currentColor"/></svg></button></div></div></div></div>
  x-metadata:
    apiId: Audit Partner v1
    tags:
      - Class Auditor
servers:
  - url: https://apigateway.class-pie.com.au/api/1.0
    description: Partner Integration Environment (Sandbox)
  - url: https://apigateway.class.com.au/api/1.0
    description: Production Environment
paths:
  /f/{businessCode}/{fundCode}/feed-data/balance-summary/{feedId}:
    get:
      operationId: feedBalanceSummary
      summary: Feed balance summary by feed
      description: >-
        Retrieves a report of feed and ledger balances for a specific feed
        within a fund, including aggregate counts of how many accounts are
        balanced, unbalanced, or have no data.
      tags:
        - Fund
      parameters:
        - $ref: '#/components/parameters/businessCodeParam'
        - $ref: '#/components/parameters/fundCodeParam'
        - name: feedId
          in: path
          description: The unique GUID identifier of the feed to retrieve balance data for.
          required: true
          schema:
            type: string
            example: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
        - name: includeHoldingBalance
          in: query
          description: Include holding balance details in the response.
          required: false
          schema:
            type: boolean
            default: false
        - name: asAtDate
          in: query
          description: The date for which to retrieve balance data.
          required: false
          schema:
            type: string
            example: '2024-07-01'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                  - Errors
                properties:
                  Data:
                    type: array
                    items:
                      $ref: '#/components/schemas/FeedData_FeedBalanceSummary'
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApiError'
              examples:
                includeHoldingBalanceTrue:
                  summary: includeHoldingBalance=true
                  value:
                    Data:
                      - FeedId: a8275e0c-f5b7-4097-ac8e-4f40cd7a22df
                        DefaultDisplayName: CBA Savings Account - 000-111/11111111
                        BalancedAccounts: 1
                        UnbalancedAccounts: 0
                        OtherAccounts: 0
                        Status: Balanced
                        Balances:
                          - SecurityIssueCode: CASH
                            HoldingAccountCode: ha-cba-001
                            HoldingAccountId: d4e5f678-1a2b-3c4d-5e6f-7a8b9c0d1e2f
                            HoldingAccountDescription: CBA Cash Holdings
                            LedgerBalance: 125000.5
                            LedgerBalanceDate: '2025-03-15T08:30:00'
                            FeedBalance: 125000.5
                            FeedBalanceDate: '2025-03-15T08:30:00'
                            Status: Balanced
                    Errors: []
                includeHoldingBalanceFalse:
                  summary: includeHoldingBalance=false
                  value:
                    Data:
                      - FeedId: a8275e0c-f5b7-4097-ac8e-4f40cd7a22df
                        DefaultDisplayName: CBA Savings Account - 000-111/11111111
                        BalancedAccounts: 1
                        UnbalancedAccounts: 0
                        OtherAccounts: 0
                        Status: Balanced
                        Balances: null
                    Errors: []
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.details.read
  /f/{businessCode}/{fundCode}/report-data/accounting-reports/bank-account-movement-descriptions:
    get:
      operationId: bankAccountMovement
      summary: Bank account movement
      description: >-
        Retrieves a report detailing the movement descriptions for a fund's bank
        accounts within a specified date range.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - $ref: '#/components/parameters/startDateParam'
        - $ref: '#/components/parameters/endDateParam'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/AccountingReports_BankAccountMovementDescriptions
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /b/{businessCode}/business-data/brand-list:
    get:
      tags:
        - Business
      operationId: BrandList
      summary: Brand list
      description: List all Brands in the specified Business
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-3'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    description: The primary data payload containing brand information.
                    $ref: '#/components/schemas/BusinessData_BrandListDetail'
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase-2'
              example:
                Data:
                  BrandSummaries:
                    - Code: sample-brand-1
                      Name: Sample Brand Alpha
                      CanWrite: true
                    - Code: sample-brand-2
                      Name: Sample Brand Beta
                      CanWrite: false
                Errors: []
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    description: A list of validation or request errors.
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse-2'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    description: A list of authorization errors.
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon-2'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    description: A list of forbidden access errors.
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon-2'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    description: A list of resource not found errors.
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon-2'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    description: A list of internal server errors.
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-2'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    description: A list of unexpected errors.
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-2'
      security:
        - Class_oAuth:
            - business.fund.list
  /f/{businessCode}/{fundCode}/report-data/accounting-reports/disposal-capital-gains:
    get:
      operationId: realisedCapitalGains
      summary: Realised capital gains
      description: >-
        Retrieves a report of realised capital gains from investment disposals,
        with results grouped by specified critera.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: startDate
          in: query
          description: The start date to retrieve the data for
          required: true
          schema:
            type: string
            format: date
            example: '2024-07-01'
        - name: endDate
          in: query
          description: The end date to retrieve the data for
          required: true
          schema:
            type: string
            format: date
            example: '2025-06-30'
        - name: groupBy
          in: query
          description: Default value is MarketType
          required: false
          schema:
            $ref: '#/components/schemas/InvestmentGroupingType'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/AccountingReports_DisposalCapitalGainsSummary
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/accounting-reports/financial-position-statement:
    get:
      operationId: statementOfFinancialPosition
      summary: Statement of financial position
      description: >-
        Generates a statement of financial position for a fund for a given year,
        with a comparison to another year.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - $ref: '#/components/parameters/yearParam'
        - name: comparisonYear
          in: query
          description: To compare current data against another Financial Year
          required: true
          schema:
            type: integer
            format: int32
            example: 2023
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/AccountingReports_FinancialPositionStatement
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
              example:
                Data:
                  FundName: DEMO_SMSF Demo Fund
                  FundCode: DEMO_SMSF
                  AsAtDate: '2025-06-30'
                  PreviousYearAsAtDate: '2024-06-30'
                  PreviousYearAsAtDateSpecified: true
                  CurrentLiabilityForAccruedBenefits: 4185042.84
                  PreviousYearLiabilityForAccruedBenefits: 4185042.84
                  Assets:
                    - Id: investments
                      Description: Investments
                      Balance: 1684872
                      PreviousYearBalance: 1684872
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: investments.Property
                      Description: Direct Property
                      Balance: 750000
                      PreviousYearBalance: 750000
                      Depth: 2
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: 6A
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: >-
                        investments.Property.14fa02cc-76f4-4d7f-bf88-8e9a3a10d9cf
                      Description: 123 Smith Street
                      Balance: 750000
                      Quantity: 1
                      PreviousYearBalance: 750000
                      PreviousYearQuantity: 1
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: investments.ListedShares
                      Description: Shares in Listed Companies
                      Balance: 934872
                      PreviousYearBalance: 934872
                      Depth: 2
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: 6B
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: >-
                        investments.ListedShares.33248d12-4cd3-4fc8-aaa9-ede3f31ae33f
                      Description: ASX Limited
                      Balance: 60900
                      Quantity: 1800
                      PreviousYearBalance: 60900
                      PreviousYearQuantity: 1800
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.6cc318f0-beb1-44bd-b539-29be2556bfd2
                      Description: Australian New Zealand Bank
                      Balance: 78660
                      Quantity: 4900
                      PreviousYearBalance: 78660
                      PreviousYearQuantity: 4900
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.e433119c-da4b-4b5b-848a-cb445555eda1
                      Description: BHP Ltd
                      Balance: 114620
                      Quantity: 3400
                      PreviousYearBalance: 114620
                      PreviousYearQuantity: 3400
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.ecee28b9-7747-4ccf-b7bd-4a7c8425aaa3
                      Description: Cochlear Limited
                      Balance: 25000
                      Quantity: 1000
                      PreviousYearBalance: 25000
                      PreviousYearQuantity: 1000
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.834691da-478e-4f18-b1ba-fbc6cc2bb372
                      Description: Commonwealth Bank
                      Balance: 93472
                      Quantity: 3700
                      PreviousYearBalance: 93472
                      PreviousYearQuantity: 3700
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.b0ace3a2-877e-40de-aec0-73090c5c45f9
                      Description: CSR Limited
                      Balance: 35000
                      Quantity: 15000
                      PreviousYearBalance: 35000
                      PreviousYearQuantity: 15000
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.73faefc3-c807-4720-8e30-c070dad35983
                      Description: Jb Hi-Fi Limited
                      Balance: 61260
                      Quantity: 5000
                      PreviousYearBalance: 61260
                      PreviousYearQuantity: 5000
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.fe39f581-6c03-4b86-9144-1405a447f0f2
                      Description: Maverick Drilling And Exploration Limited
                      Balance: 70000
                      Quantity: 400000
                      PreviousYearBalance: 70000
                      PreviousYearQuantity: 400000
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.b783976f-b787-4e1b-9432-2a124ca741bd
                      Description: National Australia Bank Limited
                      Balance: 53040
                      Quantity: 2500
                      PreviousYearBalance: 53040
                      PreviousYearQuantity: 2500
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.8c062930-44e6-427c-8fda-8c2210a13e23
                      Description: Resmed Limited
                      Balance: 28000
                      Quantity: 1000
                      PreviousYearBalance: 28000
                      PreviousYearQuantity: 1000
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.80305473-fde6-4bc2-bb3e-73f1a3db675c
                      Description: Resources Generation Limited
                      Balance: 6500
                      Quantity: 6500
                      PreviousYearBalance: 6500
                      PreviousYearQuantity: 6500
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.4c65c93a-92c9-4e5b-b828-dd8a87ef9fb0
                      Description: RIO Limited
                      Balance: 82300
                      Quantity: 1900
                      PreviousYearBalance: 82300
                      PreviousYearQuantity: 1900
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.8b03ebad-9ea7-4f60-b7e3-da084a857d73
                      Description: Telstra
                      Balance: 50740
                      Quantity: 21000
                      PreviousYearBalance: 50740
                      PreviousYearQuantity: 21000
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.df9b8870-3d70-452b-90e1-18e1ad8b4c06
                      Description: Westpac
                      Balance: 105900
                      Quantity: 5500
                      PreviousYearBalance: 105900
                      PreviousYearQuantity: 5500
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: >-
                        investments.ListedShares.e5111d2c-0b74-4b90-aa04-f05159944205
                      Description: Woolworths Limited
                      Balance: 69480
                      Quantity: 2600
                      PreviousYearBalance: 69480
                      PreviousYearQuantity: 2600
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: true
                      PreviousYearQuantitySpecified: true
                    - Id: other_assets
                      Description: Other Assets
                      Balance: 467949.62
                      PreviousYearBalance: 467949.62
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: cash_at_bank
                      Description: Cash At Bank
                      Balance: 96190.11
                      PreviousYearBalance: 96190.11
                      Depth: 2
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: cash_at_bank.fc45ed3a-8229-4a59-971c-bb50a4564f5f
                      Description: S &amp; S Burrell CMA
                      Balance: 96190.11
                      PreviousYearBalance: 96190.11
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: foreign_cash_at_bank
                      Description: Foreign Cash At Bank
                      Balance: 13596.73
                      PreviousYearBalance: 13596.73
                      Depth: 2
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: >-
                        foreign_cash_at_bank.4038d678-9008-43d7-973d-ffaff4eb2240
                      Description: stanley foreign bank account
                      Balance: 13596.73
                      PreviousYearBalance: 13596.73
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: receivables
                      Description: Receivables
                      Balance: 225543.17
                      PreviousYearBalance: 225543.17
                      Depth: 2
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: investment_income_receivable
                      Description: Investment Income Receivable
                      Balance: 225543.17
                      PreviousYearBalance: 225543.17
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: income_tax_payable
                      Description: Current Tax Assets
                      Balance: 132619.61
                      PreviousYearBalance: 132619.61
                      Depth: 2
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: income_tax_payable_sub_account
                      Description: Income Tax Payable
                      Balance: -2250
                      PreviousYearBalance: -2250
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: imputation_credits
                      Description: Franking Credits
                      Balance: 134822.76
                      PreviousYearBalance: 134822.76
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: foreign_tax_credits
                      Description: Foreign Tax Credits
                      Balance: 46.85
                      PreviousYearBalance: 46.85
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                  Liabilities:
                    - Id: investments_dual
                      Description: Investments
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: unsettled_trades_dual
                      Description: Unsettled Trades
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: depreciation_suspense
                      Description: Depreciation Suspense
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: other_creditors_and_accruals
                      Description: Other Creditors and Accruals
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: member_payments_liable
                      Description: Member Payments
                      Balance: 500
                      PreviousYearBalance: 500
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: pensions_paid_liable
                      Description: Pensions Paid
                      Balance: 500
                      PreviousYearBalance: 500
                      Depth: 2
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: pensions_paid_liable.2
                      Description: Mrs Stephanie Burrell
                      Balance: 500
                      PreviousYearBalance: 500
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: income_tax_suspense_account
                      Description: Income Tax Suspense
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: profit_allocation_suspense_account
                      Description: Profit Allocation Suspense
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: provision_for_deferred_income_tax
                      Description: Deferred Tax Liability
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: other_taxes
                      Description: Other Taxes Payable
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: fund_suspense
                      Description: Fund Suspense
                      Balance: 435530.78
                      PreviousYearBalance: 435530.78
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: fund_suspense.fc45ed3a-8229-4a59-971c-bb50a4564f5f
                      Description: S &amp; S Burrell CMA
                      Balance: 423730.92
                      PreviousYearBalance: 423730.92
                      Depth: 2
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: fund_suspense.4038d678-9008-43d7-973d-ffaff4eb2240
                      Description: stanley foreign bank account
                      Balance: 11799.86
                      PreviousYearBalance: 11799.86
                      Depth: 2
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: fund_opening_suspense
                      Description: Fund Opening Suspense
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: opening_position_balancing_account
                      Description: Opening Position Balancing Account
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: cash_net_off_suspense
                      Description: Cash Net Off Suspense
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: unallocated_contributions
                      Description: Unallocated Contributions
                      Balance: 0
                      PreviousYearBalance: 0
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                  LiabilitiesForAccruedBenefits:
                    - Id: unallocated_member_entitlements
                      Description: Unallocated Member Entitlements
                      Balance: 482664.84
                      PreviousYearBalance: 482664.84
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: members_entitlements_accounts
                      Description: Member Entitlement Accounts
                      Balance: 1234126
                      PreviousYearBalance: 1234126
                      Depth: 1
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: members_entitlements_accounts.1
                      Description: Mr Stanley Burrell
                      Balance: 1111876
                      PreviousYearBalance: 1111876
                      Depth: 2
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: >-
                        members_entitlements_accounts.1.ec12454b-007c-4390-a9d2-e57dbd4764b1
                      Description: Accumulation
                      Balance: 1111876
                      PreviousYearBalance: 1111876
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: members_entitlements_accounts.2
                      Description: Mrs Stephanie Burrell
                      Balance: 122250
                      PreviousYearBalance: 122250
                      Depth: 2
                      BalanceIsSummary: true
                      PreviousYearBalanceIsSummary: true
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: >-
                        members_entitlements_accounts.2.d3115916-0d57-4b96-9c8e-5b96d10ce317
                      Description: Accumulation
                      Balance: 110475
                      PreviousYearBalance: 110475
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                    - Id: >-
                        members_entitlements_accounts.2.b6c8ce2b-f886-4a9d-9dc6-beebe9a7c8aa
                      Description: New Pension Account
                      Balance: 11775
                      PreviousYearBalance: 11775
                      Depth: 3
                      BalanceIsSummary: false
                      PreviousYearBalanceIsSummary: false
                      FundNotesReferenceNumber: ''
                      QuantitySpecified: false
                      PreviousYearQuantitySpecified: false
                Errors: []
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/fund-data/fund-detail:
    get:
      tags:
        - Fund
      operationId: getFundDetail
      summary: Fund detail
      description: >-
        Access fund information such as the funds name, ABN, status, and contact
        details.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                properties:
                  Data:
                    $ref: '#/components/schemas/FundData_FundDetail'
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase-3'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon-3'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon-3'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon-3'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
      security:
        - Class_oAuth:
            - fund.details.read
    post:
      tags:
        - Fund
      operationId: UpdateDetailsFundCommunity
      summary: Update fund detail
      description: Update the details of a fund.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FundData_FundDetail'
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                properties:
                  Data:
                    type: array
                    items:
                      $ref: '#/components/schemas/FundData_AllFundsList'
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase-3'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse-3'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon-3'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon-3'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon-3'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
      security:
        - Class_oAuth:
            - fund.details.maintain
  /b/{businessCode}/fund-data/fund-list:
    get:
      operationId: getFundList
      summary: Fund list
      tags:
        - Business
      description: The list of all the funds within the business with summarised details.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - name: FundTags
          in: query
          description: Filter the funds returned based on tags attached to the fund
          required: false
          schema:
            type: string
            example: FY2025
        - name: brandCode
          in: query
          description: The Brand Code that the fund is grouped under.
          required: false
          schema:
            type: string
            example: demo-brand
        - name: relevanceSearch
          in: query
          description: Relevance Search
          required: false
          schema:
            type: boolean
            example: true
        - name: Search
          in: query
          description: Search terms to filter
          required: false
          schema:
            type: string
            example: demo-fund
        - name: legalEntityType
          in: query
          description: Legal Entity Type
          required: false
          schema:
            $ref: '#/components/schemas/LegalEntityType'
          examples:
            SMSF:
              value: SMSF
            SAF:
              value: SAF
            Personal:
              value: Personal
            Trust:
              value: Trust
            Company:
              value: Company
            Partnership:
              value: Partnership
            Consolidated:
              value: Consolidated
        - name: statusCode
          in: query
          description: Status Code
          required: false
          schema:
            $ref: '#/components/schemas/CoreConcepts_StatusCode'
          examples:
            Active:
              value: Active
            Cancelled:
              value: Cancelled
            Pending:
              value: Pending
            Suspended:
              value: Suspended
        - name: ABN
          in: query
          description: Australian Business Number
          required: false
          schema:
            type: string
          example: '53004085616'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                properties:
                  Data:
                    type: array
                    items:
                      $ref: '#/components/schemas/FundData_FundListDetail'
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase-3'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      type: object
                      properties:
                        Code:
                          type: string
                          example: API_INVALID_PARAMETER
                        Message:
                          type: string
                          example: The BrandCode parameter is invalid
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon-3'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon-3'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon-3'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
      security:
        - Class_oAuth:
            - business.fund.list
  /f/{businessCode}/{fundCode}/report-data/accounting-reports/general-ledger-account-movement-descriptions:
    get:
      operationId: generalLedgerAccountMovement
      summary: General ledger account movement
      description: >-
        Provides descriptions of movements for general ledger accounts within a
        given date range.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - $ref: '#/components/parameters/startDateParam'
        - $ref: '#/components/parameters/endDateParam'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/AccountingReports_GlAccountMovementDescriptions
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/investment-reports/investment-income-by-period:
    get:
      operationId: investmentIncomeByPeriod
      summary: investmentIncomeByPeriod
      description: A summary of the income received by the fund
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: startDate
          in: query
          required: true
          schema:
            type: string
            format: date
            example: '2024-07-01'
        - name: endDate
          in: query
          required: true
          schema:
            type: string
            format: date
            example: '2025-06-30'
        - $ref: '#/components/parameters/groupByParam'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: '#/components/schemas/InvestmentReports_InvestmentIncome'
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase-4'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon-4'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon-4'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/accounting-reports/investment-income-comparison:
    get:
      operationId: investmentIncomeComparisonReport
      summary: Investment income comparison report
      description: Generates a report that compares investment income between two periods.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - $ref: '#/components/parameters/startDateParam'
        - $ref: '#/components/parameters/endDateParam'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/AccountingReports_InvestmentIncomeComparisonReport
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/report-generator/InvestmentIncomeComparisonReport:
    post:
      operationId: runReportInvestmentIncomeComparisonReport
      summary: Investment Income Comparison Report
      description: >-
        Produces an Investment Income Comparison report for the specified fund,
        comparing income performance across asset holdings and reporting periods
        to support informed investment decision-making and trustee review.
      security:
        - Class_oAuth:
            - fund.read
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: Content-Type
          in: header
          description: >-
            Specifies the media type expected in the response. Must always be
            set to application/pdf regardless of the desired output format.
          required: true
          schema:
            type: string
            example: application/pdf
        - $ref: '#/components/parameters/outputFormatParam'
        - name: startDate
          in: query
          description: The start date of the reporting period in YYYY-MM-DD format.
          required: true
          schema:
            type: string
            example: '2024-07-01'
        - name: endDate
          in: query
          description: The end date of the reporting period in YYYY-MM-DD format.
          required: true
          schema:
            type: string
            example: '2025-06-30'
        - $ref: '#/components/parameters/isReportHeaderParam'
        - $ref: '#/components/parameters/isDraftWMParam'
        - $ref: '#/components/parameters/isDollarSignParam'
        - $ref: '#/components/parameters/isRoundingParam'
        - $ref: '#/components/parameters/isNegativeAmtParam'
        - $ref: '#/components/parameters/isPageFooterParam'
        - name: includeAssetCodes
          in: query
          description: >-
            Indicates whether asset codes should be included in the report
            output.
          required: false
          schema:
            type: string
            example: 'True'
            enum:
              - 'True'
              - 'False'
      responses:
        '200':
          description: Success (Ok)
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '415':
          description: Unsupported Media Type
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
  /f/{businessCode}/{fundCode}/report-data/investment-reports/investment-movement:
    get:
      operationId: investmentMovementSummary
      summary: investmentMovementSummary
      description: >-
        Provides a detailed list of transactions in a particular bank account or
        group of bank accounts for a period.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: startDate
          in: query
          required: true
          schema:
            type: string
            format: date
            example: '2024-07-01'
        - name: endDate
          in: query
          required: true
          schema:
            type: string
            format: date
            example: '2025-06-30'
        - $ref: '#/components/parameters/groupByParam'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/InvestmentReports_InvestmentMovementSummary
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase-4'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon-4'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon-4'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/report-generator/InvestmentMovementSummary:
    post:
      operationId: runReportInvestmentMovementSummary
      summary: Investment Movement Summary
      description: >-
        Produces an Investment Movement Summary report for the specified fund,
        providing an aggregated view of purchases, sales, and transfers across
        the investment portfolio during the reporting period.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: Content-Type
          in: header
          description: >-
            Specifies the media type expected in the response. Must always be
            set to application/pdf regardless of the desired output format.
          required: true
          schema:
            type: string
            example: application/pdf
        - $ref: '#/components/parameters/outputFormatParam'
        - $ref: '#/components/parameters/isReportHeaderParam'
        - $ref: '#/components/parameters/isDraftWMParam'
        - $ref: '#/components/parameters/isDollarSignParam'
        - $ref: '#/components/parameters/isRoundingParam'
        - $ref: '#/components/parameters/isNegativeAmtParam'
        - $ref: '#/components/parameters/isPageFooterParam'
        - name: groupBy
          in: query
          schema:
            type: string
            example: MarketType
            enum:
              - MarketType
              - AssetPool
              - GL
              - Reference
        - name: includeAssetCodes
          in: query
          description: >-
            Indicates whether asset codes should be included in the report
            output.
          schema:
            type: string
            example: 'True'
            enum:
              - 'True'
              - 'False'
        - name: startDate
          in: query
          description: The start date of the reporting period in YYYY-MM-DD format.
          schema:
            type: string
            example: '2024-07-01'
        - name: endDate
          in: query
          description: The end date of the reporting period in YYYY-MM-DD format.
          schema:
            type: string
            example: '2025-06-30'
        - name: isSepPagePerPortfolio
          in: query
          schema:
            type: string
            example: 'No'
            enum:
              - 'Yes'
              - 'No'
      responses:
        '200':
          description: Success (Ok)
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '415':
          description: Unsupported Media Type
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/report-generator/InvestmentRevaluation:
    post:
      operationId: runReportInvestmentRevaluation
      summary: Investment Revaluation
      description: >-
        Produces an Investment Revaluation report for the specified fund,
        capturing unrealised gains and losses arising from market value
        movements to support accurate net asset calculation and financial
        statement preparation.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: Content-Type
          in: header
          description: >-
            Specifies the media type expected in the response. Must always be
            set to application/pdf regardless of the desired output format.
          required: true
          schema:
            type: string
            example: application/pdf
        - $ref: '#/components/parameters/outputFormatParam'
        - name: year
          description: The financial year to retrieve information
          in: query
          required: false
          schema:
            type: integer
            example: 2025
        - $ref: '#/components/parameters/isReportHeaderParam'
        - $ref: '#/components/parameters/isDraftWMParam'
        - $ref: '#/components/parameters/isDollarSignParam'
        - $ref: '#/components/parameters/isRoundingParam'
        - $ref: '#/components/parameters/isNegativeAmtParam'
        - $ref: '#/components/parameters/isPageFooterParam'
        - name: includeAssetCodes
          in: query
          description: >-
            Indicates whether asset codes should be included in the report
            output.
          schema:
            type: string
            example: 'True'
            enum:
              - 'True'
              - 'False'
        - name: groupBy
          in: query
          schema:
            type: string
            example: MarketType
            enum:
              - MarketType
              - AssetPool
              - GL
              - Reference
      responses:
        '200':
          description: Success (Ok)
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '415':
          description: Unsupported Media Type
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/investment-reports/investment-summary:
    get:
      operationId: investmentSummary
      summary: investmentSummary
      description: >-
        Statement of investments held by the fund and their unrealised gains to
        date.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: atDate
          in: query
          required: true
          schema:
            type: string
            format: date
          example: '2024-07-01'
        - name: groupBy
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/InvestmentGroupingType-2'
        - name: includeIncomeExpected
          in: query
          required: false
          schema:
            type: boolean
            example: true
        - name: costBaseType
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/CostbaseType'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: '#/components/schemas/InvestmentReports_InvestmentSummary'
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase-4'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon-4'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon-4'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/report-generator/MarketPriceAuditReport:
    post:
      operationId: runReportMarketPriceAuditReport
      summary: Market Price Audit Report
      description: >-
        Produces a Market Price Audit Report for the specified fund, validating
        the market prices applied to investment valuations to support the annual
        audit process and ensure compliance with fair value measurement
        requirements.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: Content-Type
          in: header
          description: >-
            Specifies the media type expected in the response. Must always be
            set to application/pdf regardless of the desired output format.
          required: true
          schema:
            type: string
            example: application/pdf
        - $ref: '#/components/parameters/outputFormatParam'
        - name: atDate
          in: query
          required: true
          schema:
            type: string
            example: '2024-07-01'
        - $ref: '#/components/parameters/isReportHeaderParam'
        - $ref: '#/components/parameters/isDraftWMParam'
        - $ref: '#/components/parameters/isDollarSignParam'
        - $ref: '#/components/parameters/isRoundingParam'
        - $ref: '#/components/parameters/isNegativeAmtParam'
        - $ref: '#/components/parameters/isPageFooterParam'
        - name: includeAssetCodes
          in: query
          description: >-
            Indicates whether asset codes should be included in the report
            output.
          schema:
            type: string
            example: 'True'
            enum:
              - 'True'
              - 'False'
        - name: groupBy
          in: query
          schema:
            type: string
            example: MarketType
            enum:
              - MarketType
              - AssetPool
              - GL
              - Reference
      responses:
        '200':
          description: Success (Ok)
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '415':
          description: Unsupported Media Type
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/member-data/member-detail:
    get:
      tags:
        - Fund
      operationId: getMembersDetail
      summary: Members detail
      description: The list of all the members within the fund with basic details.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: '#/components/schemas/MemberData_MemberDetail'
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse-3'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.member.read
  /f/{businessCode}/{fundCode}/report-data/member-reports/member-statement:
    get:
      operationId: memberStatement
      summary: Member statement
      description: >-
        Provides detailed member information including personal details, account
        summaries, benefit component breakdowns, insurance details and
        beneficiary information.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: startDate
          in: query
          required: true
          schema:
            type: string
            format: date
            example: '2024-07-01'
        - name: endDate
          in: query
          required: true
          schema:
            type: string
            format: date
            example: '2025-06-30'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/MemberReports_AllMemberStatementsWithAuditorDetails
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon-3'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon-3'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon-3'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/member-reports/member-transaction-summary:
    get:
      operationId: memberTransactionSummary
      summary: Member transaction summary
      description: >-
        Provides a summary of transactions per member account for the specified
        date range.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - $ref: '#/components/parameters/startDateParam-2'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/MemberReports_MemberTransactionSummary
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon-3'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon-3'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon-3'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/accounting-reports/operating-statement-document:
    get:
      operationId: operatingStatementProfitAndLoss
      summary: Operating statement profit and loss
      description: >-
        Generates a detailed operating statement (Profit and Loss) for the fund
        based on the provided input criteria.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: startDate
          in: query
          description: The start date to retrieve the data for
          required: true
          schema:
            type: string
            format: date
            example: '2024-07-01'
        - name: endDate
          in: query
          description: The end date to retrieve the data for
          required: true
          schema:
            type: string
            format: date
            example: '2025-06-30'
        - name: prevStartDate
          in: query
          description: >-
            The start date of the previous period to compare to. Default is one
            year from the start date.
          required: true
          schema:
            type: string
            format: date
            example: '2023-07-01'
        - name: prevEndDate
          in: query
          description: >-
            The end date of the previous period to compare to. Default is one
            year from the end date.
          required: true
          schema:
            type: string
            format: date
            example: '2024-06-30'
        - name: isSummary
          in: query
          description: Indicates if result should include individual accounts or summaries.
          required: false
          schema:
            type: string
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/AccountingReports_DetailedOperatingStatement
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
              example:
                Data:
                  FundName: DEMO_SMSF
                  FundCode: DEMO_SMSF
                  Period:
                    StartPeriodDate: '2025-07-01'
                    EndPeriodDate: '2026-06-30'
                    IsEmpty: false
                    IsPopulated: true
                    NumberOfDaysContained: 365
                  PreviousPeriod:
                    StartPeriodDate: '2024-07-01'
                    EndPeriodDate: '2025-06-30'
                    IsEmpty: false
                    IsPopulated: true
                    NumberOfDaysContained: 366
                  IncludesPrevYear: true
                  IncomeItems:
                    - Id: member_receipts
                      Description: Member Receipts
                      TotalValue: 43.22
                      TotalValuePrevYear: 0
                      Depth: 1
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: rollovers_in
                      Description: Rollovers In
                      TotalValue: 1.22
                      TotalValuePrevYear: 0
                      Depth: 2
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: contributions
                      Description: Contributions
                      TotalValue: 42
                      TotalValuePrevYear: 0
                      Depth: 2
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: member
                      Description: Member
                      TotalValue: 7
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: child
                      Description: Child
                      TotalValue: 5
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: spouse
                      Description: Spouse
                      TotalValue: 6
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: government_co-contributions
                      Description: Government Co-Contributions
                      TotalValue: 7
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: family_home_downsizing
                      Description: Downsizer Contribution
                      TotalValue: 8
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: other_contributions
                      Description: Other
                      TotalValue: 9
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: investment_gains
                      Description: Investment Gains
                      TotalValue: 60.22
                      TotalValuePrevYear: 0
                      Depth: 1
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: investment_income
                      Description: Investment Income
                      TotalValue: 391
                      TotalValuePrevYear: 0
                      Depth: 1
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: foreign_income
                      Description: Foreign Income
                      TotalValue: 78
                      TotalValuePrevYear: 0
                      Depth: 2
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: foreign_income.ForeignIncome.ForeignDividend
                      Description: Foreign Dividend
                      TotalValue: 18
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: false
                      TotalValuePrevYearIsSummary: false
                      FundNotesReferenceNumber: null
                    - Id: foreign_income.ForeignIncome.ForeignInterest
                      Description: Foreign Interest
                      TotalValue: 19
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: false
                      TotalValuePrevYearIsSummary: false
                      FundNotesReferenceNumber: null
                    - Id: foreign_income.ForeignIncome.NonTaxableForeignIncome
                      Description: Non Taxable Foreign Income
                      TotalValue: 20
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: false
                      TotalValuePrevYearIsSummary: false
                      FundNotesReferenceNumber: null
                    - Id: foreign_income.ForeignIncome.TaxableForeignIncome
                      Description: Taxable Foreign Income
                      TotalValue: 21
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: false
                      TotalValuePrevYearIsSummary: false
                      FundNotesReferenceNumber: null
                    - Id: other_income
                      Description: Other Income
                      TotalValue: 207
                      TotalValuePrevYear: 0
                      Depth: 1
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                  ExpenseItems:
                    - Id: member_payments
                      Description: Member Payments
                      TotalValue: 243
                      TotalValuePrevYear: 0
                      Depth: 1
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: lump_sums_paid
                      Description: Lump Sums Paid
                      TotalValue: 38
                      TotalValuePrevYear: 0
                      Depth: 2
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: pensions_paid
                      Description: Pensions Paid
                      TotalValue: 39
                      TotalValuePrevYear: 0
                      Depth: 2
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: property_expenses_expense
                      Description: Property Expenses
                      TotalValue: 2047
                      TotalValuePrevYear: 0
                      Depth: 2
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: property_expenses_expense.PropertyExpenses.Advertising
                      Description: Advertising
                      TotalValue: 78
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: false
                      TotalValuePrevYearIsSummary: false
                      FundNotesReferenceNumber: null
                    - Id: property_expenses_expense.PropertyExpenses.Rates
                      Description: Council Rates
                      TotalValue: 81
                      TotalValuePrevYear: 0
                      Depth: 3
                      TotalValueIsSummary: false
                      TotalValuePrevYearIsSummary: false
                      FundNotesReferenceNumber: null
                  IncomeTaxItems:
                    - Id: income_tax_control
                      Description: Income Tax Expense
                      TotalValue: 215
                      TotalValuePrevYear: 0
                      Depth: 1
                      TotalValueIsSummary: true
                      TotalValuePrevYearIsSummary: true
                      FundNotesReferenceNumber: null
                    - Id: income_tax_expense
                      Description: Income Tax Expense
                      TotalValue: 107
                      TotalValuePrevYear: 0
                      Depth: 2
                      TotalValueIsSummary: false
                      TotalValuePrevYearIsSummary: false
                      FundNotesReferenceNumber: null
                    - Id: excessive_foreign_tax_credit_writeoff_expense
                      Description: Excessive Foreign Tax Credit Writeoff Expense
                      TotalValue: 108
                      TotalValuePrevYear: 0
                      Depth: 2
                      TotalValueIsSummary: false
                      TotalValuePrevYearIsSummary: false
                      FundNotesReferenceNumber: null
                Errors: null
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/feed-data/processing-summary/{feedId}:
    get:
      operationId: fundFeedProcessingSummaryByFeed
      summary: Feed processing summary by feed
      description: >-
        Retrieves the configuration and current status of a specific feed within
        a fund.
      tags:
        - Fund
      parameters:
        - $ref: '#/components/parameters/businessCodeParam'
        - $ref: '#/components/parameters/fundCodeParam'
        - name: feedId
          in: path
          description: The unique GUID identifier of the feed.
          required: true
          schema:
            type: string
            example: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                  - Errors
                properties:
                  Data:
                    type: array
                    items:
                      $ref: '#/components/schemas/FeedData_FeedProcessingSummary'
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApiError'
              example:
                Data:
                  - FeedId: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
                    FundId: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f
                    FundCode: demo-fund
                    FundName: Demo Super Fund
                    BrandId: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
                    BrandCode: demo-brand
                    BrandName: Demo Brand
                    BusinessId: d6e1a45f-7e8b-7f9c-2a0d-1b2c3d4e5f6a
                    BusinessCode: demo-business
                    BusinessName: Demo Business Pty Ltd
                    AccountName: Demo Fund Cash Account
                    FeedDescription: Commonwealth Bank of Australia - Cash Account
                    ExternalIdentifier: '12345678'
                    DefaultDisplayName: CBA Cash - demo-fund
                    HIN: null
                    BankAccountId: e7f2b56a-8f9b-8a0c-3d1e-2b3c4d5e6f7a
                    BSB: 000-000
                    FeedStatus: Ok
                    FeedStatusCategory: Working
                    FeedStatusEffectiveDate: '2025-01-01T00:00:00'
                    ProductId: f8a3b67c-9a0d-9b1e-4c2d-3e4f5a6b7c8d
                    ProductName: Commonwealth Bank of Australia
                    ProductType: BankAccount
                    IsContributionProduct: false
                    ProviderId: a9b4c78d-0b1e-0c2f-5d3e-4f5a6b7c8d9e
                    ProviderName: Commonwealth Bank
                    FirstProcessed: '2024-07-01T09:00:00'
                    LastProcessed: '2025-03-15T08:30:00'
                    FirstProcessedSpecified: true
                    LastProcessedSpecified: true
                    AuthorisationType: AccountHolder
                    AuthorisationStatus: Received
                    HasAuthorityProcess: true
                    AuthorityUploaded: true
                    AuthorityId: b0c5d89e-1c2f-1d3a-6e4f-5a6b7c8d9e0f
                    AdviserId: c1d6e90f-2d3a-2e4b-7f5a-6b7c8d9e0f1a
                    AdviserName: John Smith
                    AdviserCode: JS001
                Errors: []
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.details.read
  /f/{businessCode}/{fundCode}/report-data/report-generator/RealisedCapitalGains:
    post:
      operationId: runReportRealisedCapitalGains
      summary: Realised Capital Gains
      description: >-
        Produces a Realised Capital Gains report for the specified fund,
        detailing gains and losses realised from asset disposals during the
        reporting period to support accurate tax assessment and ATO reporting
        obligations.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: Content-Type
          in: header
          description: >-
            Specifies the media type expected in the response. Must always be
            set to application/pdf regardless of the desired output format.
          required: true
          schema:
            type: string
            example: application/pdf
        - $ref: '#/components/parameters/outputFormatParam'
        - name: startDate
          in: query
          description: The start date of the reporting period in YYYY-MM-DD format.
          schema:
            type: string
            example: '2024-07-01'
        - name: endDate
          in: query
          description: The end date of the reporting period in YYYY-MM-DD format.
          schema:
            type: string
            example: '2025-06-30'
        - $ref: '#/components/parameters/isSummaryParam'
        - $ref: '#/components/parameters/isReportHeaderParam'
        - $ref: '#/components/parameters/isDraftWMParam'
        - $ref: '#/components/parameters/isDollarSignParam'
        - $ref: '#/components/parameters/isRoundingParam'
        - $ref: '#/components/parameters/isNegativeAmtParam'
        - $ref: '#/components/parameters/isPageFooterParam'
        - name: groupBy
          in: query
          required: false
          schema:
            type: string
            enum:
              - MarketType
              - AssetPool
              - GL
              - Reference
            example: MarketType
        - name: includeAssetCodes
          in: query
          description: >-
            Indicates whether asset codes should be included in the report
            output.
          schema:
            type: string
            example: 'True'
            enum:
              - 'True'
              - 'False'
      responses:
        '200':
          description: Success (Ok)
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '415':
          description: Unsupported Media Type
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/accounting-reports/tax-accounting-reconciliation:
    get:
      summary: Tax accounting reconciliation
      description: >-
        Generates a tax accounting reconciliation report for the fund for a
        specified financial year.
      operationId: taxAccountingReconciliation
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - $ref: '#/components/parameters/yearParam'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/AccountingReports_TaxAccountingReconciliationDetails
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/report-generator/TaxAccountingReconciliation:
    post:
      operationId: taxAccountingReconciliation
      summary: Tax Accounting Reconciliation
      description: >-
        Produces a Tax Accounting Reconciliation report for the specified fund,
        reconciling tax accounting entries to support compliance with Australian
        taxation obligations and annual tax return preparation.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: Content-Type
          in: header
          description: >-
            Specifies the media type expected in the response. Must always be
            set to application/pdf regardless of the desired output format.
          required: true
          schema:
            type: string
            example: application/pdf
        - $ref: '#/components/parameters/outputFormatParam'
        - $ref: '#/components/parameters/isReportHeaderParam'
        - $ref: '#/components/parameters/isDraftWMParam'
        - $ref: '#/components/parameters/isDollarSignParam'
        - $ref: '#/components/parameters/isPageFooterParam'
        - name: year
          description: The financial year to retrieve information
          in: query
          required: true
          schema:
            type: integer
            example: 2024
        - $ref: '#/components/parameters/isRoundingParam'
        - $ref: '#/components/parameters/isNegativeAmtParam'
      responses:
        '200':
          description: Success (Ok)
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '415':
          description: Unsupported Media Type
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/accounting-reports/transaction-audit-trail:
    get:
      operationId: generalLedgerAuditTrail
      summary: General ledger audit trail
      description: >-
        Retrieves the general ledger audit trail, showing all transactions
        within a date range, with an option to include deleted transactions.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: startDate
          in: query
          description: The start date to retrieve the data for
          required: true
          schema:
            type: string
            format: date
            example: '2024-07-01'
        - name: endDate
          in: query
          description: The end date to retrieve the data for
          required: true
          schema:
            type: string
            format: date
            example: '2025-06-30'
        - name: includeDeleted
          in: query
          description: Default value is False
          required: true
          schema:
            type: boolean
            example: false
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/AccountingReports_GlTransactionsAuditTrail
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/fund-reports/transfer-balance-declaration-report:
    get:
      operationId: transferBalanceDeclarationReport
      summary: Transfer balance declaration report
      description: >-
        Retrieves the Transfer Balance Account Report (TBAR) declaration data
        for the fund over a specified date range. Includes fund reporting
        details, member information, and transfer balance events required for
        ATO reporting obligations.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: startDate
          in: query
          description: >-
            The start date of the reporting period for TBAR events (inclusive).
            Format YYYY-MM-DD.
          required: true
          schema:
            type: string
            format: date
            example: '2024-07-01'
        - name: endDate
          in: query
          description: >-
            The end date of the reporting period for TBAR events (inclusive).
            Format YYYY-MM-DD.
          required: true
          schema:
            type: string
            format: date
            example: '2025-06-30'
        - name: tbarState
          in: query
          description: To include specific type of tbarState
          required: true
          schema:
            type: string
            enum:
              - All Transactions
              - Not Generated
              - Generated
        - name: brandCode
          in: query
          description: >-
            This parameter is only used when you are using this at a business
            scope. If specified then only funds assigned to that brand code will
            be returned.
          required: false
          schema:
            type: string
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: >-
                      #/components/schemas/FundReports_TransferBalanceDeclarationDetails
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase-5'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon-3'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon-3'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon-3'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/report-data/accounting-reports/trial-balance-details:
    get:
      operationId: trialBalance
      summary: Trial balance
      description: Retrieves the trial balance for a fund at a specific date.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: atDate
          in: query
          description: The date at which the data will be returned up to
          required: true
          schema:
            type: string
            format: date
            example: '2024-07-01'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: '#/components/schemas/AccountingReports_TrialBalanceDetails'
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.read
  /f/{businessCode}/{fundCode}/minutes-data/trustee-declaration-report:
    get:
      operationId: trusteeDeclarationReport
      summary: Trustee declaration report
      description: The list of trustees of the fund specified.
      parameters:
        - $ref: '#/components/parameters/businessCodeParam-2'
        - $ref: '#/components/parameters/fundCodeParam-2'
        - name: year
          in: query
          required: true
          description: The year of the trustee declaration report, format YYYY.
          schema:
            type: integer
            format: int32
            example: 2023
        - name: includeEmails
          in: query
          description: >-
            Optionally includes chairperson and trustee email addresses in the
            response.
          schema:
            type: boolean
            example: false
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                properties:
                  Data:
                    $ref: '#/components/schemas/MinutesData_TrusteeDeclarationReport'
                allOf:
                  - $ref: '#/components/schemas/ApiResponseBase'
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon-3'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon-3'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon-3'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon-3'
      security:
        - Class_oAuth:
            - fund.read
components:
  securitySchemes:
    Class_oAuth:
      type: oauth2
      description: Class uses oAuth2 and OpenID for authentication and authorisation
      flows:
        authorizationCode:
          authorizationUrl: https://apigateway.class-pie.com.au/connect/authorize
          tokenUrl: https://apigateway.class-pie.com.au/connect/token
          scopes:
            business.fund.list: List summarised data of funds in the business
            business.fund.create: Create new funds in the business
            fund.details.read: View basic fund details
            fund.details.maintain: View and maintain basic fund details
            fund.member.read: View member details
            fund.member.maintain: View and maintain member details
            fund.read: View all fund information
            fund.maintain: View and maintain all fund information
  parameters:
    businessCodeParam:
      name: businessCode
      in: path
      description: Class business code
      required: true
      schema:
        type: string
        example: demo-business
      example: demo-business
    fundCodeParam:
      name: fundCode
      description: Class entity code
      in: path
      required: true
      schema:
        type: string
        example: demo-fund
      example: demo-fund
    businessCodeParam-2:
      name: businessCode
      in: path
      description: Class business code
      required: true
      schema:
        type: string
        example: demo-business
    fundCodeParam-2:
      name: fundCode
      description: Class entity code
      in: path
      required: true
      schema:
        type: string
        example: demo-fund
    startDateParam:
      name: startDate
      in: query
      description: The start date to retrieve the data for
      required: false
      schema:
        type: string
        format: date
        example: '2024-07-01'
    endDateParam:
      name: endDate
      in: query
      description: The end date to retrieve the data for
      required: false
      schema:
        type: string
        format: date
        example: '2025-06-30'
    businessCodeParam-3:
      name: businessCode
      in: path
      description: The unique identifier code for the Class business.
      required: true
      schema:
        type: string
        example: demo-business
    yearParam:
      name: year
      description: The financial year to retrieve information
      in: query
      required: true
      schema:
        type: integer
        example: 2024
    groupByParam:
      name: groupBy
      in: query
      description: The grouping method to use on the investment accounts
      required: false
      schema:
        $ref: '#/components/schemas/InvestmentGroupingType-2'
    outputFormatParam:
      name: outputFormat
      in: query
      description: >-
        Specifies the desired output format for the generated report. Accepted
        values are pdf, csv, or rtf.
      required: true
      schema:
        type: string
        example: pdf
        enum:
          - pdf
          - csv
          - rtf
    isReportHeaderParam:
      name: isReportHeader
      in: query
      description: This will turn on the report header logo.
      schema:
        type: string
        example: 'No'
        enum:
          - 'Yes'
          - 'No'
    isDraftWMParam:
      name: isDraftWM
      in: query
      required: false
      description: This will turn on a draft watermark on each page.
      schema:
        type: string
        example: 'No'
        enum:
          - 'Yes'
          - 'No'
    isDollarSignParam:
      name: isDollarSign
      in: query
      description: This will display a '$' in the report.
      schema:
        type: string
        example: 'No'
        enum:
          - 'Yes'
          - 'No'
    isRoundingParam:
      name: isRounding
      in: query
      description: >-
        Indicates whether monetary amounts in the report should be rounded to
        the nearest whole dollar.
      schema:
        type: string
        example: 'No'
        enum:
          - 'Yes'
          - 'No'
    isNegativeAmtParam:
      name: isNegativeAmt
      in: query
      description: To display negative amounts with brackets or a minus sign.
      schema:
        type: string
        example: Brackets
        enum:
          - Brackets
          - Minus Sign
    isPageFooterParam:
      name: isPageFooter
      in: query
      description: This will turn on the page footer.
      schema:
        type: string
        example: 'Yes'
        enum:
          - 'Yes'
          - 'No'
          - Page Numbers Only
    startDateParam-2:
      name: startDate
      in: query
      description: The start date of the period to show movements for
      required: false
      schema:
        type: string
        format: date
        example: '2024-07-01'
    isSummaryParam:
      name: isSummary
      description: This will provide a short version of this report.
      in: query
      schema:
        type: string
        example: 'No'
        enum:
          - 'Yes'
          - 'No'
  schemas:
    InternalErrorCommon:
      type: object
      properties:
        Code:
          type: string
          example: API_INTERNAL_ERROR
        Message:
          type: string
          example: An unexpected error occurred on the server. Please try again later.
    FeedBalanceStatus:
      type: string
      description: >-
        The overall reconciliation status of a feed. An empty string indicates
        the status has not yet been determined.
      enum:
        - ''
        - Balanced
        - Unbalanced
        - NoData
    BalanceStatus:
      type: string
      enum:
        - NoData
        - Balanced
        - Unbalanced
    FeedData_BalanceInfo:
      type: object
      description: >-
        Represents the balance details for a single holding account, comparing
        the ledger balance against the feed balance to determine reconciliation
        status.
      required:
        - SecurityIssueCode
        - HoldingAccountCode
        - HoldingAccountId
        - HoldingAccountDescription
        - LedgerBalance
        - LedgerBalanceDate
        - Status
      properties:
        SecurityIssueCode:
          type: string
          description: >-
            The ASX or exchange code identifying the security associated with
            this holding.
          example: CASH
        HoldingAccountCode:
          type: string
          description: The unique code identifying the holding account within the fund.
          example: ha-cba-001
        HoldingAccountId:
          type: string
          description: The unique GUID identifier of the holding account.
          example: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
        HoldingAccountDescription:
          type: string
          description: A human-readable description of the holding account.
          example: CBA Cash Account
        LedgerBalance:
          type: number
          format: decimal
          description: The balance recorded in the Class ledger for this holding.
          example: 152500
        LedgerBalanceDate:
          type: string
          format: date-time
          description: The date as of which the ledger balance was recorded.
          example: '2025-03-15'
        FeedBalance:
          type: number
          format: decimal
          description: The balance reported by the data feed provider for this holding.
          example: 152500
          nullable: true
        FeedBalanceDate:
          type: string
          format: date-time
          description: The date as of which the feed balance was reported by the provider.
          example: '2025-03-15'
          nullable: true
        Status:
          $ref: '#/components/schemas/BalanceStatus'
          description: >-
            The reconciliation status comparing the ledger balance to the feed
            balance.
    FeedData_FeedBalanceSummary:
      type: object
      description: >-
        A summary of feed and ledger balance reconciliation for a specific feed,
        including counts of balanced and unbalanced accounts and the detailed
        per-holding balance list.
      required:
        - FeedId
        - DefaultDisplayName
        - BalancedAccounts
        - UnbalancedAccounts
        - OtherAccounts
        - Status
        - Balances
      properties:
        FeedId:
          type: string
          description: The unique GUID identifier of the feed.
          example: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f
        DefaultDisplayName:
          type: string
          description: The default display name of the feed as configured in Class.
          example: CBA Cash - demo-fund
        BalancedAccounts:
          type: integer
          format: int32
          description: >-
            The number of holding accounts where the ledger balance matches the
            feed balance.
          example: 3
        UnbalancedAccounts:
          type: integer
          format: int32
          description: >-
            The number of holding accounts where the ledger balance does not
            match the feed balance.
          example: 1
        OtherAccounts:
          type: integer
          format: int32
          description: >-
            The number of holding accounts with no feed data or in an
            indeterminate reconciliation state.
          example: 0
        Status:
          $ref: '#/components/schemas/FeedBalanceStatus'
          description: The overall reconciliation status of the feed.
        Balances:
          type: array
          description: A list of individual holding account balance details for this feed.
          items:
            $ref: '#/components/schemas/FeedData_BalanceInfo'
          nullable: true
    ApiError:
      type: object
      required:
        - Code
        - Message
      properties:
        Code:
          type: string
        Message:
          type: string
    ErrorResponse:
      type: object
      properties:
        code:
          type: string
          nullable: true
        message:
          type: string
          nullable: true
      additionalProperties: false
    UnauthorizedErrorCommon:
      type: object
      properties:
        Code:
          type: string
          example: API_NOT_AUTHORISED
        Message:
          type: string
          example: Not authorised
    ForbiddenErrorCommon:
      type: object
      properties:
        Code:
          type: string
          example: FORBIDDEN
        Message:
          type: string
          example: You do not have permission to access this resource.
    ResourceUnavailableErrorCommon:
      type: object
      properties:
        Code:
          type: string
          example: API_NOT_FOUND
        Message:
          type: string
          example: Resource not available or user does not have access to the fund.
    ApiResponseBase:
      type: object
      required:
        - Errors
      properties:
        Errors:
          type: array
          items:
            $ref: '#/components/schemas/ApiError'
    QuantityDirection:
      type: string
      description: >-
        Indicates the direction of a transaction or quantity movement. Used to
        differentiate between asset acquisitions and disposals within financial
        or investment reporting.
      enum:
        - Acquisition
        - Disposal
    BankAccountMovementDescription_Transaction:
      type: object
      properties:
        Date:
          type: string
          format: date
          description: The date the transaction occurred, formatted as YYYY-MM-DD.
          example: '2025-09-30'
        Amount:
          type: number
          format: decimal
          description: >-
            The total amount of the transaction. Positive for credits, negative
            for debits.
          example: 100000
        Direction:
          $ref: '#/components/schemas/QuantityDirection'
          description: Indicates the direction of the transaction, such as credit or debit.
        Description:
          type: string
          description: A brief description of the transaction.
          example: Acquired Shares
        index:
          type: integer
          format: int32
          description: The sequential index of the transaction in the list. (Double check)
          example: 1
        DepositAmount:
          type: number
          format: decimal
          description: >-
            The portion of the transaction that represents a deposit. (Double
            check)
          example: 100000
        WithdrawalAmount:
          type: number
          format: decimal
          description: >-
            The portion of the transaction that represents a withdrawal. (Double
            check)
          example: 0
        RunningTotal:
          type: number
          format: decimal
          description: >-
            The running total balance of the account after this transaction.
            (Double check)
          example: 250000
    BankAccountMovementDescription_BankAccountDetail:
      type: object
      properties:
        OpeningBalance:
          type: number
          format: decimal
          description: The account's balance at the beginning of the reporting period.
          example: 150000.75
        ClosingBalance:
          type: number
          format: decimal
          description: The account's balance at the end of the reporting period.
          example: 152000
        OpeningBalanceDate:
          type: string
          format: date
          description: The date on which the opening balance was recorded.
          example: '2025-01-01'
        CurrencyCode:
          type: string
          description: The ISO 4217 currency code used for the account.
          example: AUD
        AccountBSB:
          type: string
          nullable: true
          description: The BSB (Bank-State-Branch) number of the account, if applicable.
          example: null
        AccountNumber:
          type: string
          nullable: true
          description: The bank account number, if available.
          example: null
        AccountCode:
          type: string
          description: An internal or system-specific code used to identify the account.
          example: 001.BACCT
        AccountDescription:
          type: string
          description: A human-readable description or label for the account.
          example: Main Operating Account
        Status:
          type: string
          enum:
            - Active
            - Suspended
          description: The current operational status of the account.
          example: Active
        Transactions:
          type: array
          description: >-
            A list of individual financial transactions associated with the bank
            account during the reporting period. Each transaction includes the
            date, description, and amount, providing a detailed view of account
            activity.
          items:
            $ref: '#/components/schemas/BankAccountMovementDescription_Transaction'
    AccountingReports_BankAccountMovementDescription:
      type: object
      properties:
        PortfolioName:
          type: string
          description: >-
            The name of the investment portfolio to which the bank account
            movements relate.
          example: Growth Portfolio
        BankAccountDetails:
          type: array
          description: >-
            A list of nominated bank account details, including transaction
            summaries or movement records.
          items:
            $ref: >-
              #/components/schemas/BankAccountMovementDescription_BankAccountDetail
    AccountingReports_BankAccountMovementDescriptions:
      type: object
      properties:
        FundCode:
          type: string
          example: demo-fund
          description: >-
            Unique identifier assigned to the fund, typically used for internal
            tracking or reporting.
        FundName:
          type: string
          example: DEMO_SMSF_2025
          description: >-
            Official name of the fund as registered or recognized by the
            platform.
        Period:
          type: object
          properties:
            StartPeriodDate:
              type: string
              format: date
              example: '2025-01-01'
              description: The beginning date of the reporting period.
            EndPeriodDate:
              type: string
              format: date
              example: '2025-01-31'
              description: The ending date of the reporting period.
            IsEmpty:
              type: boolean
              example: false
              description: Indicates whether the period contains no data or transactions.
            IsPopulated:
              type: boolean
              example: true
              description: >-
                Indicates whether the period has been populated with relevant
                data.
            NumberOfDaysContained:
              type: integer
              example: 30
              description: Total number of calendar days included in the reporting period.
            MovementDescriptions:
              description: The specific Movement descriptions
              type: array
              items:
                $ref: >-
                  #/components/schemas/AccountingReports_BankAccountMovementDescription
    InternalErrorCommon-2:
      type: object
      properties:
        Code:
          type: string
          description: The internal system error code signaling an unexpected failure.
          example: API_INTERNAL_ERROR
        Message:
          type: string
          description: >-
            The generic public message advising of an unanticipated backend
            error.
          example: An unexpected error occurred on the server. Please try again later.
    ApiError-2:
      type: object
      required:
        - Code
        - Message
      properties:
        Code:
          type: string
          description: The unique error code identifier.
        Message:
          type: string
          description: A detailed human-readable message explaining the error.
    ApiResponseBase-2:
      type: object
      required:
        - ErrorCodes
        - Errors
        - CreatedUri
        - IsCreatedResponse
      properties:
        ErrorCodes:
          type: array
          description: A collection of error code strings returned by the API operation.
          items:
            type: string
        Errors:
          type: array
          description: A collection of detailed error response objects.
          items:
            $ref: '#/components/schemas/ApiError-2'
        CreatedUri:
          type: string
          description: The URI pointing to the newly created resource, if applicable.
        IsCreatedResponse:
          type: boolean
          description: Indicates whether the API call successfully created a new resource.
    BrandListDetail_BrandSummary:
      type: object
      required:
        - Code
        - Name
        - CanWrite
      properties:
        Code:
          type: string
          description: The unique identifier code for the brand.
        Name:
          type: string
          description: The registered name of the brand.
        CanWrite:
          type: boolean
          description: Indicates whether the current user has write access to the brand.
    BusinessData_BrandListDetail:
      type: object
      required:
        - BrandSummaries
      properties:
        BrandSummaries:
          type: array
          description: A collection of summaries for brands associated with the business.
          items:
            $ref: '#/components/schemas/BrandListDetail_BrandSummary'
    ErrorResponse-2:
      type: object
      properties:
        code:
          type: string
          description: A specific alphanumeric code mapped to the validation failure.
          nullable: true
        message:
          type: string
          description: >-
            A detailed explanation isolating the root cause of the validation
            failure.
          nullable: true
      additionalProperties: false
    UnauthorizedErrorCommon-2:
      type: object
      properties:
        Code:
          type: string
          description: The error code isolating authentication token absence or invalidity.
          example: API_NOT_AUTHORISED
        Message:
          type: string
          description: >-
            A prompt message stating the client session must successfully
            authenticate first.
          example: Not authorised
    ForbiddenErrorCommon-2:
      type: object
      properties:
        Code:
          type: string
          description: >-
            The standard error code emitted when a user lacks required system
            privileges.
          example: FORBIDDEN
        Message:
          type: string
          description: >-
            A clear message detailing the denial of access based on permission
            models.
          example: You do not have permission to access this resource.
    ResourceUnavailableErrorCommon-2:
      type: object
      properties:
        Code:
          type: string
          description: >-
            The standard error code mapped to missing resources or denied
            visibility rights.
          example: API_NOT_FOUND
        Message:
          type: string
          description: >-
            Information clarifying that the target resource cannot be found or
            viewed.
          example: Resource not available or user does not have access to the fund.
    InvestmentGroupingType:
      type: string
      enum:
        - MarketType
        - Reference
        - AssetPool
        - Gl
    DisposalCapitalGainsSummary_PortfolioCapitalLossesApplied:
      type: object
      properties:
        CurrentYearIndexed:
          type: number
          format: decimal
          description: Indexed capital losses applied from the current financial year.
          example: 500
        CurrentYearDiscount:
          type: number
          format: decimal
          description: Discounted capital losses applied from the current financial year.
          example: 750
        CurrentYearOther:
          type: number
          format: decimal
          description: >-
            Other types of capital losses applied from the current financial
            year.
          example: 300
        CurrentYearRecognisedDeferred:
          type: number
          format: decimal
          description: >-
            Deferred capital gains recognised and applied in the current
            financial year.
          example: 200
        PriorYearsIndexed:
          type: number
          format: decimal
          description: Indexed capital losses applied from prior financial years.
          example: 400
        PriorYearsDiscount:
          type: number
          format: decimal
          description: Discounted capital losses applied from prior financial years.
          example: 600
        PriorYearsOther:
          type: number
          format: decimal
          description: Other types of capital losses applied from prior financial years.
          example: 250
        PriorYearRecognisedDeferred:
          type: number
          format: decimal
          description: >-
            Deferred capital gains recognised and applied from prior financial
            years.
          example: 150
    DisposalCapitalGainsSummary_PortfolioNetCapitalGains:
      type: object
      properties:
        NetIndexedAfterLosses:
          type: number
          format: decimal
          description: >-
            Net indexed capital gains after applying current and prior year
            capital losses.
          example: 850
        NetDiscountAfterLosses:
          type: number
          format: decimal
          description: >-
            Net discounted capital gains after applying relevant capital losses
            and CGT discount.
          example: 1200
        NetOtherAfterLosses:
          type: number
          format: decimal
          description: Net capital gains from other sources after applying losses.
          example: 450
        DiscountAmount:
          type: number
          format: decimal
          description: The total discount amount applied to eligible capital gains.
          example: 600
        NetRecognisedDeferredGainsAfterLosses:
          type: number
          format: decimal
          description: >-
            Net amount of previously deferred gains recognised in the current
            period after applying losses.
          example: 275
    DisposalCapitalGainsSummary_CustomHoldingCapitalGainDetails:
      type: object
      properties:
        AccountId:
          type: string
          description: >-
            A unique identifier for the account associated with the custom
            holding.
          example: 6543be97-29ea-461d-bba1-641ee3178cf6
        AccountCode:
          type: string
          description: The internal code used to reference the account.
          example: CH-2025-AU
        AccountDescription:
          type: string
          description: A descriptive label for the account or holding.
          example: Custom Holding - Australian Equities
        GainLossAmount:
          type: number
          format: decimal
          description: The net gain or loss amount calculated for the custom holding.
          example: 1250.75
        TaxProvisionRate:
          type: number
          format: decimal
          description: The tax rate applied to the gain/loss for provision purposes.
          example: 0.15
        TaxProvisionAmount:
          type: number
          format: decimal
          description: >-
            The amount of tax provision calculated based on the gain/loss and
            applicable rate.
          example: 187.61
        MarketValue:
          type: number
          format: decimal
          description: The current market value of the custom holding.
          example: 5000
        BookCost:
          type: number
          format: decimal
          description: The original acquisition cost of the custom holding.
          example: 3750
    MarketAndSecurityInfo:
      type: object
      description: >-
        Contains identifying information for a security and its associated
        market.
      properties:
        SecurityCode:
          type: string
          description: Unique code identifying the security.
          example: SEC123
        SecurityName:
          type: string
          description: Full name of the security.
          example: Global Equity Index Fund
        MarketCode:
          type: string
          description: Code representing the market where the security is listed.
          example: ASX
        MarketAcronym:
          type: string
          description: Acronym or shorthand for the market.
          example: ASX
    HoldingGroupingDetails_Tag:
      type: object
      properties:
        Type:
          $ref: '#/components/schemas/InvestmentGroupingType'
        Value:
          type: string
    HoldingGroupingDetails:
      type: object
      properties:
        NO_FHR_CAPTION:
          type: string
        Tags:
          type: array
          items:
            $ref: '#/components/schemas/HoldingGroupingDetails_Tag'
    DisposalCapitalGainsSummary_ParcelMatcheDetails:
      type: object
      properties:
        Type:
          type: string
          description: The type of parcel match, such as FIFO or specific identification.
          example: FIFO
        Date:
          type: string
          format: date
          description: The date the parcel was matched for disposal.
          example: '2025-06-30'
        Quantity:
          type: number
          format: decimal
          description: The total quantity in the parcel.
          example: 100
        MatchedQuantity:
          type: number
          format: decimal
          description: The quantity from the parcel matched to the disposal.
          example: 100
        BookCost:
          type: number
          format: decimal
          description: The original cost of the matched parcel.
          example: 1500
        TaxFreeAmount:
          type: number
          format: decimal
          description: The portion of proceeds that is exempt from tax.
          example: 200
        TaxDeferredAmount:
          type: number
          format: decimal
          description: The portion of proceeds that is deferred for tax purposes.
          example: 100
        Proceeds:
          type: number
          format: decimal
          description: The total amount received from the disposal.
          example: 1800
        AdjustedCostBase:
          type: number
          format: decimal
          description: The adjusted cost base used for capital gains calculation.
          example: 1450
        ReducedCostBase:
          type: number
          format: decimal
          description: The reduced cost base applicable under specific tax rules.
          example: 1400
        IndexedCostBase:
          type: number
          format: decimal
          description: The cost base adjusted for inflation indexing.
          example: 1600
        IndexedGain:
          type: number
          format: decimal
          description: The capital gain calculated using the indexed cost base.
          example: 200
        DiscountableGain:
          type: number
          format: decimal
          description: The portion of the gain eligible for CGT discount.
          example: 250
        DeferredGain:
          type: number
          format: decimal
          description: The gain deferred to future periods under tax rules.
          example: 50
        RecognisedDeferredGain:
          type: number
          format: decimal
          description: >-
            The portion of previously deferred gain recognised in the current
            period.
          example: 30
        OtherGain:
          type: number
          format: decimal
          description: Any other gain not classified under standard categories.
          example: 20
        CapitalLoss:
          type: number
          format: decimal
          description: The capital loss incurred from the event.
          example: 100
        CapitalLossApplied:
          type: number
          format: decimal
          description: The amount of capital loss applied to offset gains.
          example: 80
        AppliedDiscount:
          type: number
          format: decimal
          description: The discount applied to the discountable gain.
          example: 125
        NetTaxableGain:
          type: number
          format: decimal
          description: The final taxable capital gain after all adjustments.
          example: 95
        Description:
          type: string
          description: A brief description of the parcel match.
          example: Matched parcel from ABC Ltd acquisition on 2023-01-15
    DisposalCapitalGainsSummary_CapitalEventDetails:
      type: object
      properties:
        Type:
          type: string
          description: >-
            The type of capital event, such as disposal, transfer, or
            revaluation.
          example: Disposal
        Date:
          type: string
          format: date
          description: The date on which the capital event occurred.
          example: '2025-06-30'
        Quantity:
          type: number
          format: decimal
          description: The total quantity of units involved in the capital event.
          example: 100
        MatchedQuantity:
          type: number
          format: decimal
          description: >-
            The quantity matched against acquisition parcels for gain/loss
            calculation.
          example: 100
        BookCost:
          type: number
          format: decimal
          description: The original cost of the disposed assets.
          example: 1500
        TaxFreeAmount:
          type: number
          format: decimal
          description: The portion of proceeds that is exempt from tax.
          example: 200
        TaxDeferredAmount:
          type: number
          format: decimal
          description: The portion of proceeds that is deferred for tax purposes.
          example: 100
        Proceeds:
          type: number
          format: decimal
          description: The total amount received from the disposal.
          example: 1800
        AdjustedCostBase:
          type: number
          format: decimal
          description: The adjusted cost base used for capital gains calculation.
          example: 1450
        ReducedCostBase:
          type: number
          format: decimal
          description: The reduced cost base applicable under specific tax rules.
          example: 1400
        IndexedCostBase:
          type: number
          format: decimal
          description: The cost base adjusted for inflation indexing.
          example: 1600
        IndexedGain:
          type: number
          format: decimal
          description: The capital gain calculated using the indexed cost base.
          example: 200
        DiscountableGain:
          type: number
          format: decimal
          description: The portion of the gain eligible for CGT discount.
          example: 250
        DeferredGain:
          type: number
          format: decimal
          description: The gain deferred to future periods under tax rules.
          example: 50
        RecognisedDeferredGain:
          type: number
          format: decimal
          description: >-
            The portion of previously deferred gain recognised in the current
            period.
          example: 30
        OtherGain:
          type: number
          format: decimal
          description: Any other gain not classified under standard categories.
          example: 20
        CapitalLoss:
          type: number
          format: decimal
          description: The capital loss incurred from the event.
          example: 100
        CapitalLossApplied:
          type: number
          format: decimal
          description: The amount of capital loss applied to offset gains.
          example: 80
        AppliedDiscount:
          type: number
          format: decimal
          description: The discount applied to the discountable gain.
          example: 125
        NetTaxableGain:
          type: number
          format: decimal
          description: The final taxable capital gain after all adjustments.
          example: 95
        AccountingGainLoss:
          type: number
          format: decimal
          description: The gain or loss recorded in the accounting books.
          example: 300
        Description:
          type: string
          description: A brief description of the capital event.
          example: Sale of ABC Ltd shares
        ParcelMatches:
          type: array
          description: >-
            Details of acquisition parcels matched to the disposal for gain/loss
            calculation.
          items:
            $ref: >-
              #/components/schemas/DisposalCapitalGainsSummary_ParcelMatcheDetails
    DisposalCapitalGainsSummary_HoldingDisposalCapitalGainDetails:
      type: object
      properties:
        MarketAndSecurityInfo:
          $ref: '#/components/schemas/MarketAndSecurityInfo'
          description: Details about the market and security associated with the holding.
        Name:
          type: string
          description: The name of the holding or security.
          example: ABC Ltd
        Grouping:
          $ref: '#/components/schemas/HoldingGroupingDetails'
          description: >-
            Grouping information used to categorise the holding within the
            portfolio.
        Description:
          type: string
          description: A brief description of the holding.
          example: Australian equity holding in ABC Ltd
        MarketTypeId:
          type: string
          description: Identifier for the market type associated with the holding.
          example: MT-AU
        HoldingAccountId:
          type: string
          description: Unique identifier for the account holding the security.
          example: effb89e4-a2ed-4cdd-aeb6-9e4a968d1808
        CapitalEvents:
          type: array
          description: >-
            List of capital events (e.g., disposals, revaluations) related to
            the holding.
          items:
            $ref: >-
              #/components/schemas/DisposalCapitalGainsSummary_CapitalEventDetails
    DisposalCapitalGainsSummary_MarketTypeDetails:
      type: object
      properties:
        MarketTypeId:
          type: string
          description: Unique identifier for the market type.
          example: MT-AU
        MarketTypeName:
          type: string
          description: >-
            The name of the market type (e.g., Australian Shares, International
            Shares).
          example: Australian Shares
        MarketTypeCode:
          type: string
          description: Internal code used to represent the market type.
          example: ASX
        HoldingDetails:
          type: array
          description: >-
            List of holdings under this market type, including capital gain
            details.
          items:
            $ref: >-
              #/components/schemas/DisposalCapitalGainsSummary_HoldingDisposalCapitalGainDetails
    DisposalCapitalGainsSummary_CategorisedPortfolioCapitalGainDetails:
      type: object
      properties:
        CategoryName:
          type: string
          description: >-
            The name of the investment category (e.g., Australian Shares,
            International Shares, Property).
          example: Australian Shares
        GrossIndexedGain:
          type: number
          format: decimal
          description: >-
            The total capital gain calculated using indexed cost base for the
            category.
          example: 1200
        GrossDiscountGain:
          type: number
          format: decimal
          description: >-
            The total capital gain eligible for CGT discount within the
            category.
          example: 1500
        GrossRecognisedDeferredGain:
          type: number
          format: decimal
          description: >-
            The total amount of previously deferred gains recognised in the
            current period for the category.
          example: 300
        GrossOtherGain:
          type: number
          format: decimal
          description: >-
            Any other capital gains not classified under standard categories for
            the portfolio.
          example: 100
        GrossCapitalLoss:
          type: number
          format: decimal
          description: The total capital losses incurred within the category.
          example: 500
    DisposalCapitalGainsSummary_PortfolioDisposalCapitalGainsDetails:
      type: object
      properties:
        Name:
          type: string
          description: The name of the portfolio or investment group.
          example: SMSF Growth Portfolio
        CapitalLossesApplied:
          $ref: >-
            #/components/schemas/DisposalCapitalGainsSummary_PortfolioCapitalLossesApplied
          description: >-
            Details of capital losses applied across different categories and
            years.
        NetCapitalGains:
          $ref: >-
            #/components/schemas/DisposalCapitalGainsSummary_PortfolioNetCapitalGains
          description: Summary of net capital gains after applying losses and discounts.
        CustomHoldingCapitalGainDetails:
          type: array
          description: Capital gain details for custom holdings within the portfolio.
          items:
            $ref: >-
              #/components/schemas/DisposalCapitalGainsSummary_CustomHoldingCapitalGainDetails
        MarketTypeDetails:
          type: array
          description: Capital gain details grouped by market type.
          items:
            $ref: '#/components/schemas/DisposalCapitalGainsSummary_MarketTypeDetails'
        CategorisedCapitalGainDetails:
          type: array
          description: Capital gain details categorised by investment type or asset class.
          items:
            $ref: >-
              #/components/schemas/DisposalCapitalGainsSummary_CategorisedPortfolioCapitalGainDetails
    AccountingReports_DisposalCapitalGainsSummary:
      type: object
      properties:
        FundName:
          type: string
          description: The name of the fund being reported.
          example: DEMO_SMSF_2025
        FundCode:
          type: string
          description: The unique code identifying the fund.
          example: demo-fund
        ErrorCode:
          type: string
          description: >-
            An optional error code indicating any issues encountered during
            report generation.
          example: null
          nullable: true
        Period:
          type: string
          format: date
          description: >-
            The reporting period for the capital gains summary, typically the
            start date of the financial period.
          example: '2025-07-01'
        PortfolioDetails:
          type: array
          description: >-
            A list of portfolio-level capital gains details resulting from asset
            disposals during the reporting period.
          items:
            $ref: >-
              #/components/schemas/DisposalCapitalGainsSummary_PortfolioDisposalCapitalGainsDetails
    FinancialPositionStatement_FinancialPositionDetail:
      type: object
      properties:
        Id:
          type: string
          description: Unique identifier for the financial position item.
          example: 3f9c1e2a-8b4d-4c3f-9a7e-2e6f1a9d7b2c
        Description:
          type: string
          description: Description of the financial item.
          example: Accrued Member Benefits
        Balance:
          type: number
          format: decimal
          description: Current year balance for the item.
          example: 1250000.75
        Quantity:
          type: number
          format: decimal
          description: Quantity associated with the current year balance, if applicable.
          example: 1
        PreviousYearBalance:
          type: number
          format: decimal
          description: Previous year balance for the item.
          example: 1180000.5
        PreviousYearQuantity:
          type: number
          format: decimal
          description: Quantity associated with the previous year balance, if applicable.
          example: 1
        Depth:
          type: integer
          format: int32
          description: Depth level in the financial hierarchy.
          example: 1
        BalanceIsSummary:
          type: boolean
          description: Indicates whether the current balance is a summary of sub-items.
          example: false
        PreviousYearBalanceIsSummary:
          type: boolean
          description: >-
            Indicates whether the previous year balance is a summary of
            sub-items.
          example: false
        FundNotesReferenceNumber:
          type: string
          description: Reference number linking to fund notes or disclosures.
          example: FN-2025-001
        QuantitySpecified:
          type: boolean
          description: Indicates whether the quantity field is explicitly specified.
          example: true
        PreviousYearQuantitySpecified:
          type: boolean
          description: >-
            Indicates whether the previous year quantity field is explicitly
            specified.
          example: true
    AccountingReports_FinancialPositionStatement:
      type: object
      properties:
        FundName:
          type: string
          description: The name of the fund being reported.
          example: DEMO_SMSF_2025
        FundCode:
          type: string
          description: The unique code identifying the fund.
          example: demo-fund
        AsAtDate:
          type: string
          format: date
          description: The reporting date for the current financial position.
          example: '2025-06-30'
        PreviousYearAsAtDate:
          type: string
          format: date
          description: The reporting date for the previous year's financial position.
          example: '2024-06-30'
        PreviousYearAsAtDateSpecified:
          type: boolean
          description: >-
            Indicates whether the previous year’s reporting date is explicitly
            specified.
          example: true
        CurrentLiabilityForAccruedBenefits:
          type: number
          format: decimal
          description: The current year's liability for accrued member benefits.
          example: 1250000.75
        PreviousYearLiabilityForAccruedBenefits:
          type: number
          format: decimal
          description: The previous year's liability for accrued member benefits.
          example: 1180000.5
        Assets:
          type: array
          description: A list of asset details for the fund.
          items:
            $ref: >-
              #/components/schemas/FinancialPositionStatement_FinancialPositionDetail
        Liabilities:
          type: array
          description: A list of liability details for the fund.
          items:
            $ref: >-
              #/components/schemas/FinancialPositionStatement_FinancialPositionDetail
        LiabilitiesForAccruedBenefits:
          type: array
          description: >-
            A list of liabilities specifically related to accrued member
            benefits.
          items:
            $ref: >-
              #/components/schemas/FinancialPositionStatement_FinancialPositionDetail
    InternalErrorCommon-3:
      type: object
      properties:
        Code:
          type: string
          example: API_INTERNAL_ERROR
        Message:
          type: string
          example: An unexpected error occurred on the server. Please try again later.
      xml:
        name: Error
    ApiError-3:
      type: object
      properties:
        Code:
          type: string
          nullable: true
        Message:
          type: string
          nullable: true
    ApiResponseBase-3:
      type: object
      properties:
        Errors:
          type: array
          items:
            $ref: '#/components/schemas/ApiError-3'
    ApiRestLink:
      type: object
      properties:
        Id:
          type: string
          description: Unique identifier for the API resource link.
          example: 58edab15-b993-43de-b653-84b7a86d5746
        Url:
          type: string
          description: >-
            The URL endpoint that provides access to the specific fund data
            resource.
          example: >-
            http://api.class.com.au/api/1.0/f/demo-business/DEMO_SMSF_2025/fund-data/fund-detail
    StatusCode:
      type: string
      enum:
        - Active
        - Cancelled
        - Pending
        - Suspended
    LegalEntityType:
      type: string
      enum:
        - SMSF
        - SAF
        - Personal
        - Trust
        - Company
        - Partnership
        - Consolidated
    FundData_FundBasicDetail:
      type: object
      required:
        - Brand
        - Tags
        - Code
        - Name
        - PreviousName
        - LegalType
        - IsResident
        - Abn
        - Tfn
        - Sfn
        - RseRegistrationNumber
        - LastActivatedBy
        - LastSuspendedBy
        - IsNonSuper
        - Asn
      properties:
        Brand:
          type: string
          example: FY2025
          description: Unique identifier for the brand associated with the fund.
        Tags:
          type: array
          items:
            type: string
            example: FY2025
          description: >-
            List of tags categorising the fund, such as fiscal year or
            classification.
        EstablishmentDeedDate:
          type: string
          format: date-time
          example: '2003-12-17'
          description: Date the fund's establishment deed was signed.
        EndDate:
          type: string
          format: date-time
          example: '2025-12-31'
          description: Date the fund ceased operations, if applicable.
        FundStartDate:
          type: string
          format: date-time
          example: '2024-07-01'
          description: Official start date of the fund's operation.
        OnSystemDate:
          type: string
          format: date-time
          example: '2024-08-01'
          description: Date the fund was added to the system.
        Code:
          type: string
          example: DEMO_SMSF_2025
          description: Unique code identifier for the fund.
        Name:
          type: string
          example: Demo Superannuation Fund 2025
          description: Full name of the fund.
        PreviousName:
          type: string
          example: null
          description: Former name of the fund, if it has been renamed.
        LegalType:
          $ref: '#/components/schemas/LegalEntityType'
          description: Legal structure or classification of the fund.
        IsResident:
          type: boolean
          example: true
          description: >-
            Indicates whether the fund is considered a resident for tax
            purposes.
        Abn:
          type: string
          example: '53004085616'
          description: Australian business number (ABN) of the fund.
        Tfn:
          type: string
          example: '972123781'
          description: Tax file number (TFN) of the fund.
        Sfn:
          type: string
          example: '123456789'
          description: >-
            Superannuation Fund Number (SFN), a unique identifier assigned to
            the fund by the ATO. Required for reporting and compliance purposes.
        RseRegistrationNumber:
          type: string
          example: R1001234
          description: >-
            Registration number for the fund as a Registrable Superannuation
            Entity (RSE), issued by APRA.
        RseEffectiveDate:
          type: string
          format: date-time
          example: '2024-01-01'
          description: >-
            Date the fund's RSE registration became effective. Must follow ISO
            8601 format.
        LastActivated:
          type: string
          format: date-time
          example: '2025-09-15'
          description: Timestamp of the most recent activation of the fund in the system.
        LastActivatedBy:
          type: string
          example: John Smith
          description: Identifier of the user or system that last activated the fund.
        LastSuspended:
          type: string
          format: date-time
          example: '2025-06-01'
          description: Timestamp of the most recent suspension of the fund.
        LastSuspendedBy:
          type: string
          example: MBARNES
          description: Identifier of the user or system that last suspended the fund.
        IsNonSuper:
          type: boolean
          example: false
          description: Indicates whether the fund is a non-superannuation fund.
        Asn:
          type: string
          example: null
          description: Australian securities number (ASN), if applicable.
    FundData_FundContactDetail:
      type: object
      required:
        - Phone
        - Url
      properties:
        Phone:
          type: string
          example: '04150123456'
          description: Primary phone number for contacting the fund.
        Url:
          type: string
          example: null
          description: Website URL associated with the fund.
        Fax:
          type: string
          example: 28638123
          description: Fax number for the fund.
        Email:
          type: string
          example: john.doe@example.com
          description: Email address for fund correspondence.
        UsePhysicalAddressForMailingAddress:
          type: boolean
          example: true
          description: >-
            Indicates if the physical address should be used as the mailing
            address.
        PhysicalAddress:
          type: object
          properties:
            Type:
              type: string
              example: Physical
              description: Type of address, typically 'Physical'.
            Addressee:
              type: string
              example: John Doe
              description: Name of the person or entity receiving correspondence.
            Line1:
              type: string
              example: 123 Example Street
              description: First line of the street address.
            Line2:
              type: string
              example: Suite 456
              description: Second line of the street address.
            Line3:
              type: string
              example: null
              description: Third line of the street address.
            Line4:
              type: string
              example: null
              description: Fourth line of the street address.
            Suburb:
              type: string
              example: Sampletown
              description: Suburb or locality of the address.
            ValidateAddress:
              type: boolean
              example: false
              description: Indicates whether the address should be validated.
            State:
              type: string
              example: NSW
              description: State or territory of the address.
            PostCode:
              type: string
              example: '2000'
              description: Postal code of the address.
            Country:
              type: string
              example: AUS
              description: Country of the address.
        MailingAddress:
          type: object
          properties:
            Type:
              type: string
              example: Mailing
              description: Type of address, typically 'Mailing'.
            Addressee:
              type: string
              example: John Doe
              description: Name of the person or entity receiving correspondence.
            Line1:
              type: string
              example: PO Box 789
              description: First line of the mailing address.
            Line2:
              type: string
              example: null
              description: Second line of the mailing address.
            Line3:
              type: string
              example: null
              description: Third line of the mailing address.
            Line4:
              type: string
              example: null
              description: Fourth line of the mailing address.
            Suburb:
              type: string
              example: Mailville
              description: Suburb or locality of the mailing address.
            ValidateAddress:
              type: boolean
              example: true
              description: Indicates whether the mailing address should be validated.
            State:
              type: string
              example: NSW
              description: State or territory of the mailing address.
            PostCode:
              type: string
              example: '2001'
              description: Postal code of the mailing address.
            Country:
              type: string
              example: AUS
              description: Country of the mailing address.
    FundData_FundDetail:
      type: object
      required:
        - Link
        - Status
        - FundDetails
        - ContactDetails
      properties:
        Link:
          $ref: '#/components/schemas/ApiRestLink'
          description: Hyperlink reference to the fund's API resource.
        Status:
          $ref: '#/components/schemas/StatusCode'
          description: Current status code of the fund.
        FundDetails:
          $ref: '#/components/schemas/FundData_FundBasicDetail'
          description: Basic details of the fund.
        ContactDetails:
          $ref: '#/components/schemas/FundData_FundContactDetail'
    UnauthorizedErrorCommon-3:
      type: object
      properties:
        Code:
          type: string
          example: API_NOT_AUTHORISED
        Message:
          type: string
          example: Not authorised
      xml:
        name: Error
        wrapped: false
    ForbiddenErrorCommon-3:
      type: object
      properties:
        Code:
          type: string
          example: FORBIDDEN
        Message:
          type: string
          example: You do not have permission to access this resource.
      xml:
        name: Error
    ResourceUnavailableErrorCommon-3:
      type: object
      properties:
        Code:
          type: string
          example: API_NOT_FOUND
        Message:
          type: string
          example: Resource not available or user does not have access to the fund.
      xml:
        name: Error
    guid:
      type: string
      example: b4d-6fe4-45c9-83e5-fd27c16d149c
      description: Unique guid id
    FundData_BasicFundInfo:
      type: object
      properties:
        Id:
          $ref: '#/components/schemas/guid'
          description: Unique identifier for the fund.
        ScopeUrl:
          type: string
          example: http://api.example.com/fund/scope/123
          description: Url representing the scope of the fund.
        FriendlyScopeUrl:
          type: string
          example: http://example.com/fund/123
          description: User-friendly url for accessing the fund.
        LegalEntityType:
          $ref: '#/components/schemas/LegalEntityType'
          description: Legal entity type of the fund.
        StatusCode:
          $ref: '#/components/schemas/StatusCode'
          description: Current status code of the fund.
    FundData_AllFundsList:
      type: object
      properties:
        Funds:
          type: array
          items:
            $ref: '#/components/schemas/FundData_BasicFundInfo'
          description: List of basic fund information entries.
        Count:
          type: integer
          format: int32
          example: 1
          description: Total number of funds in the list
    ErrorResponse-3:
      type: object
      properties:
        Code:
          type: string
          nullable: true
        Message:
          type: string
          nullable: true
      additionalProperties: false
    CoreConcepts_StatusCode:
      type: string
      enum:
        - Active
        - Cancelled
        - Pending
        - Suspended
    FundListDetail_FundSummary:
      type: object
      properties:
        Link:
          $ref: '#/components/schemas/ApiRestLink'
          description: Hyperlink reference to the fund's API resource.
        Status:
          $ref: '#/components/schemas/StatusCode'
          description: Current status code of the fund.
        Code:
          type: string
          example: DEMO_SMSF_2025
          description: Unique code identifier for the fund.
        Name:
          type: string
          example: Demo Superannuation Fund 2025
          description: Full name of the fund.
        Tags:
          type: string
          example: FY2025
          description: Tags associated with the fund, such as fiscal year or category.
        UnmatchedEvidenceSupplyCount:
          type: integer
          format: int32
          example: 0
          description: Number of unmatched evidence supply records for the fund.
        UnmatchedEvidenceRequestCount:
          type: integer
          format: int32
          example: 1
          description: Number of unmatched evidence request records for the fund.
        RecordedEvidenceRequestCount:
          type: integer
          format: int32
          example: 0
          description: Number of recorded evidence requests for the fund.
        RequiresProcessingCorporateActionCount:
          type: integer
          format: int32
          example: 0
          description: Number of corporate actions requiring processing for the fund.
        SummaryIsValid:
          type: boolean
          example: true
          description: Indicates whether the fund summary is valid.
        LastPeriodUpdateEndDate:
          type: string
          format: date-time
          example: '2024-07-01'
          description: End date of the last period update for the fund.
        ProcessedToDate:
          type: string
          format: date-time
          example: '2022-07-01'
          description: Date up to which the fund has been processed.
        LegalEntityType:
          $ref: '#/components/schemas/LegalEntityType'
          description: Type of legal entity associated with the fund.
        BrandName:
          type: string
          example: demo-brand
          description: Brand name under which the fund is listed.
        ABN:
          type: string
          example: '53004085616'
          description: Australian Business Number (ABN) of the fund.
    FundData_FundListDetail:
      type: object
      properties:
        FundSummaries:
          type: array
          description: >-
            A collection of summary details for each fund that matches the query
            criteria.
          items:
            $ref: '#/components/schemas/FundListDetail_FundSummary'
        TotalCount:
          type: integer
          description: >-
            The total number of fund records returned in the response. Useful
            for pagination or display purposes.
          format: int32
          example: 1
    DebitCreditIndicator:
      type: string
      enum:
        - Undefined
        - Credit
        - Debit
    GlAccountMovementDescription_GlTransaction:
      type: object
      properties:
        Quantity:
          type: number
          format: decimal
          description: The number of units involved in the transaction.
          example: 150.75
        QuantitySpecified:
          type: boolean
          description: Indicates whether the quantity value is explicitly specified.
          example: true
        Date:
          type: string
          format: date
          description: The date the transaction occurred.
          example: '2025-10-28'
        Description:
          type: string
          description: A brief description of the transaction.
          example: Purchase of office supplies
        Amount:
          type: number
          format: decimal
          description: The monetary value of the transaction.
          example: 1200.5
        DebitCreditIndicator:
          $ref: '#/components/schemas/DebitCreditIndicator'
          description: Indicates whether the transaction is a debit or credit.
          example: Debit
        index:
          type: integer
          format: int32
          description: The sequential index of the transaction in the ledger.
          example: 5
        RunningBalance:
          type: number
          format: decimal
          description: The account balance after this transaction.
          example: 8450.25
        RunningBalanceDirection:
          $ref: '#/components/schemas/DebitCreditIndicator'
          description: Indicates whether the running balance is in debit or credit.
          example: Credit
    AccountingReports_GlAccountMovementDescription:
      type: object
      properties:
        OpeningBalanceIndicator:
          type: string
          description: >-
            Indicator showing the nature of the opening balance (e.g., debit or
            credit).
          example: Debit
        OpeningQuantity:
          type: number
          format: decimal
          description: >-
            The quantity associated with the account at the beginning of the
            reporting period.
          example: 100
        OpeningQuantitySpecified:
          type: boolean
          description: >-
            Indicates whether the opening quantity value is explicitly
            specified.
          example: true
        ClosingQuantity:
          type: number
          format: decimal
          description: >-
            The quantity associated with the account at the end of the reporting
            period.
          example: 75.5
        ClosingQuantitySpecified:
          type: boolean
          description: >-
            Indicates whether the closing quantity value is explicitly
            specified.
          example: true
        ClosingBalanceIndicator:
          type: string
          description: >-
            Indicator showing the nature of the closing balance (e.g., credit or
            debit).
          example: Credit
        Transactions:
          type: array
          description: >-
            A list of general ledger transactions affecting the account during
            the reporting period.
          items:
            $ref: '#/components/schemas/GlAccountMovementDescription_GlTransaction'
        DR:
          type: string
          description: Total debit amount for the account during the reporting period.
          example: '1500.00'
        CR:
          type: string
          description: Total credit amount for the account during the reporting period.
          example: '1250.00'
        AccountName:
          type: string
          description: The name of the general ledger account.
          example: Investment Income
        GroupName:
          type: string
          description: The name of the account group to which this account belongs.
          example: Revenue Accounts
        AccountId:
          type: string
          description: A unique identifier for the general ledger account.
          example: INV-001
        Depth:
          type: integer
          format: int32
          description: >-
            The hierarchical depth level of the account in the chart of
            accounts.
          example: 2
        OpeningBalanceDate:
          type: string
          format: date
          description: The date on which the opening balance is recorded.
          example: '2025-07-01'
        OpeningBalance:
          type: number
          format: decimal
          description: The monetary value of the account's opening balance.
          example: 5000
        OpeningDirection:
          $ref: '#/components/schemas/DebitCreditIndicator'
          description: The direction (debit or credit) of the opening balance.
        ClosingBalance:
          type: number
          format: decimal
          description: The monetary value of the account's closing balance.
          example: 4750
        ClosingDirection:
          $ref: '#/components/schemas/DebitCreditIndicator'
          description: The direction (debit or credit) of the closing balance.
    AccountingReports_GlAccountMovementDescriptions:
      type: object
      properties:
        FundName:
          type: string
          description: The name of the fund being reported.
          example: DEMO_SMSF_2025
        FundCode:
          type: string
          description: The unique code identifying the fund.
          example: demo-fund
        Period:
          type: string
          format: date
        Gl_AccountMovementDescriptions:
          type: array
          items:
            $ref: >-
              #/components/schemas/AccountingReports_GlAccountMovementDescription
    InvestmentGroupingType-2:
      type: string
      description: Grouping dimension used across reports.
      enum:
        - MarketType
        - Reference
        - AssetPool
        - GL
      example: MarketType
    ApiError-4:
      type: object
      properties:
        Code:
          type: string
        Message:
          type: string
    ApiResponseBase-4:
      type: object
      properties:
        Errors:
          type: array
          items:
            $ref: '#/components/schemas/ApiError-4'
    InvestmentIncome_InvestmentIncomeSummary:
      type: object
      description: Totals and breakdowns of investment income.
      properties:
        IncomeTotal:
          type: number
          format: decimal
          description: Total income across the period.
          example: 450.75
        FrankingCredits:
          type: number
          format: decimal
          description: Total franking credits.
          example: 150
        ForeignCredits:
          type: number
          format: decimal
          description: Total foreign credits.
          example: 0
        TFNCredits:
          type: number
          format: decimal
          description: Total TFN credits.
          example: 0
        TaxFree:
          type: number
          format: decimal
          description: Total tax-free amounts.
          example: 0
        TaxExempt:
          type: number
          format: decimal
          description: Total tax-exempt amounts.
          example: 0
        TaxDeferred:
          type: number
          format: decimal
          description: Total tax-deferred amounts.
          example: 0
        Expenses:
          type: number
          format: decimal
          description: Investment-related expenses.
          example: 25
        DistributedCapitalGains:
          type: number
          format: decimal
          description: Capital gains distributed by trusts.
          example: 0
        GST:
          type: number
          format: decimal
          description: Goods and Services Tax component if applicable.
          example: 0
        TaxableIncomeExclCapitalGains:
          type: number
          format: decimal
          description: Taxable income excluding capital gains.
          example: 425.75
        CapitalGainsIndexed:
          type: number
          format: decimal
          description: Indexed capital gains.
          example: 0
        CapitalGainsDiscounted:
          type: number
          format: decimal
          description: Discounted capital gains.
          example: 0
        CapitalGainsOther:
          type: number
          format: decimal
          description: Other capital gains.
          example: 0
        CapitalGainsCGTConcession:
          type: number
          format: decimal
          description: CGT concession amount.
          example: 0
    MarketAndSecurityInfo-2:
      type: object
      description: Basic identifiers for a security and its market.
      properties:
        SecurityCode:
          type: string
          description: Security code or ticker.
          example: BHP
        SecurityName:
          type: string
          description: Security display name.
          example: BHP Group Ltd
        MarketCode:
          type: string
          description: Market identifier.
          example: ASX
        MarketAcronym:
          type: string
          description: Market acronym.
          example: ASX
    HoldingGroupingDetails_Tag-2:
      type: object
      description: Single grouping tag.
      properties:
        Type:
          $ref: '#/components/schemas/InvestmentGroupingType-2'
        Value:
          type: string
          description: Value of the tag.
          example: Default Pool
    HoldingGroupingDetails-2:
      type: object
      description: Grouping metadata and tags used for reporting.
      properties:
        NO_FHR_CAPTION:
          type: string
          description: Optional caption displayed when grouping is not applicable.
          example: No grouping applied
        Tags:
          type: array
          description: Key-value tags that define group membership.
          items:
            $ref: '#/components/schemas/HoldingGroupingDetails_Tag-2'
    InvestmentIncome_HoldingAccountItem:
      type: object
      description: Investment income summary for a single holding.
      required:
        - Summary
        - MarketAndSecurityInfo
        - InvestmentName
        - Grouping
      properties:
        Summary:
          $ref: '#/components/schemas/InvestmentIncome_InvestmentIncomeSummary'
        MarketAndSecurityInfo:
          $ref: '#/components/schemas/MarketAndSecurityInfo-2'
        InvestmentName:
          type: string
          description: Name of the investment.
          example: BHP Group Ltd
        Grouping:
          $ref: '#/components/schemas/HoldingGroupingDetails-2'
    InvestmentIncome_MarketTypeItem:
      type: object
      description: Investment income aggregated by market type.
      properties:
        HoldingAccountItems:
          type: array
          description: Holdings included in this market type.
          items:
            $ref: '#/components/schemas/InvestmentIncome_HoldingAccountItem'
        MarketTypeName:
          type: string
          description: Name of the market type.
          example: ASX
    InvestmentReports_InvestmentIncome:
      type: object
      description: Aggregated investment income for the fund by market type.
      properties:
        MarketTypeItems:
          type: array
          description: Income totals per market type.
          items:
            $ref: '#/components/schemas/InvestmentIncome_MarketTypeItem'
        FundName:
          type: string
          description: Fund display name.
          example: DEMO_SMSF_2025
        FundCode:
          type: string
          description: Fund identifier.
          example: demo-fund
        Period:
          type: string
          format: date
          description: Reporting period end date.
          example: '2025-06-30'
    ForbiddenErrorCommon-4:
      type: object
      description: Forbidden error payload when access is denied.
      properties:
        Code:
          type: string
          example: FORBIDDEN
        Message:
          type: string
          example: You do not have permission to access this resource.
    ResourceUnavailableErrorCommon-4:
      type: object
      description: Error payload when a resource is not available.
      properties:
        Code:
          type: string
          example: API_NOT_FOUND
        Message:
          type: string
          example: Resource not available or user does not have access to the fund.
    AccountingReports_HoldingDetail:
      type: object
      properties:
        GlClassification:
          type: string
          description: >-
            General ledger classification for the holding, used for accounting
            purposes.
          example: Equity
        Code:
          type: string
          description: Internal code representing the holding.
          example: HLD-001
        Name:
          type: string
          description: Name of the holding or investment.
          example: Global Equity Fund
        SecurityCode:
          type: string
          description: Unique code identifying the security associated with the holding.
          example: SEC-XYZ-123
        SecurityName:
          type: string
          description: Name of the security linked to the holding.
          example: XYZ Corporation
        MarketAndSecurityInfo:
          $ref: '#/components/schemas/MarketAndSecurityInfo'
          description: Market and security details relevant to this holding
    AccountingReports_IncomeDetail:
      type: object
      description: >-
        Details of income for accounting reports, including franked and
        unfranked amounts, credits, and percentages.
      properties:
        TotalIncome:
          type: number
          format: decimal
          description: The total income amount reported for the period.
          example: 12500
        FrankedPercentage:
          type: number
          format: decimal
          description: The percentage of income that is franked.
          example: 80
        UnfrankedAmount:
          type: number
          format: decimal
          description: The portion of income that is unfranked.
          example: 2500
        FrankedAmount:
          type: number
          format: decimal
          description: The portion of income that is franked.
          example: 10000
        FrankingCredit:
          type: number
          format: decimal
          description: The franking credit associated with the franked income.
          example: 4285.71
        ForeignTaxCredit:
          type: number
          format: decimal
          description: The foreign tax credit applicable to the income.
          example: 300
    AccountingReports_TransactionDetail:
      type: object
      properties:
        Description:
          type: string
        IncomeDetail:
          $ref: '#/components/schemas/AccountingReports_IncomeDetail'
    AccountingReports_AnnouncementDetail:
      type: object
      description: >-
        Details of an accounting announcement, including description, amount per
        unit, and eligible units.
      properties:
        Description:
          type: string
          description: A brief summary or explanation of the announcement.
          example: Dividend declared for Q4 2025
        AmountPerUnit:
          type: number
          format: decimal
          description: The monetary amount allocated per eligible unit.
          example: 0.35
        EligibleUnits:
          type: number
          format: decimal
          description: The total number of units eligible for the announcement.
          example: 10000
        EstimatedIncome:
          $ref: '#/components/schemas/AccountingReports_IncomeDetail'
    AccountingReports_ComparisonDetail:
      type: object
      properties:
        Date:
          type: string
          format: date
          description: The date associated with the comparison detail record.
          example: '2025-09-30'
        IncomeType:
          type: string
          description: >-
            The type of income related to this comparison detail, such as
            dividend or interest.
          example: Dividend
        HoldingDetail:
          $ref: '#/components/schemas/AccountingReports_HoldingDetail'
          description: >-
            Details of the holding associated with this comparison, including
            security and quantity.
        TransactionDetail:
          $ref: '#/components/schemas/AccountingReports_TransactionDetail'
          description: Information about the transaction linked to this comparison detail.
        AnnouncementDetail:
          $ref: '#/components/schemas/AccountingReports_AnnouncementDetail'
          description: Details of any corporate announcement relevant to this comparison
    AccountingReports_InvestmentIncomeComparisonReport:
      type: object
      properties:
        PeriodFrom:
          type: string
          format: date
          description: The start date of the reporting period, in YYYY-MM-DD format.
          example: '2025-01-01'
        PeriodTo:
          type: string
          format: date
          description: The end date of the reporting period, in YYYY-MM-DD format.
          example: '2025-12-31'
        FundName:
          type: string
          description: The name of the fund being reported.
          example: DEMO_SMSF_2025
        FundCode:
          type: string
          description: The unique code identifying the fund.
          example: demo-fund
        ComparisonDetails:
          type: array
          items:
            $ref: '#/components/schemas/AccountingReports_ComparisonDetail'
    InvestmentMovementSummary_HoldingSummary:
      type: object
      description: Movement summary for an individual holding over a period.
      properties:
        OpeningQuantitySpecified:
          type: boolean
          description: True if the opening quantity is defined.
          example: true
        OpeningMarketValue:
          type: number
          format: decimal
          description: Market value at the start of the period.
          example: 100000
        TotalAcquisitionQuantitySpecified:
          type: boolean
          description: True if acquisition quantity is explicitly specified.
          example: true
        TotalDisposalQuantitySpecified:
          type: boolean
          description: True if disposal quantity is explicitly specified.
          example: true
        TotalDispoalCost:
          type: number
          format: decimal
          description: Total cost of disposals over the period.
          example: 25000
        ClosingQuantitySpecified:
          type: boolean
          description: True if the closing quantity is defined.
          example: true
        MarketAndSecurityInfo:
          $ref: '#/components/schemas/MarketAndSecurityInfo-2'
        ChangeInMarketValue:
          type: number
          format: decimal
          description: Change in market value across the period.
          example: 2400
        Name:
          type: string
          description: Holding display name.
          example: BHP Group Ltd
        Code:
          type: string
          description: Holding code or ticker.
          example: BHP
        Grouping:
          $ref: '#/components/schemas/HoldingGroupingDetails-2'
        OpeningQuantity:
          type: number
          format: decimal
          description: Units held at the start of the period.
          example: 9750
        OpeningBookCost:
          type: number
          format: decimal
          description: Cost base at the start of the period.
          example: 90000
        TotalAcquisitionQuantity:
          type: number
          format: decimal
          description: Units acquired during the period.
          example: 500
        TotalAcquisitionCost:
          type: number
          format: decimal
          description: Cost of acquisitions during the period.
          example: 6000
        TotalDisposalQuantity:
          type: number
          format: decimal
          description: Units sold during the period.
          example: 250
        TotalDisposalProceeds:
          type: number
          format: decimal
          description: Proceeds from disposals during the period.
          example: 3250
        ProfitOrLoss:
          type: number
          format: decimal
          description: Realised profit or loss from disposals.
          example: 350
        ClosingQuantity:
          type: number
          format: decimal
          description: Units held at the end of the period.
          example: 10000
        ClosingBookCost:
          type: number
          format: decimal
          description: Cost base at the end of the period.
          example: 96000
        ClosingMarketValue:
          type: number
          format: decimal
          description: Market value at the end of the period.
          example: 123400
    InvestmentMovementSummary_MktTypeItem:
      type: object
      description: Movement summary grouped by market type.
      properties:
        HoldPerfItems:
          type: array
          description: Holding performance items for the market type.
          items:
            $ref: '#/components/schemas/InvestmentMovementSummary_HoldingSummary'
        MarketTypeName:
          type: string
          description: Name of the market type.
          example: ASX
        MarketTypeCode:
          type: string
          description: Internal market type code.
          example: EQUITY
    InvestmentMovementSummary_PfItem:
      type: object
      description: Portfolio-level movement summary grouped by market type.
      properties:
        MktTypeItems:
          type: array
          description: Market type movement items.
          items:
            $ref: '#/components/schemas/InvestmentMovementSummary_MktTypeItem'
        Id:
          type: string
          description: Unique uuid of investment movement of portfolio
          example: 86614c88-912f-4a6d-9071-031b2daec7c2
        PortfolioName:
          type: string
          description: Portfolio display name.
          example: Balanced Growth
    InvestmentReports_InvestmentMovementSummary:
      type: object
      description: Fund-level movement summary across portfolios.
      properties:
        PfItems:
          type: array
          description: Per-portfolio movement items.
          items:
            $ref: '#/components/schemas/InvestmentMovementSummary_PfItem'
        FundCode:
          type: string
          description: Fund identifier.
          example: demo-fund
        FundName:
          type: string
          description: Fund display name.
          example: DEMO_SMSF_2025
        DateRange:
          type: string
          format: date
          description: Formatted representation of the reporting range.
          example: '2024-07-01'
    CostbaseType:
      type: string
      description: Cost base calculation method used for reporting.
      enum:
        - AccountingCostbase
        - CGTCostbase
      example: AccountingCostbase
    InvestmentSummary_InvestmentPeformanceSummary:
      type: object
      description: Performance metrics for a single holding.
      properties:
        UnitsSpecified:
          type: boolean
          description: True if the Units value is present.
          example: true
        Units:
          type: number
          format: decimal
          description: Units currently held.
          example: 10000
        AverageCost:
          type: number
          format: decimal
          description: Average unit cost.
          example: 9.6
        MarketPrice:
          type: number
          format: decimal
          description: Current market price per unit.
          example: 12.34
        Cost:
          type: number
          format: decimal
          description: Total cost for the holding.
          example: 96000
        Market:
          type: number
          format: decimal
          description: Current market value.
          example: 123400
        UnrealisedGain:
          type: number
          format: decimal
          description: Unrealised gain amount.
          example: 27400
        GainPercentage:
          type: number
          format: decimal
          description: Gain percentage vs. cost.
          example: 28.54
        TotalPercentage:
          type: number
          format: decimal
          description: Holding weight in the portfolio.
          example: 2.75
        EstimatedIncome:
          type: number
          format: decimal
          description: Estimated annual income.
          example: 3500
        EstimatedYield:
          type: number
          format: decimal
          description: Estimated yield percentage.
          example: 2.84
        SupressZeros:
          type: boolean
          description: Suppress zero values in output.
          example: true
    InvestmentSummary_HoldingAccountItem:
      type: object
      description: Holding-level investment summary including market and grouping.
      properties:
        Summary:
          $ref: '#/components/schemas/InvestmentSummary_InvestmentPeformanceSummary'
        MarketAndSecurityInfo:
          $ref: '#/components/schemas/MarketAndSecurityInfo-2'
        HoldingAccountName:
          type: string
          description: Holding account display name.
          example: BHP Group Ltd
        HoldingAccountId:
          type: string
          description: Holding account identifier.
          example: 849f4f5f-7966-4395-9840-ed46ac9096e7
        SecurityCode:
          type: string
          description: Security code/ticker.
          example: BHP
        ManagedAccountCode:
          type: string
          description: Managed account reference.
          example: MA-001
        Grouping:
          $ref: '#/components/schemas/HoldingGroupingDetails-2'
    InvestmentSummary_MarketTypeItem:
      type: object
      description: Market type aggregation with totals for cost and value.
      properties:
        HoldingAccountItems:
          type: array
          description: Holdings included in the market type.
          items:
            $ref: '#/components/schemas/InvestmentSummary_HoldingAccountItem'
        MarketTypeName:
          type: string
          description: Market type display name.
          example: ASX
        TotalCost:
          type: number
          format: decimal
          description: Total cost across holdings in this market type.
          example: 1500000
        TotalMarket:
          type: number
          format: decimal
          description: Total market value for this market type.
          example: 1650000
        TotalUnrealisedGain:
          type: number
          format: decimal
          description: Total unrealised gain for this market type.
          example: 150000
        TotalGainPercentage:
          type: number
          format: decimal
          description: Gain percentage for the market type.
          example: 10
        TotalTotalPercentage:
          type: number
          format: decimal
          description: Percentage share of the portfolio.
          example: 40
        TotalEstimatedIncome:
          type: number
          format: decimal
          description: Estimated annual income for this market type.
          example: 45000
        TotalEstimatedYield:
          type: number
          format: decimal
          description: Estimated yield for this market type.
          example: 2.73
    InvestmentReports_InvestmentSummary:
      type: object
      description: Fund-level summary of holdings, costs, markets, and estimated income.
      properties:
        FundName:
          type: string
          description: Fund display name.
          example: DEMO_SMSF_2025
        FundCode:
          type: string
          description: Fund identifier
          example: demo-fund
        DateAsAt:
          type: string
          format: date
          description: As-at date of the summary.
          example: '2025-11-01'
        MarketTypeItems:
          type: array
          description: Summaries grouped by market type.
          items:
            $ref: '#/components/schemas/InvestmentSummary_MarketTypeItem'
        TotalCost:
          type: number
          format: decimal
          description: Aggregate cost across all holdings.
          example: 3750000
        TotalMarket:
          type: number
          format: decimal
          description: Aggregate market value across all holdings.
          example: 4025000
        TotalUnrealisedGain:
          type: number
          format: decimal
          description: Unrealised gain across all holdings.
          example: 275000
        TotalGainPercentage:
          type: number
          format: decimal
          description: Gain as a percentage of cost.
          example: 7.33
        TotalTotalPercentage:
          type: number
          format: decimal
          description: Total portfolio percentage across categories (presentation aid).
          example: 100
        TotalEstimatedIncome:
          type: number
          format: decimal
          description: Estimated annual income from holdings.
          example: 125000
        TotalEstimatedYield:
          type: number
          format: decimal
          description: Estimated yield based on market values.
          example: 3.1
        CostbaseType:
          $ref: '#/components/schemas/CostbaseType'
    ApiRestLink-2:
      description: Represents a hyperlink reference to a REST API resource.
      type: object
      required:
        - Id
        - Url
      properties:
        Id:
          type: string
          description: A unique identifier for the link.
          example: 0ef57b4d-6fe4-45c9-83e5-fd27c16d149c
        Url:
          type: string
          description: The full URL pointing to the API resource.
          example: >-
            https://api.class.com.au/api/1.0/f/demo-business/DEMO_SMSF_2025/member-data/member-detail/0ef57b4d-6fe4-45c9-83e5-fd27c16d149c
    StatusCode-2:
      description: Represents the current status of an entity or process.
      type: string
      enum:
        - Active
        - Cancelled
        - Pending
        - Suspended
    Gender:
      description: Defines the gender of an individual.
      type: string
      enum:
        - Male
        - Female
        - Other
        - NotStated
    MemberDetail_PersonalDetail:
      type: object
      required:
        - Title
        - FirstName
        - MiddleNames
        - LastName
        - Gender
        - DateOfDeathSpecified
        - PreferredSalutation
        - PreferredName
      properties:
        Title:
          type: string
          description: The title or honorific of the individual.
          example: MR
        FirstName:
          type: string
          description: The given name of the individual.
          example: Kevin
        MiddleNames:
          type: string
          description: The middle name(s) of the individual, if any.
          example: James
        LastName:
          type: string
          description: The family or surname of the individual.
          example: O'Brien
        Gender:
          $ref: '#/components/schemas/Gender'
          description: The gender of the individual.
          example: Male
        DateOfBirth:
          type: string
          format: date-time
          description: The date of birth of the individual in ISO 8601 format.
          example: '1935-06-13'
        DateOfDeath:
          type: string
          format: date-time
          description: >-
            The date of death of the individual, if applicable, in ISO 8601
            format.
          example: '2024-01-01'
        DateOfDeathSpecified:
          type: boolean
          description: Indicates whether the date of death is specified.
          example: false
        PreferredSalutation:
          type: string
          description: The preferred way to address the individual.
          example: Mr
        PreferredName:
          type: string
          description: The name the individual prefers to be called.
          example: Kevin
    MemberDetail_MemberDetails:
      type: object
      description: >-
        Contains detailed membership information for a superannuation fund
        member, including fund participation, residency, tax, and insurance
        details
      required:
        - Number
        - LeaveFundDateSpecified
        - EligibleServicePeriodStartDateSpecified
        - EligibleServicePeriodStartDateBackupSpecified
        - AustralianResident
        - TaxFileNumber
        - ClaimTaxFreeThreshold
        - FloodLevyExempt
        - CentrelinkDVAReferenceNumber
      properties:
        Number:
          type: string
          description: The unique membership number assigned to the individual.
          example: '1'
        JoinFundDate:
          type: string
          format: date-time
          description: The date the member joined the fund.
          example: '2005-08-15'
        LeaveFundDate:
          type: string
          format: date-time
          description: The date the member left the fund, if applicable.
          example: null
        LeaveFundDateSpecified:
          type: boolean
          description: Indicates whether the LeaveFundDate is specified.
          example: false
        EligibleServicePeriodStartDate:
          type: string
          format: date-time
          description: The start date of the member's eligible service period.
          example: '1988-08-24'
        EligibleServicePeriodStartDateSpecified:
          type: boolean
          description: Indicates whether the EligibleServicePeriodStartDate is specified.
          example: true
        EligibleServicePeriodStartDateBackup:
          type: string
          format: date-time
          description: >-
            A backup date for the start of the eligible service period, if
            applicable.
          example: null
        EligibleServicePeriodStartDateBackupSpecified:
          type: boolean
          description: >-
            Indicates whether the backup eligible service period start date is
            specified.
          example: false
        AustralianResident:
          type: boolean
          description: >-
            Indicates whether the member is an Australian resident for tax
            purposes.
          example: true
        TaxFileNumber:
          type: string
          description: The member's Australian Tax File Number (TFN).
          example: '137202478'
        ClaimTaxFreeThreshold:
          type: boolean
          description: Indicates whether the member has claimed the tax-free threshold.
          example: true
        DeathSumInsured:
          type: number
          format: decimal
          description: The amount insured in the event of the member's death.
          example: 0
        TpdSumInsured:
          type: number
          format: decimal
          description: The amount insured for total and permanent disability (TPD).
          example: 0
        SalaryContinuanceSumInsured:
          type: number
          format: decimal
          description: The amount insured for salary continuance or income protection.
          example: 0
        FloodLevyExempt:
          type: boolean
          description: Indicates whether the member is exempt from the flood levy.
          example: false
        CentrelinkDVAReferenceNumber:
          type: string
          description: >-
            The member's Centrelink or Department of Veterans' Affairs reference
            number, if applicable. (Double check)
          example: null
    VoiceContactType:
      description: Specifies the type of voice-based contact method.
      type: string
      enum:
        - Home
        - Mobile
        - Work
        - Business
        - Direct
    WrittenContactType:
      description: Specifies the type of written communication method.
      type: string
      enum:
        - Email
        - MailingAddress
        - Fax
        - PhysicalAddress
    PartyRoleUserInvitationStatus:
      type: string
      description: >-
        Indicates the current invitation and access status of a user associated
        with a party role in the system.
      enum:
        - NotApplicable
        - NotInvited
        - Invited
        - AccessGranted
        - AccessSuspended
        - CantBeInvited
    MemberDetail_InvitationDetail:
      type: object
      required:
        - InvitationStatus
        - CanInviteUsers
        - PersistedEmailAddress
        - MemberId
      properties:
        InvitationStatus:
          $ref: '#/components/schemas/PartyRoleUserInvitationStatus'
        CanInviteUsers:
          type: boolean
          description: >-
            Indicates whether the member has permission to invite other users to
            the platform.
          example: true
        PersistedEmailAddress:
          type: string
          description: >-
            The email address stored for the member, used for communication and
            invitation purposes.
          example: testers-ProdMember@super-ip.com.au
        MemberId:
          type: string
          description: A unique identifier for the member within the system.
          example: f8fb1a99-0dda-4142-b364-bf5c89f2aff5
    MemberDetail_MemberContactDetail:
      type: object
      required:
        - HomePhone
        - WorkPhone
        - Mobile
        - Direct
        - InvitationDetails
      properties:
        PreferredVoiceContact:
          $ref: '#/components/schemas/VoiceContactType'
          description: The member's preferred method of voice communication.
          example: Mobile
        PreferredWrittenContact:
          $ref: '#/components/schemas/WrittenContactType'
          description: The member's preferred method of written communication.
          example: Email
        HomePhone:
          type: string
          description: The member's home phone number. (Double check)
          example: null
        WorkPhone:
          type: string
          description: The member's work phone number.
          example: null
        Mobile:
          type: string
          description: The member's mobile phone number.
          example: 4123123123
        Direct:
          type: string
          description: A direct phone line to the member.
          example: '0233333333'
        InvitationDetails:
          $ref: '#/components/schemas/MemberDetail_InvitationDetail'
          description: Details about the member's invitation status and permissions.
    MemberDetail_BeneficiaryDetail:
      description: >-
        Contains information about a member's beneficiary nomination, including
        effective and expiry dates, nomination type, and additional details.
      type: object
      required:
        - EffectiveDateSpecified
        - ExpiryDateSpecified
        - NominationType
        - Details
      properties:
        EffectiveDate:
          type: string
          format: date-time
          description: The date the beneficiary nomination becomes effective.
          example: '2020-01-01'
        EffectiveDateSpecified:
          type: boolean
          description: Indicates whether the effective date is explicitly specified.
          example: true
        ExpiryDate:
          type: string
          format: date-time
          description: The date the beneficiary nomination expires, if applicable.
          example: '2030-01-01'
        ExpiryDateSpecified:
          type: boolean
          description: Indicates whether the expiry date is explicitly specified.
          example: true
        NominationType:
          type: string
          description: The type of nomination, such as binding or non-binding.
          example: Binding
        Details:
          type: string
          description: >-
            Additional information or notes regarding the beneficiary
            nomination.
          example: Primary beneficiary is Jane Doe, 100% allocation.
    MemberTransitionDetail_Transition:
      description: >-
        Represents a transition event in a member's superannuation lifecycle,
        such as moving between account types or status changes.
      type: object
      required:
        - TransitionId
        - Date
        - Type
        - Status
      properties:
        TransitionId:
          type: string
          description: A unique identifier for the transition event. (Double Check)
          example: a1b2c3d4-e5f6-7890-abcd-1234567890ef
        Date:
          type: string
          format: date-time
          description: The date and time when the transition occurred.
          example: '2023-07-01'
        Type:
          type: string
          description: The type of transition, such as 'Retirement' or 'LeaveRetirement'.
          example: Retirement
        Status:
          $ref: '#/components/schemas/StatusCode-2'
          description: The current status of the transition.
          example: Active
    MemberDetail_MemberTransitionDetail:
      type: object
      required:
        - MemberId
        - Transitions
      properties:
        MemberId:
          type: string
          description: A unique identifier for the member within the system.
          example: f8fb1a99-0dda-4142-b364-bf5c89f2aff5
        Transitions:
          type: array
          description: Details about the member’s transition status or history.
          items:
            $ref: '#/components/schemas/MemberTransitionDetail_Transition'
    MemberData_MemberDetail:
      description: Provides comprehensive details about a superannuation fund member.
      type: object
      required:
        - Link
        - Status
        - PersonalDetails
        - MembersDetails
        - ContactDetails
        - BeneficiaryDetails
        - MemberTransitionDetails
      properties:
        Link:
          $ref: '#/components/schemas/ApiRestLink-2'
          description: A reference link to the member's API resource.
        Status:
          $ref: '#/components/schemas/StatusCode-2'
          description: The member's current status.
        PersonalDetails:
          $ref: '#/components/schemas/MemberDetail_PersonalDetail'
          description: Personal information about the member.
        MembersDetails:
          $ref: '#/components/schemas/MemberDetail_MemberDetails'
          description: Membership-specific details.
        ContactDetails:
          $ref: '#/components/schemas/MemberDetail_MemberContactDetail'
          description: Contact information for the member.
        BeneficiaryDetails:
          $ref: '#/components/schemas/MemberDetail_BeneficiaryDetail'
          description: Information about the member’s nominated beneficiaries.
        MemberTransitionDetails:
          $ref: '#/components/schemas/MemberDetail_MemberTransitionDetail'
          description: Details about the member’s transition status or history.
    AddressSummary:
      type: object
      description: Standard address structure used for physical and postal addresses.
      properties:
        AddressLine1:
          type: string
          description: Primary address line, typically the street address.
          example: 123 George Street
        AddressLine2:
          type: string
          example: Level 5
          description: Secondary address line, such as building or unit number.
        AddressLine3:
          type: string
          example: Suite 501
          description: Additional address line, if applicable.
        PostCode:
          type: string
          example: '2000'
          description: Postal code (Australian postcodes are 4 digits).
        Locality:
          type: string
          example: Sydney
          description: Suburb or locality name.
        State:
          type: string
          example: NSW
          description: State or territory.
        Country:
          type: string
          example: Australia
          description: Country name.
    MemberStatement_MemberStatementMemberDetails:
      type: object
      description: >-
        Personal details of the member, including name, date of birth, address,
        fund dates, and contact information.
      properties:
        FullName:
          type: string
          example: Mr John Doe
          description: Full name of the member.
        DateOfBirth:
          type: string
          format: date
          example: '1955-12-31'
          description: Date of birth of the member.
        ResidentialAddress:
          $ref: '#/components/schemas/AddressSummary'
        TFNRecorded:
          type: boolean
          example: true
          description: Indicates whether the member's Tax File Number is recorded.
        DateJoinedFund:
          type: string
          format: date
          example: '2003-12-17'
          description: Date the member joined the fund.
        ESPStartDate:
          type: string
          format: date
          example: '2000-11-28'
          description: Start date of the Employer Sponsored Plan (ESP).
        DateLeftFund:
          type: string
          format: date
          example: '2023-06-30'
          description: Date the member left the fund, if applicable.
        DateLeftFundSpecified:
          type: boolean
          example: false
          description: Indicates whether the date left fund is specified.
        Telephone:
          type: string
          example: '0412345678'
          description: Telephone number of the member.
        Fax:
          type: string
          example: '0298765432'
          description: Fax number of the member, 10 characters long.
        MemberNumber:
          type: string
          example: '1'
          description: Member number assigned by the fund.
    MemberStatement_MemberStatementEntityDetails:
      type: object
      description: Entity details including contact information and address.
      properties:
        Id:
          type: string
          example: bc6e82b3-1d04-477c-bd08-aa5235a36ac5
          description: >-
            Unique identifier for the entity, in the format of 8-4-4-4-12
            hexadecimal characters
        Name:
          type: string
          example: John Doe
          description: Name of the entity.
        Address:
          $ref: '#/components/schemas/AddressSummary'
        Telephone:
          type: string
          example: '0412345678'
          description: Telephone number of the member.
        Fax:
          type: string
          example: '0298765432'
          description: Fax number of the member, 10 characters long.
        ContactName:
          type: string
          example: Jane Doe
          description: Name of the contact person for the entity.
        Email:
          type: string
          example: contact@class.com
          description: Email address for the entity.
    MemberStatement_Trustee:
      type: object
      description: Name of an individual trustee.
      properties:
        Name:
          type: string
          example: John Doe
          description: Trustee's full name.
    MemberStatement_MemberStatementSMSFOtherInformation:
      type: object
      description: SMSF-specific information including trustee details.
      properties:
        FundCode:
          type: string
          example: demo-fund
          description: Unique code identifier for the fund.
        TrusteeCompanyName:
          type: string
          example: Doe Pty Limited
          description: Name of the trustee company managing the fund.
        TrusteeNamesHeading:
          type: string
          example: John Family Trustees
          description: Heading used to display trustee names in the statement.
        Trustees:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_Trustee'
        TrusteeNames:
          type: array
          items:
            type: string
            example: John Doe
            description: Names of individual trustees.
    MemberStatement_MemberStatementSAFOtherInformation:
      type: object
      description: SAF-specific information including trustee and auditor details.
      properties:
        FundCode:
          type: string
          example: demo-fund
          description: Unique code identifier for the fund.
        TrusteeEntityDetails:
          $ref: '#/components/schemas/MemberStatement_MemberStatementEntityDetails'
        AuditorFirmName:
          type: string
          example: Example Audit Firm
          description: Name of the auditor firm.
        EligibleRolloverFundEntityDetails:
          $ref: '#/components/schemas/MemberStatement_MemberStatementEntityDetails'
        IndividualTrusteeDetails:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_MemberStatementEntityDetails'
        IndividualTrusteeNames:
          type: array
          items:
            type: string
            example: John Doe
            description: Names of individual trustees.
    MemberStatement_MemberAccountBalanceDetails:
      type: object
      description: >-
        Represents a member's account balance details including account type and
        balance amount.
      properties:
        BalanceType:
          type: string
          example: Opening
          description: Type of balance reported, such as 'Opening' or 'Closing'.
        MemberAccountName:
          type: string
          example: Accumulation
          description: Name of the member's account, e.g., 'Accumulation' or 'ABP200X'.
        Balance:
          type: number
          format: decimal
          example: 687274.9
          description: Balance amount for the specified account type.
    MemberStatementInsuranceBenefits_InsuranceBenefitDetail:
      type: object
      description: Details of a specific insurance benefit type for the member.
      properties:
        CoverProvided:
          type: number
          format: decimal
          example: 250000
          description: Amount of insurance cover provided to the member.
        TotalBenefitPayable:
          type: number
          format: decimal
          example: 1720579.87
          description: Total benefit payable under the insurance policy.
        Balance:
          type: number
          format: decimal
          example: 0
          description: Remaining balance of the insurance benefit.
    MemberStatement_MemberStatementInsuranceBenefits:
      type: object
      description: >-
        Insurance benefit details for the member, including life, disability and
        salary continuation insurance.
      properties:
        InsuranceRecorded:
          type: boolean
          example: true
          description: Indicates whether insurance details are recorded for the member.
        LifeInsurance:
          $ref: >-
            #/components/schemas/MemberStatementInsuranceBenefits_InsuranceBenefitDetail
        DisabilityInsurance:
          $ref: >-
            #/components/schemas/MemberStatementInsuranceBenefits_InsuranceBenefitDetail
        SalaryContinuationInsurance:
          $ref: >-
            #/components/schemas/MemberStatementInsuranceBenefits_InsuranceBenefitDetail
    MemberStatement_NominatedBeneficiaryDetail:
      type: object
      description: Details of a nominated beneficiary for the member.
      properties:
        BeneficiaryDetailsRecorded:
          type: boolean
          example: false
          description: Indicates whether beneficiary details have been recorded.
        NominationType:
          type: string
          example: Binding
          description: Type of beneficiary nomination.
        EffectiveDate:
          type: string
          format: date
          example: '2024-07-01'
          description: Date the beneficiary nomination became effective.
        ExpiryDate:
          type: string
          format: date
          example: '2025-06-30'
          description: Date the beneficiary nomination expires.
        Details:
          type: string
          example: Nomination includes spouse and children.
          description: Additional details about the beneficiary nomination.
    MemberStatement_MemberStatementReserveAccountBalanceDetails:
      type: object
      description: Details of a reserve account balance for the member.
      properties:
        AccountName:
          type: string
          example: Reserve Account
          description: Name of the reserve account associated with the member.
        AccountBalance:
          type: number
          format: decimal
          example: 25000
          description: Balance amount held in the reserve account.
    MemberStatement_MemberStatementRateOfReturn:
      type: object
      description: Annual rate of return information for the member's account.
      properties:
        Year:
          type: string
          example: '2025'
          description: Financial year for which the rate of return is reported.
        Rate:
          type: number
          format: decimal
          example: 5.25
          description: Rate of return for the specified year.
        RateSpecified:
          type: boolean
          example: true
          description: Indicates whether the rate of return is specified.
    MemberStatement_MemberStatementAmountDetail:
      type: object
      description: >-
        Details of a specific amount and its percentage allocation within a
        member's account.
      properties:
        Name:
          type: string
          example: Tax Free
          description: Name of the component or category associated with the amount.
        Amount:
          type: number
          format: decimal
          example: 165255.93
          description: Monetary value associated with the component.
        Percentage:
          type: number
          format: decimal
          example: 22.9337
          description: Percentage allocation of the amount within the total balance.
    MemberStatement_TypelessIncomeExpenseDetail:
      type: object
      description: Represents a single income or expense entry without a specified type.
      properties:
        Name:
          type: string
          example: Lump Sum Cash Payments
          description: Name of the income or expense item.
        Amount:
          type: number
          format: decimal
          example: 500000
          description: Amount associated with the income or expense item.
    MemberStatement_IncomeAmounts:
      type: object
      description: >-
        Income details for a member's account including total income and
        itemised entries.
      properties:
        TotalIncome:
          type: number
          format: decimal
          example: 0
          description: Total income amount for the member's account.
        Incomes:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_TypelessIncomeExpenseDetail'
    MemberStatement_ExpenseAmounts:
      type: object
      description: >-
        Expense details for a member's account including total expenses and
        itemised entries.
      properties:
        TotalExpenses:
          type: number
          format: decimal
        Expenses:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_TypelessIncomeExpenseDetail'
    MemberStatement_IncomeExpenseDetail:
      type: object
      description: Detailed income or expense entry for a member's account.
      properties:
        Type:
          type: string
        Name:
          type: string
        Amount:
          type: number
          format: decimal
    MemberStatement_MemberStatementAccountDetails:
      type: object
      description: >-
        Detailed account information for a member including balances, income,
        expenses and insurance.
      properties:
        AccountDetails_ID:
          type: string
          example: d12a7891-3588-4d86-8c05-a461ae558d19
          description: >-
            Unique identifier for the member account, in the format of
            8-4-4-4-12 hexadecimal characters
        AccountDescription:
          type: string
          example: Accumulation
          description: Description of the member account.
        OpeningBalance:
          type: number
          format: decimal
          example: 687274.9
          description: Opening balance amount.
        ClosingBalance:
          type: number
          format: decimal
          example: 187274.9
          description: Closing balance amount.
        AccountType:
          type: string
          example: Accumulation
          description: Type of the member account.
        AccountStartDate:
          type: string
          format: date
          example: '2003-12-17'
          description: Date the account was established.
        IncomeAmounts:
          $ref: '#/components/schemas/MemberStatement_IncomeAmounts'
        ExpenseAmounts:
          $ref: '#/components/schemas/MemberStatement_ExpenseAmounts'
        TaxableProportion:
          type: number
          format: decimal
          example: 0.72673977
          description: Proportion of the account that is taxable.
        TaxableProportionSpecified:
          type: boolean
          example: true
          description: Indicates whether the taxable proportion is specified.
        PensionAccountStartDate:
          type: string
          format: date
          example: '2007-07-01'
          description: Start date of the pension account.
        PensionAccountStartDateSpecified:
          type: boolean
          example: true
          description: Indicates whether the pension account start date is specified.
        ReversionaryBeneficiaryName:
          type: string
          example: Jane Doe
          description: Name of the reversionary beneficiary.
        IncomeExpenseAmounts:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_IncomeExpenseDetail'
        EtpClosingBalances:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_MemberStatementAmountDetail'
        PreservationClosingBalances:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_MemberStatementAmountDetail'
        InsuranceBenefits:
          $ref: >-
            #/components/schemas/MemberStatement_MemberStatementInsuranceBenefits
    MemberReports_MemberStatement:
      type: object
      description: >-
        Detailed member statement including balances, insurance, beneficiaries,
        and entity details.
      properties:
        OpeningBalanceDate:
          type: string
          format: date
          example: '2024-07-01'
          description: Opening balance date for the statement period.
        AsAtDate:
          type: string
          format: date
          example: '2024-07-01'
          description: The date for which the member statement is applicable.
        MemberId:
          type: string
          example: d12a7891-3588-4d86-8c05-a461ae558d19
          description: >-
            Unique identifier for the member, in the format of 8-4-4-4-12
            hexadecimal characters
        MemberName:
          type: string
          example: John Smith
          description: Full name of the member.
        FundCode:
          type: string
          example: demo-fund
          description: Unique code identifier for the fund.
        FundType:
          type: string
          example: SMSF
          description: Type of the fund.
        FundName:
          type: string
          example: Demo Superannuation Fund
          description: Full name of the fund.
        FundABN:
          type: string
          example: '81948421769'
          description: Australian Business Number (ABN) of the fund.
        IsCorporateTrustee:
          type: boolean
          example: true
          description: Indicates if the fund has a corporate trustee.
        MemberDetails:
          $ref: '#/components/schemas/MemberStatement_MemberStatementMemberDetails'
        BrandEntityDetails:
          $ref: '#/components/schemas/MemberStatement_MemberStatementEntityDetails'
        FundEntityDetails:
          $ref: '#/components/schemas/MemberStatement_MemberStatementEntityDetails'
        AuditorEntityDetails:
          $ref: '#/components/schemas/MemberStatement_MemberStatementEntityDetails'
        InvestmentManagerEntityDetails:
          $ref: '#/components/schemas/MemberStatement_MemberStatementEntityDetails'
        SMSFOtherInformation:
          $ref: >-
            #/components/schemas/MemberStatement_MemberStatementSMSFOtherInformation
        SAFOtherInformation:
          $ref: >-
            #/components/schemas/MemberStatement_MemberStatementSAFOtherInformation
        Balances:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_MemberAccountBalanceDetails'
        OpeningBalance:
          type: number
          format: decimal
          example: 100000
          description: Opening balance amount.
        ClosingBalance:
          type: number
          format: decimal
          example: 150000
          description: Closing balance amount.
        InsuranceBenefits:
          $ref: >-
            #/components/schemas/MemberStatement_MemberStatementInsuranceBenefits
        BeneficiaryDetails:
          $ref: '#/components/schemas/MemberStatement_NominatedBeneficiaryDetail'
        ReserveAccountBalances:
          type: array
          items:
            $ref: >-
              #/components/schemas/MemberStatement_MemberStatementReserveAccountBalanceDetails
        BalanceGraphBase64String:
          type: string
          example: dGVzdCBkYXRhIGZvciBCYWxhbmNlIEdyYXBo
          description: Base64-encoded balance graph image.
        RateOfReturns:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_MemberStatementRateOfReturn'
        DirectorsNames:
          type: array
          description: Names of directors associated with the fund.
          items:
            type: string
          example:
            - Jane Doe
            - John Smith
        TotalEtpComponentBalances:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_MemberStatementAmountDetail'
        TotalPreservationBalances:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_MemberStatementAmountDetail'
        MemberAccountDetails:
          type: array
          items:
            $ref: '#/components/schemas/MemberStatement_MemberStatementAccountDetails'
    FundAuditorDetails_AuditorDetails:
      type: object
      description: >-
        Details of the fund auditor including contact information and
        professional registration.
      properties:
        AuditorName:
          type: string
          example: Jane Smith
          description: Name of the auditor.
        AuditorAddress:
          $ref: '#/components/schemas/AddressSummary'
        BusinessName:
          type: string
          example: Smith Audit Services
          description: Name of the auditor's business.
        BusinessAddress:
          $ref: '#/components/schemas/AddressSummary'
        Telephone:
          type: string
          example: '0412345678'
          description: Telephone number of the auditor.
        Fax:
          type: string
          example: '0298765432'
          description: Fax number of the auditor, 10 characters long.
        ProfessionalOrganisation:
          type: string
          example: CPA Australia
          description: Professional organisation the auditor is affiliated with.
        ProfessionalRegistrationNumber:
          type: string
          example: A123456
          description: Professional registration number of the auditor.
        TFN:
          type: string
          example: '999999507'
          description: Tax File Number of the auditor, 9-digits.
    MemberReports_FundAuditorDetails:
      type: object
      description: >-
        Auditor-related details for the fund including risk management dates,
        contact information, and licensing.
      properties:
        FundName:
          type: string
          example: Demo Superannuation Fund
          description: Full name of the fund.
        FundCode:
          type: string
          example: demo-fund
          description: Unique code identifier for the fund.
        Period:
          type: string
          format: date
          example: '2025-06-30'
          description: Reporting period end date.
        ABN:
          type: string
          example: '81948421769'
          description: Australian Business Number (ABN) of the fund (11 digits).
        TFN:
          type: string
          example: '999999507'
          description: Tax File Number of the fund, 9-digits.
        RMP_RiskManagementPlan_Date:
          type: string
          format: date
          example: '0001-01-01'
          description: Date of the Risk Management Plan.
        RMP_RiskManagementPlan_DateSpecified:
          type: boolean
          example: false
          description: Indicates whether the Risk Management Plan date is specified.
        RMS_RiskManagementStrategy_Date:
          type: string
          format: date
          example: '0001-01-01'
          description: Date of the Risk Management Strategy.
        RMS_RiskManagementStrategy_DateSpecified:
          type: boolean
          example: false
          description: Indicates whether the Risk Management Strategy date is specified.
        RSE_RegisterableSuperanuationEntities_License:
          type: string
          example: RSE123456
          description: The RSE licence number for the fund, if applicable.
        ApprovedTrusteeName:
          type: string
          example: DEMO SMSF Pty Ltd
          description: The name of the approved trustee responsible for the fund.
        FundAddress:
          $ref: '#/components/schemas/AddressSummary'
          description: Address of the fund.
        Telephone:
          type: string
          example: '0298765432'
          description: The contact telephone number for the fund.
        Fax:
          type: string
          example: '123123123'
          description: The fax number for the fund, if applicable.
        Auditor_Details:
          $ref: '#/components/schemas/FundAuditorDetails_AuditorDetails'
    MemberReports_MemberStatementWithAuditorDetails:
      type: object
      description: >-
        Individual member statement along with fund auditor details for
        publication.
      properties:
        FundName:
          type: string
          example: Demo Superannuation Fund
          description: Full name of the fund.
        FundCode:
          type: string
          example: demo-fund
          description: Unique code identifier for the fund.
        AsAtDate:
          type: string
          format: date
          example: '2024-07-01'
          description: >-
            The date for which the member statement and fund auditor details are
            applicable.
        PeriodFromDate:
          type: string
          format: date
          example: '2024-07-01'
          description: Start date of the statement period.
        PeriodToDate:
          type: string
          format: date
          example: '2025-06-30'
          description: End date of the statement period.
        MemberStatement:
          $ref: '#/components/schemas/MemberReports_MemberStatement'
        AuditorDetails:
          $ref: '#/components/schemas/MemberReports_FundAuditorDetails'
    MemberReports_AllMemberStatementsWithAuditorDetails:
      type: object
      description: >-
        Collection of member statements for a fund, with auditor details for
        publication.
      properties:
        AllMemberStatements:
          type: array
          items:
            $ref: >-
              #/components/schemas/MemberReports_MemberStatementWithAuditorDetails
    MemberTransactionSummary_MemberAccountIncomeExpenseSummary:
      type: object
      description: Income and expense summary for a member account.
      properties:
        MemberAccountName:
          type: string
          example: Accumulation
          description: Name of the member account.
        MemberAccountId:
          type: string
          example: b829b394-4e96-45aa-9226-1920229f2add
          description: Unique identifier for the member account.
        MemberAccountType:
          type: string
          example: Accumulation
          description: Type of the member account.
        OpeningBalance:
          type: number
          format: decimal
          example: 100000
          description: Opening balance amount.
        IncreasesContrib:
          type: number
          format: decimal
          example: 0
          description: Contributions added to the account.
        IncreasesTraIn:
          type: number
          format: decimal
          example: 0
          description: Transfers into the account.
        IncreasesProfit:
          type: number
          format: decimal
          example: 0
          description: Profit increases for the account.
        IncreasesInsPol:
          type: number
          format: decimal
          example: 0
          description: Insurance policy increases.
        DecreasesTax:
          type: number
          format: decimal
          example: 0
          description: Decrease in tax liabilities for the member account.
        DecreasesExp:
          type: number
          format: decimal
          example: 500000
          description: Decrease in expenses for the member account.
        DecreasesInsPol:
          type: number
          format: decimal
          example: 0
          description: Decrease in insurance policy value for the member account.
        DecreasesTraOut:
          type: number
          format: decimal
          example: 0
          description: Decrease in transfers out from the member account.
        DecreasesBenPd:
          type: number
          format: decimal
          example: 0
          description: Decrease in benefit paid for the member account.
        ClosingBalance:
          type: number
          format: decimal
          example: 150000
          description: Closing balance amount.
    MemberTransactionSummary_MembersDetail:
      type: object
      description: Summary of transactions for an individual member.
      properties:
        AddressSummary:
          $ref: '#/components/schemas/AddressSummary'
        MemberNumber:
          type: string
          example: '1'
          description: Member number assigned by the fund.
        MemberId:
          type: string
          example: d12a7891-3588-4d86-8c05-a461ae558d19
          description: >-
            Unique identifier for the member, in the format of 8-4-4-4-12
            hexadecimal characters
        MemberName:
          type: string
          example: John Smith
          description: Full name of the member.
        MemberAccountIncomeExpenseSummaries:
          type: array
          items:
            $ref: >-
              #/components/schemas/MemberTransactionSummary_MemberAccountIncomeExpenseSummary
    MemberReports_MemberTransactionSummary:
      type: object
      description: Summary totals for transactions across members for a period.
      properties:
        FundName:
          type: string
          example: DEMO_SMSF_2025
          description: Full name of the fund.
        FundCode:
          type: string
          example: demo-fund
          description: Unique code identifier for the fund.
        Period:
          type: string
          format: date
          example: '2025-06-30'
          description: End date of the reporting period.
        TotalOpeningBalance:
          type: number
          format: decimal
          example: 100000
          description: Total opening balance across all member accounts.
        TotalIncreasesContrib:
          type: number
          format: decimal
          example: 0
          description: Total contributions added to member accounts.
        TotalIncreasesTraIn:
          type: number
          format: decimal
          example: 0
          description: Total transfers into member accounts.
        TotalIncreasesProfit:
          type: number
          format: decimal
          example: 0
          description: Total profit increases across member accounts.
        TotalIncreasesInsPol:
          type: number
          format: decimal
          example: 0
          description: Total increases from insurance policies.
        TotalDecreasesTax:
          type: number
          format: decimal
          example: 0
          description: Total decreases in tax liabilities from member accounts.
        TotalDecreasesExp:
          type: number
          format: decimal
          example: 0
          description: Total decreases in expenses from member accounts.
        TotalDecreasesInsPol:
          type: number
          format: decimal
          example: 0
          description: Total decreases in insurance policy values from member accounts.
        TotalDecreasesTraOut:
          type: number
          format: decimal
          example: 0
          description: Total decreases in transfers out from member accounts.
        TotalDecreasesBenPd:
          type: number
          format: decimal
          example: 0
          description: Total decreases in benefit paid from member accounts.
        TotalClosingBalance:
          type: number
          format: decimal
          example: 105000
          description: Total closing balance across all member accounts.
        MembersDetails:
          type: array
          items:
            $ref: '#/components/schemas/MemberTransactionSummary_MembersDetail'
    DetailedOperatingStatement_IncomeExpenseDetailsItem:
      type: object
      properties:
        TotalValuePrevYear:
          type: number
          format: decimal
          description: The total value of the item in the previous financial year.
          example: 12000
        Description:
          type: string
          description: A description of the income or expense item.
          example: Interest income from term deposits
        TotalValue:
          type: number
          format: decimal
          description: The total value of the item in the current financial year.
          example: 13500
        Depth:
          type: integer
          format: int32
          description: The hierarchical level of the item in the report structure.
          example: 1
        TotalValueIsSummary:
          type: boolean
          description: Indicates whether the total value represents a summary of sub-items.
          example: false
        TotalValuePrevYearIsSummary:
          type: boolean
          description: >-
            Indicates whether the previous year's total value is a summary of
            sub-items.
          example: false
        FundNotesReferenceNumber:
          type: string
          description: >-
            A reference number linking the item to notes in the financial
            statements.
          example: FN-2025-03
        Id:
          type: string
          description: A unique identifier for the income or expense item.
          example: contributions
    AccountingReports_DetailedOperatingStatement:
      type: object
      properties:
        FundName:
          type: string
          description: The name of the fund being reported.
          example: DEMO_SMSF_2025
        FundCode:
          type: string
          description: The unique code identifying the fund.
          example: demo-fund
        Period:
          type: string
          format: date
          description: >-
            The reporting period for the operating statement, typically the
            start date of the financial period.
          example: '2025-07-01'
        PreviousPeriod:
          type: string
          format: date
          description: The start date of the previous financial period used for comparison.
          example: '2024-07-01'
        IncludesPrevYear:
          type: boolean
          description: >-
            Indicates whether the report includes data from the previous
            financial year for comparison.
          example: true
        IncomeItems:
          type: array
          description: >-
            A list of income-related line items for the fund during the
            reporting period.
          items:
            $ref: >-
              #/components/schemas/DetailedOperatingStatement_IncomeExpenseDetailsItem
        ExpenseItems:
          type: array
          description: >-
            A list of expense-related line items for the fund during the
            reporting period.
          items:
            $ref: >-
              #/components/schemas/DetailedOperatingStatement_IncomeExpenseDetailsItem
        IncomeTaxItems:
          type: array
          description: >-
            A list of income tax-related line items applicable to the fund for
            the reporting period.
          items:
            $ref: >-
              #/components/schemas/DetailedOperatingStatement_IncomeExpenseDetailsItem
    FeedStatus:
      type: string
      enum:
        - Ok
        - ManuallyImported
        - FeedNotSupported
        - DeclinedByAuthoriser
        - AfterEndDate
        - SrnNotSupported
        - AccountClosed
        - WaitingForStartDate
        - WaitingOnAuthoriser
        - WaitingOnProvider
        - FollowUpRequested
        - ReceivedByProvider
        - ActivatedByProvider
        - ActivationOverdue
        - WaitingForVerification
        - ProductNotSet
        - AuthorityNotSent
        - AdviserNotSet
        - WrapOrBrokerAccountNotSet
        - AccountNumberNotSet
        - BsbNotValid
        - RejectedByProvider
        - UnlinkedHoldings
        - FeedNoLongerActive
        - Unknown
        - AccountSuspended
        - NonBankAccount
        - LinkedToWrapOrBrokerAccount
        - FeedTurnedOff
        - WaitingForFirstData
    FeedStatusCategory:
      type: string
      enum:
        - ActionRequired
        - Waiting
        - NoFeed
        - Working
        - Disabled
        - Error
    ProductType:
      type: string
      enum:
        - Other
        - BankAccount
        - BrokerAccount
        - WrapAccount
        - TermDeposit
    AuthorisationType:
      type: string
      enum:
        - None
        - AccountHolder
        - AdviserOrDealer
        - Online
    AuthorisationStatus:
      type: string
      enum:
        - Waiting
        - Received
        - ReceivedBarcodeUnrecognised
        - ReceivedIncorrectPageCount
        - ReceivedBarCodeMismatch
    FeedData_FeedProcessingSummary:
      type: object
      description: >-
        Represents the full configuration and current processing status of a
        single data feed, including fund, brand, business, product, provider,
        and authorisation details.
      required:
        - FeedId
        - FundId
        - FundCode
        - FundName
        - BrandId
        - BrandCode
        - BrandName
        - BusinessId
        - BusinessCode
        - BusinessName
        - AccountName
        - FeedDescription
        - ExternalIdentifier
        - DefaultDisplayName
        - HIN
        - BankAccountId
        - BSB
        - FeedStatus
        - FeedStatusCategory
        - FeedStatusEffectiveDate
        - ProductId
        - ProductName
        - ProductType
        - IsContributionProduct
        - ProviderId
        - ProviderName
        - FirstProcessedSpecified
        - LastProcessedSpecified
        - AuthorisationType
        - AuthorisationStatus
        - HasAuthorityProcess
        - AuthorityUploaded
        - AuthorityId
        - AdviserId
        - AdviserName
        - AdviserCode
      properties:
        FeedId:
          type: string
          description: The unique GUID identifier of the feed.
          example: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
        FundId:
          type: string
          description: The unique GUID identifier of the fund this feed belongs to.
          example: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f
        FundCode:
          type: string
          description: The unique code identifying the fund within Class.
          example: demo-fund
        FundName:
          type: string
          description: The display name of the fund.
          example: Demo Super Fund
        BrandId:
          type: string
          description: The unique GUID identifier of the brand associated with this feed.
          example: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
        BrandCode:
          type: string
          description: The short code identifying the brand.
          example: demo-brand
        BrandName:
          type: string
          description: The display name of the brand.
          example: Demo Brand
        BusinessId:
          type: string
          description: The unique GUID identifier of the business that manages this feed.
          example: d6e1a45f-7e8b-7f9c-2a0d-1b2c3d4e5f6a
        BusinessCode:
          type: string
          description: The unique code identifying the business within Class.
          example: demo-business
        BusinessName:
          type: string
          description: The display name of the business.
          example: Demo Business Pty Ltd
        AccountName:
          type: string
          description: The name of the account as returned by the data provider.
          example: Demo Fund Cash Account
          nullable: true
        FeedDescription:
          type: string
          description: >-
            A descriptive label for the feed, typically including the provider
            and account type.
          example: Commonwealth Bank of Australia - Cash Account
        ExternalIdentifier:
          type: string
          description: >-
            The external account identifier used by the data provider (e.g. BSB
            and account number combination).
          example: '12345678'
          nullable: true
        DefaultDisplayName:
          type: string
          description: The default display name shown for this feed in Class.
          example: CBA Cash - demo-fund
        HIN:
          type: string
          description: >-
            The Holder Identification Number for broker feeds. Empty for
            non-broker feeds.
          example: ''
          nullable: true
        BankAccountId:
          type: string
          description: >-
            The unique GUID identifier of the linked bank account record in
            Class.
          example: e7f2h56a-8f9b-8a0c-3d1e-2b3c4d5e6f7a
          nullable: true
        BSB:
          type: string
          description: The Bank State Branch number for bank account feeds.
          example: 000-000
          nullable: true
        FeedStatus:
          $ref: '#/components/schemas/FeedStatus'
          description: The current operational status of the feed.
        FeedStatusCategory:
          $ref: '#/components/schemas/FeedStatusCategory'
          description: The broad category grouping of the current feed status.
        FeedStatusEffectiveDate:
          type: string
          format: date-time
          description: The date from which the current feed status has been in effect.
          example: '2025-01-01'
        ProductId:
          type: string
          description: >-
            The unique GUID identifier of the financial product associated with
            this feed.
          example: f8a3b67c-9a0d-9b1e-4c2d-3e4f5a6b7c8d
          nullable: true
        ProductName:
          type: string
          description: The display name of the financial product.
          example: CBA Cash Account
          nullable: true
        ProductType:
          $ref: '#/components/schemas/ProductType'
          description: The type classification of the financial product.
        IsContributionProduct:
          type: boolean
          description: >-
            Indicates whether the product is configured to accept superannuation
            contributions.
          example: false
        ProviderId:
          type: string
          description: The unique GUID identifier of the data feed provider.
          example: a9b4c78d-0b1e-0c2f-5d3e-4f5a6b7c8d9e
          nullable: true
        ProviderName:
          type: string
          description: The display name of the data feed provider.
          example: Commonwealth Bank of Australia
          nullable: true
        FirstProcessed:
          type: string
          format: date-time
          description: The date the feed was first successfully processed.
          example: '2024-07-01'
          nullable: true
        LastProcessed:
          type: string
          format: date-time
          description: The date the feed was most recently processed.
          example: '2025-03-15'
          nullable: true
        FirstProcessedSpecified:
          type: boolean
          description: >-
            Indicates whether a first processed date has been recorded for this
            feed.
          example: true
        LastProcessedSpecified:
          type: boolean
          description: >-
            Indicates whether a last processed date has been recorded for this
            feed.
          example: true
        AuthorisationType:
          $ref: '#/components/schemas/AuthorisationType'
          description: The method used to authorise the data feed with the provider.
        AuthorisationStatus:
          $ref: '#/components/schemas/AuthorisationStatus'
          description: The current status of the feed authorisation process.
        HasAuthorityProcess:
          type: boolean
          description: >-
            Indicates whether a formal authority process (e.g. signed authority
            form) is required for this feed.
          example: false
        AuthorityUploaded:
          type: boolean
          description: Indicates whether the authority document has been uploaded to Class.
          example: false
        AuthorityId:
          type: string
          description: >-
            The unique GUID identifier of the authority record. Empty if no
            authority process exists.
          example: b0c5d89e-1c2f-1d3a-6e4f-5a6b7c8d9e0f
          nullable: true
        AdviserId:
          type: string
          description: The unique GUID identifier of the adviser associated with this feed.
          example: c1d6e90f-2d3a-2e4b-7f5a-6b7c8d9e0f1a
          nullable: true
        AdviserName:
          type: string
          description: The full name of the adviser associated with this feed.
          example: John Smith
          nullable: true
        AdviserCode:
          type: string
          description: The short code identifying the adviser within Class.
          example: JS001
          nullable: true
    ExpenseExemptionCalculationMethod:
      type: string
      enum:
        - CalculateUsingATOFormula
        - UseActuarialPercentage
        - ManuallySpecifyPercentage
    AccountingReports_PensionExemptionDetail:
      type: object
      properties:
        ActuarialPensionExemptionPercentage:
          type: number
          format: decimal
          description: >-
            The percentage of the fund's income that is exempt from tax based on
            actuarial certification.
          example: 65.75
        ExpensesPensionExemptionPercentage:
          type: number
          format: decimal
          description: >-
            The percentage of fund expenses that are exempt from tax due to
            pension phase allocation.
          example: 70.25
        ExpenseExemptionCalculationMethod:
          $ref: '#/components/schemas/ExpenseExemptionCalculationMethod'
          description: >-
            The method used to calculate the exempt portion of expenses for
            pension purposes.
        UseSegregationForPensionExemption:
          type: boolean
          description: >-
            Indicates whether the fund uses asset segregation to determine
            pension exemption eligibility.
          example: false
    TaxAccountingReconciliationDetails_TaxItem:
      type: object
      description: >-
        Represents a tax reconciliation item including gross and tax amounts for
        a specific field.
      properties:
        FieldName:
          type: string
          description: Name of the field or category being reconciled.
          example: Investment Income
        GrossAmount:
          type: number
          format: decimal
          description: Total gross amount before tax.
          example: 10000
        TaxAmount:
          type: number
          format: decimal
          description: Tax amount applied to the gross value.
          example: 1500
    TaxAccountingReconciliationDetails_Item:
      type: object
      properties:
        Description:
          type: string
        Total:
          type: number
          format: decimal
    TaxAccountingReconciliationDetails_ReconciliationView:
      type: object
      properties:
        First:
          $ref: '#/components/schemas/TaxAccountingReconciliationDetails_Item'
        Final:
          $ref: '#/components/schemas/TaxAccountingReconciliationDetails_Item'
        Add:
          type: array
          items:
            $ref: '#/components/schemas/TaxAccountingReconciliationDetails_Item'
        Less:
          type: array
          items:
            $ref: '#/components/schemas/TaxAccountingReconciliationDetails_Item'
    AccountingReports_TaxAccountingReconciliationDetails:
      type: object
      properties:
        FundName:
          type: string
          description: The name of the fund being reported.
          example: DEMO_SMSF_2025
        FundCode:
          type: string
          description: The unique code identifying the fund.
          example: demo-fund
        ErrorCode:
          type: string
          description: >-
            An optional error code indicating any issues encountered during
            reconciliation.
          example: ERR003
        Period:
          type: string
          format: date
          description: The reporting period for the tax accounting reconciliation.
          example: '2025-07-01'
        PensionExemptionDetail:
          $ref: '#/components/schemas/AccountingReports_PensionExemptionDetail'
          description: >-
            Details of pension-related tax exemptions, including actuarial and
            expense-based percentages.
        TaxBreakdown:
          type: array
          description: >-
            A breakdown of tax components including types, amounts, and
            applicable rates.
          items:
            $ref: '#/components/schemas/TaxAccountingReconciliationDetails_TaxItem'
        ProvisionVsIncomeTaxExpense:
          $ref: >-
            #/components/schemas/TaxAccountingReconciliationDetails_ReconciliationView
          description: >-
            Reconciliation between tax provisions and income tax expense
            reported in the financial statements.
        ProvisionVsIncomeTaxPayable:
          $ref: >-
            #/components/schemas/TaxAccountingReconciliationDetails_ReconciliationView
          description: Reconciliation between tax provisions and actual income tax payable.
        OperatingStatementProfitVsIncomeTaxPayable:
          $ref: >-
            #/components/schemas/TaxAccountingReconciliationDetails_ReconciliationView
          description: >-
            Reconciliation between operating statement profit and income tax
            payable.
    GlTransactionsAuditTrail_GlTransactionSummary:
      type: object
      properties:
        Debit:
          type: number
          format: decimal
          description: The amount debited from the account in this transaction.
          example: 1200.5
        DebitSpecified:
          type: boolean
          description: Indicates whether the debit value is explicitly specified.
          example: true
        Credit:
          type: number
          format: decimal
          description: The amount credited to the account in this transaction.
          example: 0
        CreditSpecified:
          type: boolean
          description: Indicates whether the credit value is explicitly specified.
          example: true
        ProcessedOnDate:
          type: string
          format: date
          description: The date when the transaction was processed in the system.
          example: '2025-10-28'
        ProcessedByUser:
          type: string
          description: >-
            The username or identifier of the person or system that processed
            the transaction.
          example: dlin_support
        TransactionDate:
          type: string
          format: date
          description: The actual date the transaction occurred.
          example: '2025-10-27'
        Account:
          type: string
          description: >-
            The general ledger account code or name associated with the
            transaction.
          example: GL-2001-OfficeSupplies
        Description:
          type: string
          description: A brief description of the transaction.
          example: Purchase of office supplies
        State:
          type: string
          description: >-
            The current state of the transaction (e.g., Posted, Pending,
            Reversed).
          example: Posted
        Balance:
          type: number
          format: decimal
          description: The account balance after this transaction was applied.
          example: 8450.2
    GlTransactionsAuditTrail_GlTransactionGroup:
      type: object
      properties:
        GroupName:
          type: string
        Transactions:
          type: array
          items:
            $ref: '#/components/schemas/GlTransactionsAuditTrail_GlTransactionSummary'
    AccountingReports_GlTransactionsAuditTrail:
      type: object
      properties:
        FundName:
          type: string
          description: The name of the fund being reported.
          example: DEMO_SMSF_2025
        FundCode:
          type: string
          description: The unique code identifying the fund.
          example: demo-fund
        Period:
          type: string
          format: date
          description: The reporting period for the GL transactions audit trail.
          example: '2025-09-30'
        Groups:
          type: array
          description: A collection of GL transaction groups included in the audit trail.
          items:
            $ref: '#/components/schemas/GlTransactionsAuditTrail_GlTransactionGroup'
    ApiError-5:
      type: object
      description: Represents an error returned by the API, including a code and message.
      required:
        - Code
        - Message
      properties:
        Code:
          type: string
          description: Error code identifying the type of error.
        Message:
          type: string
          description: Human-readable message describing the error.
    ApiResponseBase-5:
      type: object
      description: >-
        Base structure for API responses, including error codes, error details,
        and creation status.
      required:
        - ErrorCodes
        - Errors
        - CreatedUri
        - IsCreatedResponse
      properties:
        ErrorCodes:
          type: array
          items:
            type: string
          description: List of error codes returned by the API, if any.
        Errors:
          type: array
          items:
            $ref: '#/components/schemas/ApiError-5'
          description: Detailed error objects returned by the API.
        CreatedUri:
          type: string
          description: URI of the newly created resource, if applicable.
        IsCreatedResponse:
          type: boolean
          description: Indicates whether the response is for a newly created resource.
    AddressSummary-2:
      type: object
      description: Summary of an address, including all standard address fields.
      required:
        - AddressLine1
        - AddressLine2
        - AddressLine3
        - PostCode
        - Locality
        - State
        - Country
      properties:
        AddressLine1:
          type: string
          description: First line of the address, typically the street address.
          example: 123 Example Street
        AddressLine2:
          type: string
          description: Second line of the address, such as apartment or suite number.
          example: Suite 5
        AddressLine3:
          type: string
          description: Third line of the address, used for additional details.
          example: ''
        PostCode:
          type: string
          description: Postcode or ZIP code for the address.
          example: '2000'
        Locality:
          type: string
          description: Locality or suburb of the address.
          example: Sydney
        State:
          type: string
          description: State or territory for the address.
          example: NSW
        Country:
          type: string
          description: Country for the address.
          example: Australia
    FundTrusteeSummary_TrusteeName:
      type: object
      description: >-
        Details of a trustee, including identity, contact, and address
        information.
      required:
        - Id
        - Name
        - PartyType
        - Title
        - FirstName
        - MiddleNames
        - LastName
        - PreferredName
        - Email
        - EmailSpecified
        - DefaultAddress
        - DisplayName
        - IsErrorMessage
      properties:
        Id:
          type: string
          description: Unique identifier for the trustee record.
          example: T001
        Name:
          type: string
          description: Full name of the trustee.
          example: Oliver Brown
        PartyType:
          type: string
          description: Type of party (e.g., Individual or Organisation).
          example: Individual
        Title:
          type: string
          description: Title for the trustee.
          example: Mr
        FirstName:
          type: string
          description: First name of the trustee.
          example: Oliver
        MiddleNames:
          type: string
          description: Middle names of the trustee.
          example: ''
        LastName:
          type: string
          description: Last name of the trustee.
          example: Brown
        PreferredName:
          type: string
          description: Preferred or informal name used by the trustee.
          example: Ollie
        Email:
          type: string
          description: Email address of the trustee.
          example: oliver.brown@example.com
        EmailSpecified:
          type: boolean
          description: Indicates whether the trustee’s email is provided.
          example: true
        DefaultAddress:
          $ref: '#/components/schemas/AddressSummary-2'
        JoinFundDate:
          type: string
          format: date
          description: Date the trustee joined the fund, if applicable.
          example: '2003-12-17'
        DisplayName:
          type: string
          description: Display-friendly name for the trustee.
          example: Oliver Brown
        IsErrorMessage:
          type: boolean
          description: >-
            True if this record represents an error message rather than a
            trustee.
          example: false
        Gender:
          type: string
          description: Gender of the trustee.
          enum:
            - Male
            - Female
            - Other
            - NotStated
    FundTrusteeSummary:
      type: object
      description: Summary information about the fund’s trustees and chairperson.
      required:
        - FundLegalType
        - FundName
        - TrusteeNames
        - TrusteeNamesString
        - ChairpersonName
        - ChairpersonGivenName
        - ChairpersonLastName
        - ChairpersonPreferredName
        - ChairpersonPartyId
        - IsCorporateTrustee
        - ChairpersonTitle
        - ChairpersonEmail
        - ChairpersonEmailSpecified
        - CorporateTrusteeACN
        - CorporateTrusteeABN
      properties:
        FundLegalType:
          type: string
          description: Legal type of the fund.
          example: SMSF
        FundName:
          type: string
          description: Name of the fund.
          example: Sample Super Fund
        TrusteeNames:
          type: array
          description: List of trustees associated with the fund.
          items:
            $ref: '#/components/schemas/FundTrusteeSummary_TrusteeName'
        TrusteeNamesString:
          type: string
          description: Comma-separated list of trustee names.
          example: Oliver Brown, Jennifer Brown
        ChairpersonName:
          type: string
          description: Full name of the chairperson trustee.
          example: Jennifer Brown
        ChairpersonGivenName:
          type: string
          description: Given name of the chairperson.
          example: Jennifer
        ChairpersonLastName:
          type: string
          description: Last name of the chairperson.
          example: Brown
        ChairpersonPreferredName:
          type: string
          description: Preferred name used for the chairperson.
          example: Jen
        ChairpersonPartyId:
          type: string
          description: Internal party identifier for the chairperson.
          example: P12345
        IsCorporateTrustee:
          type: boolean
          description: Indicates whether the trustee is a corporate entity.
          example: false
        ChairpersonTitle:
          type: string
          description: Title of the chairperson.
          example: Mrs
        ChairpersonEmail:
          type: string
          description: Email address of the chairperson.
          example: j.brown@example.com
        ChairpersonEmailSpecified:
          type: boolean
          description: Indicates whether the chairperson's email is present.
          example: true
        CorporateTrusteeACN:
          type: string
          description: Australian Company Number for the corporate trustee, if applicable.
          example: ''
        CorporateTrusteeABN:
          type: string
          description: Australian Business Number for the corporate trustee, if applicable.
          example: ''
    TransferBalanceDeclarationDetails_Details:
      type: object
      description: >-
        Summary details for the Transfer Balance Declaration report, including
        fund name, ABN, and trustee summary.
      required:
        - FundName
        - ABN
        - FundTrusteeSummary
      properties:
        FundName:
          type: string
          description: Name of the fund for which the transfer balance declaration applies.
          example: Sample Super Fund
        ABN:
          type: string
          description: Australian Business Number of the fund.
          example: '12345678901'
        FundTrusteeSummary:
          $ref: '#/components/schemas/FundTrusteeSummary'
    TransferBalanceDeclarationDetails_TbarEvent:
      type: object
      description: Details of a TBAR event for a member.
      required:
        - AccountType
        - AccountNumber
        - AccountName
        - EventType
        - EventDate
        - Value
      properties:
        AccountType:
          type: string
          description: Type of account associated with the event.
          example: Pension
        AccountNumber:
          type: string
          description: Account number associated with the event.
          example: '123456'
        AccountName:
          type: string
          description: Name of the account associated with the event.
          example: Retirement Pension
        EventType:
          type: string
          description: Type of TBAR event.
          example: Commencement
        EventDate:
          type: string
          format: date
          description: Date of the TBAR event.
          example: '2023-07-01'
        Value:
          type: number
          format: decimal
          description: Value associated with the TBAR event.
          example: 100000
    TransferBalanceDeclarationDetails_Member:
      type: object
      description: Details of a member included in the transfer balance declaration report.
      required:
        - FullName
        - TbarEvents
      properties:
        FullName:
          type: string
          description: Full name of the member.
          example: Alex Smith
        TbarEvents:
          type: array
          items:
            $ref: '#/components/schemas/TransferBalanceDeclarationDetails_TbarEvent'
          description: List of TBAR events for the member.
    FundReports_TransferBalanceDeclarationDetails:
      type: object
      description: >-
        Details of the Transfer Balance Declaration report for a fund, including
        reporting period and member information.
      required:
        - FundReportingDetails
        - StartDate
        - EndDate
        - Members
      properties:
        FundReportingDetails:
          $ref: '#/components/schemas/TransferBalanceDeclarationDetails_Details'
        StartDate:
          type: string
          format: date
          description: >-
            Start date of the reporting period for the transfer balance
            declaration.
          example: '2020-07-01'
        EndDate:
          type: string
          format: date
          description: >-
            End date of the reporting period for the transfer balance
            declaration.
          example: '2024-06-30'
        Members:
          type: array
          description: List of members included in the transfer balance declaration report.
          items:
            $ref: '#/components/schemas/TransferBalanceDeclarationDetails_Member'
    TrialBalanceDetails_Balance:
      type: object
      description: Represents balance and quantity details for a trial balance account.
      properties:
        QuantityOut:
          type: number
          format: decimal
          description: Quantity moved out or disposed during the period.
          example: 100
        Quantity:
          type: number
          format: decimal
          description: Total quantity held at the end of the period.
          example: 500
        QuantityOutSpecified:
          type: boolean
          description: Indicates whether the quantity out value is explicitly provided.
          example: true
        AccountBalance:
          type: number
          format: decimal
          description: Monetary balance of the account.
          example: 125000.75
        AccountBalanceDirection:
          $ref: '#/components/schemas/DebitCreditIndicator'
          description: Indicates whether the balance is a debit or credit.
        IsSummary:
          type: boolean
          description: Indicates whether the balance is a summary of sub-accounts.
          example: false
    TrialBalanceDetails_AccountBalanceDetails:
      type: object
      properties:
        Id:
          type: string
          description: Unique identifier for the account in GUID format.
          example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
        AccountDescription:
          type: string
          description: Description of the account.
          example: Investment Income
        Depth:
          type: integer
          format: int32
          description: Depth level in the account hierarchy.
          example: 2
        CurrentBalance:
          $ref: '#/components/schemas/TrialBalanceDetails_Balance'
          description: Current year balance details.
        PreviousBalance:
          $ref: '#/components/schemas/TrialBalanceDetails_Balance'
          description: Previous year balance details.
        HasChildWithQuantity:
          type: boolean
          description: Indicates whether any child accounts include quantity data.
          example: false
    TrialBalanceDetails_AccountBalanceGroup:
      type: object
      description: Represents a group of account balances within a trial balance report.
      properties:
        Name:
          type: string
          description: Name of the account group.
          example: Investment Income Accounts
        AccountBalances:
          type: array
          description: List of account balance details within the group.
          items:
            $ref: '#/components/schemas/TrialBalanceDetails_AccountBalanceDetails'
    AccountingReports_TrialBalanceDetails:
      type: object
      properties:
        FundName:
          type: string
        FundCode:
          type: string
        BalanceAtDate:
          type: string
          format: date
        PeriodUpdateRun:
          type: boolean
        PriorYearNotOnSystem:
          type: boolean
        AccountBalanceGroups:
          type: array
          items:
            $ref: '#/components/schemas/TrialBalanceDetails_AccountBalanceGroup'
    FundTrusteeSummary_TrusteeName-2:
      type: object
      description: >-
        Details of an individual trustee including name, contact and fund
        participation.
      properties:
        Id:
          type: string
          example: bc6e82b3-1d04-477c-bd08-aa5235a36ac5
          description: >-
            Unique identifier for the entity, in the format of 8-4-4-4-12
            hexadecimal characters
        Name:
          type: string
          example: John Doe
          description: Full name of the trustee.
        PartyType:
          type: string
          example: Individual
          description: Type of party (e.g., Individual or Corporate).
        Title:
          type: string
          example: Mr
          description: Title of the trustee.
        FirstName:
          type: string
          example: John
          description: First name of the trustee.
        MiddleNames:
          type: string
          example: James
          description: Middle names of the trustee.
        LastName:
          type: string
          example: Doe
          description: Last name of the trustee.
        PreferredName:
          type: string
          example: Johnny
          description: Preferred name of the trustee.
        Email:
          type: string
          example: john.doe@example.com
          description: Email address of the trustee.
        DefaultAddress:
          $ref: '#/components/schemas/AddressSummary'
        JoinFundDate:
          type: string
          format: date
          example: '2003-12-17'
          description: Date the trustee joined the fund.
        DisplayName:
          type: string
          example: John Doe
          description: Display name of the trustee.
        IsErrorMessage:
          type: boolean
          example: false
          description: Indicates if the trustee record contains an error message.
    FundTrusteeSummary-2:
      type: object
      description: >-
        Summary information about the fund's trustee structure including legal
        type, chairperson and trustee names.
      properties:
        FundLegalType:
          type: string
          example: SMSF
          description: Legal classification of the fund.
        FundName:
          type: string
          example: Demo Superannuation Fund
          description: Full name of the fund.
        TrusteeNames:
          type: array
          items:
            $ref: '#/components/schemas/FundTrusteeSummary_TrusteeName-2'
        TrusteeNamesString:
          type: string
          example: John Doe Pty Limited
          description: String of trustee names.
        ChairpersonName:
          type: string
          example: John Doe
          description: Full name of the chairperson.
        ChairpersonGivenName:
          type: string
          example: John
          description: Given name of the chairperson.
        ChairpersonLastName:
          type: string
          example: Doe
          description: Last name of the chairperson.
        ChairpersonPreferredName:
          type: string
          example: Johnny
          description: Preferred name of the chairperson.
        ChairpersonPartyId:
          type: string
          example: bc6e82b3-1d04-477c-bd08-aa5235a36ac5
          description: >-
            Unique identifier for the entity, in the format of 8-4-4-4-12
            hexadecimal characters.
        IsCorporateTrustee:
          type: boolean
          example: true
          description: Indicates if the fund has a corporate trustee.
        ChairpersonTitle:
          type: string
          example: Mr
          description: Title of the chairperson.
        ChairPersonEmail:
          type: string
          example: john.doe@example.com
          description: Email address of the chairperson.
        CorporateTrusteeACN:
          type: string
          example: '009437852'
          description: Australian Company Number of the corporate trustee.
        CorporateTrusteeABN:
          type: string
          example: '53004085616'
          description: Australian Business Number of the corporate trustee.
    MinutesData_TrusteeDeclarationReport:
      type: object
      description: Details of the trustee declaration report for a given fund and period.
      properties:
        FundTrusteeSummary:
          $ref: '#/components/schemas/FundTrusteeSummary-2'
        Period:
          type: string
          format: date
          example: '2025-06-30'
          description: Reporting period for the trustee declaration.
        FundName:
          type: string
          example: Demo Superannuation Fund 2022
          description: Full name of the fund.
        FundCode:
          type: string
          example: DEMO_SMSF_2022
          description: Unique code identifier for the fund.
        FundAbn:
          type: string
          example: '46121158503'
          description: Australian Business Number (ABN) of the fund.
        TrusteeName:
          type: string
          example: Jennifer Brown
          description: Name of the trustee responsible for the declaration.
