Cómo configurar el envío de emails en PrestaShop con SMTP (cPanel/Plesk)
¿Por qué mis emails de PrestaShop no llegan a los clientes?
Si estás aquí, seguramente te ha pasado: los pedidos se registran, pero los correos de confirmación, facturas o avisos de nuevo cliente nunca llegan al buzón de entrada. Es uno de los problemas más comunes y frustrantes en PrestaShop.
La causa suele ser que la tienda intenta enviar los emails usando la función mail() de PHP, que muchos servidores y proveedores de correo (Gmail, Outlook, etc.) bloquean por considerarla insegura o porque el remitente no está autenticado.
La solución definitiva es configurar el envío de emails en PrestaShop mediante SMTP, es decir, conectando tu tienda directamente al servidor de correo saliente de tu hosting (cPanel o Plesk). Esto garantiza que los correos se autentiquen correctamente y tengan muchas más probabilidades de llegar a la bandeja de entrada.
En esta guía completa y paso a paso, te voy a enseñar a configurarlo desde cero, con capturas descriptivas (sin imágenes, pero con instrucciones claras) y soluciones a los errores más típicos.
Vamos a ello.
Antes de empezar: qué necesitas tener a mano
Para configurar SMTP en PrestaShop, necesitas los datos de acceso a tu cuenta de correo del dominio. No te preocupes, no necesitas ser un experto.
Esto es lo que debes localizar:
- Dirección del servidor SMTP: Normalmente es
mail.tudominio.comosmtp.tudominio.com. - Puerto SMTP: Generalmente el 465 (SSL) o el 587 (TLS). El 25 suele estar bloqueado.
- Usuario SMTP: La dirección de correo electrónico completa (ej:
hola@tudominio.com). - Contraseña: La contraseña de esa misma cuenta de correo.
¿Dónde encuentro esto? Depende de si tu hosting usa cPanel o Plesk. Te lo explico en las siguientes secciones.
Paso 1: Localizar los datos SMTP en cPanel
Si tu hosting usa cPanel, sigue estos pasos:
- Accede a tu panel de control de cPanel (normalmente en
tudominio.com/cpanel). - Busca la sección "Email" o "Correo".
- Haz clic en "Cuentas de Email" o "Email Accounts".
- Localiza la cuenta de correo que quieres usar para enviar los emails de tu tienda (por ejemplo,
contacto@tudominio.com). - Haz clic en "Conectar dispositivos" o "Configurar cliente de correo" (el icono suele ser un teléfono o un engranaje).
Ahí verás la configuración manual. Busca los datos de "Configuración del servidor entrante y saliente". Anota:
- Servidor de correo saliente (SMTP):
mail.tudominio.com - Puerto SMTP:
465(con SSL) o587(con TLS) - Autenticación: Requerida (sí)
- Usuario: La dirección de correo completa.
Ahora, ve al Paso 3 para configurarlo en PrestaShop. Si tu hosting es Plesk, sigue el Paso 2.
Paso 2: Localizar los datos SMTP en Plesk (o Syspanel)
Si tu hosting usa Plesk, el proceso es ligeramente distinto. Importante: Si tu proveedor usa un panel llamado "Syspanel" (basado en Plesk), el acceso se realiza por el puerto 2106 (ej: tudominio.com:2106).
- Accede a tu panel (Plesk o Syspanel:
tudominio.com:8443otudominio.com:2106). - Ve a la sección "Correo" o "Mail".
- Haz clic en la cuenta de correo que usarás para la tienda.
- Busca la pestaña o enlace que dice "Configuración del cliente de correo" o "Mail Client Setup".
Verás una tabla con los datos. Anota los mismos datos que en cPanel:
- Servidor saliente (SMTP):
mail.tudominio.comosmtp.tudominio.com. - Puerto:
465(SSL) o587(TLS). - Usuario: La dirección de correo completa.
- Contraseña: La que hayas definido.
Recuerda: Si tu proveedor menciona "Syspanel", el puerto de acceso al panel es el 2106.
Paso 3: Configurar SMTP en PrestaShop (Back Office)
Ya tienes los datos. Ahora vamos a la parte más importante: configurarlo en tu tienda.
- Accede al Panel de Administración de tu PrestaShop (tu Back Office).
- En el menú lateral izquierdo, ve a la pestaña "Parámetros avanzados".
- Haz clic en "E-mail".
Verás la pantalla de configuración de correo electrónico. Esta sección es clave. Presta atención.
3.1. Configuración general del envío
En la parte superior, encontrarás el campo "Enviar emails". Aquí debes seleccionar "Sí".
Justo debajo, verás "Método de envío". Aquí está el truco: cambia la opción de "Usar la función mail() de PHP" a "Usar SMTP".
Al seleccionar SMTP, se desplegarán todos los campos que necesitas rellenar.
3.2. Rellenar los datos del servidor SMTP
Ahora rellena los campos con los datos que has anotado en el Paso 1 o 2:
- Servidor SMTP: Escribe
mail.tudominio.com(o el que te haya dado tu hosting). - Puerto SMTP: Escribe
465(recomendado) o587. - Cifrado: Selecciona "SSL" si usas el puerto 465, o "TLS" si usas el 587. Si no estás seguro, prueba primero con SSL.
- Usuario SMTP: Escribe la dirección de correo completa (ej:
hola@tudominio.com). - Contraseña SMTP: Escribe la contraseña de esa cuenta.
[WARNING]
IMPORTANTE: El campo "Usuario SMTP" no es solo el nombre de usuario, sino la dirección de correo electrónico completa. Es un error muy común y la causa de que la autenticación falle.
3.3. Configurar la cabecera del email
Un paso que muchos olvidan y que es vital.
En el campo "Cabecera del email", escribe algo como [MiTienda]. Esto es un prefijo que se añadirá al asunto del correo. No es obligatorio, pero ayuda a identificar los correos y evita que algunos filtros antispam los bloqueen.
3.4. Guardar y probar
Haz clic en el botón "Guardar" en la parte superior derecha.
Después de guardar, verás un botón que dice "Enviar un email de prueba". Haz clic en él.
PrestaShop enviará un correo de prueba a la dirección que tengas configurada como email de la tienda (Parámetros avanzados -> E-mail -> "Enviar un email de prueba a").
[TIP]
Si el email de prueba no llega, revisa la carpeta de spam antes de desesperarte. A veces los proveedores lo filtran por error la primera vez.
Solución de problemas: emails PrestaShop no llegan
Si has seguido todos los pasos y los correos siguen sin llegar, no te preocupes. Aquí tienes una lista de verificación rápida para diagnosticar el problema.
Error 1: "No se puede conectar con el servidor SMTP"
Este error significa que PrestaShop no puede establecer conexión con el servidor de correo.
- Verifica el puerto: Asegúrate de que el puerto
465o587esté abierto en tu hosting. A veces el puerto 25 está bloqueado, pero los otros suelen estar disponibles. - Prueba con otro cifrado: Si usas SSL y falla, prueba con TLS y el puerto 587, o viceversa.
- ¿Es un firewall? Algunos servidores locales o VPNs bloquean puertos. Si estás en una oficina, prueba desde otra red.
Error 2: "Error de autenticación" o "Usuario o contraseña incorrectos"
Esto es más fácil de solucionar.
- Revisa el usuario: Debe ser la dirección de correo completa (ej:
tienda@midominio.com). - Revisa la contraseña: Asegúrate de que es la contraseña de esa cuenta de correo específica, no la de tu panel de control. A veces se cambian por separado.
- Prueba a cambiar la contraseña de la cuenta de correo en cPanel/Plesk y pruébala de nuevo. A veces hay caracteres especiales que dan problemas.
Error 3: El email de prueba se envía, pero los pedidos no llegan
Esto es muy común. El email de prueba usa una ruta, pero los emails transaccionales (como confirmaciones de pedido) usan otra.
- Revisa la plantilla: Ve a Diseño -> Email y asegúrate de que las plantillas no estén rotas.
- Módulos de terceros: Si usas un módulo de envío de emails, desactívalo temporalmente para ver si es un conflicto.
- Verifica la dirección del remitente: En Parámetros avanzados -> E-mail, revisa el campo "Enviar emails desde". Debe ser una dirección de tu dominio, no una de Gmail o Yahoo.
[INFO]
Si usas un hosting compartido, es posible que el servidor tenga límites de envío por hora. Si tu tienda envía muchos correos, podrías superar el límite y los correos se encolarán o se perderán. En ese caso, considera usar un servicio de email transaccional como SendGrid o Mailgun (aunque eso es un tema más avanzado).
Preguntas frecuentes (FAQ)
¿Qué es mejor, usar la función mail() de PHP o SMTP?
Siempre es mejor SMTP. La función mail() de PHP es la más básica y la que más filtros antispam bloquean. SMTP autentifica tu dominio y mejora drásticamente la entregabilidad.
¿Puedo usar el SMTP de Gmail o Outlook para mi tienda?
Técnicamente sí, pero no es recomendable. Gmail y Outlook tienen límites de envío diarios muy bajos para cuentas gratuitas (alrededor de 500 emails/día) y bloquean el envío si detectan actividad comercial. Además, tendrás problemas de autenticación con verificación en dos pasos.
¿Qué hago si mi hosting no es cPanel ni Plesk?
La mayoría de los hostings usan uno de estos dos, pero si no es así, busca en tu panel de control la sección de "Cuentas de correo" y busca los datos de configuración del cliente. El proceso en PrestaShop será exactamente el mismo.
¿Puedo usar el puerto 25 para SMTP?
Puedes, pero es muy probable que esté bloqueado por tu proveedor de internet o el propio hosting para evitar spam. Usa siempre el 465 o el 587.
¿Qué es el prefijo en la cabecera del email? ¿Es obligatorio?
No es obligatorio, pero es una buena práctica. Añade un texto como [MiTienda] antes del asunto. Esto ayuda a los clientes a identificar rápidamente tus correos y reduce la probabilidad de que los marquen como spam.
Mi hosting usa Syspanel, ¿cambio algo en la configuración de PrestaShop?
No. La configuración en PrestaShop es idéntica. La única diferencia es cómo accedes al panel de control de tu hosting (recuerda: puerto 2106 para Syspanel) para obtener los datos SMTP. Una vez que tienes el servidor, puerto, usuario y contraseña, el proceso es el mismo.
Conclusión: adiós a los correos perdidos
Configurar SMTP en PrestaShop es un proceso de 10 minutos que te ahorrará dolores de cabeza y, lo más importante, evitará que pierdas ventas porque tus clientes no reciben sus confirmaciones.
Hemos visto que el proceso se divide en dos partes:
- Obtener los datos SMTP de tu hosting (cPanel o Plesk/Syspanel).
- Introducirlos correctamente en el Back Office de PrestaShop, usando el puerto y cifrado adecuados.
Si has seguido todos los pasos y los emails de prueba llegan, enhorabuena, tu configuración es correcta. Si aún tienes problemas, repasa la sección de solución de problemas o contacta con tu proveedor de hosting, ya que a veces el bloqueo puede venir de su lado.
Espero que esta guía te haya sido de gran ayuda. Ahora ya puedes configurar el envío de correos en PrestaShop con SMTP y olvidarte de los emails que no llegan. ¡Feliz venta!
