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

# List movements

> Returns a paginated list of the movements of an account, using the link's `link_token` to authenticate the request. By default the endpoint returns only confirmed movements; use `confirmed_only=false` to include every status.

**`v1`** · Base URL `https://api.fintoc.com/v1`

<Info>
  **Uso de los parámetros `per_page` y `page`**

  Si te faltan movimientos en nuestra API, intenta ajustar el parámetro `per_page` para obtener más movimientos en tus solicitudes. Recuerda que el valor por defecto de este parámetro es 30 y el valor máximo es 300.

  Además, si tienes más movimientos que el valor de `per_page`, intenta iterar a través de nuestras páginas usando el parámetro `page`. Así puedes revisar todas las páginas de movimientos almacenadas.
</Info>

<br />


## OpenAPI

````yaml reference/fintoc-api.json GET /accounts/{id}/movements
openapi: 3.1.0
info:
  title: fintoc-api
  version: v2026-02-01
servers:
  - url: https://api.fintoc.com/v1
security: []
paths:
  /accounts/{id}/movements:
    get:
      tags:
        - Movements
      summary: List movements
      description: >-
        Returns a paginated list of the movements of an account, using the
        link's `link_token` to authenticate the request. By default the endpoint
        returns only confirmed movements; use `confirmed_only=false` to include
        every status.
      operationId: movements-list
      parameters:
        - name: id
          in: path
          description: The `id` of the account that holds the movements to list.
          required: true
          schema:
            type: string
        - name: link_token
          in: query
          required: true
          schema:
            type: string
            example: link_Q0xVGPvijElLRMwE_token_FhsFVurz5q5FycHA5xxhTpzX
          description: >-
            The `link_token` of the link that holds the account, obtained when
            you exchanged the link.
        - name: since
          in: query
          required: false
          schema:
            type: string
            format: date
          description: >-
            ISO 8601 date. If present, Fintoc returns only movements with
            `post_date` on or after `since`.
        - name: until
          in: query
          required: false
          schema:
            type: string
            format: date
          description: >-
            ISO 8601 date. If present, Fintoc returns only movements with
            `post_date` on or before `until`.
        - name: updated_since
          in: query
          required: false
          schema:
            type: string
            format: date
          description: >-
            ISO 8601 date. If present, Fintoc returns only movements created or
            updated after `updated_since`.
        - name: per_page
          in: query
          required: false
          schema:
            type: string
          description: >-
            Number of movements per page. Defaults to `30`. The maximum is
            `300`.
        - name: page
          in: query
          required: false
          schema:
            type: integer
            format: int32
          description: Page number to retrieve. Starts at `1`.
        - name: confirmed_only
          in: query
          required: false
          schema:
            type: boolean
          description: >-
            Whether to return only confirmed movements. Defaults to `true`. When
            `false`, the endpoint also returns movements with status
            `processing`, `reversed`, and `manually_reversed`.
      responses:
        '200':
          description: >-
            Paginated list of movements. The `Link` and `X-Total-Count` headers
            carry the pagination information.
          headers:
            Link:
              schema:
                type: string
            X-Total-Count:
              schema:
                type: integer
          content:
            application/json:
              examples:
                movements_list:
                  value:
                    - id: mov_BO381oEATXonG6bj
                      object: movement
                      amount: -1717
                      comment: Pago arriendo
                      currency: CLP
                      description: Cargo Seguro Proteccion Bancaria
                      document_number: null
                      pending: false
                      post_date: '2020-04-06T00:00:00.000Z'
                      recipient_account: null
                      reference_id: '123740123'
                      sender_account: null
                      status: confirmed
                      transaction_date: '2020-04-04T02:19:23.000Z'
                      transfer_id: '123740123'
                      type: transfer
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/movement'
        '400':
          description: >-
            Invalid request: the `link_token` is missing or empty, or a date
            filter is not a valid ISO 8601 date.
          content:
            application/json:
              examples:
                invalid_date:
                  value:
                    error:
                      type: invalid_request_error
                      code: invalid_date
                      param: since
                      message: >-
                        Invalid date: invalid-date. You need to provide a date
                        in ISO 8601 format (YYYY-MM-DD)
                      doc_url: https://docs.fintoc.com/reference/errors
              schema:
                $ref: '#/components/schemas/error_object'
        '401':
          description: Invalid or missing API key.
          content:
            application/json:
              examples:
                invalid_api_key:
                  value:
                    error:
                      type: authentication_error
                      code: invalid_api_key
                      message: 'Invalid API Key: invalid-*oken'
              schema:
                $ref: '#/components/schemas/error_object'
        '402':
          description: >-
            The organization cannot access the movements product: the trial
            window expired or a payment is pending.
          content:
            application/json:
              examples:
                payment_required:
                  value:
                    error:
                      type: api_error
                      code: payment_required
                      message: >-
                        Your trial window expired or you have a pending payment.
                        If you think that this is an error, send an email to
                        soporte@fintoc.com. To catch up on payments, email
                        billing@fintoc.com.
                      doc_url: https://docs.fintoc.com/reference/errors
              schema:
                $ref: '#/components/schemas/error_object'
        '403':
          description: >-
            The `link_token` is invalid or belongs to a different mode than the
            API key.
          content:
            application/json:
              examples:
                invalid_link_token:
                  value:
                    error:
                      type: invalid_request_error
                      code: invalid_link_token
                      param: link_token
                      message: >-
                        Invalid access token for link:
                        link_nMNejK7BT8oGbvO4_token_****
                      doc_url: https://docs.fintoc.com/reference/errors
              schema:
                $ref: '#/components/schemas/error_object'
        '404':
          description: The account does not exist or does not belong to the link.
          content:
            application/json:
              examples:
                account_not_found:
                  value:
                    error:
                      type: invalid_request_error
                      code: missing_resource
                      param: id
                      message: 'No such account: acc_nMNejK7BT8oGbvO4'
                      doc_url: https://docs.fintoc.com/reference/errors
              schema:
                $ref: '#/components/schemas/error_object'
      security:
        - api_key: []
