banxico-sdk
Un cliente ligero y reusable en TypeScript para consumir las series de tipos de cambio de Banxico.
Instalación
npm install banxico-sdk
O si lo usas localmente en tu monorepo:
npm install ../ruta/a/banxico-sdk
Variables de entorno
Crea un archivo .env en la raíz con:
BANXICO_TOKEN=TU_TOKEN_DE_BANXICO
Compilación y ejecución
npm run build
npm run start
Ejemplo de uso
import 'dotenv/config'; import { BanxicoClient } from './client'; import { axiosAdapter } from './adapters/axiosAdapter';
(async () => { const client = new BanxicoClient({ token: process.env.BANXICO_TOKEN!, adapter: axiosAdapter });
// 1. Tipo de cambio FIX más reciente const fix = await client.getTipoCambioFix(); console.log('FIX:', fix);
// 2. Histórico FIX entre dos fechas const historicoFix = await client.getTipoCambioHistorico('2025-05-01', '2025-05-03'); console.log('Histórico FIX:', historicoFix);
// 3. Tipo de cambio Obligaciones más reciente const obligacionesFix = await client.getTipoCambioObligacionesFix(); console.log('Obligaciones FIX:', obligacionesFix);
// 4. Histórico Obligaciones entre dos fechas const historicoOblig = await client.getTipoCambioObligacionesHistorico('01/05/2025', '03/05/2025'); console.log('Histórico Obligaciones:', historicoOblig); })();
Nota: Las fechas pueden pasarse como DD/MM/YYYY o YYYY-MM-DD. El SDK las convierte automáticamente al formato YYYY-MM-DD requerido por Banxico.
API pública
new BanxicoClient(options: { token: string; adapter: BanxicoAdapter })
getTipoCambioFix(): Promise<{ fecha: string; valor: string }>
getTipoCambioHistorico(fechaIni: string, fechaFin: string): Promise<{ fecha: string; valor: string }[]>
getTipoCambioObligacionesFix(): Promise<{ fecha: string; valor: string }>
getTipoCambioObligacionesHistorico(fechaIni: string, fechaFin: string): Promise<{ fecha: string; valor: string }[]>
Adapters disponibles
axiosAdapter (usa axios)
Puedes crear tu propio adapter implementando la interfaz BanxicoAdapter.
Compilación y ejecución detallada:
npm install
npm run build
npm run start