Cómo configurar el envío de emails desde PrestaShop con SMTP en DirectAdmin
Introducción: Por qué tu PrestaShop necesita SMTP
Si tienes una tienda online con PrestaShop, seguramente has notado que los correos de confirmación de pedido, recuperación de contraseña o facturas a veces no llegan a tus clientes. Esto es un problema muy común, y la causa suele ser la misma: PrestaShop está intentando enviar los emails usando la función mail() de PHP, que es el método predeterminado y el menos fiable.
Los servidores de correo modernos (Gmail, Outlook, Yahoo) tienen filtros muy estrictos. Si tu tienda envía correos desde una IP que no está verificada o sin autenticación, los rechazan directamente o los mandan a la carpeta de spam. La solución profesional es configurar un servidor SMTP saliente.
En este artículo te voy a enseñar, paso a paso y sin tecnicismos complicados, cómo configurar el envío de emails en PrestaShop usando un servidor SMTP dentro de tu panel de control DirectAdmin. Al final, tus correos llegarán a la bandeja de entrada de tus clientes, no a la papelera.
¿Qué es SMTP y por qué es la mejor opción?
SMTP (Protocolo Simple de Transferencia de Correo) es el estándar que usan los servidores para enviar emails. Piensa en ello como el cartero certificado del mundo digital: entrega el paquete (tu correo) con un comprobante de envío y verificación de identidad.
Cuando configuras SMTP PrestaShop DirectAdmin, le estás diciendo a tu tienda: "Oye, no uses el método rápido y poco fiable. Usa este servidor de correo específico, con estas credenciales, y entrega mis mensajes de forma segura".
Los beneficios son claros:
- Tasa de entrega mucho mayor (menos correos en spam).
- Autenticación real (tu dominio verificado).
- Menos probabilidad de que te bloqueen por enviar demasiados correos.
- Registros de envío para solucionar problemas.
Requisitos previos: Lo que necesitas antes de empezar
Antes de tocar nada en PrestaShop, necesitas tener a mano estos datos. Tómate un minuto para buscarlos, porque los necesitarás en el paso final.
- Acceso a tu panel DirectAdmin (normalmente en
https://tu-dominio.com:2222). - Acceso al panel de administración de PrestaShop (normalmente en
https://tu-dominio.com/admin123o la URL que hayas personalizado). - Credenciales de una cuenta de email que exista en tu dominio. Por ejemplo,
tienda@tudominio.com. Necesitas el usuario (el correo completo) y la contraseña. - El nombre del servidor de correo saliente. En la mayoría de los casos, si tu sitio está alojado en el mismo servidor que el correo, será
localhostomail.tudominio.com.
[INFO]
Si no sabes si tu dominio usa el correo de DirectAdmin o un servicio externo (como Google Workspace o Zoho), verifica los registros MX en el panel de administración de tu dominio. Para este tutorial, asumiremos que usas el correo del propio servidor (DirectAdmin).
Paso 1: Crear una cuenta de correo en DirectAdmin (si no la tienes)
Para que el SMTP funcione, necesitas una cuenta de correo real en tu dominio. No uses una cuenta personal de Gmail para esto, porque lo más probable es que falle.
- Inicia sesión en DirectAdmin.
- Busca la sección "Administrador de Correo" o "Email Manager".
- Haz clic en "Crear Nueva Cuenta" o "Add New Account".
- Rellena el formulario:
- Usuario:
tienda(esto crearátienda@tudominio.com). - Contraseña: Elige una segura. Guárdala en un lugar seguro porque la usarás en PrestaShop.
- Cuota: Puedes dejarla en el mínimo (10 MB) si solo la usas para envíos; no necesitas espacio para recibir grandes archivos.
- Usuario:
Haz clic en "Crear". Listo, ya tienes la cuenta que usará tu tienda para enviar correos.
Paso 2: Configurar el SMTP en PrestaShop
Ahora viene la parte principal. Vamos a entrar en el back-office de tu tienda.
- Ve a tu panel de administración de PrestaShop.
- En el menú lateral izquierdo, busca "Parámetros Avanzados" (o "Advanced Parameters").
- Dentro, haz clic en "Correo Electrónico" (o "E-mail").
Verás una pantalla con opciones de configuración. Es aquí donde haremos la magia.
La configuración clave paso a paso
- En "Enviar correos electrónicos con" (o "Send emails with"), selecciona "Utilizo mi propio servidor SMTP" (o "My own SMTP server"). Esta es la opción crítica que cambia el comportamiento por defecto de PHP.
- En "Servidor SMTP" (o "SMTP server"), escribe
mail.tudominio.com. Si tu dominio esmitienda.com, entonces serámail.mitienda.com.[TIP]
Simail.tudominio.comno funciona, prueba conlocalhost. En muchos servidores compartidos, el servicio de correo local está enlocalhosty es más rápido. - En "Puerto SMTP" (o "SMTP port"), el puerto estándar es 465 (SSL) o 587 (TLS). Te recomiendo probar primero con 465.
- En "Cifrado" (o "Encryption"), elige "SSL" si usas el puerto 465, o "TLS" si usas el 587. Si ambos fallan, puedes probar con "Sin cifrado" y puerto 25, pero es menos seguro y muchos hosts lo bloquean.
- En "Autenticación SMTP", activa la opción "Sí" (o "Yes").
- En "Nombre de usuario SMTP", escribe la dirección de correo completa que creaste en el paso anterior. Ejemplo:
tienda@tudominio.com. - En "Contraseña SMTP", escribe la contraseña que elegiste para esa cuenta.
- En "Número de teléfono" y "Nombre", puedes dejarlo vacío o poner el nombre de tu tienda. No es imprescindible.
Guardar y probar
Una vez rellenado todo, haz clic en "Guardar" (o "Save").
Ahora viene la prueba de fuego. Desplázate hasta la parte inferior de la misma página y verás una sección que dice "Enviar un correo de prueba" (o "Send a test email").
- Escribe una dirección de correo a la que tengas acceso (puede ser tu correo personal).
- Haz clic en "Enviar correo de prueba".
Espera unos segundos y revisa la bandeja de entrada de ese correo. Si todo ha ido bien, recibirás un email de tu tienda. Revisa también la carpeta de spam, por si acaso.
[WARNING]
Si el correo no llega, no te desesperes. Es el problema más común. Sigue los pasos de solución de problemas que te doy más abajo. No cambies la configuración a lo loco; ve probando un cambio a la vez.
Solución de problemas comunes del SMTP de PrestaShop
Es raro que funcione a la primera. Aquí tienes una lista de fallos típicos y cómo solucionarlos.
El correo de prueba no llega
- Error de autenticación: Vuelve a revisar el nombre de usuario y la contraseña. Asegúrate de que el usuario es el correo completo, no solo la parte antes de la
@. - Puerto equivocado: Prueba a cambiar entre el puerto 465 y el 587. También puedes probar el 25 (sin cifrado) como última opción, aunque no es recomendable.
- Cifrado incorrecto: Si usas el puerto 465, el cifrado debe ser SSL. Si usas el 587, debe ser TLS. A veces, si el servidor es antiguo, solo acepta "Sin cifrado" en el puerto 25.
- El servidor SMTP no responde: Intenta hacer un ping a
mail.tudominio.comdesde tu ordenador (abre CMD o Terminal y escribeping mail.tudominio.com). Si no responde, puede que tu proveedor de alojamiento use un servidor de correo diferente. Contacta con soporte para que te den el hostname exacto.
El correo se envía, pero va a spam
Esto es más un problema de reputación del servidor que de configuración.
- Configura SPF y DKIM: En tu DirectAdmin, busca las secciones "SPF" y "DKIM" dentro del administrador de correo o de zona DNS. Actívalos para tu dominio. Esto le dice a los servidores de Gmail que los correos de tu dominio son legítimos.
- Envía pocos correos al principio: Si tu tienda es nueva, no envíes 500 newsletters el primer día. El sistema de reputación se construye poco a poco.
- Usa un remitente real: Asegúrate de que el "De" (From) de tus correos es la cuenta
tienda@tudominio.comy no una dirección inventada.
Configuración avanzada: Usar el SMTP de tu proveedor de hosting
A veces, tu hosting puede tener un servidor SMTP específico que no es el estándar de DirectAdmin. Por ejemplo, si usas un servicio como Syspanel (antes conocido como HestiaCP) en otro servidor, la configuración es similar pero con un hostname distinto.
[INFO]
Si tu web está en un servidor con Syspanel (el panel que se accede por el puerto 2106), el proceso es idéntico al de DirectAdmin. Solo cambia la URL del panel. En lugar de:2222, usarás:2106. Las opciones de creación de correo y configuración de SMTP son prácticamente las mismas, y la configuración en PrestaShop es exactamente igual que la que hemos visto.
¿Y si uso Gmail para enviar los correos de mi tienda?
Es posible, pero no es recomendable para una tienda profesional. Gmail limita el envío diario y puede bloquear tu cuenta si detecta un volumen alto de correos. Además, es más fácil que los correos se marquen como spam porque el remitente no coincide con el dominio de tu tienda.
Conclusión: Tu tienda lista para comunicarse
Configurar SMTP PrestaShop DirectAdmin es una tarea de mantenimiento esencial que no deberías ignorar. Siguiendo estos pasos, has mejorado drásticamente la fiabilidad de las comunicaciones con tus clientes. Ya no perderás ventas porque el correo de confirmación no llegó, y tus facturas y avisos de envío se entregarán correctamente.
Recuerda que esta configuración es un punto de partida. Si tu tienda crece, considera usar servicios de email transaccional como SendGrid o Mailgun, pero para la mayoría de las tiendas pequeñas y medianas, el SMTP de tu propio hosting es más que suficiente.
¿Te ha funcionado? ¿Has tenido algún problema? Cuéntamelo en los comentarios y te ayudaré a resolverlo. ¡Buena suerte con tus ventas!
Preguntas Frecuentes (FAQ)
P: ¿Qué pasa si no tengo una cuenta de correo creada en DirectAdmin?
R: El SMTP necesita siempre una cuenta de correo real para autenticarse. No funcionará con una cuenta genérica o inexistente. Debes crearla primero en el panel.
P: ¿Cuál es la diferencia entre los puertos 465 y 587?
R: El 465 usa SSL (Secure Socket Layer) y es el más común para servidores de correo. El 587 usa TLS (Transport Layer Security) y es el estándar moderno. Ambos son seguros. Si uno no te funciona, prueba el otro.
P: Mi web está en Syspanel, ¿qué cambia?
R: Nada en la configuración de PrestaShop. Solo cambia la forma de acceder a tu panel de control. En lugar de usar el puerto 2222 de DirectAdmin, usa el puerto 2106 para entrar a Syspanel y crear tu cuenta de correo.
P: ¿Es obligatorio usar cifrado SSL/TLS?
R: Es muy recomendable para evitar que otros intercepten las contraseñas. Sin embargo, si tu servidor es muy antiguo, puede que no lo soporte. En ese caso, puedes usar el puerto 25 sin cifrado, pero asumes un riesgo de seguridad.
P: Sigo sin recibir el correo de prueba. ¿Qué hago?
R: Contacta con el soporte técnico de tu hosting. Ellos pueden ver los logs del servidor de correo y decirte exactamente por qué el mensaje está siendo rechazado. Diles que has configurado SMTP en PrestaShop y que necesitas el hostname y puerto correctos para tu plan.
