Alternativas a Open Exchange Rates, cuando el plan gratuito se limita a USD
El plan gratuito de Open Exchange Rates te da 1,000 solicitudes al mes, pero cada una de ellas está cotizada en USD. Sin endpoint de conversión, sin series temporales, sin otra moneda base, hasta que pagas $12 al mes o más. Esto es lo que eso te cuesta en realidad, y otros cuatro lugares donde mirar.
Todavía puedes construir un cruce EUR/GBP o cualquier otro desde un plan gratuito con base USD. Obtén los tipos en USD, divide uno entre el otro, y tienes tu cruce. Funciona. También significa un campo de solicitud más que rastrear, una división extra en tu código, y un pequeño error de redondeo acumulado en el tercer decimal que la mayoría de los casos de facturación nunca notará y algunos trabajos de conciliación sí.
Dónde se detiene el plan gratuito
Open Exchange Rates da a las cuentas del plan gratuito 1,000 solicitudes al mes con actualizaciones de tipos cada hora y datos históricos diarios. La trampa: cada respuesta vuelve cotizada frente a USD, sin forma de cambiar eso en el plan gratuito. Pide base=EUR y la API lo ignora o da error, según el endpoint.
El plan gratuito también excluye por completo /convert y la llamada de series temporales. Ambos están reservados a planes de pago, que empiezan en $12 al mes y desbloquean el parámetro de base sin restricciones, además de conversión y series temporales, para cualquier número de monedas base sin cargo extra.
El truco de la base USD, con honestidad
Si estás atascado en el plan gratuito y necesitas un tipo EUR/GBP, todavía no necesitas pagar. Cada moneda en la respuesta se cotiza frente a USD, así que EUR/GBP es solo rates.GBP / rates.EUR — haces la división que la API haría por ti de otro modo.
Dos cosas para presupuestar. Código: cada par que no sea USD ahora necesita un paso de división y una protección contra un valor faltante o cero. Redondeo: dividir dos cotizaciones USD ya redondeadas introduce un pequeño error acumulado frente a un tipo obtenido directamente contra esa base — invisible para un panel, no para un trabajo de conciliación que verifica cifras hasta el cuarto decimal.
/convert no tienen un sustituto casero limpio como sí lo tiene la moneda base. Series temporales significa iterar una llamada al endpoint histórico por día, quemando el presupuesto de 1,000 solicitudes rápido — un muro más duro que el de la moneda base.Cuatro lugares donde mirar en su lugar
Frankfurter — gratis, código abierto, sin clave, solo BCE
Frankfurter envuelve los tipos de referencia del Banco Central Europeo en una API JSON. Sin clave de API, sin cuota impuesta, y es de código abierto. La contrapartida son los datos: los tipos del BCE se publican una vez por día hábil, alrededor de las 16:00 CET, sin ningún dato de fin de semana. Si un dato diario en días hábiles cubre tu caso de uso, Frankfurter no cuesta nada y no necesita registro.
ExchangeRate-API acceso abierto — gratis, sin clave, actualización diaria
ExchangeRate-API opera un endpoint genuinamente sin clave en open.er-api.com. Sin registro, sin clave de API. Se actualiza una vez al día, la misma cadencia que Frankfurter. Se adjuntan dos condiciones: atribución visible ("Rates By Exchange Rate API" enlazando a exchangerate-api.com) y no redistribuir los datos en bruto, aunque cachearlos está bien. Superar el límite devuelve un HTTP 429 que se despeja tras 20 minutos; un plan gratuito con clave por encima del acceso abierto da 1,500 solicitudes al mes.
Fixer — gratis, con clave, solo EUR, 100 llamadas
Fixer requiere una clave incluso en su plan gratuito, y ese plan está basado solo en EUR — cualquier otra moneda base, más la conversión, está reservada al nivel Basic y superior. La cuota es de 100 llamadas al mes, mucho más ajustada que Open Exchange Rates. El plan gratuito sí incluye actualizaciones cada hora, SSL, y datos históricos completos.
exchangerate.dev — gratis, con clave, cualquier base, intradía
El plan gratuito aquí ofrece 465 pares a 10,000 llamadas al mes, 12 solicitudes por minuto, sin tarjeta de crédito. No hay restricción de moneda base en ningún plan — base EUR y base USD cuestan lo mismo, nada — y el historial diario completo desde 1999 está incluido gratis. Los pares principales se actualizan aproximadamente cada 60 segundos en días de negociación; el resto está respaldado por tipos de referencia diarios del BCE o la FRED. Las llamadas anónimas sin clave también funcionan para una evaluación rápida, limitadas por IP.
Ajustar el plan al trabajo
Un trabajo por lotes que solo necesita un tipo de cierre de lunes a viernes tiene tres opciones gratuitas y sin registro: Frankfurter, el acceso abierto de ExchangeRate-API, o el truco de USD de arriba. Un proyecto que necesita un tipo del sábado, o que el parámetro de base simplemente funcione, tiene que mirar más allá de las fuentes solo-BCE. Cotizar precios en vivo durante la jornada de negociación necesita una fuente que se actualice intradía.
El truco de la base USD no es un error que tengas que rodear para siempre — es una división que puedes lanzar hoy y revisar cuando el redondeo importe de verdad.