Cómo evitar duplicados al conectar formularios y CRM
Evitar duplicados no consiste en buscar dos filas parecidas al final del proceso. Consiste en decidir qué representa cada registro, con qué clave se reconoce y qué debe ocurrir cuando una persona vuelve a escribir, cambia de correo o pertenece a una empresa que ya existe.
Lo esencial, antes de empezar
- Persona, empresa, oportunidad y envío son entidades diferentes y necesitan reglas distintas.
- El correo puede ayudar a localizar un contacto, pero no resuelve correos compartidos, cambios ni identidades duplicadas.
- Un reintento técnico debe reutilizar la misma clave de operación para no crear otra oportunidad.
- La fusión corrige algunos registros existentes; no sustituye una política de identidad en la integración.
La respuesta corta: define identidad antes del flujo
La integración debe separar cuatro preguntas: ¿ya conocemos a esta persona?, ¿ya existe su empresa?, ¿este mensaje abre una oportunidad nueva? y ¿este mismo envío se procesó antes? Si una sola búsqueda por correo intenta responderlas todas, aparecerán falsos duplicados y registros repetidos.
Empieza documentando la decisión para cada entidad y canal. Un formulario de contacto, una descarga, una petición de presupuesto y una respuesta a una campaña pueden pertenecer a la misma persona, pero no necesariamente a la misma oportunidad. El objetivo no es reducir el número de filas a cualquier precio: es conservar una historia comercial comprensible sin repetir identidades ni perder solicitudes legítimas.
La documentación de HubSpot sobre deduplicación muestra que el comportamiento puede cambiar según el origen del registro y que las empresas creadas mediante API tienen consideraciones propias. Es una señal útil: la regla real de una pyme no debe deducirse de un botón del CRM, sino expresarse en el contrato de la integración.
Usa una tabla distinta para persona, empresa, oportunidad y envío
| Entidad | Clave candidata | No basta con | Acción ante coincidencia |
|---|---|---|---|
| Persona | ID CRM; correo verificado; identificador externo autorizado | Nombre y apellidos | Actualizar campos permitidos y conservar historial |
| Empresa | ID CRM; identificador fiscal cuando proceda; dominio revisado | Dominio genérico o nombre comercial | Vincular o enviar a revisión |
| Oportunidad | ID de operación o combinación comercial definida | Que exista el contacto | Crear, reabrir o anexar según estado |
| Envío | ID único generado al recibir la solicitud | Fecha y correo | Ignorar el reintento o continuar la misma ejecución |
La tabla debe indicar también qué sistema puede modificar cada campo. Por ejemplo, el formulario puede aportar un teléfono nuevo, pero no debería borrar un teléfono validado solo porque el campo llegó vacío. Si después se integra inventario o pedidos, conviene aplicar la misma disciplina de conciliación descrita en la guía de stock entre tienda y ERP: identificar primero la entidad y su estado, y conectar después.
Ordena las reglas de coincidencia y conserva la incertidumbre
Una coincidencia exacta con un ID interno tiene más fuerza que un parecido de nombres. La integración necesita una jerarquía y una salida de revisión cuando ninguna señal sea suficiente.
- 01
1. Identificador estable
Busca primero un ID que haya viajado desde el CRM al formulario o al sistema de origen y cuya integridad pueda comprobarse.
- 02
2. Correo normalizado
Normaliza espacios y mayúsculas sin alterar de forma creativa la dirección. Una coincidencia exacta puede localizar candidatos, no autorizar cualquier fusión.
- 03
3. Empresa y contexto
Contrasta dominio, empresa declarada, teléfono y relación previa. Los dominios gratuitos y las sedes distintas requieren cautela.
- 04
4. Cola de revisión
Si hay dos candidatos plausibles o datos incompatibles, conserva la solicitud y pide una decisión humana trazable.
Pipedrive documenta criterios distintos para identificar posibles duplicados de personas y organizaciones en su función de combinación. No es una regla universal, pero confirma que una sede, una organización y una persona no deben compararse con el mismo criterio. Define además quién puede confirmar una fusión y cómo se revierte un error.
Haz que los reintentos sean seguros
Un navegador puede reenviar, un webhook puede repetirse y un orquestador puede reintentar tras un timeout aunque el CRM sí haya guardado el registro. Genera un identificador de recepción antes de llamar al CRM, persístelo y úsalo como clave de idempotencia. El resultado debe registrar recibido, validado, contacto localizado o creado, oportunidad localizada o creada y notificación completada.
La guía de captación y seguimiento de leads explica el recorrido comercial completo. Aquí el alcance es más estrecho: garantizar que el mismo evento no cree varias identidades u oportunidades cuando atraviesa ese recorrido.
Diseña para correos compartidos, cambios y nuevas oportunidades
- Correo compartido: ventas@empresa.es puede representar a varias personas. Trátalo como dato de contacto de la organización y pide nombre u otro identificador cuando sea necesario.
- Cambio de correo: conserva alias verificados y un historial de la decisión; no crees otra persona solo porque cambia el dominio tras un cambio de empleo.
- Misma persona, nueva necesidad: crea una oportunidad nueva cuando el proceso comercial lo requiera, aunque el contacto ya exista.
- Empresa con varias sedes: decide si cada sede es una organización, una unidad o una dirección relacionada antes de deduplicar por dominio.
- Datos contradictorios: no sobrescribas automáticamente un valor validado con uno nuevo de menor confianza; registra el conflicto.
La gestión de duplicados de HubSpot describe permisos y consecuencias de combinar registros. Antes de usar una función similar, exporta una muestra, revisa asociaciones y establece quién puede fusionar. Una automatización preventiva y una campaña de limpieza son trabajos distintos y necesitan controles diferentes.
Prueba el contrato con casos que puedan fallar
Una prueba útil no consiste en enviar una vez el formulario con un correo nuevo. Debe forzar las decisiones que el equipo tomará en producción.
- Enviar dos veces la misma solicitud con el mismo ID y comprobar que existe una sola ejecución comercial.
- Usar un contacto existente con datos nuevos y verificar qué campos cambian, cuáles se conservan y qué queda auditado.
- Enviar dos necesidades distintas desde la misma persona y comprobar que la política de oportunidad se aplica.
- Probar correo compartido, cambio de correo, homónimos y empresas con varias sedes.
- Simular timeout después de guardar en el CRM y confirmar que el reintento no duplica.
- Medir duplicados evitados, revisiones manuales, fusiones erróneas y solicitudes perdidas; una tasa baja de duplicados no compensa omitir leads válidos.
Si el proceso cruza varios sistemas y todavía no hay una política clara, el servicio de automatización con IA puede empezar por mapear identidades, excepciones y responsables antes de implementar. El entregable inicial debería ser el contrato de datos y sus pruebas, no una promesa genérica de sincronización.
Registra cómo se resolvió cada coincidencia
Cuando una persona o una regla fusiona registros, conserva actor, fecha, claves comparadas, resultado y motivo. La guía para diseñar un registro de auditoría en una app ayuda a reconstruir la decisión sin copiar datos sensibles innecesarios al historial.
Fuentes y referencias
Documentación oficial y referencias de mercado consultadas para verificar los puntos que cambian con el tiempo.