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

# List banks (Venezuela)

> Returns the live Venezuela catalogue. This is not a hardcoded list.

`country` includes `pais`, `nombre`, `moneda`, `banks`, `accountTypes`, `documentTypes`, and `phoneCode`.
Catalogue items are `{value, label}`.

`onramp.banks` items are `{id, name}`. Cash-in `bancoPago` must match `name` exactly.
Payout `banco`, `tipoCuenta`, and `tipoDocumento` use the catalogue `value`. String labels are accepted for compatibility.

If the payment integration is not configured, the API returns `500` with `code: VE_BANKS_PROVIDER_NOT_CONFIGURED`.
A bank-list fetch failure returns `502` with `code: VE_BANKS_PROVIDER_ERROR`.




## OpenAPI

````yaml /api-reference/openapi.yaml get /ve/banks
openapi: 3.1.0
info:
  title: HG.Cash API
  description: >
    # 🚀 HG.Cash Transaction API


    Modern REST API for users to create outbound transactions from their
    accounts.


    ## 🧾 How it works


    - We assign accounts to your user in HG.Cash

    - When these accounts have transactions (inbound or outbound), HG.Cash will
    notify your backend using the webhook URL you configure in the HG.Cash
    dashboard

    - **Webhook signature (HMAC)**: In account settings you can generate a
    signing secret. When configured, each webhook POST includes the header
    `X-HG-Webhook-Signature: sha256=<hex>` where the value is HMAC-SHA256 of the
    raw JSON body using your secret. Verify this in your endpoint to ensure the
    request is authentic.

    - To create cash-outs (money leaving your accounts), you must call the
    **Cash Out** endpoint: **Create Transaction Request (Cash Out)** (`POST
    /transactions`)


    ## 📊 Getting Started


    1. **Generate your API token** in the account settings page

    2. **Test endpoints** using the interactive documentation below

    3. **Implement** in your backend services (never expose tokens in frontend)

    4. **Monitor** your integration and handle errors appropriately


    ## 🔐 Authentication


    This API uses **Bearer Token** authentication. Include your user API token
    in the Authorization header, for example `Authorization: Bearer
    cash_your_token_here`.


    ## ⚠️ Important Security Notes


    - Never share or expose your user API authentication token

    - Store tokens securely on your backend servers only

    - All API calls must be made from secure backend services

    - Contact administrators immediately if your token is compromised
  version: 1.0.0
  contact:
    name: HG.Cash API Support
    email: api-support@hg.cash
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
servers:
  - url: https://hg.cash/api/v1
    description: Production server
  - url: http://dev.hg.cash/api/v1
    description: Development server
security:
  - bearerAuth: []
tags:
  - name: Transactions
    description: >-
      Transaction Management - Create and manage transactions in the HG.Cash
      system. All transaction endpoints require authentication.
  - name: Accounts
    description: >-
      Accounts - Retrieve account information and balances for the authenticated
      user. All account endpoints require authentication.
  - name: Reference Data
    description: >-
      Reference Data - Get reference data like transaction statuses and types.
      These endpoints require authentication.
  - name: Webhooks
    description: Webhooks - Event notifications sent to your HTTP endpoint.
  - name: Brazil
    description: >-
      Transaction management - Create and manage transactions in Pix system for
      Brazil operations
  - name: Chile
    description: Hosted checkout and bank payouts for Chile (CLP)
  - name: Bolivia
    description: QR cash-in and ACH payouts for Bolivia (BOB)
  - name: Colombia
    description: >-
      Hosted checkout cash-in and bank, Bre-B key, or Bre-B QR payouts for
      Colombia (COP)
  - name: Venezuela
    description: USDT cash-in and payouts for Venezuela
  - name: Checkouts
    description: Hosted checkout sessions for AR, BR, CL, BO, and CO
  - name: Claims
    description: Dispute claims with transfer receipt evidence
paths:
  /ve/banks:
    get:
      tags:
        - Venezuela
      summary: List banks (Venezuela)
      description: >
        Returns the live Venezuela catalogue. This is not a hardcoded list.


        `country` includes `pais`, `nombre`, `moneda`, `banks`, `accountTypes`,
        `documentTypes`, and `phoneCode`.

        Catalogue items are `{value, label}`.


        `onramp.banks` items are `{id, name}`. Cash-in `bancoPago` must match
        `name` exactly.

        Payout `banco`, `tipoCuenta`, and `tipoDocumento` use the catalogue
        `value`. String labels are accepted for compatibility.


        If the payment integration is not configured, the API returns `500` with
        `code: VE_BANKS_PROVIDER_NOT_CONFIGURED`.

        A bank-list fetch failure returns `502` with `code:
        VE_BANKS_PROVIDER_ERROR`.
      operationId: listVeBanks
      responses:
        '200':
          description: Country catalogue and on-ramp banks
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VenezuelaBanksResponse'
        '401':
          description: Unauthorized
        '500':
          description: The payment integration is not configured
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VenezuelaProviderError'
              example:
                error: The payment integration is not configured.
                code: VE_BANKS_PROVIDER_NOT_CONFIGURED
                type: provider_error
        '502':
          description: Bank list could not be fetched
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VenezuelaProviderError'
              example:
                error: Unable to fetch banks from the payment provider.
                code: VE_BANKS_PROVIDER_ERROR
                type: provider_error
components:
  schemas:
    VenezuelaBanksResponse:
      type: object
      required:
        - country
        - onramp
      description: >-
        Live bank catalogue. Not a hardcoded list. Country items are `{value,
        label}`. On-ramp banks are `{id, name}`.
      properties:
        country:
          type: object
          required:
            - pais
            - moneda
            - banks
            - accountTypes
            - documentTypes
          properties:
            pais:
              type: string
              example: VE
            nombre:
              type: string
            moneda:
              type: string
              example: VES
            banks:
              type: array
              items:
                $ref: '#/components/schemas/VenezuelaCatalogueOption'
            accountTypes:
              type: array
              items:
                $ref: '#/components/schemas/VenezuelaCatalogueOption'
            documentTypes:
              type: array
              items:
                $ref: '#/components/schemas/VenezuelaCatalogueOption'
            phoneCode:
              $ref: '#/components/schemas/VenezuelaCatalogueOption'
        onramp:
          type: object
          required:
            - currency
            - banks
            - total
          properties:
            currency:
              type: string
              example: VES
            total:
              type: integer
            banks:
              type: array
              description: Payer banks for cash-in. `bancoPago` must match `name` exactly.
              items:
                type: object
                required:
                  - name
                properties:
                  id:
                    type: integer
                  name:
                    type: string
    VenezuelaProviderError:
      type: object
      required:
        - error
        - code
        - type
      properties:
        error:
          type: string
        code:
          type: string
          enum:
            - VE_BANKS_PROVIDER_NOT_CONFIGURED
            - VE_BANKS_PROVIDER_ERROR
            - VE_INBOUND_INVALID_BANCO_PAGO
            - VE_INBOUND_PROVIDER_CREATE_FAILED
            - VE_INBOUND_PROVIDER_MISSING_ORDEN_ID
        type:
          type: string
          enum:
            - provider_error
            - provider_invalid_response
            - validation_error
    VenezuelaCatalogueOption:
      type: object
      required:
        - value
        - label
      description: >-
        Country catalogue item. Send `value` on payouts. String labels are
        accepted for compatibility.
      properties:
        value:
          oneOf:
            - type: string
            - type: number
        label:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >
        User API authentication token with format `cash_<64-char-hex>`. Sample
        value
        `cash_16cdc3b6f83c72d9d2680adca4f430962981f6bf32613a129dded0aa060387d2`.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.