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

# Get a payment method

> Retrieves a payment method by its `id`. Only payment methods of your organization matching the `live` or `test` mode of the API key are visible; anything else returns a `404 Not Found` error. The payment method exposes its details under a key named after its `type` (`bank_transfer`, `card`, or `pac`); that key is `null` when the resource backing the payment method is no longer available.

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


## OpenAPI

````yaml reference/fintoc-api-v2.json GET /payment_methods/{id}
openapi: 3.1.0
info:
  title: fintoc-api-v2
  version: v2026-02-01
servers:
  - url: https://api.fintoc.com/v2
security: []
paths:
  /payment_methods/{id}:
    get:
      tags:
        - Payment methods
      summary: Get a payment method
      description: >-
        Retrieves a payment method by its `id`. Only payment methods of your
        organization matching the `live` or `test` mode of the API key are
        visible; anything else returns a `404 Not Found` error. The payment
        method exposes its details under a key named after its `type`
        (`bank_transfer`, `card`, or `pac`); that key is `null` when the
        resource backing the payment method is no longer available.
      operationId: payment-methods-get
      parameters:
        - name: id
          in: path
          description: The `id` of the payment method to retrieve.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >-
            The payment method. The type-specific details key is `null` when the
            resource backing the payment method is no longer available.
          content:
            application/json:
              examples:
                bank_transfer_payment_method:
                  value:
                    id: pm_1zXcVbNmAsDfGhJk
                    object: payment_method
                    bank_transfer:
                      account_holder_id: '111111111'
                      account_number: '001111111111'
                      account_type: checking_account
                      institution_id: cl_banco_de_chile
                      institution_name: Banco de Chile
                      mfa_type: sms
                      status: active
                    created_at: '2026-02-02T16:45:00.000Z'
                    customer: cus_oVgVqlnK0PdmGirH
                    mode: live
                    type: bank_transfer
                card_payment_method:
                  value:
                    id: pm_2aBcDeFgHiJkLmNo
                    object: payment_method
                    card:
                      active: true
                      brand: visa
                      country: Chile
                      expiration:
                        month: '12'
                        year: '2030'
                      kind: credit
                      last_four_digits: '4242'
                      wallet: null
                    created_at: '2026-01-20T09:12:00.000Z'
                    customer: cus_oVgVqlnK0PdmGirH
                    mode: live
                    type: card
                pac_payment_method:
                  value:
                    id: pm_3pQrStUvWxYzAbCd
                    object: payment_method
                    created_at: '2026-01-15T14:30:00.000Z'
                    customer: cus_oVgVqlnK0PdmGirH
                    mode: live
                    pac:
                      account_holder_id: '111111111'
                      account_number: '001111111111'
                      account_type: checking_account
                      institution:
                        id: cl_banco_de_chile
                        country: cl
                        name: Banco de Chile
                      status: active
                    type: pac
              schema:
                $ref: '#/components/schemas/payment_method'
        '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'
        '404':
          description: >-
            The payment method does not exist, belongs to another organization,
            or its mode does not match the mode of the API key.
          content:
            application/json:
              examples:
                payment_method_not_found:
                  value:
                    error:
                      type: invalid_request_error
                      code: missing_resource
                      param: id
                      message: 'No such payments/payment_method: pm_nonexistent'
                      doc_url: https://docs.fintoc.com/reference/errors
              schema:
                $ref: '#/components/schemas/error_object'
      security:
        - api_key: []
