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

# Retrieve all financial movements (payments, refunds, reimbursements, ...)



## OpenAPI

````yaml get /consumers/{consumer_id}/spend_management/financial-movements
openapi: 3.1.0
info:
  title: Chift API
  description: >-
    The Chift API is a universal API giving you access to financial data from
    the software of your clients. It helps software companies to offer native
    integrations to their clients without the effort needed to maintain those
    native integrations. By using the APIs (Accounting, POS, eCommerce) of
    Chift, you connect once and allow your clients to use their software
    packages.
  version: 1.0.0
servers:
  - url: https://api.chift.eu
    description: Chift
security:
  - bearerAuth: []
paths:
  /consumers/{consumer_id}/spend_management/financial-movements:
    get:
      tags:
        - Spend Management
        - FinancialMovements
      summary: >-
        Retrieve all financial movements (payments, refunds, reimbursements,
        ...)
      operationId: spend_management_get_financial_movements
      parameters:
        - name: consumer_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Consumer Id
        - name: cursor
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            x-chift-support:
              type: supported
            title: Cursor
          description: |2-

                    Pagination cursor for endpoints that support it.

                    When using cursor based pagination, the total is returned as -1 in the response, next_cursor contains
                    the cursor to use to get the next page of data.

                    When using cursor based pagination, the page attribute is completely ignored.

                    To opt into cursor based pagination, start your pagination with an empty string `''`.
                    Cursor based pagination is not compatible with X-Chift-Force-Refresh and all other query parameters MUST match the initial call.
                    
          x-chift-support:
            type: supported
            explanation: null
        - name: page
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            x-chift-support:
              type: supported
            default: 1
            title: Page
          description: Page number
          x-chift-support:
            type: supported
            explanation: null
        - name: size
          in: query
          required: false
          schema:
            type: integer
            maximum: 100
            minimum: 1
            x-chift-support:
              type: supported
            default: 50
            title: Size
          description: Page size
          x-chift-support:
            type: supported
            explanation: null
        - name: date_from
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: date
              - type: 'null'
            title: Date From
          description: Retrieve financial movements cleared on or after this date.
        - name: date_to
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: date
              - type: 'null'
            title: Date To
          description: Retrieve financial movements cleared on or before this date.
        - name: export_status
          in: query
          required: false
          schema:
            anyOf:
              - $ref: '#/components/schemas/PayableExportStatus'
              - type: 'null'
            title: Export Status
          description: >-
            Retrieve only financial movements with this export status, e.g.
            to_export to fetch exactly the ones still to be synced to the target
            accounting system.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChiftPage_FinancialMovementItem_'
        '400':
          content:
            application/json:
              example:
                message: Error while trying to perform your request
                status: error
              schema:
                $ref: '#/components/schemas/ChiftError'
          description: Bad Request
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - mcp_auth:
            - spend_management
            - spend_management.read
            - spend_management.financial_movements
            - spend_management.financial_movements.read
            - '900'
            - 900.r
            - 900.financial_movements
            - 900.financial_movements.r
components:
  schemas:
    PayableExportStatus:
      type: string
      enum:
        - unknown
        - not_ready
        - to_export
        - exported
      title: PayableExportStatus
      description: >-
        Shared across every payable-like entity of this vertical (payables,
        financial movements, ...):

        whether it still needs to be synced to the target accounting system.
    ChiftPage_FinancialMovementItem_:
      properties:
        items:
          items:
            $ref: '#/components/schemas/FinancialMovementItem'
          type: array
          title: Items
        total:
          type: integer
          minimum: 0
          title: Total
        page:
          type: integer
          minimum: 1
          title: Page
        size:
          type: integer
          minimum: 1
          title: Size
      type: object
      required:
        - items
        - total
        - page
        - size
      title: ChiftPage[FinancialMovementItem]
    ChiftError:
      properties:
        message:
          type: string
          title: Message
        status:
          anyOf:
            - type: string
            - type: 'null'
          title: Status
          default: error
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
          default: ''
        error_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Error Code
      type: object
      required:
        - message
      title: ChiftError
    HTTPValidationError:
      title: Validation Error
      required:
        - message
      type: object
      properties:
        message:
          title: Message
          type: string
          default: Validation error
        status:
          title: Status
          type: string
          default: error
        detail:
          title: Detail
          type: array
          items:
            $ref: '#/components/schemas/ValidationError'
    FinancialMovementItem:
      properties:
        id:
          type: string
          title: Id
          description: Id of the financial movement.
        date:
          type: string
          format: date
          title: Date
          description: Date the financial movement was cleared/settled.
        amount:
          type: number
          title: Amount
          description: >-
            Amount of the financial movement. Negative for a refund
            (supplier_refund type), matching the direction of money flow.
        currency:
          type: string
          title: Currency
        exchange_rate:
          anyOf:
            - type: number
            - type: 'null'
          title: Exchange Rate
          description: >-
            Exchange rate applied between the movement's own currency and the
            account's currency.
        export_status:
          $ref: '#/components/schemas/PayableExportStatus'
          description: >-
            Whether this financial movement still needs to be synced to the
            target accounting system: 'not_ready' (not yet validated),
            'to_export' (ready, not yet exported), 'exported', or 'unknown' when
            the connector cannot determine it.
          default: unknown
        external:
          type: boolean
          title: External
          description: >-
            Whether the movement was funded from an external bank account rather
            than the connector's own account.
          default: false
        type:
          $ref: '#/components/schemas/FinancialMovementType'
          description: Normalized classification of this financial movement.
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          description: Free text description of the movement.
        allocations:
          items:
            $ref: '#/components/schemas/FinancialMovementAllocationItem'
          type: array
          title: Allocations
          description: >-
            The payable(s) this financial movement is settling, each with its
            own share of the amount.
        fees:
          items:
            $ref: '#/components/schemas/FinancialMovementFeeItem'
          type: array
          title: Fees
          description: Bank fees incurred for this financial movement (fx, atm, or other).
      type: object
      required:
        - id
        - date
        - amount
        - currency
        - type
      title: FinancialMovementItem
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    FinancialMovementType:
      type: string
      enum:
        - supplier_payment
        - employee_reimbursement
        - supplier_refund
        - cash_advance
        - cash_return
        - chargeback
      title: FinancialMovementType
    FinancialMovementAllocationItem:
      properties:
        amount:
          type: number
          title: Amount
          description: Amount of this payable's share of the financial movement.
        currency:
          type: string
          title: Currency
        payable_id:
          type: string
          title: Payable Id
          description: Id of the payable this allocation applies to.
      type: object
      required:
        - amount
        - currency
        - payable_id
      title: FinancialMovementAllocationItem
    FinancialMovementFeeItem:
      properties:
        fee_type:
          $ref: '#/components/schemas/FinancialMovementFeeType'
        amount:
          type: number
          title: Amount
        currency:
          type: string
          title: Currency
        date:
          type: string
          format: date
          title: Date
          description: Date the fee was incurred (or corrected).
      type: object
      required:
        - fee_type
        - amount
        - currency
        - date
      title: FinancialMovementFeeItem
    FinancialMovementFeeType:
      type: string
      enum:
        - fx
        - atm
        - other
      title: FinancialMovementFeeType
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        This access token needs to be included in each of your request to the
        Chift API.

````

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