🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo arreglar el error 'PrestaShop no envía correos' en WordPress y cPanel

Actualizado el 16 de febrero de 2026

¿Tu tienda PrestaShop dejó de enviar correos electrónicos y no sabes por dónde empezar? Es un problema muy común que afecta a la confirmación de pedidos, la recuperación de contraseñas y las notificaciones de stock. La buena noticia es que, en la mayoría de los casos, tiene una solución sencilla que puedes aplicar tú mismo desde WordPress y cPanel. En esta guía extensa y paso a paso, te explicaré las causas más frecuentes y cómo solucionar el error PrestaShop no envía correos de forma definitiva.

Vamos a desglosar el proceso en partes muy claras. No necesitas ser un experto en informática, solo seguir las instrucciones con calma. Al final, tu tienda volverá a comunicarse con tus clientes sin problemas.

Entendiendo por qué falla el envío de correos en PrestaShop

Antes de tocar nada, es importante entender que PrestaShop no siempre utiliza el mismo método para enviar correos. Cuando instalas PrestaShop en un hosting compartido con cPanel, por defecto usa la función mail() de PHP. Esta función depende de la configuración del servidor y, a menudo, es bloqueada por los proveedores de hosting para evitar el envío de spam. Por eso, lo más recomendable es configurar un servidor SMTP autenticado.

El error email PrestaShop no llega puede deberse a varias razones, pero las más habituales son:

  • La configuración SMTP es incorrecta (puerto, servidor, autenticación).
  • El puerto SMTP está bloqueado por el firewall de tu hosting.
  • La contraseña de tu correo electrónico es incorrecta o ha sido cambiada recientemente.
  • El plugin o módulo de correo de WordPress interfiere (aunque uses PrestaShop, a veces se comparten recursos).
  • La caché de PrestaShop guarda configuraciones antiguas.

Vamos a atacar cada una de estas causas. El objetivo es que configures correctamente el SMTP PrestaShop cPanel para que los correos salgan con una autenticación real y no caigan en spam.

Paso 1: Verifica que tu cuenta de correo en cPanel funciona

El primer paso es asegurarte de que la cuenta de correo que vas a usar para enviar los mensajes existe y funciona. No sirve de nada configurar un SMTP con una cuenta que no has creado.

  1. Accede a tu panel de control de cPanel (normalmente en tudominio.com/cpanel).
  2. Busca la sección "Email" y haz clic en "Email Accounts" (o "Cuentas de correo").
  3. Verifica que la cuenta que quieres usar (ej. tienda@tudominio.com) existe.
  4. Asegúrate de conocer la contraseña. Si no estás seguro, cámbiala desde ahí mismo, pero hazlo justo antes de configurarla en PrestaShop para evitar errores de cache.

[TIP] Usa una cuenta de correo profesional de tu propio dominio (ej. hola@tudominio.com), no una cuenta de Gmail o Hotmail. Esto mejora la entregabilidad y es más fiable para el envío masivo de pedidos.

Paso 2: Configura el envío de correos en PrestaShop usando SMTP

Ahora vamos a lo importante. Vamos a configurar el SMTP PrestaShop cPanel dentro de tu tienda. Sigue estos pasos con atención:

2.1 Accede a la configuración de correo en PrestaShop

  1. Inicia sesión en el panel de administración de tu PrestaShop (la URL suele ser tudominio.com/admin).
  2. En el menú lateral izquierdo, ve a "Parámetros avanzados" (o "Advanced Parameters").
  3. Haz clic en "Email" (o "Correo electrónico").

2.2 Configura los parámetros SMTP

En esta pantalla, verás varias opciones. Debes cambiar la configuración de la siguiente manera:

  1. Enviar correos electrónicos con: Selecciona "Configurar mi propio servidor SMTP" (o "Use my own SMTP server"). Esto es clave para solucionar el error PrestaShop no envía correos.
  2. Servidor SMTP: Escribe mail.tudominio.com (reemplaza tudominio.com con tu dominio real). A veces también funciona smtp.tudominio.com, pero mail. es el estándar en cPanel.
  3. Usuario SMTP: Escribe la dirección de correo completa, por ejemplo, tienda@tudominio.com.
  4. Contraseña SMTP: Escribe la contraseña de esa cuenta de correo.
  5. Puerto SMTP: Este es un punto crítico. El puerto predeterminado es 25, pero muchos hostings lo bloquean. Te recomiendo usar el puerto 465 (SSL) o el puerto 587 (TLS). Vamos a probar primero con el 465.
  6. Cifrado: Si elegiste el puerto 465, selecciona "SSL". Si elegiste el 587, selecciona "TLS". No lo dejes en "No cifrado" si es posible.
  7. Enviar correos electrónicos como: Puedes dejarlo vacío o poner tienda@tudominio.com. No es obligatorio.

