Fusión de clientes: configuración y ayuda
Inicio rápido
- Sube e instala el ZIP en Módulos > "Module Manager" y abre "Customers" > "Customer Merge" > "Settings" > Comprobación del sistema.
- Confirma la compatibilidad con AES-256-GCM y gzip y haz una copia de seguridad de la base de datos de la tienda antes de una fusión real.
- Abre Fuentes de datos, pulsa Volver a analizar la base de datos, revisa las tablas con referencias a clientes y usa Guardar las estrategias tras elegir acciones seguras para las tablas.
- Revisa "Settings" > Configuración, especialmente Qué ocurre con las cuentas absorbidas, la conservación para deshacer y los límites de ejecución, y después pulsa Guardar la configuración.
- En "Settings" > Reglas de detección, revisa las reglas de coincidencia y los umbrales y después pulsa Guardar los ajustes de detección.
- Abre Clientes duplicados, ejecuta Análisis completo, espera el resultado y elige Revisar para un grupo de candidatos verificado.
- Elige la cuenta que permanece, resuelve Campos que difieren y Direcciones, después examina Simulación y resuelve todos los bloqueos.
- Confirma con Fusionar estas cuentas y comprueba Historial y deshacer, los registros de la cuenta que permanece y un pedido/documento histórico de ejemplo.
Requiere PrestaShop 1.6.1 o posterior y PHP 7.1 o posterior.
Manual de configuración
Instala y comprueba el servidor
Sube el ZIP mediante Módulos > "Module Manager" > "Upload a module" e instálalo. El módulo crea sus tablas y añade "Customers" > "Customer Merge". "Configure" abre Clientes duplicados.
Requiere PrestaShop 1.6.1 o posterior y PHP 7.1 o posterior.
Abre "Customer Merge" > "Settings" > Comprobación del sistema antes de fusionar. El motor de fusión requiere OpenSSL AES-256-GCM para las instantáneas cifradas, incluso con la opción de deshacer desactivada. La compresión de instantáneas usa inicialmente gzip, por lo que también se necesita su compatibilidad. Desactivar deshacer no evita estos requisitos.
Haz una copia de seguridad de la base de datos de la tienda antes de la primera fusión real. Una fusión cambia la asignación de los datos a los clientes y puede retirar las cuentas absorbidas. No se añade ningún widget al escaparate.
Revisa primero las fuentes de datos
Vuelve a analizar las tablas con referencias a clientes
Abre "Customers" > "Customer Merge" > Fuentes de datos y pulsa Volver a analizar la base de datos. El registro descubre tablas con una columna id_customer bajo el prefijo de tablas de la tienda. Informa de tablas conocidas del núcleo, tablas conocidas de módulos, tablas desconocidas y sus riesgos de escritura.
La sección Posiblemente relacionadas con clientes, sin tocar informa de columnas con otros nombres que parecen referencias a clientes. Son informativas. El módulo no adivina cómo moverlas. Las referencias guardadas en formatos personalizados o sistemas externos quedan fuera de este descubrimiento.
Guarda una estrategia para cada tabla
Revisa Riesgo al trasladar y elige Estrategia:
| Estrategia | Significado |
|---|---|
| Trasladar las filas a la cuenta que permanece | Reasigna la referencia al cliente. |
| Trasladar las filas y unificar los duplicados exactos | Reasigna las filas y unifica los duplicados exactos compatibles. |
| No tocar esta tabla | Conserva las filas de la tabla. Revisa las referencias que quedan como resultado antes de fusionar. |
| Preguntarme cada vez | Deja la tabla pendiente de una decisión en el plan de fusión. |
Pulsa Guardar las estrategias. Las tablas desconocidas empiezan con la política de decisión manual. Elegir una estrategia de traslado no basta para permitir la escritura en tablas inseguras. Las vistas, claves primarias ausentes, disparadores, almacenamiento no transaccional e índices únicos no compatibles limitan las acciones disponibles. La simulación identifica los bloqueos restantes.
Vuelve a analizar tras instalar o cambiar un módulo que almacene datos de clientes, para que sus tablas se revisen de nuevo antes de mover datos.
Configura el comportamiento general y la conservación
Abre "Customer Merge" > "Settings" > Configuración. Revisa los campos siguientes y pulsa Guardar la configuración.
General
| Ajuste | Valor inicial | Uso |
|---|---|---|
| Módulo activo | Activado | Permite la detección normal y el procesamiento programado. |
| Qué ocurre con las cuentas absorbidas | Anonimizar y conservar la fila (recomendado) | Conserva una fila de cliente inutilizable tras la absorción. La alternativa es Eliminar la fila cuando nada la referencie. |
| Alcance del análisis | Solo cuentas que legalmente se pueden fusionar | Mantiene el análisis dentro del dominio actual de aislamiento de clientes. |
La lista de alcances también ofrece Todas las tiendas, coincidencias entre tiendas solo a título informativo. Esa opción sigue analizando solo el dominio actual de aislamiento de clientes: una tienda o un grupo de tiendas que comparten clientes. Ejecuta el análisis en cada dominio aplicable y revisa el alcance indicado.
Las cuentas solo pueden fusionarse dentro de un dominio de aislamiento de clientes: la misma tienda, o el mismo grupo de tiendas si está activado el uso compartido de clientes. Una coincidencia entre dominios separados no puede fusionarse.
Deshacer y conservación
| Ajuste | Valor inicial | Uso |
|---|---|---|
| Guardar una instantánea para poder deshacer las fusiones | Activado cuando está disponible el cifrado autenticado | Controla si una fusión completada tiene un plazo para deshacerla. La instalación desactiva deshacer si el cifrado no está disponible. |
| Plazo para deshacer (días) | 30 | Establece el plazo para deshacer. El formulario ofrece de 1 a 365 días. |
| Conservar los datos de detección (días) | 30 | Establece la conservación de registros de detección obsoletos. |
| Conservación del registro (días) | 0 | 0 conserva los registros de auditoría indefinidamente; un valor positivo limita su conservación. |
Las instantáneas contienen datos de clientes y están cifradas. Guarda el material de cifrado de la tienda con tus copias de seguridad protegidas de la base de datos si necesitas instantáneas recuperables. La conservación requiere ejecutar la tarea de mantenimiento. La gestión de una solicitud de supresión puede eliminar una instantánea antes de su caducidad habitual.
Límites de ejecución
| Ajuste | Valor inicial | Cuándo cambiarlo |
|---|---|---|
| Tamaño de lote del análisis | 2000 | Redúcelo si los análisis superan los límites prácticos del servidor. |
| Mayor conjunto de coincidencias utilizable | 100 | Excluye un valor compartido de las coincidencias útiles cuando lo usan demasiadas cuentas. |
| Límite de filas por fusión | 50000 | Bloquea planes que superen el tamaño de transacción configurado. |
| La vista previa es válida durante (minutos) | 15 | Exige una comprobación nueva cuando la vista previa es demasiado antigua. |
Con los ajustes iniciales, las fusiones que afectan a más de 10000 filas también requieren un modo de mantenimiento/CLI explícito, aunque no superen el límite global de filas. La confirmación habitual del back office no activa ese modo.
Notificaciones
La pantalla ofrece Enviar un resumen por correo tras los análisis y fusiones programados, inicialmente desactivado, y Enviar a, inicialmente vacío. Ambos valores se guardan, pero la versión actual no envía ningún correo de resumen. Sigue las operaciones con los resultados del análisis y Historial y deshacer.
Configura las reglas de detección y analiza
Revisa los indicios de coincidencia
Abre "Customer Merge" > "Settings" > Reglas de detección. Cada regla tiene un interruptor de activación y Peso. Las reglas iniciales están activadas con estos pesos:
| Regla | Peso | Ajuste adicional o límite |
|---|---|---|
| Misma dirección de correo | 70 | Las dos cuentas usan exactamente la misma dirección de correo. |
| Alias de correo | 60 | El peso de los caracteres parecidos empieza en 20. Revisa tú estas coincidencias; por sí solas no bastan para una fusión automática. |
| Mismo número de teléfono | 45 | Compara los números de teléfono tras normalizar su formato. |
| Mismo nombre y dirección postal | 45 | La similitud empieza en 0.78. |
| Misma empresa o número de IVA | 55 | El peso del nombre de empresa por sí solo empieza en 30. Solo para revisión. |
| Mismo medio de pago | 40 | El peso de una huella de tarjeta por sí sola empieza en 20. Solo para revisión; la comparación de tarjetas tiene además su propio interruptor, desactivado al principio. |
| Pedido de invitado y cuenta registrada | 10 | Una bonificación cuando otro indicio relaciona las cuentas. No es un indicio de identidad independiente. |
Los indicios de la misma familia no se suman sin más, y los indicios contradictorios pueden bajar la puntuación. Un grupo detectado es una sugerencia para revisar, no una afirmación de que sus cuentas pertenezcan a una sola persona.
En Umbrales, Mostrar un grupo para revisión a partir de empieza en 55 y Considerar seguro a partir de en 95. Baja el umbral de revisión para examinar coincidencias más débiles. No relaja las protecciones de la fusión automática. Pulsa Guardar los ajustes de detección tras cambiar las reglas.
Ejecuta el primer análisis
Abre Clientes duplicados y pulsa Análisis completo. El primer análisis construye el índice de huellas. Los siguientes pueden procesar los clientes modificados de forma incremental. El análisis programado también elige periódicamente un análisis completo, por lo que la detección no queda limitada para siempre a las cuentas modificadas.
Espera a que termine el análisis o informe de un resultado parcial. Comprueba el estado y el alcance antes de revisar grupos. Usa Revisar para abrir un grupo de candidatos. Revisa la confianza y los indicios coincidentes junto con los datos reales de las cuentas.
Previsualiza y realiza una fusión manual
Elige la cuenta que permanece
El asistente tiene cinco pasos. En ¿Qué cuenta permanece?, selecciona la cuenta que debe conservar su ID de cliente y fecha de registro. Sus credenciales son la fuente predeterminada. Revisa el estado de registrado e invitado, el número de pedidos, el gasto y las direcciones antes de continuar.
Resuelve los campos diferentes
Campos que difieren muestra valores en conflicto. Comprueba el nombre, apellidos, correo y otros campos ordinarios elegidos. Elegir Dirección de correo cambia el correo de acceso, por lo que la dirección de acceso original de la cuenta que permanece no se conserva incondicionalmente.
Consentimiento del boletín y Consentimiento de ofertas de socios usan el valor más restrictivo. Cuando existen los campos de PrestaShop correspondientes, Nivel de riesgo usa el riesgo más restrictivo y Días de pago permitidos y Límite de crédito usan sus valores más bajos. Estos campos están bloqueados. El grupo predeterminado afecta a los precios; las pertenencias a grupos de las cuentas suelen combinarse. Las notas internas conservan marcadores de origen.
Revisa las direcciones
En Direcciones, examina las direcciones idénticas y similares antes de unificarlas. Una dirección referenciada por un pedido conserva su ID y sus campos de documento. Su asignación al cliente puede cambiar. Una dirección duplicada referenciada se oculta en lugar de eliminarse, preservando las referencias de documentos históricos.
Lee la simulación
Pulsa Ver la fusión. Simulación informa de las filas trasladadas, deduplicadas, intactas y en conflicto, con un plan por tabla. Los registros de clientes todavía no se han fusionado en esta fase, aunque el módulo guarda el trabajo de vista previa en sus propias tablas.
Resuelve todos los conflictos bloqueantes antes de continuar. Una clave primaria ausente, un disparador, una tabla no transaccional, una estrategia pendiente o un esquema modificado pueden bloquear la ejecución. No evites estos avisos suponiendo que las filas no son importantes.
Confirma y verifica
En Confirmar la fusión, lee la frase sobre la cuenta resultante, los recuentos de filas, la acción para las cuentas absorbidas y el plazo para deshacer. Pulsa Fusionar estas cuentas cuando el plan sea correcto.
El motor valida de nuevo el plan, bloquea las filas pertinentes y realiza los cambios en los datos de negocio en una única transacción de base de datos. Si el trabajo transaccional falla, lo revierte. Los registros del trabajo y de los fallos pueden permanecer para su investigación.
Abre Historial y deshacer al terminar. Comprueba los pedidos y direcciones de la cuenta que permanece. Compara una factura histórica, un pago, un abono y un total de pedido de ejemplo con tus registros anteriores a la fusión. Todas las sesiones de clientes afectadas se revocan en lugar de transferirse; los usuarios deben volver a iniciar sesión.
Comprende los cambios en documentos y asignación
El módulo cambia la asignación al cliente en pedidos, devoluciones, abonos y mensajes compatibles. En particular, el id_customer de un abono puede cambiar. No reescribe los importes de facturas o abonos emitidos ni el contenido de los documentos.
Los pagos, totales de pedido, detalles de pedido, transportistas, historial de pedidos, movimientos de existencias y registros de envío quedan fuera del cambio ordinario de asignación de pedidos. Una dirección vinculada a un pedido conserva su ID y campos de documento. Revisa por separado los módulos personalizados y los sistemas externos mediante la evaluación de fuentes de datos.
Usa el historial y deshacer
Abre "Customer Merge" > Historial y deshacer para examinar la fusión y su resultado. Deshacer solo está disponible cuando la fusión conserva instantáneas utilizables dentro de su plazo para deshacer.
Deshacer verifica que los datos y esquemas afectados sigan coincidiendo con el estado posterior a la fusión. Se niega si los registros cambiaron, la restauración provocaría colisiones, se reutilizó un ID de cliente, la instantánea caducó o una solicitud de supresión eliminó datos necesarios. No sobrescribe trabajo posterior para forzar la restauración.
Las sesiones de clientes son una excepción a la restauración de instantáneas. Las sesiones revocadas nunca se restauran al deshacer. Desactivar deshacer impide revertir las fusiones completadas desde esta pantalla, aunque el motor de fusión sigue requiriendo procesar instantáneas cifradas durante la ejecución.
Revisa los controles de fusión automática y las tareas programadas
Controles automáticos
En Reglas de detección > Fusión automática, los controles visibles son:
| Ajuste | Valor inicial |
|---|---|
| Activar la fusión automática | Desactivado |
| Solo invitado hacia cuenta registrada | Activado |
| Indicios independientes requeridos | 2 |
| Límite de filas por fusión automática | 10000 |
El umbral de certeza usa inicialmente 95. Los controles de seguridad siguen excluyendo los conflictos pendientes, las tablas desconocidas, los disparadores y las tablas no transaccionales del procesamiento sin supervisión.
En la versión actual estos controles no fusionan candidatos automáticamente. El interruptor visible no activa las fusiones programadas y los análisis solo listan candidatos sin crear trabajos de fusión. Fusiona los candidatos con el flujo manual con revisión.
Programación y limpieza
"Settings" > Cron muestra las herramientas de programación compartidas. El módulo registra "Scan for duplicate customer accounts" a las 02:00, "Process the auto-merge queue (disabled by default)" a las 02:30 y "Purge expired snapshots and stale detection data" a las 04:00. La ejecución real depende del programador compartido configurado.
Conecta un punto de entrada del programador que funcione para tu instalación y examina los resultados del análisis y del mantenimiento. El módulo no incluye un cron.php en la raíz, así que verifica que cualquier comando CLI mostrado apunte a un punto de entrada existente antes de programarlo. Mantén el mantenimiento en marcha si dependes de la caducidad automática de instantáneas o datos de detección.
Solución de problemas
- Un grupo está bloqueado: lee su plan por tabla en Simulación. Comprueba estrategias, claves primarias, disparadores, motores de almacenamiento, conflictos de claves únicas y dominios de aislamiento.
- El análisis no encuentra nada: comprueba las reglas de detección activadas y el umbral de revisión. Ejecuta Análisis completo si un análisis incompleto o incremental pudo omitir las cuentas esperadas.
- El análisis de todas las tiendas parece igual: el proceso de análisis no reconoce el valor guardado para todas las tiendas y solo analiza el dominio actual de aislamiento de clientes. Ejecuta el análisis en cada dominio aplicable.
- Una fusión falla por cifrado o compresión: comprueba Comprobación del sistema y la compatibilidad con AES-256-GCM y gzip. Desactivar deshacer no elimina el requisito de instantáneas.
- La vista previa caduca o cambia: regenera Simulación, revisa los nuevos recuentos y vuelve a confirmar.
- Deshacer no está disponible: lee el motivo en Historial y deshacer. Los cambios posteriores, la caducidad, los conflictos de restauración y la supresión pueden impedirlo.
- No llega ningún correo de resumen: no se envían correos de resumen. Usa las pantallas de análisis e historial.
- La fusión automática no hace nada: el interruptor visible no activa el control independiente del proceso cron ni convierte los candidatos del análisis en trabajos. Continúa con la revisión manual.
Desinstala
Exporta o haz una copia de seguridad de los registros que necesites antes de desinstalar mediante "Module Manager". Las fusiones de clientes completadas siguen aplicadas. La desinstalación no las deshace.
El esquema elimina los registros de detección, planes temporales e instantáneas de fusión. Las fusiones completadas ya no pueden deshacerse mediante el módulo tras eliminar sus instantáneas. El esquema marca como persistentes los trabajos de fusión, sus miembros, las correspondencias de identidades absorbidas a conservadas y los registros de auditoría, por lo que esas tablas se mantienen.
La desinstalación elimina el menú y las tablas de trabajo del módulo. Pueden quedar ajustes y entradas de tareas programadas, así que revisa después el programador compartido y elimina las entradas que sobren. Un registro de auditoría conservado tras desinstalar no sirve para deshacer una fusión.
Preguntas
Aún no hay preguntas sobre este módulo
Pregunta lo que quieras sobre instalación, compatibilidad o configuración. Las respuestas aparecen aquí.
Problemas conocidos
7
Las elecciones del asistente no afectan a la fusión
Conflictos bloqueantes mostrados como advertencias
Fallo al eliminar cuentas absorbidas durante la fusión
Páginas de administración redirigidas a una comprobación fallida
Recuentos de duplicados y vistas previas engañosos
Etiquetas de administración sin traducir
Refuerzo de la seguridad
Solicitudes de funcionalidades
3
Implementado
Detección de clientes duplicados
Fusión de cuentas de clientes con vista previa
Historial y reversión de fusiones
Registro de cambios
v1.0.02026-07-28
- Initialrelease
- InitialDuplicate detection scored on exact email, Gmail dot and plus aliases, lookalike characters, phone numbers normalised to international format, fuzzy name and postal address, company and VAT number, and guest to registered signals
- InitialSQL-first indexing with keyed fingerprints and capped match buckets, so only hashes are stored and the scan holds up on large customer bases
- InitialFive step merge wizard: choose the surviving account, resolve conflicting fields, review addresses, read an exact dry run, then confirm
- InitialDry run reports per-table rows moved, deduplicated, left untouched and in conflict before anything is written, from the same code path that executes
- InitialIssued invoices, credit slips, payments, order details, carriers, order history, stock movements and shipments are never rewritten
- InitialAn address referenced by an order keeps its ID and every field that appears on documents
- InitialAutomatic discovery of every table carrying a customer reference, with a per-table strategy and detection of unique keys that would collide
- InitialMerges run in one database transaction and block on triggers, views, non-transactional tables, missing primary keys and unresolved conflicts
- InitialEncrypted snapshots make every merge reversible, with undo refusing when data changed after the merge
- InitialCustomer sessions are revoked and never restored, by design
- InitialAppend-only, hash-chained audit trail with CSV export
- InitialAutomatic merging available but disabled by default, gated on score, independent signals and safety checks
- InitialGDPR erasure hook purges snapshots and makes affected merges permanently non-undoable
- InitialPrestaShop 1.6.1 to 9.x on PHP 7.1 and later, multishop aware, six languages
Demo
Prueba el módulo completo antes de comprar
Compra la licencia más tarde y conserva tus ajustes.
- Tu demo de 30 días Pruébalo en tu propia tienda durante 30 días desde la primera instalación.
- Tienda demo lista Explora una tienda demo lista en tu navegador.
- Sin registro Sin cuenta, correo ni dominio de tienda.
Al descargar, aceptas las condiciones de la demo y la política de privacidad.
Al abrir esta demo, acepta los términos de la demo y la política de privacidad.