Volver al blog

Alternativas a exchangerate.host: las 7 mejores API de divisas en 2026

V
Vlado Grigirov
August 21, 2026
Currency API Exchange Rates API Comparison exchangerate.host Alternative Free Currency API Finexly 2026

Si estás buscando alternativas a exchangerate.host, casi con toda seguridad has chocado con el mismo muro que todos los demás: el plan gratuito ahora ofrece 100 peticiones al mes. No 100 al día ni 100 por hora — cien llamadas en total durante todo el ciclo de facturación. Un solo desarrollador probando una página de pago puede agotarlas antes de la hora de comer. El servicio que era el endpoint por defecto de internet para «coger unos tipos de cambio rápido» es ahora un producto de pago con una cuota de demostración adjunta.

Esta guía compara las 7 mejores alternativas a exchangerate.host en 2026 tal y como las evalúa un ingeniero de verdad: tamaño del plan gratuito, precio real al volumen que vas a alcanzar, frecuencia de actualización, cobertura histórica y cuánto código tienes que reescribir. Todas las cifras de precios se han verificado en las páginas oficiales de cada proveedor en el momento de escribir este artículo, y la última sección muestra la migración completa — petición, mapeo de respuesta y caché — en unos diez minutos de trabajo.


Qué ha cambiado en exchangerate.host

exchangerate.host nació como una API gratuita de aire comunitario: sin clave, sin registro, tipos derivados del BCE y una interfaz REST limpia. Esa versión ya no existe. El servicio lo desarrolla y mantiene ahora APILayer (APILayer GmbH, con sede en Viena, Austria), y se comporta como cualquier otra API comercial de esa familia. Tres cambios concretos son los que empujan a los desarrolladores a buscar otra cosa.

1. El plan gratuito son 100 peticiones al mes

La página de precios actual de exchangerate.host fija el plan Free en 100 peticiones al mes, con actualizaciones diarias y sin soporte. Para poner el número en contexto: es una petición cada siete horas si las repartes de forma perfectamente uniforme en un mes de 30 días. Es una cuota de demostración, no un plan de desarrollo. Cualquier proyecto con tests, un pipeline de CI o más de un desarrollador la agotará de inmediato.

2. Los excesos se facturan automáticamente en lugar de detenerse

Esta es la parte que sorprende. Cuando superas tu cuota, la API no devuelve un 429 ni se detiene: sigue sirviendo y te cobra por llamada. La propia tabla de excesos de APILayer sitúa el plan Basic en 0,005996 $ por llamada adicional y da este ejemplo real: 10.000 llamadas de exceso sobre el plan Basic de 14,99 $ cuestan 59,96 $. Eso es cuatro veces el precio del plan, añadido a una factura que no aprobaste, por un bucle de reintentos que no detectaste. Recibes avisos por correo y en el panel al 75 %, 90 % y 100 % de la cuota, pero nada te corta el servicio.

Si tu modelo de costes depende de un techo predecible, una API que convierte silenciosamente los bugs en facturas es un problema estructural, no un detalle de tarifas.

3. Los planes gratuitos y baratos se actualizan una vez al día

La frecuencia de actualización va por niveles: diaria en Free, horaria en Basic (14,99 $/mes), cada 10 minutos en Professional Plus (59,99 $/mes) y cada 60 segundos en Business (99,99 $/mes). Los datos históricos se entregan como valores de cierre de jornada, disponibles a las 00:05 GMT del día anterior. Esa cadencia está bien para contabilidad. No lo está para una página de pago, una tabla de precios o cualquier cosa donde un tipo desactualizado acabe en un ticket de reembolso.

4. El soporte es una factura anual aparte

El soporte estándar está incluido, pero el Platinum Support — gestor de cuenta dedicado, revisión prioritaria de bugs — es un cargo anual adicional de 479,88 $ en Basic, 599,88 $ en Professional Plus y 719,88 $ en Business. Viene premarcado al contratar y hay que desmarcarlo a mano. Conviene saberlo antes de comparar precios mensuales.

Nada de esto convierte a exchangerate.host en una mala API. La convierte en una API distinta de la que siguen citando la mayoría de los tutoriales, y sus números solo cuadran a determinados volúmenes. Si quieres el contexto más amplio sobre cómo obtienen y tarifan estos datos los proveedores, consulta nuestra guía sobre de dónde obtienen sus datos las API de tipos de cambio.


