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

# Summarize filtered transactions

> Aggregates the whole filtered set, not just the current page. Card funding and same-account member transfers are net-zero within the account and are excluded from both spent and incoming.



## OpenAPI

````yaml /openapi.json post /transactions/summary
openapi: 3.1.0
info:
  title: Finup Public API
  version: 1.0.0
  description: >-
    Client-facing Finup API reference generated from current public endpoint
    metadata.
servers:
  - url: https://api.finup.io/backend
    description: Production
security: []
tags:
  - name: Accounts
    description: Current account, account setup, and account capabilities.
  - name: Transactions
    description: Account transaction lists and aggregates.
  - name: Cards
    description: Card issuing, listing, funding, and status changes.
paths:
  /transactions/summary:
    post:
      tags:
        - Transactions
      summary: Summarize filtered transactions
      description: >-
        Aggregates the whole filtered set, not just the current page. Card
        funding and same-account member transfers are net-zero within the
        account and are excluded from both spent and incoming.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TransactionsRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionSummary'
        '401':
          description: Missing or invalid credentials
        '403':
          description: Insufficient permission for this operation
        '404':
          description: Resource not found
      security:
        - apiKeyAuth: []
components:
  schemas:
    TransactionsRequest:
      type: object
      properties:
        filters:
          $ref: '#/components/schemas/TransactionFilters'
        pagination:
          $ref: '#/components/schemas/PaginationInput'
    TransactionSummary:
      type: object
      properties:
        spent:
          type: string
          description: Decimal money string in USD.
          example: '1250.00'
        incoming:
          type: string
          description: Decimal money string in USD.
          example: '2500.00'
        fees:
          type: string
          description: Decimal money string in USD.
          example: '15.00'
        declined:
          type: string
          description: Decimal money string in USD.
          example: '0.00'
        net:
          type: string
          description: incoming − spent − fees. Decimal money string in USD.
          example: '1235.00'
    TransactionFilters:
      type: object
      properties:
        side:
          type: array
          items:
            type: string
            enum:
              - credit
              - debit
            example: debit
          description: Payment sides to include.
          example:
            - debit
        type:
          type: array
          items:
            type: string
            enum:
              - adjustment
              - card_transaction
              - card_deposit
              - card_withdraw
              - deposit
              - fee
              - reward
              - user_transfer
              - account_transfer
              - withdraw
            example: card_transaction
          description: Payment types to include.
          example:
            - card_transaction
        status:
          type: array
          items:
            type: string
            enum:
              - approved
              - canceled
              - declined
              - pending
              - processing
            example: approved
          example:
            - approved
            - pending
        card_id:
          type: array
          items:
            type: string
          description: Card ids to include.
          example:
            - 67fc3d0a766d7a2c1fafefb8
        id:
          type: array
          items:
            type: string
          description: >-
            Transaction ids to include. Restricts the result to exactly these
            transactions; combines (AND) with every other filter.
          example:
            - 68b2f1c7a1d4e90012ab34cd
        tag_ids:
          type: array
          items:
            type: string
          description: >-
            Card tag ids. Keeps only transactions on cards carrying at least one
            of these tags. Omitted or empty disables tag filtering.
          example:
            - 67fc3d0a766d7a2c1fafefb7
        merchant_category:
          type: array
          items:
            type: string
          description: >-
            Merchant categories (card_transaction_data.merchant_category, exact
            match, any of). Only card transactions carry a category, so a
            non-empty value restricts the result to card transactions.
          example:
            - Advertising
        search:
          type: string
          example: spotify
        from_created_at:
          type: string
          format: date-time
          example: '2026-06-01T00:00:00.000Z'
        to_created_at:
          type: string
          format: date-time
          example: '2026-06-30T23:59:59.999Z'
        include_transfers:
          type: boolean
          example: false
          description: >-
            Include transfer legs (user_transfer, card_deposit, card_withdraw)
            in the list.
        own:
          type: boolean
          example: true
          description: Limit results to transactions initiated by the caller.
        users:
          type: array
          items:
            type: string
          description: >-
            Member user ids to include. Available to roles that can see team
            data.
          example:
            - 67fc3d0a766d7a2c1fafefb9
        timezone:
          type: string
          example: Europe/Warsaw
          description: IANA timezone applied to the date filters.
    PaginationInput:
      type: object
      properties:
        page:
          type: integer
          minimum: 1
          default: 1
          example: 1
        per_page:
          type: integer
          minimum: 1
          maximum: 100
          default: 50
          example: 50
        sort_by:
          type: string
          example: created_at
        sort_direction:
          type: string
          enum:
            - asc
            - desc
          default: desc
          example: desc
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.