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.
MONTOSVE_API_KEY=tu_api_key
Luego expón la key desde config/services.php:
'montosve' => [
'key' => env('MONTOSVE_API_KEY'),
],
2. Consulta las tasas
El endpoint /v1/fx/rates
devuelve BCV, Binance P2P y Bybit P2P en una sola respuesta.
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.
$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.
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');
});
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-Keyen todas las llamadas. - Cache de tasas y fallback visible para el usuario.
- Timestamp y
staleen 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.