El misterio de los usuarios de WooCommerce que desaparecían

Han desaparecido los usuarios de una tienda online como por arte de magia. ¿Qué estará ocurriendo?

Información del cliente

Tengo muchas quejas diarias de usuarios que me dicen que no pueden entrar en su cuenta ni realizar pedidos.

Ejemplo de una de las quejas:
Hola, hace tiempo realizaba pedidos sin problema en tu tienda online, pero ahora no me deja iniciar sesión, me dice que el email es incorrecto. Mi email de usuario era email@emaildeejemplo.com

Pistas

  • Buscas el email del usuario en WordPress y no aparece
  • Buscas el email del usuario en la base de datos, y no aparece en la tabla de users ni en users Meta. Solamente aparece su email como parte de la información de los pedidos. Pero el usuario no está.
  • Los pedidos del usuario sí aparecen en el apartado pedidos de WooCommerce.
  • Los pedidos del usuario no tienen a ningún usuario asignado, aparece asignado a "Invitado".
  • Hablas con el cliente y te confirma que los usuarios sí habían estado registrados, es decir, no compraron como invitados.
  • Gracias al plugin Activiy Log averiguas que cientos de usuarios han sido borrados siempre a la misma hora, cientos a las 5:33 y otros cientos a las 10:40. En Activity Log No se indica quién los ha borrado, no parece que haya sido ningún usuario, simplemente los ha borrado "la web".

Estaba claro que ese borrado de usuarios era una acción que se ejecutaba de manera programada y sistemática, ya que era muy extraño que siempre se realizara a la misma hora. Una forma de ver las acciones programadas (CRON) de tu WordPress, es a través del plugin WP Crontrol.

Desde las opciones de este plugin, rápidamente vi que existía una acción programada: wc_admin_delete_user_customers

Así pues, ¿cómo es posible programar una acción de este tipo?. La respuesta está en el propio WooCommerce, que posee un panel de opciones para eliminar datos (e incluso cuentas) de usuarios y pedidos cuando haya pasado cierto tiempo. Estos son los ajustes que encontré en los ajustes de WooCommerce > Ajustes > Cuentas y privacidad:

Los usuarios se estaban borrando al pasar 2 meses de inactividad. Evidentemente esto es difícilmente reparable. No obstante, si en la base de datos aún existen referencias al email del usuario en la tabla de pedidos ya sea por medio de las tablas de WooCommerce o bien por algún plugin de método de envío, es posible extraer esas direcciones de email y cruzar los datos con una lista de pedidos que no poseen usuario asignado, para así poder recuperar mediante una importación de usuarios con WP All Import algunos usuarios. Evidentemente, los usuarios borrados hace más de 2 meses, serán ya irrecuperables.

Así que en resumen, ¡tened mucho cuidado con estas opciones de Cuentas y Privacidad de WooCommerce!

MOSTRAR SOLUCIÓN

4 respuestas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *