Automatización Empresarial

¿Por qué tu automatización crea registros duplicados?

Una solicitud aparece dos veces en el CRM, llegan dos tareas al equipo o un cliente recibe seguimientos repetidos. Antes de añadir otra automatización, define qué cuenta como una operación y cómo debe responder el flujo cuando vuelve a llegar la misma notificación.

CARRAS5 min
Documento conceptual con duplicados translúcidos detrás y un registro ámbar separado pendiente de revisión
Ilustración conceptual creada con IA.

Sección 01

Una notificación repetida no siempre significa trabajo nuevo

Un webhook es una notificación que un sistema envía a otro cuando ocurre algo. Stripe documenta que un mismo evento puede llegar más de una vez. Recibirlo nuevamente no debería crear automáticamente otro registro empresarial.

Empieza con una pregunta concreta: si una solicitud de servicio se entrega dos veces, ¿el negocio debería ver una solicitud o dos? Acuerda el resultado previsto antes de elegir una herramienta. Diseñar reintentos que conserven ese resultado es el propósito de la idempotencia.

No atribuyas todos los registros parecidos a un reintento. Un cliente puede enviar dos solicitudes legítimas. Las reglas deben distinguir la entrega repetida de una solicitud de otra solicitud de la misma persona.

Sección 02

Asigna una identidad estable a la operación

Registra el sistema y la cuenta de origen, el identificador original del evento y la solicitud a la que se refiere. GitHub, por ejemplo, documenta que el reenvío solicitado de un webhook conserva su identificador X-GitHub-Delivery original. Comprueba el comportamiento del proveedor concreto; no supongas que todas las plataformas usan los mismos campos.

Recomendamos definir la identidad en dos niveles: la notificación recibida y la acción empresarial que solicita. El identificador del evento por sí solo puede no indicar si una segunda notificación corresponde a una solicitud ya creada. Decide qué tipos de evento crean registros y cuáles actualizan uno existente.

El correo electrónico por sí solo no identifica bien una solicitud: una persona puede necesitar varios trabajos. Los identificadores ausentes o contradictorios deberían pasar a revisión, en lugar de tratarse silenciosamente como una solicitud nueva.

Sección 03

Mantén la regla cuando coinciden dos intentos

Pregunta al desarrollador cómo evita el flujo que dos intentos simultáneos creen el mismo registro. Una secuencia separada de 'buscar coincidencia y después crear' puede dejar un intervalo entre ambas operaciones. La decisión de unicidad necesita protección en el almacenamiento o sistema de destino.

PostgreSQL documenta restricciones de unicidad sobre una columna o una combinación de columnas. También importa exigir los identificadores: su tratamiento predeterminado de NULL puede permitir filas repetidas aunque exista una restricción de unicidad. Es una opción de implementación, no una exigencia de sustituir tu base de datos.

Un registro local único no impide por sí solo enviar otro correo o duplicar una tarea en otra plataforma. Revisa por separado cada acción externa.

Sección 04

Distingue recibir de terminar

Proponemos los estados recibido, en curso, completado y requiere revisión. Define qué significa cada uno y quién puede resolver una operación detenida. Aceptar una notificación no demuestra que se haya actualizado el CRM o creado correctamente la tarea posterior.

Antes de reintentar una acción cuyo resultado sea incierto, busca en el destino evidencia de que ya ocurrió. Cuando el destino admita claves de idempotencia, comprueba su alcance, conservación y reglas de reutilización. No supongas que una clave garantiza todos los pasos posteriores. Si no puedes confirmar el resultado, detén el reintento y solicita revisión.

Conserva un historial útil: identificador de operación, hora del intento, referencia del destino y resultado. Limita los datos del cliente en los registros, asigna accesos y acuerda cuánto tiempo se necesita la evidencia para recuperar fallos. Son decisiones del proyecto, no un plazo universal de conservación.

Sección 05

Prueba también las actualizaciones retrasadas

Stripe también documenta que no garantiza el orden de entrega de eventos. Esto justifica comprobar las reglas de orden de cada integración que quieras utilizar.

Prepara una prueba donde una actualización de estado antigua llegue después de una nueva. Decide qué fuente determina el estado vigente y cómo se deriva a una persona un conflicto incierto. Evita que únicamente la hora de llegada sobrescriba un estado empresarial confirmado.

Sección 06

Utiliza una lista pequeña de aceptación

Este ejemplo es hipotético, no un resultado medido de un cliente: envía cinco notificaciones en el orden E41, E41, E42, E42, E41. Supongamos que E41 y E42 representan, cada uno, una solicitud de servicio nueva y distinta. El resultado esperado son dos solicitudes y tres entregas repetidas resueltas sin crear solicitudes adicionales.

Después amplía la prueba más allá de esa secuencia sencilla:

  • Entrega la misma notificación simultáneamente a dos procesos de trabajo.
  • Interrumpe el proceso después de que actúe el destino, antes de registrar la finalización local.
  • Envía dos solicitudes auténticas del mismo cliente; conserva ambas.
  • Entrega una actualización retrasada y comprueba la regla de orden acordada.
  • Elimina el identificador obligatorio; comprueba que la excepción sea visible.
  • Verifica el remitente antes de actuar con el método documentado por el proveedor.
  • Comprueba que una persona pueda investigar y reanudar con seguridad una operación incierta.

Sección 07

Lleva un flujo problemático a la revisión

CARRAS ofrece automatización empresarial, integración de sistemas y desarrollo de software personalizado. Comparte las herramientas implicadas, un ejemplo sin datos sensibles del registro repetido y el resultado que espera tu equipo. El primer entregable útil es un plan acordado de identidad, reintentos y recuperación para ese flujo.

La compatibilidad depende de las API existentes, los permisos y el comportamiento del destino. Un piloto acotado debería demostrar las pruebas acordadas antes de ampliarse. Esta lista no afirma que una integración concreta de Carras ya las haya superado.

Convierta el problema operativo en un plan tecnológico práctico.

Cuéntenos qué está frenando la empresa, qué ha intentado y qué debe lograr un proceso mejor.

Solicitar Consulta

Puede cambiar su elección en cualquier momento desde el pie de página. La analítica es opcional y empieza desactivada.

Preferencias necesariasSiempre disponibles

Almacenamiento local para recordar su elección durante 180 días. No crea un identificador publicitario ni se envía como dato de medición.

Umami mide visitas y acciones de contacto cuando acepta, sin cookies analíticas. No enviamos el contenido del formulario. Retirar el permiso detiene nuevas mediciones.

Política de cookies · Privacidad