components:
  schemas:
    payment_method:
      description: >-
        A payment method represents a customer's stored payment instrument,
        ready to be charged without the customer going through the full
        authorization flow again. The shape of the object depends on its `type`:
        the type-specific details live under a key named after the `type`
        (`bank_transfer`, `card`, or `pac`).
      oneOf:
        - $ref: '#/components/schemas/payment_method_bank_transfer'
        - $ref: '#/components/schemas/payment_method_card'
        - $ref: '#/components/schemas/payment_method_pac'
      discriminator:
        propertyName: type
        mapping:
          bank_transfer:
            $ref: '#/components/schemas/payment_method_bank_transfer'
          card:
            $ref: '#/components/schemas/payment_method_card'
          pac:
            $ref: '#/components/schemas/payment_method_pac'
    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
    payment_method_bank_transfer:
      type: object
      description: >-
        Payment method backed by a linked bank account that pays through bank
        transfers.
      properties:
        id:
          type: string
          description: Unique identifier of the payment method.
          example: pm_1zXcVbNmAsDfGhJk
        object:
          const: payment_method
          description: Type of the object. Always `payment_method`.
        bank_transfer:
          type:
            - object
            - 'null'
          description: >-
            Details of the linked bank account that pays the transfers. `null`
            when the linked account backing the payment method is no longer
            available.
          properties:
            account_holder_id:
              type: string
              description: >-
                Tax identifier of the account holder, without dots or hyphens.
                In Chile this is the Chilean tax ID (RUT).
              example: '111111111'
            account_number:
              type: string
              description: Account number as a string, which may include leading zeros.
              example: '001111111111'
            account_type:
              type: string
              enum:
                - checking_account
                - savings_account
                - sight_account
                - rut_account
                - line_of_credit
                - credit_card
              description: >-
                Account subtype reported by the institution. One of
                `checking_account`, `savings_account`, `sight_account`,
                `rut_account`, `line_of_credit`, or `credit_card`.
              example: checking_account
            institution_id:
              type: string
              description: Identifier of the institution where the account lives.
              example: cl_banco_de_chile
            institution_name:
              type: string
              description: Human-readable name of the institution.
              example: Banco de Chile
            mfa_type:
              type: string
              description: >-
                Type of multi-factor authentication the institution requires to
                authorize a transfer, for example `sms`. An empty string when
                the institution does not require multi-factor authentication.
              example: sms
            status:
              type: string
              enum:
                - active
                - inactive
              description: >-
                Validity of the bank credentials backing the payment method. One
                of `active` or `inactive`. An `inactive` payment method cannot
                be charged until the customer links their account again.
              example: active
          required:
            - account_holder_id
            - account_number
            - account_type
            - institution_id
            - institution_name
            - mfa_type
            - status
        created_at:
          type: string
          format: date-time
          description: ISO 8601 timestamp of when the payment method was created.
          example: '2026-01-15T14:30:00.000Z'
        customer:
          type: string
          description: Unique identifier of the customer the payment method belongs to.
          example: cus_oVgVqlnK0PdmGirH
        mode:
          type: string
          enum:
            - live
            - test
          description: >-
            Mode of the payment method. `live` payment methods charge real
            money; `test` payment methods use fake data for integration testing.
          example: live
        type:
          const: bank_transfer
          description: Type of the payment method. Always `bank_transfer`.
      required:
        - id
        - object
        - bank_transfer
        - created_at
        - customer
        - mode
        - type
    payment_method_card:
      type: object
      description: Payment method backed by a stored card.
      properties:
        id:
          type: string
          description: Unique identifier of the payment method.
          example: pm_1zXcVbNmAsDfGhJk
        object:
          const: payment_method
          description: Type of the object. Always `payment_method`.
        card:
          type:
            - object
            - 'null'
          description: >-
            Details of the stored card. `null` when the card backing the payment
            method is no longer available.
          properties:
            active:
              type: boolean
              description: >-
                Whether the card can currently be charged. Fintoc automatically
                deactivates expired cards.
              example: true
            brand:
              type: string
              description: Brand of the card, for example `visa` or `mastercard`.
              example: visa
            country:
              type: string
              description: >-
                Display name of the country where the card was issued, in
                English.
              example: Chile
            expiration:
              type: object
              description: >-
                Expiration date of the card. For cards enrolled through a wallet
                (for example, Apple Pay), month and year are `null` because the
                wallet does not expose an expiration date.
              properties:
                month:
                  type:
                    - string
                    - 'null'
                  description: Two-digit expiration month. `null` for wallet cards.
                  example: '12'
                year:
                  type:
                    - string
                    - 'null'
                  description: Four-digit expiration year. `null` for wallet cards.
                  example: '2030'
              required:
                - month
                - year
            kind:
              type: string
              description: Kind of card, for example `credit` or `debit`.
              example: credit
            last_four_digits:
              type: string
              description: Last four digits of the card number.
              example: '4242'
            wallet:
              type:
                - string
                - 'null'
              enum:
                - apple_pay
                - google_pay
                - null
              description: >-
                Wallet used to enroll the card. Possible values are `apple_pay`
                and `google_pay`. `null` for cards entered manually.
              example: apple_pay
          required:
            - active
            - brand
            - country
            - expiration
            - kind
            - last_four_digits
            - wallet
        created_at:
          type: string
          format: date-time
          description: ISO 8601 timestamp of when the payment method was created.
          example: '2026-01-15T14:30:00.000Z'
        customer:
          type: string
          description: Unique identifier of the customer the payment method belongs to.
          example: cus_oVgVqlnK0PdmGirH
        mode:
          type: string
          enum:
            - live
            - test
          description: >-
            Mode of the payment method. `live` payment methods charge real
            money; `test` payment methods use fake data for integration testing.
          example: live
        type:
          const: card
          description: Type of the payment method. Always `card`.
      required:
        - id
        - object
        - card
        - created_at
        - customer
        - mode
        - type
    payment_method_pac:
      type: object
      description: >-
        Payment method backed by a direct debit (PAC) subscription that charges
        the customer's bank account.
      properties:
        id:
          type: string
          description: Unique identifier of the payment method.
          example: pm_1zXcVbNmAsDfGhJk
        object:
          const: payment_method
          description: Type of the object. Always `payment_method`.
        created_at:
          type: string
          format: date-time
          description: ISO 8601 timestamp of when the payment method was created.
          example: '2026-01-15T14:30:00.000Z'
        customer:
          type: string
          description: Unique identifier of the customer the payment method belongs to.
          example: cus_oVgVqlnK0PdmGirH
        mode:
          type: string
          enum:
            - live
            - test
          description: >-
            Mode of the payment method. `live` payment methods charge real
            money; `test` payment methods use fake data for integration testing.
          example: live
        pac:
          type:
            - object
            - 'null'
          description: >-
            Details of the direct debit subscription that charges the customer's
            account. `null` when the subscription backing the payment method is
            no longer available.
          properties:
            account_holder_id:
              type: string
              description: >-
                Tax identifier of the account holder, without dots or hyphens.
                In Chile this is the Chilean tax ID (RUT).
              example: '111111111'
            account_number:
              type: string
              description: >-
                Account number of the debited account as a string, which may
                include leading zeros.
              example: '001111111111'
            account_type:
              type: string
              enum:
                - checking_account
                - savings_account
                - sight_account
                - rut_account
                - line_of_credit
                - credit_card
              description: >-
                Account subtype reported by the institution. One of
                `checking_account`, `savings_account`, `sight_account`,
                `rut_account`, `line_of_credit`, or `credit_card`.
              example: checking_account
            institution:
              type: object
              description: Institution where the debited account lives.
              properties:
                id:
                  type: string
                  description: Identifier of the institution.
                  example: cl_banco_de_chile
                country:
                  type: string
                  description: >-
                    Lowercase ISO 3166-1 alpha-2 code of the institution's
                    country.
                  example: cl
                name:
                  type: string
                  description: Human-readable name of the institution.
                  example: Banco de Chile
              required:
                - id
                - country
                - name
            status:
              type: string
              enum:
                - pending
                - active
                - canceled
              description: >-
                Status of the direct debit subscription. One of `pending` (the
                bank has not confirmed the subscription yet), `active` (the
                subscription accepts charges), or `canceled` (the subscription
                no longer accepts charges). Only payment methods whose
                subscription is `active` can be charged.
              example: active
          required:
            - account_holder_id
            - account_number
            - account_type
            - institution
            - status
        type:
          const: pac
          description: Type of the payment method. Always `pac`.
      required:
        - id
        - object
        - created_at
        - customer
        - mode
        - pac
        - type
  securitySchemes:
    api_key:
      type: apiKey
      name: Authorization
      in: header

````