Hola a todos, me enfrento a un problema más avanzado de confiabilidad en n8n relacionado con flujos de trabajo activados por webhook.
Tengo un flujo de trabajo:
Webhook → Procesar → Base de datos
El servicio externo a veces reintenta el mismo evento de webhook (por ejemplo, debido a tiempos de espera agotados), por lo que n8n recibe solicitudes duplicadas con el mismo payload.
Ahora mismo, esto causa:
• Registros duplicados en la base de datos
• Acciones duplicadas descendentes (correos electrónicos, llamadas API, etc.)
Ejemplo de payload:
{
“event_id”: “abc123”,
“user_id”: 42,
“action”: “created”
}
Si se envía el mismo event_id dos veces, se procesa dos veces.
Lo que he intentado
• Verificaciones básicas en un nodo Function
• Upserts en la base de datos
• Añadir retrasos
Pero ninguno de estos garantiza completamente el procesamiento exactamente una vez.
El desafío
Quiero asegurar:
• Cada evento se procesa solo una vez
• Manejo seguro de reintentos
• Ningún efecto secundario duplicado
Describe el problema/error/pregunta
¿Cuál es el mensaje de error (si lo hay)?
Por favor, comparte tu flujo de trabajo
(Selecciona los nodos en tu lienzo y usa los atajos de teclado CMD+C/CTRL+C y CMD+V/CTRL+V para copiar y pegar el flujo de trabajo.)
Comparte el resultado devuelto por el último nodo
Información sobre tu configuración de n8n
- Versión de n8n:
- Base de datos (predeterminada: SQLite):
- Configuración EXECUTIONS_PROCESS de n8n (predeterminada: own, main):
- Ejecutando n8n a través de (Docker, npm, n8n cloud, aplicación de escritorio):
- Sistema operativo: