Guía
Actualizado 27 de octubre de 2026
6 min de lectura

Cómo integrar la tasa BCV en Laravel

Configura tu API key, consulta las tasas, convierte precios y maneja errores sin acoplar tu aplicación a un scraper.

Lo que vas a aprender

  • Configurar la API key sin exponerla en el código.
  • Consultar tasas y convertir precios con el Http client.
  • Cachear, manejar errores y automatizar con webhooks.
En esta guía

Si tu aplicación ya usa Laravel, no necesitas un paquete especial ni un scraper propio. Una API key y el Http client alcanzan para tener la tasa BCV y las referencias P2P en tu flujo de precios, facturación o conciliación.

1. Crea tu API key

Regístrate y genera una key en el dashboard. Guárdala en el .env de tu aplicación, nunca en el código ni en el repositorio.

Bash
Copiar
MONTOSVE_API_KEY=tu_api_key

Luego expón la key desde config/services.php:

PHP
Copiar
'montosve' => [
    'key' => env('MONTOSVE_API_KEY'),
],
No uses Authorization: Bearer para la API REST. El header correcto es X-API-Key. Para MCP sí puedes usar Bearer o X-API-Key.

2. Consulta las tasas

El endpoint /v1/fx/rates devuelve BCV, Binance P2P y Bybit P2P en una sola respuesta.

PHP
Copiar
use Illuminate\Support\Facades\Http;

$response = Http::withHeaders([
    'X-API-Key' => config('services.montosve.key'),
])->get('https://api.montosve.com/v1/fx/rates', [
    'trade_type' => 'buy',
])->throw();

$rates = $response->json('data');

Guarda también el timestamp y el estado de la fuente. No muestres una tasa vieja como si fuera actual: el JSON incluye la información necesaria para saber qué estás viendo.

3. Convierte un precio a bolívares

Para un precio de catálogo, usa /v1/fx/convert. Así no repites la lógica de tasas en tu aplicación.

PHP
Copiar
$conversion = Http::withHeaders([
    'X-API-Key' => config('services.montosve.key'),
])->get('https://api.montosve.com/v1/fx/convert', [
    'amount' => 100,
    'from' => 'USD',
    'to' => 'VES',
    'market' => 'bcv',
])->throw()->json('data');

$priceInBs = $conversion['converted_amount'];

4. Cachea y maneja errores

No consultes la API en cada request de tu aplicación. Cachea las tasas por unos minutos y define qué hacer si la API no responde.

PHP
Copiar
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\Http;

$rates = Cache::remember('montosve:rates', now()->addMinutes(10), function () {
    return Http::withHeaders([
        'X-API-Key' => config('services.montosve.key'),
    ])->get('https://api.montosve.com/v1/fx/rates')
        ->throw()
        ->json('data');
});
Si la API falla, no inventes una tasa. Muestra el último valor con su timestamp o pide reintentar. La trazabilidad importa más que un número “fresco” sin contexto.

5. Automatiza con webhooks

Si necesitas reaccionar a cambios de tasa sin polling, el plan Pro incluye webhooks firmados. Configura tu endpoint en /developer/webhooks y verifica la firma HMAC antes de procesar el evento.

Checklist

  • API key en .env, nunca en Git.
  • Header X-API-Key en todas las llamadas.
  • Cache de tasas y fallback visible para el usuario.
  • Timestamp y stale en tu interfaz.
  • Webhooks en Pro si necesitas reaccionar sin polling.

Preguntas frecuentes

¿Cada cuánto se actualizan las tasas?

Las referencias P2P se actualizan periódicamente según la disponibilidad de Binance y Bybit. La tasa BCV se actualiza cuando el Banco Central publica un valor nuevo. Cada respuesta incluye timestamp para trazabilidad.

¿Qué pasa si una fuente falla?

Las fuentes se tratan de forma independiente. Si una referencia no está disponible, las demás pueden seguir mostrándose por separado. Revisa el campo stale y el endpoint /v1/health para automatizar failover.

¿Necesito una API key?

Sí. Todos los endpoints salvo /v1/health requieren el header X-API-Key. Puedes crear una key gratis y pasar a un plan de producción cuando lo necesites.

¿Listo para integrarlo?

Crea tu key gratis y pasa a un plan de producción cuando lo necesites. Sin renovación automática.