Cómo evaluar una alternativa a exchangerate.host

Antes de la lista, la checklist que de verdad predice si una migración se sostiene:

  1. Plan gratuito utilizable — llamadas suficientes para construir, probar y ejecutar una app pequeña en producción sin tarjeta de crédito.
  2. Comportamiento ante excesos — ¿la API se detiene en el límite o te factura el exceso?
  3. Frecuencia de actualización a tu precio — tiempo real, horaria o diaria en el plan que realmente vas a contratar.
  4. Endpoints históricos y de series temporales — una fecha pasada concreta es lo mínimo; los rangos de fechas para gráficos no lo son.
  5. Flexibilidad de moneda base — algunos proveedores bloquean el plan gratuito a USD o EUR y cobran por cambiarlo.
  6. Amplitud de divisas — las principales son fáciles; la cola larga de divisas emergentes es donde se diferencian.
  7. Coste de migración — ¿cuánto se parece la forma de la petición y la respuesta a lo que ya parseas?

Las 7 mejores alternativas a exchangerate.host en 2026

APIPlan gratuitoDivisasActualización (gratis)HistóricoSin tarjeta
Finexly1.000 pet./mes170+Tiempo real
exchangerate.host100 pet./mes170+Diaria
FrankfurterIlimitado, sin clave~30Diaria (BCE)
ExchangeRate-API1.500 pet./mes161DiariaSolo de pago
Open Exchange Rates1.000 pet./mes200+Horaria (base USD)Solo de pagoNo
Fixer100 pet./mes170+Horaria (base EUR)Solo de pagoNo
CurrencyLayer100 pet./mes168Diaria (base USD)Solo de pagoNo
CurrencyAPI~300 pet./mes170+DiariaSolo de pagoNo

1. Finexly — el reemplazo más equivalente

Finexly está construido justo para el hueco que dejó exchangerate.host: tipos de cambio en tiempo real e históricos para más de 170 divisas sobre una API REST sencilla, con un plan gratuito de 1.000 peticiones al mes (10 peticiones/minuto) y sin tarjeta de crédito al registrarte. Eso es 10 veces la cuota gratuita de exchangerate.host, con actualizaciones en tiempo real en lugar de diarias, y datos históricos incluidos en vez de restringidos.

La escalera de pago es donde la comparación se vuelve interesante. El plan Growth de Finexly cuesta 12,99 $/mes por 15.000 peticiones; el Basic de exchangerate.host cuesta 14,99 $/mes por 10.000. Pagas menos y tienes un 50 % más de margen. En la parte alta del autoservicio ambos proveedores cobran 59,99 $/mes por 100.000 peticiones, pero el nivel de Finexly entrega actualizaciones en tiempo real mientras que Professional Plus de exchangerate.host refresca cada 10 minutos.

Los endpoints son los cuatro habituales — latest, historical, timeseries y convert — sobre una única estructura de respuesta consistente, documentada en la documentación de la API de Finexly. Los planes completos están en la página de planes y precios.

Elígelo si: quieres un reemplazo directo con un plan gratuito con el que puedas desarrollar de verdad y precios predecibles a medida que creces.

2. Frankfurter — gratis para siempre, si te bastan ~30 divisas

Frankfurter es gratuito, de código abierto, autoalojable y no necesita ninguna clave de API — lo más parecido que queda a la experiencia original de exchangerate.host. Sirve los tipos de referencia del Banco Central Europeo con un archivo histórico profundo. La contrapartida es dura: la cobertura se detiene en unas 30 divisas (las que publica el BCE), los tipos se mueven una vez por día hábil y todo está anclado a una base en euros.

Elígelo si: trabajas en torno al euro, no necesitas pares exóticos y la granularidad diaria te sirve de verdad. Si no, lo superarás la misma semana en que lo adoptes.

3. ExchangeRate-API — la clave gratuita más generosa sin tarjeta

ExchangeRate-API (un producto de AYR Tech, en marcha desde 2010) ofrece dos vías gratuitas. El endpoint de acceso abierto no necesita clave pero exige atribución visible, se actualiza una vez al día y tiene límite de tasa — quien abusa recibe HTTP 429 y un bloqueo de 20 minutos. El nivel gratuito con clave da 1.500 peticiones al mes, actualizaciones diarias y sin requisito de atribución, sin tarjeta de crédito. El plan Pro cuesta 10 $/mes por 30.000 peticiones con actualizaciones cada 60 minutos.