components:
  schemas:
    movement:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the movement.
          example: mov_BO381oEATXonG6bj
        object:
          const: movement
          description: Type of the object. Always `movement`.
        amount:
          type: integer
          description: >-
            Amount of the movement, in the smallest unit of the currency (CLP
            has no decimals, so the amount is in pesos). Negative for outflows.
          example: -1717
        comment:
          type:
            - string
            - 'null'
          description: >-
            Comment the sender attached to the movement, as registered at the
            institution.
          example: Pago arriendo
        currency:
          type: string
          pattern: ^[A-Z]{3}$
          description: Three-letter ISO 4217 currency code of the movement.
          example: CLP
        description:
          type: string
          description: Description of the movement, as registered at the institution.
          example: Cargo Seguro Proteccion Bancaria
        document_number:
          type:
            - string
            - 'null'
          description: >-
            Number of the document associated to the movement (for example, the
            check number). `null` if the movement has no associated document.
          example: '4527230'
        pending:
          type: boolean
          description: Whether the movement is pending consolidation by the institution.
          example: false
        post_date:
          type: string
          format: date-time
          description: >-
            ISO 8601 timestamp of when the institution consolidated the
            movement.
          example: '2020-04-06T00:00:00.000Z'
        recipient_account:
          anyOf:
            - type: 'null'
            - $ref: '#/components/schemas/transfer_account'
          description: >-
            Account that received the transfer. Only present for transfers;
            `null` for every other movement type.
        reference_id:
          type:
            - string
            - 'null'
          description: >-
            Identifier of the movement at the institution: the `transfer_id` if
            present, otherwise the `document_number`.
          example: '123740123'
        sender_account:
          anyOf:
            - type: 'null'
            - $ref: '#/components/schemas/transfer_account'
          description: >-
            Account that sent the transfer. Only present for transfers; `null`
            for every other movement type.
        status:
          type: string
          enum:
            - confirmed
            - reversed
            - processing
            - manually_reversed
          description: >-
            Status of the movement. `processing` means Fintoc is verifying
            whether the institution duplicated or reversed the movement.
          example: confirmed
        transaction_date:
          type:
            - string
            - 'null'
          format: date-time
          description: >-
            ISO 8601 timestamp of when the movement happened, with time
            precision. `null` when the institution only reports the `post_date`.
          example: '2020-04-04T02:19:23.000Z'
        transfer_id:
          type:
            - string
            - 'null'
          description: >-
            Identifier of the transfer at the institution. `null` if the
            movement is not a transfer.
          example: '123740123'
        type:
          type: string
          enum:
            - check
            - transfer
            - other
          description: Type of the movement.
          example: transfer
      required:
        - id
        - object
        - amount
        - comment
        - currency
        - description
        - document_number
        - pending
        - post_date
        - recipient_account
        - reference_id
        - sender_account
        - status
        - transaction_date
        - transfer_id
        - type
    error_object:
      type: object
      properties:
        error:
          type: object
          description: Details of the error that caused the request to fail.
          properties:
            code:
              type: string
              description: >-
                Machine-readable code identifying the specific error, for
                example `invalid_api_key`. Not returned by every error.
              example: invalid_api_key
            doc_url:
              type: string
              description: >-
                URL of a documentation page with more details about the error.
                Not returned by every error.
              example: https://docs.fintoc.com/reference/errors
            message:
              type: string
              description: Human-readable message describing the error.
              example: 'Invalid API Key: invalid-*oken'
            param:
              type:
                - string
                - 'null'
              description: >-
                Name of the request parameter that caused the error. `null` when
                the error cannot be tied to a single parameter, and not returned
                by every error.
              example: amount
            type:
              type: string
              description: >-
                Category of the error, for example `invalid_request_error`,
                `authentication_error`, or `api_error`.
              example: invalid_request_error
          required:
            - type
            - message
    transfer_account:
      type:
        - object
        - 'null'
      properties:
        holder_id:
          type:
            - string
            - 'null'
          description: >-
            Tax identifier of the counterpart account holder, without dots or
            hyphens (RUT in Chile, RFC in Mexico).
          example: '111111111'
        holder_name:
          type:
            - string
            - 'null'
          description: >-
            Name of the counterpart account holder, as registered at the
            institution.
          example: Jon Snow
        institution:
          anyOf:
            - $ref: '#/components/schemas/institution'
            - type: 'null'
          description: >-
            Institution of the counterpart account. `null` when Fintoc cannot
            identify the institution.
        number:
          type:
            - string
            - 'null'
          description: Number of the counterpart account.
          example: '9530516286'
      required:
        - holder_id
        - holder_name
        - number
        - institution
    institution:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the institution.
          example: cl_banco_de_chile
        country:
          type: string
          description: ISO 3166-1 alpha-2 code of the country of the institution.
          example: cl
        name:
          type: string
          description: Name of the institution.
          example: Banco de Chile
      required:
        - id
        - country
        - name
  securitySchemes:
    api_key:
      type: apiKey
      name: Authorization
      in: header

````