12 de junio de 2026
¿Cómo funciona el token de WSAA de ARCA y cómo lo cacheo correctamente?
El WSAA emite un Token de Acceso (TA) válido 12 horas para un servicio específico. Para obtenerlo: firmás un TRA (XML) con tu certificado privado y lo mandás al endpoint SOAP de WSAA. El TA tiene generationTime y expirationTime. Cachealo en disco o DB, no lo pidas en cada request.
Flujo correcto de obtención y caché
1. Generar TRA (XML):
service: "wsfe" (o el WS que vas a usar)
generationTime: ahora
expirationTime: ahora + 10 min (máximo recomendado)
uniqueId: timestamp o UUID
2. Firmar el TRA con tu clave privada (PKCS#7/CMS)
3. POST al endpoint WSAA:
Homologación: wsaahomo.afip.gov.ar/ws/services/LoginCms
Producción: wsaa.afip.gov.ar/ws/services/LoginCms
4. Guardar (token + sign + expirationTime) en archivo, Redis o DB
5. Antes de cada llamada a WSFE:
Si ahora < expirationTime - 5min → usar token cacheado
Si no → renovarErrores comunes de caching
- Pedir TA antes de cada FECAESolicitar → latencia +500 ms innecesaria.
- No restar buffer de 5 minutos → el TA expira justo durante una ráfaga de facturas.
- Cachear en memoria solo → el token se pierde al reiniciar el proceso.
- Un TA por servicio: el TA de
wsfeNO sirve parawsfex(exportación). Cachear por(cuit, service).