Ojo al techo: los datos históricos y de series temporales están en planes de pago, e incluso Pro refresca cada hora. Elígelo si: necesitas volumen con poco presupuesto y los tipos diarios te valen. Desglosamos esta familia en nuestra comparativa ExchangeRate-API vs CurrencyLayer vs Finexly.

4. Open Exchange Rates — la cobertura de divisas más profunda

En marcha desde 2011, con más de 200 divisas y un ecosistema maduro de librerías cliente. El plan gratuito permite 1.000 peticiones al mes con actualizaciones horarias, pero está bloqueado a base USD — cambiar la moneda base es una función de pago, lo que rompe silenciosamente cualquier código que asumiera EUR o GBP como ancla. Los planes de pago arrancan en torno a 12 $/mes por 10.000 peticiones.

Elígelo si: la amplitud de divisas es tu restricción principal y una base en USD es natural para tu producto.

5. Fixer — misma casa, mismo modelo de facturación

Fixer cubre más de 170 divisas a través de la misma estructura de endpoints de APILayer que exchangerate.host, lo que la convierte en la migración de menor esfuerzo de esta lista — y también en la menos significativa. El plan gratuito son 100 peticiones al mes con actualizaciones horarias y base EUR, histórico en planes de pago y la misma facturación automática de excesos.

Elígelo si: ya estás invertido en el ecosistema de APILayer y quieres facturación consolidada. Si dejaste exchangerate.host por el plan gratuito o por el modelo de excesos, Fixer no resuelve ninguno de los dos.

6. CurrencyLayer — divisas más metales preciosos

También de APILayer. 168 divisas más metales preciosos, 100 peticiones al mes gratis con actualizaciones diarias y base USD. La cobertura de metales es el diferenciador; todo lo demás replica a Fixer.

Elígelo si: necesitas XAU/XAG junto a divisas fiat y vas a ir directo a un plan de pago igualmente.

7. CurrencyAPI — fiat y cripto en un mismo endpoint

Una API REST directa que cubre más de 170 divisas fiat y criptomonedas, con un plan gratuito de unas 300 peticiones al mes y actualizaciones diarias. El refresco más rápido llega en los planes de pago.

Elígelo si: necesitas cripto y fiat desde una sola integración y puedes vivir con una cuota gratuita pequeña.


Comparativa de costes: lo que realmente pagas

Los precios de portada esconden lo que importa, que es el coste por petición útil a tu frecuencia de actualización. Tres volúmenes realistas:

A 10.000 peticiones/mes. Basic de exchangerate.host son 14,99 $ con actualizaciones horarias. Growth de Finexly son 12,99 $ por 15.000 peticiones con actualizaciones en tiempo real. Ahorras en la factura y te llevas 5.000 peticiones de margen antes de tener que volver a pensarlo.

A 100.000 peticiones/mes. Ambos están en 59,99 $. La diferencia es la cadencia de refresco — 10 minutos frente a tiempo real — y si pasarte de la cuota te cuesta dinero o te devuelve un error.

En el límite de los excesos. Aquí está la divergencia más marcada. Usando la cifra publicada por el propio APILayer, 10.000 llamadas por encima del plan Basic cuestan 59,96 $, más de cuatro veces la suscripción base. Un cron mal configurado o una tormenta de reintentos se convierte directamente en una factura. Los proveedores que se detienen en la cuota convierten el mismo incidente en una alerta.

La defensa práctica funciona sea cual sea el proveedor: cachea de forma agresiva y falla en cerrado. Unos tipos que se actualizan cada hora no necesitan pedirse en cada carga de página. Nuestra guía sobre caché y manejo de errores en API de divisas cubre los patrones — elección de TTL, stale-while-revalidate y circuit breakers — que mantienen planas tanto tu latencia como tu factura.


Cómo migrar desde exchangerate.host

La mayoría de integraciones con exchangerate.host son una petición GET y un parser de respuesta, así que la migración es mecánica. Hay exactamente dos cosas que mapear.

Paso 1: mapear la petición

exchangerate.host usa la convención de APILayer: un parámetro access_key en la URL, con source para la moneda base y currencies para las de destino:

