1. Arquitectura de Ingesta Asíncrona
Cuando múltiples proveedores de pago (Stripe, Mercado Pago) o CRMs envían ráfagas de miles de webhooks por minuto, procesar cada solicitud de forma síncrona satura los límites de concurrencia y ocasiona pérdida de eventos críticos.
La solución arquitectónica consiste en desacoplar la recepción del procesamiento mediante un búfer de alta velocidad (Redis / AWS SQS) que responde con HTTP 200 de inmediato y encola las tareas para su consumo ordenado.
Desacoplar la recepción del procesamiento garantiza cero caídas durante picos masivos de facturación.
2. Claves de Idempotencia y Manejo de Reintentos
Los webhooks pueden duplicarse debido a retransmisiones automáticas de la red. Cada pipeline en n8n o Make debe validar una clave única de idempotencia en caché antes de ejecutar cobros, crear registros o disparar correos transaccionales.
En caso de errores en APIs de terceros, se aplican reintentos con retraso exponencial (Exponential Backoff con Jitter) y enrutamiento hacia una Cola de Mensajes Muertos (Dead Letter Queue) con alertas en Slack/Telegram.
// Validación Criptográfica de Webhook (HMAC-SHA256)
const signature = req.headers['x-hub-signature-256'];
const hmac = crypto.createHmac('sha256', process.env.WEBHOOK_SECRET);
const digest = 'sha256=' + hmac.update(rawBody).digest('hex');
if (!crypto.timingSafeEqual(Buffer.from(signature), Buffer.from(digest))) {
return res.status(401).json({ error: 'Firma criptográfica inválida' });
}