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

# List Bank Institutions

> Retrieve the banks of a country and their institutionId values

<Snippet file="payment-method-read-host.mdx" />

Returns the banks of one country that a bank-account payment method accepts, sorted by name. Send the `institutionId` of the bank your user picks as `bankAccount.institutionId` when you [create the payment method](https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method.md).

You can call this endpoint from a frontend with a client-side API key that has the `payment-methods.read` scope.

## Returns

An object with the uppercase `country` and an `institutions` array of `{ institutionId, name }` objects. The array is empty for `US`, `MX`, `AE`, `BR` and the SEPA countries, because the account details or the IBAN identify the bank. Ignore response fields that you do not know: new fields can appear.

The response has `Cache-Control: no-cache` and an `ETag`. Send the `ETag` back in `If-None-Match` to get `304` when the list did not change.

## See Also

* [Institution IDs](https://docs.crossmint.com/offramp/guides/institution-ids.md)
* [Create Payment Method](https://docs.crossmint.com/offramp/api-reference/payment-methods/create-payment-method.md)


## OpenAPI

````yaml api-reference/_open-api/PaymentMethods.json GET /2026-09-16/payment-methods/institutions
openapi: 3.1.0
info:
  contact:
    email: support@crossmint.com
    name: Crossmint Support
    url: https://www.crossmint.com
  description: Crossmint Payment Methods API
  title: Crossmint Payment Methods API
  version: 1.0.0
servers:
  - description: Staging environment (testnets)
    url: https://staging.crossmint.com/api
  - description: Production environment (mainnets)
    url: https://www.crossmint.com/api
security: []
tags: []
paths:
  /2026-09-16/payment-methods/institutions:
    get:
      tags:
        - Payment Methods
      summary: List Bank Institutions
      description: >-
        Returns the banks of one country, sorted by name. Send the
        `institutionId` of a bank in the create request of a bank-account type
        that needs one. US, MX, AE, BR and the SEPA countries return an empty
        list, because the account details or the IBAN identify the bank. Ignore
        response fields that you do not know.


        Accepts server-side and client-side API keys.


        **API scope required**: `payment-methods.read`
      operationId: paymentMethods.v20260916.institutions.list
      parameters:
        - description: ISO 3166-1 alpha-2 country code, in any case.
          in: query
          name: country
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                country: PH
                institutions:
                  - institutionId: ph-banco-de-oro
                    name: Banco De Oro
                  - institutionId: ph-maya-bank
                    name: Maya Bank, Inc.
              schema:
                $ref: '#/components/schemas/ListInstitutionsResponseDto'
          description: >-
            The banks of the country. Revalidate with the `ETag`: a match gives
            304.
        '400':
          content:
            application/json:
              examples:
                country_not_supported:
                  summary: No bank-account payment method serves the country
                  value:
                    code: payments:institutions.country-not-supported
                    error: true
                    message: No bank-account payment method is available for JP.
                invalid_country:
                  summary: '`country` is missing or is not a country code'
                  value:
                    error: true
                    message: >-
                      country: must be an ISO 3166-1 alpha-2 country code, for
                      example `PH`
              schema:
                $ref: '#/components/schemas/ApiErrorDto'
          description: >-
            `country` is not a country code, or no bank-account payment method
            serves the country.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorDto'
          description: Missing or invalid API key.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorDto'
          description: >-
            Forbidden. Ensure the credentials are correct and the authentication
            source is allowed.
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorDto'
          description: Rate limit exceeded.
      security:
        - apiKey: []
components:
  schemas:
    ListInstitutionsResponseDto:
      properties:
        country:
          description: The requested country, in uppercase.
          enum:
            - AD
            - AE
            - AF
            - AG
            - AI
            - AL
            - AM
            - AO
            - AQ
            - AR
            - AS
            - AT
            - AU
            - AW
            - AX
            - AZ
            - BA
            - BB
            - BD
            - BE
            - BF
            - BG
            - BH
            - BI
            - BJ
            - BL
            - BM
            - BN
            - BO
            - BQ
            - BR
            - BS
            - BT
            - BV
            - BW
            - BY
            - BZ
            - CA
            - CC
            - CD
            - CF
            - CG
            - CH
            - CI
            - CK
            - CL
            - CM
            - CN
            - CO
            - CR
            - CU
            - CV
            - CW
            - CX
            - CY
            - CZ
            - DE
            - DJ
            - DK
            - DM
            - DO
            - DZ
            - EC
            - EE
            - EG
            - EH
            - ER
            - ES
            - ET
            - FI
            - FJ
            - FK
            - FM
            - FO
            - FR
            - GA
            - GB
            - GD
            - GE
            - GF
            - GG
            - GH
            - GI
            - GL
            - GM
            - GN
            - GP
            - GQ
            - GR
            - GS
            - GT
            - GU
            - GW
            - GY
            - HK
            - HM
            - HN
            - HR
            - HT
            - HU
            - ID
            - IE
            - IL
            - IM
            - IN
            - IO
            - IQ
            - IR
            - IS
            - IT
            - JE
            - JM
            - JO
            - JP
            - KE
            - KG
            - KH
            - KI
            - KM
            - KN
            - KP
            - KR
            - KW
            - KY
            - KZ
            - LA
            - LB
            - LC
            - LI
            - LK
            - LR
            - LS
            - LT
            - LU
            - LV
            - LY
            - MA
            - MC
            - MD
            - ME
            - MF
            - MG
            - MH
            - MK
            - ML
            - MM
            - MN
            - MO
            - MP
            - MQ
            - MR
            - MS
            - MT
            - MU
            - MV
            - MW
            - MX
            - MY
            - MZ
            - NA
            - NC
            - NE
            - NF
            - NG
            - NI
            - NL
            - 'NO'
            - NP
            - NR
            - NU
            - NZ
            - OM
            - PA
            - PE
            - PF
            - PG
            - PH
            - PK
            - PL
            - PM
            - PN
            - PR
            - PS
            - PT
            - PW
            - PY
            - QA
            - RE
            - RO
            - RS
            - RU
            - RW
            - SA
            - SB
            - SC
            - SD
            - SE
            - SG
            - SH
            - SI
            - SJ
            - SK
            - SL
            - SM
            - SN
            - SO
            - SR
            - SS
            - ST
            - SV
            - SX
            - SY
            - SZ
            - TC
            - TD
            - TF
            - TG
            - TH
            - TJ
            - TK
            - TL
            - TM
            - TN
            - TO
            - TR
            - TT
            - TV
            - TW
            - TZ
            - UA
            - UG
            - UM
            - US
            - UY
            - UZ
            - VA
            - VC
            - VE
            - VG
            - VI
            - VN
            - VU
            - WF
            - WS
            - XK
            - YE
            - YT
            - ZA
            - ZM
            - ZW
          type: string
        institutions:
          description: The banks of the country, sorted by name.
          items:
            properties:
              institutionId:
                minLength: 1
                type: string
              name:
                minLength: 1
                type: string
            required:
              - institutionId
              - name
            type: object
          type: array
      required:
        - country
        - institutions
      type: object
    ApiErrorDto:
      properties:
        code:
          description: Machine-readable error code for programmatic handling
          type: string
        error:
          example: true
          type: boolean
        message:
          description: Human-readable error message describing what went wrong
          type: string
        parameters:
          additionalProperties:
            oneOf:
              - items:
                  type: string
                type: array
              - type: string
          description: >-
            Values that explain a coded error, such as the limit that was
            exceeded, the amount that remains, or the list of supported
            currencies.
          type: object
      required:
        - error
        - message
      type: object
  securitySchemes:
    apiKey:
      description: API key required for authentication
      in: header
      name: X-API-KEY
      type: apiKey

````