Back to 0fee
0fee

Conversión de divisas en más de 25 monedas

Cómo 0fee.dev maneja la conversión de divisas en más de 25 monedas con APIs gratuitas, caché y detección de localización. Por Juste A. Gnimavo y Claude.

Thales & Claude | March 30, 2026 3 min 0fee
EN/ FR/ ES
currencyconversioninternationalization

Un orquestador de pagos que sirve a más de 200 países debe manejar la conversión de divisas como una preocupación de primera clase. Cuando un comerciante en Abiyán cobra 10.000 XOF y quiere ver sus ingresos en USD, o cuando un desarrollador keniata cobra su API en KES pero paga comisiones de plataforma en USD, la capa de conversión debe ser rápida, precisa y resiliente.

0fee.dev soporta más de 25 monedas en África, Europa, Asia y las Américas. Así es como construimos el sistema de conversión.

Separación de moneda origen/destino

La decisión de diseño fundamental fue separar las monedas de origen y destino a nivel de transacción. Cada transacción registra ambas, más la tasa utilizada, para auditabilidad completa.

La API de divisas: fawazahmed0/currency-api

Para tasas de cambio, usamos la API gratuita fawazahmed0/currency-api -- un proyecto de código abierto que agrega tasas de múltiples fuentes y las publica diariamente mediante CDN.

¿Por qué una API gratuita en lugar de un servicio de pago como Open Exchange Rates o XE? Costo cero, precisión suficiente para nuestro caso de uso (las tasas diarias son suficientes), entrega respaldada por CDN con casi 100 % de disponibilidad, y sin claves API que gestionar.

Caché de 24 horas con respaldo en localStorage

Las tasas de cambio no cambian por segundo para nuestros propósitos. Cacheamos las tasas por 24 horas, con una estrategia de caché multicapa:

La cadena de respaldo es: caché en memoria -> localStorage -> llamada API -> caché expirada -> tasas codificadas. Un comerciante nunca debería ver un error de "tasa no disponible".

Tasas de respaldo codificadas

Como último recurso absoluto, mantenemos tasas codificadas que se actualizan manualmente cada trimestre. Incluyen soporte para tasa inversa y conversión a través de USD para pares no directos.

Selector de moneda en el encabezado del panel

El encabezado del panel incluye un selector de moneda que permite a los comerciantes ver todos los valores monetarios en su moneda preferida. Cuando la moneda seleccionada cambia, todos los valores del panel -- saldo, montos de transacciones, gráficos de ingresos, totales de facturas -- se reconvierten usando las tasas cacheadas.

Detección de localización del navegador

En la primera visita, detectamos la localización del usuario y establecemos una moneda predeterminada sensata basada en su configuración regional del navegador. Los desarrolladores francófonos de África Occidental obtienen XOF, los nigerianos NGN, los keniatas KES, etc.

Lecciones aprendidas

  1. Gratuito no significa poco fiable. La API de divisas fawazahmed0 ha sido más estable que algunas alternativas de pago que evaluamos.
  1. Cachea agresivamente. Las tasas de cambio para nuestro caso de uso no necesitan actualizaciones en tiempo real. El caché de 24 horas elimina el 99 % de las llamadas API.
  1. Siempre ten un respaldo. El caché de tres capas (memoria, localStorage, codificado) significa que la conversión de divisas nunca falla.
  1. Almacena la tasa con la transacción. Sin la tasa de cambio registrada en el momento de la transacción, la auditoría retroactiva es imposible.
  1. El panorama de divisas de África es complejo. XOF y XAF tienen el mismo valor (ambos vinculados al EUR) pero son monedas diferentes usadas en zonas económicas diferentes. Tratarlas como intercambiables es un error.

Este artículo es parte de la serie "Cómo construimos 0fee.dev". 0fee.dev es un orquestador de pagos que cubre más de 53 proveedores en más de 200 países, construido por Juste A. GNIMAVO y Claude desde Abiyán sin ingenieros humanos. Sigue la serie para conocer la historia completa de la construcción.

Share this article:

Responses

Write a response
0/2000
Loading responses...

Related Articles