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

# Check payment eligibility

> Checks whether a payment for the given amount and sender account passes the transfer limits that banks and Fintoc enforce, without creating a payment intent. Only available for CLP payments. Available for organizations on API version `2026-02-01` or later.

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


## OpenAPI

````yaml reference/fintoc-api-v2.json POST /payment_intents/check_eligibility
openapi: 3.1.0
info:
  title: fintoc-api-v2
  version: v2026-02-01
servers:
  - url: https://api.fintoc.com/v2
security: []
paths:
  /payment_intents/check_eligibility:
    post:
      tags:
        - Payment intents
      summary: Check payment eligibility
      description: >-
        Checks whether a payment for the given amount and sender account passes
        the transfer limits that banks and Fintoc enforce, without creating a
        payment intent. Only available for CLP payments. Available for
        organizations on API version `2026-02-01` or later.
      operationId: payment-intents-check-eligibility
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                amount:
                  type: integer
                  example: 100000
                  description: >-
                    A positive integer representing the amount to pay, in the
                    smallest unit of the currency (for example, `100000` for
                    100000 CLP, since CLP has no minor unit).
                currency:
                  type: string
                  example: CLP
                  description: >-
                    Three-letter ISO 4217 currency code. Only `CLP` is
                    supported.
                sender_account:
                  type: object
                  description: Bank account the customer pays from.
                  properties:
                    institution_id:
                      type: string
                      example: cl_banco_de_chile
                      description: Identifier of the institution of the account.
                    holder_id:
                      type: string
                      example: '111111111'
                      description: >-
                        Chilean tax ID (RUT) of the account holder. Without it,
                        Fintoc skips new contact validations.
                  required:
                    - institution_id
                recipient_account:
                  type: object
                  description: >-
                    Bank account that receives the payment. Only send it if your
                    organization uses direct payments; organizations that
                    collect through Fintoc must omit it.
                  properties:
                    holder_id:
                      type: string
                      example: '111111111'
                      description: RUT of the account holder.
                    institution_id:
                      type: string
                      example: cl_banco_de_chile
                      description: Identifier of the institution of the account.
                    number:
                      type: string
                      example: '123456789'
                      description: Number of the account, without hyphens or leading zeros.
                    type:
                      type: string
                      example: checking_account
                      description: >-
                        Type of the account, such as `checking_account` or
                        `sight_account`.
                  required:
                    - holder_id
                    - institution_id
                    - number
              required:
                - amount
                - currency
                - sender_account
            examples:
              check_payment_eligibility:
                summary: Check the eligibility of a payment
                value:
                  amount: 100000
                  currency: CLP
                  sender_account:
                    institution_id: cl_banco_de_chile
                    holder_id: '111111111'
      responses:
        '200':
          description: >-
            Result of the eligibility check. When the payment is not eligible,
            `error` describes the limit that the payment would exceed.
          content:
            application/json:
              examples:
                eligible_payment:
                  value:
                    eligible_payment: true
                    error: null
                not_eligible_payment:
                  value:
                    eligible_payment: false
                    error:
                      type: amount_error
                      code: maximum_amount_limit_error
                      param: amount
                      message: >-
                        The amount exceeds the maximum amount permitted for
                        payments by Fintoc Bank. Please enter an amount less
                        than $5000.
                      doc_url: https://docs.fintoc.com/reference/errors
              schema:
                $ref: '#/components/schemas/payment_intent_check_eligibility'
        '400':
          description: >-
            Invalid request: a required parameter is missing or the `currency`
            is not supported.
          content:
            application/json:
              examples:
                not_supported_currency:
                  value:
                    error:
                      type: invalid_request_error
                      code: not_supported_currency
                      param: currency
                      message: 'Currency not supported: USD'
                      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'
      security:
        - api_key: []
components:
  schemas:
    payment_intent_check_eligibility:
      type: object
      properties:
        eligible_payment:
          type: boolean
          description: Whether the payment passes the transfer limits and can be created.
          example: true
        error:
          type:
            - object
            - 'null'
          description: >-
            Limit that the payment would exceed. `null` when the payment is
            eligible.
          properties:
            code:
              type: string
              enum:
                - new_contact_maximum_amount_limit_error
                - new_contact_payment_number_limit_error
                - minimum_amount_limit_error
                - maximum_amount_limit_error
              description: >-
                Error code of the limit. One of `minimum_amount_limit_error`
                (the amount is below the bank minimum),
                `maximum_amount_limit_error` (the amount exceeds the bank
                maximum), `new_contact_maximum_amount_limit_error` (the amount
                exceeds the maximum for new contacts), or
                `new_contact_payment_number_limit_error` (the sender reached the
                maximum number of transfers for new contacts).
              example: maximum_amount_limit_error
            doc_url:
              type: string
              format: uri
              description: URL of the error documentation.
              example: https://docs.fintoc.com/reference/errors
            message:
              type: string
              description: >-
                Human-readable description of the limit that the payment would
                exceed.
            param:
              type: string
              enum:
                - amount
                - sender_account
              description: >-
                Request parameter associated with the limit. One of `amount` or
                `sender_account`.
              example: amount
            type:
              type: string
              enum:
                - amount_error
                - new_contact_error
              description: >-
                Type of the limit. One of `amount_error` (the amount is outside
                the permitted range) or `new_contact_error` (the sender has not
                transferred to the recipient before).
              example: amount_error
          required:
            - type
            - message
            - code
            - param
            - doc_url
      required:
        - eligible_payment
        - error
    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
  securitySchemes:
    api_key:
      type: apiKey
      name: Authorization
      in: header

````