# exchangerate.host — clave en la URL
curl "https://api.exchangerate.host/live?access_key=YOUR_ACCESS_KEY&source=USD&currencies=EUR,GBP,JPY"

Finexly usa una cabecera Authorization estándar y los nombres de parámetro más convencionales base / symbols:

# Finexly — clave en la cabecera, tipos en tiempo real
curl "https://api.finexly.com/v1/latest?base=USD&symbols=EUR,GBP,JPY" \
  -H "Authorization: Bearer YOUR_API_KEY"

Sacar la clave de la query string ya es una pequeña mejora de seguridad por sí sola: las URL acaban en logs de servidor, logs de proxy, historial del navegador y cabeceras referrer. Las cabeceras normalmente no.

Paso 2: mapear la respuesta

Esta es la única parte que toca tu código de parseo. Las respuestas de la familia APILayer indexan cada cotización por el par concatenado (USDEUR), así que tienes que quitar el prefijo de origen para obtener un símbolo utilizable. Finexly devuelve un objeto rates plano indexado por el símbolo de destino:

{
  "success": true,
  "base": "USD",
  "timestamp": 1755763200,
  "date": "2026-08-21",
  "rates": {
    "EUR": 0.9184,
    "GBP": 0.7842,
    "JPY": 152.31
  }
}

Una capa de compatibilidad deja intacto el resto de tu aplicación mientras migras:

// Reemplazo directo que devuelve el formato de par concatenado que espera tu código antiguo
async function getQuotes(source = 'USD', currencies = ['EUR', 'GBP', 'JPY']) {
  const url = `https://api.finexly.com/v1/latest?base=${source}&symbols=${currencies.join(',')}`;
  const res = await fetch(url, {
    headers: { Authorization: `Bearer ${process.env.FINEXLY_API_KEY}` }
  });

  if (!res.ok) throw new Error(`FX request failed: ${res.status}`);
  const data = await res.json();

  // Reconstruye las claves heredadas "USDEUR" para no tocar el código posterior
  return Object.fromEntries(
    Object.entries(data.rates).map(([symbol, rate]) => [`${source}${symbol}`, rate])
  );
}

El equivalente en Python, con el control de frescura que deberías haber tenido desde siempre:

import os, time, requests

FRESHNESS_LIMIT = 15 * 60  # seconds

def get_rates(base="USD", symbols=("EUR", "GBP", "JPY")):
    resp = requests.get(
        "https://api.finexly.com/v1/latest",
        params={"base": base, "symbols": ",".join(symbols)},
        headers={"Authorization": f"Bearer {os.environ['FINEXLY_API_KEY']}"},
        timeout=5,
    )
    resp.raise_for_status()
    data = resp.json()

    age = time.time() - data["timestamp"]
    if age > FRESHNESS_LIMIT:
        raise RuntimeError(f"Rates are {int(age)}s old — refusing to price on stale data")

    return data["rates"]

Y en PHP, para las bases de código de Laravel y WordPress que forman buena parte de los usuarios de exchangerate.host:

<?php
$response = wp_remote_get(
    'https://api.finexly.com/v1/latest?base=USD&symbols=EUR,GBP,JPY',
    ['headers' => ['Authorization' => 'Bearer ' . getenv('FINEXLY_API_KEY')], 'timeout' => 5]
);

if (is_wp_error($response)) {
    return get_transient('fx_rates_fallback'); // sirve el último valor bueno conocido
}

$data = json_decode(wp_remote_retrieve_body($response), true);
set_transient('fx_rates_fallback', $data['rates'], HOUR_IN_SECONDS * 6);
return $data['rates'];

Paso 3: cachea antes de cambiar

Migres a lo que migres, pon una caché delante desde el primer día. Si tus tipos se refrescan cada hora, un TTL de 30 minutos recorta tu número de peticiones en órdenes de magnitud y hace viable el plan gratuito con tráfico real. Guarda siempre un último valor bueno conocido para servirlo cuando falle la llamada al proveedor: el fallback del ejemplo en PHP es toda la idea en tres líneas. El manejo de símbolos es otra fuente silenciosa de bugs durante una migración; nuestra guía de códigos de divisa ISO 4217 cubre los códigos que más problemas dan.


