Saltar al contenido
Menú
Saltar la navegación de la documentación

Español API 2026-10-22

Documentación · Integrar · API v1 · versión 2026-10-22

Backend intermediario

Cómo usar Trevol desde una aplicación web (Next.js, Nuxt, SvelteKit, Angular) sin exponer la llave en el navegador.

Ver como Markdown

No hay SDK para el navegador, porque la llave de la API nunca debe estar en el navegador: quien la vea puede emitir documentos a nombre de tu empresa.

El patrón es el de backend intermediario:

  1. Tu frontend llama a tu servidor (una ruta de tu aplicación), con la sesión de tu usuario.
  2. Tu servidor comprueba quién es y qué puede hacer, arma el documento desde tus propios datos (no reenvía el cuerpo que llegó del navegador), y llama a Trevol.
  3. Tu servidor responde al frontend lo que el usuario necesita (el estado y el número, no la llave).

Qué no hacer

  • No pongas la llave en una variable pública (NEXT_PUBLIC_…, VITE_…, PUBLIC_…, environment.ts de Angular): esas variables viajan al navegador.
  • No hagas un «proxy abierto» que reenvíe cualquier ruta y cuerpo a Trevol: cualquiera podría emitir lo que quiera.
  • Deriva la Idempotency-Key de tu venta (VENTA-2026-000123), no de un valor que mande el navegador.

Los ejemplos con el SDK de Node.js (Next.js, Nuxt, SvelteKit y Angular) llegan cuando los SDK se publiquen. El patrón es el mismo con cualquier cliente HTTP: la ruta de tu servidor lee TREVOL_API_KEY del entorno, arma el documento desde tus datos y llama a POST https://api.trevol.si/v1/invoices con Authorization: Bearer, un Idempotency-Key derivado de tu venta y el cuerpo que describe la referencia.

Y los webhooks

Los avisos de Trevol también llegan a tu servidor, nunca al navegador. Recíbelos en una ruta tuya, verifica la firma con el cuerpo crudo y avisa a tu frontend por tu propio canal (WebSocket, SSE o sondeo de tu base). Ver Webhooks.