> ## 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 accounts

> Returns a paginated list of the accounts of a link, using the link's `link_token` to authenticate the request. The `next_refresh`, `refresh_status`, and `removed_from_link` fields appear only when the link has the `movements` product.

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


## OpenAPI

````yaml reference/fintoc-api.json GET /accounts
openapi: 3.1.0
info:
  title: fintoc-api
  version: v2026-02-01
servers:
  - url: https://api.fintoc.com/v1
security: []
paths:
  /accounts:
    get:
      tags:
        - Accounts
      summary: List accounts
      description: >-
        Returns a paginated list of the accounts of a link, using the link's
        `link_token` to authenticate the request. The `next_refresh`,
        `refresh_status`, and `removed_from_link` fields appear only when the
        link has the `movements` product.
      operationId: accounts-list
      parameters:
        - 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 accounts to list,
            obtained when you exchanged the link.
        - name: page
          in: query
          required: false
          schema:
            type: integer
            format: int32
          description: Page number to retrieve. Starts at `1`.
        - name: per_page
          in: query
          required: false
          schema:
            type: string
          description: Number of accounts per page. Defaults to `30`. The maximum is `300`.
      responses:
        '200':
          description: >-
            Paginated list of accounts. 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:
                accounts_list:
                  value:
                    - id: acc_nMNejK7BT8oGbvO4
                      object: account
                      balance:
                        available: 500000
                        current: 500000
                        limit: 500000
                      currency: CLP
                      holder_id: '111111111'
                      holder_name: Jon Snow
                      name: Cuenta Corriente
                      next_refresh: '2023-04-06T13:30:00.000Z'
                      number: '9530516286'
                      official_name: Cuenta Corriente Moneda Local
                      refresh_status: refreshing
                      refreshed_at: '2020-11-18T18:43:54.591Z'
                      removed_from_link: false
                      type: checking_account
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/account'
        '400':
          description: 'Invalid request: the `link_token` is missing or empty.'
          content:
            application/json:
              examples:
                empty_link_token:
                  value:
                    error:
                      type: invalid_request_error
                      code: empty_string
                      param: link_token
                      message: 'Empty string is invalid: link_token'
                      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'
        '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'
      security:
        - api_key: []
components:
  schemas:
    account:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the account.
          example: acc_nMNejK7BT8oGbvO4
        object:
          const: account
          description: Type of the object. Always `account`.
        balance:
          $ref: '#/components/schemas/balance'
        currency:
          type: string
          pattern: ^[A-Z]{3}$
          description: Three-letter ISO 4217 currency code of the account.
          example: CLP
        holder_id:
          type: string
          description: >-
            Tax identifier of the account holder, without dots or hyphens (RUT
            in Chile, RFC in Mexico).
          example: '111111111'
        holder_name:
          type: string
          description: Name of the account holder, as registered at the institution.
          example: Jon Snow
        name:
          type: string
          description: Name of the account.
          example: Cuenta Corriente
        next_refresh:
          type:
            - string
            - 'null'
          format: date-time
          description: >-
            ISO 8601 timestamp of the next scheduled refresh of the account.
            Only present when the link has the `movements` product.
          example: '2023-04-06T13:30:00.000Z'
        number:
          type: string
          description: Number of the account, as registered at the institution.
          example: '9530516286'
        official_name:
          type: string
          description: Commercial name of the account type, as defined by the institution.
          example: Cuenta Corriente Moneda Local
        refresh_status:
          type: string
          enum:
            - refreshing
            - interrupted
            - starting
          description: >-
            Refresh status of the account. `starting` means the account was just
            connected and has not been refreshed yet, `refreshing` means a
            refresh is in progress, and `interrupted` means the account is not
            currently being refreshed. Only present when the link has the
            `movements` product.
          example: refreshing
        refreshed_at:
          type:
            - string
            - 'null'
          format: date-time
          description: >-
            ISO 8601 timestamp of the account's last refresh. `null` if Fintoc
            has never refreshed the account.
          example: '2020-11-18T18:43:54.591Z'
        removed_from_link:
          type: boolean
          description: >-
            Whether the account no longer belongs to the link (for example,
            because the institution stopped returning the account). Only present
            when the link has the `movements` product.
          example: false
        type:
          $ref: '#/components/schemas/account_type'
      required:
        - id
        - object
        - name
        - number
        - official_name
        - holder_id
        - holder_name
        - type
        - currency
        - balance
        - refreshed_at
    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
    balance:
      type: object
      description: >-
        Balance of the account, as reported by the institution. All amounts are
        in the smallest unit of the account's currency (CLP has no decimals, so
        amounts are in pesos).
      properties:
        available:
          type: integer
          description: Amount available to spend, including overdraft lines if any.
          example: 500000
        current:
          type: integer
          description: >-
            Amount of money owned by the account holder, without overdraft
            lines.
          example: 500000
        limit:
          type: integer
          description: Maximum amount available to spend, including credit lines.
          example: 500000
      required:
        - available
        - current
        - limit
    account_type:
      type: string
      enum:
        - checking_account
        - savings_account
        - sight_account
        - line_of_credit
        - credit_card
      description: Type of the account. Fintoc exposes RUT accounts as `sight_account`.
      example: checking_account
  securitySchemes:
    api_key:
      type: apiKey
      name: Authorization
      in: header

````