Skip to main content

Esquema

Todas las rutas bajo /api/v1/cep/* requieren el header:
Internamente Veripay:
  1. Extrae el prefijo (vk_live_xxxxxxxx) y busca la key en la base.
  2. Calcula HMAC-SHA256(secret_global, api_key_completo) y lo compara en tiempo constante contra el hash almacenado.
  3. Si coincide y la key no está revocada, aplica rate limit y cuota mensual antes de dejar pasar la petición al backend.
El secreto plano de tu key nunca se almacena. Si la pierdes, debes generar una nueva.

Formato de la key

  • El prefijo es buscable y aparece en logs/dashboard sin comprometer la key.
  • El secreto sólo lo conoces tú al momento de creación.

Crear una key

Desde el dashboard o vía API:
Respuesta (la key completa solo se devuelve aquí):

Revocar una key

Marca revoked_at con el timestamp actual. La key deja de funcionar inmediatamente; los registros históricos se conservan.

Buenas prácticas

Crea keys distintas para staging, prod y cada microservicio. Si una se compromete, revocas sin downtime global.
El header x-api-key debe agregarse desde tu backend. Si necesitas hacer descargas desde el navegador, proxea a través de tu API.
Genera la nueva key, despliégala, y revoca la anterior cuando confirmes que el tráfico migró.
Revisa los logs del dashboard. Picos inesperados → posible filtración.

Sesión de dashboard

Las rutas de gestión (/api/keys, /api/admin/*) usan cookie de Supabase (sb-access-token) emitida al iniciar sesión, no la API key. No mezcles los dos esquemas.