[WARNING] Si tu hosting usa un certificado SSL válido, el puerto 465 con cifrado SSL es el más fiable. Si falla, prueba con el 587 y TLS. Nunca uses el puerto 25 sin cifrado, ya que es el más propenso a ser bloqueado.

2.3 Guarda y prueba el envío

  1. Haz clic en "Guardar" (o "Save") en la parte superior derecha.
  2. Después de guardar, busca el botón que dice "Enviar un correo de prueba" (o "Send a test email").
  3. Introduce tu propia dirección de correo (la que quieras, incluso una de Gmail) y pulsa el botón.
  4. Revisa tu bandeja de entrada (y la carpeta de spam) en unos minutos.

Si recibes el correo de prueba, ¡enhorabuena! Has solucionado el problema. Si no, continúa con el siguiente paso.

Paso 3: Ajustes adicionales en cPanel para permitir el envío

Si el correo de prueba no llega, el problema puede estar en el firewall de tu hosting o en la configuración de PHP. Vamos a ajustar algunas cosas en cPanel.

3.1 Habilita el puerto SMTP en el firewall (si es posible)

Algunos hostings tienen un firewall de aplicaciones (como Imunify360 o ConfigServer Security & Firewall) que bloquea puertos no estándar. No siempre puedes controlar esto desde cPanel, pero puedes intentar lo siguiente:

  1. Busca la sección "Security" en cPanel.
  2. Haz clic en "Firewall" o "ConfigServer Security & Firewall".
  3. Busca una opción para "Allow outgoing SMTP" (Permitir SMTP saliente) o para abrir puertos específicos (465 o 587).
  4. Si no encuentras esta opción, contacta a tu proveedor de hosting y diles: "Necesito que habiliten el envío de correos salientes a través del puerto 465 o 587 para mi cuenta de PrestaShop".

3.2 Verifica la zona de registros DNS (SPF y DKIM)

Este es un paso avanzado, pero muy importante para que los correos no caigan en spam. A veces el correo se envía, pero Gmail o Outlook lo bloquean silenciosamente.

  1. En cPanel, busca "Email Deliverability" (Entregabilidad de correo).
  2. Asegúrate de que el registro SPF esté activo. Debería verse algo así: v=spf1 +a +mx +a:tudominio.com -all.
  3. Si no está activo, actívalo desde el botón "Enable" o "Repair".
  4. También verifica que el registro DKIM esté activo. cPanel suele tener un botón para "Enable" en esta misma sección.

[INFO] Los registros SPF y DKIM son como un sello de autenticidad. Sin ellos, los servidores de correo pueden pensar que tu email es falso y lo eliminan antes de que llegue a la bandeja de entrada.

Paso 4: Si usas WordPress para la misma web (y PrestaShop está en una subcarpeta)

A veces tienes WordPress en el dominio principal y PrestaShop en una subcarpeta (ej. tudominio.com/tienda). En este caso, un plugin de WordPress como "Easy WP SMTP" o "WP Mail SMTP" puede estar interfiriendo con la configuración global del servidor.

  1. Accede a tu panel de WordPress.
  2. Ve a "Ajustes" > "Correo electrónico" (si tienes un plugin de SMTP instalado).
  3. Desactiva cualquier plugin de correo SMTP que esté activo, o asegúrate de que su configuración no esté redirigiendo el tráfico SMTP de todo el servidor.

En realidad, la solución más limpia es que PrestaShop no dependa de la función mail() de PHP si tienes WordPress. Nuestra configuración SMTP ya evita esto, pero la desactivación de plugins conflictivos es una buena medida de higiene.

Paso 5: Limpia la caché de PrestaShop

A veces, PrestaShop guarda la configuración antigua en su caché interna. Después de cambiar los parámetros SMTP, es recomendable limpiarla.

  1. En el panel de administración de PrestaShop, ve a "Parámetros avanzados" > "Rendimiento" (o "Performance").
  2. Haz clic en "Vaciar la caché" (o "Clear cache") en la parte superior derecha.
  3. También puedes borrar manualmente la carpeta var/cache (o cache en versiones antiguas) a través del Administrador de Archivos de cPanel, pero la opción del panel es suficiente.

