← Volver a docs
GETDisponible en Free

GET /v1/fx/bcv/banks

Devuelve el snapshot diario de tasas de compra y venta de USD por institución bancaria, tal como las publica el Banco Central de Venezuela en bcv.org.ve.

El snapshot se actualiza una vez al día desde la fuente oficial del Banco Central de Venezuela. Incluye las tasas de entidades como Banesco, BBVA Provincial, Banco Mercantil, Banco Exterior, N58 Banco Digital y Otras Instituciones.

Ruta legacy: /v1/beta/fx/bcv/banks

Si tu aplicación usa la ruta beta, sigue funcionando hasta el 14 de julio de 2026. Las respuestas legacy llevan los headers Sunset, Deprecation: true y un Link rel="successor-version". Migra a la ruta estable cuando puedas.


Request

GET /v1/fx/bcv/banks HTTP/1.1
Host: api.cotizave.com
X-API-Key: ctz_live_aB3cD8fG2hJ5kL9mN1pQ4rS7tU0vWxYzA6bC3d

Este endpoint no acepta parámetros de query. Siempre devuelve el snapshot más reciente disponible.

Ejemplo con curl

curl https://api.cotizave.com/v1/fx/bcv/banks \
  -H "X-API-Key: ctz_live_aB3cD8fG2hJ5kL9mN1pQ4rS7tU0vWxYzA6bC3d"

Response

200 OK

{
  "indicator_date": "2026-05-09",
  "bank_rates": [
    {
      "bank": "Banco de Venezuela",
      "buy": 88.5432,
      "sell": 89.1234
    },
    {
      "bank": "Banesco",
      "buy": 88.4210,
      "sell": 89.0050
    },
    {
      "bank": "BBVA Provincial",
      "buy": 88.3900,
      "sell": 88.9870
    },
    {
      "bank": "Banco Mercantil",
      "buy": 88.4100,
      "sell": 89.0100
    },
    {
      "bank": "Banco Exterior",
      "buy": 88.3750,
      "sell": 88.9600
    },
    {
      "bank": "N58 Banco Digital",
      "buy": 88.5000,
      "sell": 89.0500
    },
    {
      "bank": "Otras Instituciones",
      "buy": 88.3500,
      "sell": 88.9200
    }
  ],
  "captured_at": "2026-05-09T12:15:03Z"
}

Schema de respuesta

CampoTipoDescripción
indicator_datestring (YYYY-MM-DD)Fecha de negociación a la que corresponden las tasas bancarias
bank_ratesBankRate[]Lista de tasas por institución
bank_rates[].bankstringNombre del banco con su prefijo numérico si aplica (ej: N58 Banco Digital). Verbatim de la fuente BCV.
bank_rates[].buynumberTasa de compra de USD (VES por USD)
bank_rates[].sellnumberTasa de venta de USD (VES por USD)
captured_atstring (ISO 8601)Cuándo Cotizave extrajo y persistió el snapshot

Casos de uso típicos

Dashboard de tasas bancarias

Para mostrar una tabla comparativa de compra/venta por banco:

const res = await fetch('https://api.cotizave.com/v1/fx/bcv/banks', {
  headers: { 'X-API-Key': process.env.COTIZAVE_API_KEY! }
})
const data = await res.json()

console.log(`Fecha indicador: ${data.indicator_date}`)
for (const { bank, buy, sell } of data.bank_rates) {
  console.log(`${bank}: compra ${buy} | venta ${sell}`)
}

Verificar frescura antes de usar el dato

El snapshot se actualiza una vez al día. Verifica captured_at si tu aplicación necesita garantizar que el dato tiene menos de 24 horas:

const data = await fetchBCVBanks()
const capturedAt = new Date(data.captured_at)
const ageHours = (Date.now() - capturedAt.getTime()) / 3_600_000

if (ageHours > 24) {
  console.warn('El snapshot BCV tiene más de 24h de antigüedad')
}

Errores posibles

Códigoerror.codeCausa
401invalid_api_keyAPI Key inválida, faltante o revocada
404bcv_snapshot_unavailableEl cron diario aún no ejecutó o la variable OPEN_ROUTER_COTIZAVE_BCV no está configurada
429rate_limit_exceededCuota mensual agotada
500internal_errorError inesperado del lado de Cotizave

Notas importantes

Frecuencia de actualización

El snapshot se actualiza una vez al día desde la fuente oficial del Banco Central de Venezuela (bcv.org.ve). El campo captured_at indica cuándo se procesó exitosamente la última actualización.

Nombres de banco verbatim

El campo bank preserva el nombre exactamente como aparece en la fuente BCV, incluyendo prefijos numéricos como N58 Banco Digital. No normalices ni aliases estos nombres en tu aplicación sin verificar primero que la fuente no cambió.

USD excluido de /bcv/currencies

La cotización USD/VES ya está implícita en las columnas buy y sell de este endpoint. Por eso el endpoint hermano /v1/fx/bcv/currencies omite USD de su respuesta y solo devuelve EUR, CNY, TRY y RUB.