¿Qué alternativa deberías elegir?

  • Reemplazar una integración en producción: Finexly. El plan gratuito es 10 veces mayor, las actualizaciones son en tiempo real y no diarias, y la migración son los dos mapeos de arriba. Empieza con el plan gratuito y sube cuando lo superes.
  • Proyecto personal, centrado en el euro, sin clave: Frankfurter.
  • Máximo de peticiones gratuitas con tipos diarios aceptables: el nivel con clave de ExchangeRate-API, 1.500 al mes.
  • La lista de divisas más amplia con base USD natural: Open Exchange Rates.
  • Ya estás dentro de APILayer: Fixer o CurrencyLayer, pero espera el mismo plan gratuito y el mismo modelo de excesos del que intentas escapar.

Si quieres comprobar tú mismo la frescura y la cobertura antes de comprometerte, el conversor de divisas funciona con el feed en vivo de Finexly, y nuestra comparativa de API de tipos de cambio en tiempo real profundiza en latencia y garantías de actualización. ¿Te planteas montar tu propio feed? Lee antes construir o comprar una API de divisas.


Preguntas frecuentes

¿Sigue siendo gratis exchangerate.host? Sigue existiendo un plan gratuito, pero está limitado a 100 peticiones al mes con actualizaciones diarias y sin soporte. La versión sin clave y prácticamente ilimitada que citan los tutoriales antiguos ya no existe: se requiere clave de API y el volumen real empieza en 14,99 $/mes.

¿Por qué mi integración con exchangerate.host dejó de funcionar de repente? Casi siempre por el requisito de clave de API. Las peticiones sin un access_key válido fallan, y la API señala los errores devolviendo false en el campo success, a veces con HTTP 404 o HTTP 521 en lugar de un 4xx convencional. Si tu cliente solo comprueba el código de estado HTTP, el fallo puede parecer un éxito vacío. Comprueba el campo success explícitamente.

¿Cuál es la mejor alternativa gratuita a exchangerate.host? Para un plan gratuito utilizable con datos en tiempo real, Finexly con 1.000 peticiones al mes y sin tarjeta. Para volumen bruto con datos diarios, ExchangeRate-API con 1.500 al mes. Para no usar clave con ~30 divisas del BCE, Frankfurter.

¿Me cobrarán si supero mi límite? En exchangerate.host, sí: los excesos se facturan por llamada en lugar de bloquearse, a 0,005996 $ por petición en Basic. El propio ejemplo de APILayer sitúa 10.000 llamadas de exceso en 59,96 $. Revisa la política de excesos de cualquier proveedor que evalúes; algunos se detienen en la cuota, lo cual es más seguro con tráfico no controlado.

¿Cuánto se tarda en migrar a otra API de divisas? Para una integración típica de un solo endpoint, menos de una hora. El trabajo consiste en cambiar la URL y el método de autenticación, y luego remapear la respuesta: las API de la familia APILayer indexan las cotizaciones por par concatenado (USDEUR), mientras que la mayoría de alternativas devuelven un objeto rates plano. Una capa de compatibilidad como la de arriba te permite cambiar sin tocar el código posterior.

¿Necesito tipos de cambio históricos? Más a menudo de lo que los equipos esperan. La facturación, los informes fiscales y la conciliación de ingresos necesitan el tipo de una fecha concreta, no el de hoy. El acceso histórico es una función de pago en la mayoría de proveedores de esta lista: compruébalo antes de comprometerte. Nuestra guía de API de tipos de cambio históricos explica qué almacenar y qué consultar.


Empieza con una clave de API gratuita

La razón por la que exchangerate.host está perdiendo desarrolladores no es el precio: es que su plan gratuito dejó de ser un sitio donde se pueda construir. ¿Listo para migrar? Consigue tu clave gratuita de Finexly — sin tarjeta de crédito. Obtienes 1.000 peticiones al mes, tipos en tiempo real de más de 170 divisas y datos históricos incluidos, con planes desde 6,99 $/mes cuando lo superes. La documentación tiene un ejemplo funcional en tu lenguaje, y puedes comparar API de divisas en paralelo antes de decidir.

Vlado Grigirov

Senior Currency Markets Analyst & Financial Strategist

Vlado Grigirov is a senior currency markets analyst and financial strategist with over 14 years of experience in foreign exchange markets, cross-border finance, and currency risk management. He has wo...

View full profile →