Solución alternativa: Usar el módulo SMTP de terceros

Si después de todos estos pasos el error PrestaShop no envía correos persiste, es posible que tu hosting tenga una configuración muy restrictiva. En ese caso, te recomiendo instalar un módulo SMTP de terceros desde el marketplace de PrestaShop (Addons). Algunos módulos populares son "SMTP Email" o "Sendinblue".

Estos módulos te permiten usar servicios de correo transaccional como Sendinblue, Mailgun o Amazon SES. Son gratuitos hasta cierto volumen y mucho más fiables que el SMTP de tu propio hosting, ya que están optimizados para evitar el spam y garantizar la entrega.

¿Cómo funcionan estos servicios?

  1. Creas una cuenta gratuita en el servicio (ej. Sendinblue).
  2. Verificas tu dominio (te dan un registro DNS para añadir en cPanel).
  3. Obtienes una clave API o credenciales SMTP.
  4. En el módulo de PrestaShop, introduces esas credenciales (servidor smtp-relay.sendinblue.com, puerto 587, usuario = tu cuenta, contraseña = tu clave API).

Esta es la solución definitiva si tu hosting es problemático.

Preguntas Frecuentes (FAQ) sobre correos en PrestaShop

Aquí tienes las dudas más comunes que resolvemos a diario:

¿Por qué mis clientes no reciben los correos de confirmación de pedido?

Esto suele ser un problema de entregabilidad. Aunque el correo se envíe, puede caer en spam. Primero, verifica que la configuración SMTP es correcta (paso 2). Luego, asegúrate de tener SPF y DKIM activados (paso 3.2). Si aún así falla, usa un servicio SMTP transaccional como mencionamos antes.

¿Qué es mejor, usar la función mail() de PHP o SMTP?

SMTP es siempre mejor. La función mail() es básica y no requiere autenticación, lo que la convierte en la principal fuente de problemas de spam. SMTP autentica tu identidad y mejora drásticamente la tasa de entrega.

¿Cuál es el puerto SMTP correcto para cPanel?

El más común es el 465 (SSL) o el 587 (TLS). El puerto 25 suele estar bloqueado. Si tu hosting es bueno, el 465 funcionará perfectamente.

¿Cómo pruebo el envío de correos sin molestar a mis clientes?

En la configuración de email de PrestaShop, hay un botón "Enviar un correo de prueba". Úsalo siempre. Si quieres probar con un pedido real, puedes hacer un pedido de prueba con un importe de 0,00 € a tu propio nombre, pero es más rápido usar el botón de prueba.

¿Qué hago si uso Syspanel en lugar de cPanel?

Aunque es menos común, si tu hosting usa el panel Syspanel (anteriormente conocido como HestiaCP), el proceso es muy similar. Debes acceder a tu panel a través del puerto 2106 (ej. https://tudominio.com:2106). Dentro, busca la sección de cuentas de correo y crea una. El servidor SMTP será mail.tudominio.com y los puertos son los mismos (465 o 587). La configuración en PrestaShop es idéntica a la explicada.

[INFO] Recuerda que en Syspanel, el puerto de acceso al panel es el 2106, no el 2083 como en cPanel.

Conclusión final

Solucionar el error PrestaShop no envía correos es un proceso de eliminación. Empieza siempre con la configuración SMTP directamente en PrestaShop, verifica tu firewall, activa los registros DNS y, si todo falla, apóyate en un servicio SMTP de terceros.

En resumen, los pasos clave son:

  1. Asegúrate de tener una cuenta de correo activa en cPanel.
  2. Configura el SMTP PrestaShop cPanel con el puerto 465 y SSL.
  3. Envía un correo de prueba desde el propio panel.
  4. Activa SPF y DKIM en cPanel.
  5. Si no funciona, desactiva plugins SMTP de WordPress.
  6. Limpia la caché de PrestaShop.
  7. Como último recurso, instala un módulo SMTP transaccional (Sendinblue, Mailgun, etc.).

Con un poco de paciencia, tu tienda volverá a estar operativa y tus clientes recibirán cada notificación de forma fiable. No te rindas; la solución está en uno de estos pasos.

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel