Si tu tienda WooCommerce envía confirmaciones de pedido que los clientes nunca ven porque llegan a la carpeta de spam, no eres el único. El problema es casi siempre el mismo: WordPress usa una función de envío de correo muy primitiva llamada wp_mail() que, sin configuración adicional, carece de autenticación moderna. Los proveedores de correo (Gmail, Outlook, Yahoo) la rechazan o marcan como spam. La buena noticia es que se arregla sin necesidad de tocar código.
Por qué wp_mail() fracasa en entregas
wp_mail() es una función de WordPress que usa PHP mail() del servidor de hosting. Esto significa que tu correo se envía desde la IP y dominio del servidor, no desde tu dominio de marca. Los proveedores de correo lo ven como un intruso sin verificación.
- Sin SPF/DKIM/DMARC configurados, los proveedores no confían en el remitente.
- Desde febrero de 2024, Gmail y Yahoo exigen SPF + DKIM + DMARC; sin ellos, los correos se rechazan o filtran automáticamente.
- Si tu hosting es compartido, la IP puede tener mala reputación de spam anterior, acelerando la caída.
- El From-dominio no coincide con el dominio del servidor → los sistemas ven una inconsistencia → spam.
- Sin validación de dominio, los clientes reciben remitentes genéricos o sospechosos (a.k.a. nombre del servidor).
Requisitos de Gmail, Outlook y Yahoo desde 2024
Los tres principales proveedores de correo mundial han adoptado una política unificada que afecta a prácticamente todo usuario en España y Latinoamérica:
- SPF (Sender Policy Framework): autoriza qué servidores pueden enviar desde tu dominio.
- DKIM (DomainKeys Identified Mail): firma digital que prueba que el correo proviene de tu dominio.
- DMARC (Domain-based Message Authentication): política que especifica qué hacer si SPF/DKIM fallan (rechazar, cuarentena o aceptar).
- One-click unsubscribe: obligatorio en los headers (RFC 8058); los clientes deben poder desuscribirse con un clic.
- Spam rate < 0.3%: monitoreo en Google Postmaster Tools; si subes del umbral, caes automáticamente en spam.
Solución 1: instalar WP Mail SMTP
El método más simple y recomendado es instalar un plugin que reemplaza wp_mail() con un servidor SMTP profesional. El plugin más popular es WP Mail SMTP by WPForms, disponible gratis en el repositorio oficial de WordPress.
- Instala el plugin desde WordPress.org (versión gratuita suficiente para tiendas pequeñas).
- Conéctalo a un proveedor SMTP: Mailrelay, Brevo, Mailjet, Doppler u otro que use tu dominio personalizado.
- Rellena los datos de conexión: host SMTP, puerto (587 o 465), usuario y contraseña.
- Prueba con un correo de test: el plugin te permite enviar uno desde el panel de control.
- Activa y guarda; todos los correos de WooCommerce irán por SMTP profesional de aquí en adelante.
Ventaja principal: tu hosting ya no envía; lo hace el proveedor que mantiene buena reputación, autenticación correcta y estadísticas detalladas.
Solución 2: configurar SPF y DKIM en tu dominio
Incluso con WP Mail SMTP, debes añadir registros DNS en tu dominio. Sin ellos, el proveedor SMTP no podrá firmar los correos como si vinieran realmente de ti.
- SPF: añade un registro TXT como
v=spf1 include:mailrelay.net ~all(consulta la documentación de tu proveedor para el include exacto). - DKIM: el proveedor te da una clave pública; añádela como registro TXT o CNAME (depende del proveedor; algunos usan CNAME para simplificar).
- DMARC: comienza con
v=DMARC1; p=none; rua=mailto:postmaster@tudominio.comen testing. Luego cambia ap=quarantineop=reject.
Dónde: panel de control de tu proveedor de dominio (Namecheap, GoDaddy, Ionos, tu host, etc.). Busca zona DNS o configuración de registros.
Tiempo de propagación: cambios DNS se propagan en 15 minutos a 48 horas, dependiendo del proveedor. En la mayoría de casos, en minutos. WooCommerce reanudará entregas en Inbox con el siguiente lote de correos.
Valida tu configuración: usa un test de entregabilidad gratis para verificar que SPF, DKIM y DMARC están correctos antes de lanzar campaña masiva.
Solución 3: validar y limpiar tu lista de correos
Incluso con autenticación perfecta, si tu lista contiene direcciones inválidas o dominios problemáticos, los proveedores penalizarán tu dominio y tasa de entregas.
- Limpiar typos: gmial.com, yahooo.com, correooo.es, etc. (usa validador en formulario de checkout).
- Eliminar dominios obsoletos: antiguos proveedores como Movistar/Telefónica que migraron; sus filtros son impredecibles.
- Evitar direcciones temporales (disposables): temp-mail, guerrillamail, etc.; disparan falsas aperturas → boost spam rate.
- Lista Robinson (España): antes de enviar marketing, comprueba que el suscriptor no está en la lista de exclusión nacional (LSSI-CE art. 21).
- Monitorea bounces y complaints: altas tasas aceleran caída en spam; revisa reportes del proveedor SMTP cada semana.
Herramientas: WP Email List Validator (plugin gratuito), o exportar lista, validar en línea (Hunter, RocketReach), importar limpia de vuelta.
Alternativas si quieres más control
Además de WP Mail SMTP:
- ESP transaccional dedicado: Mailrelay, Brevo o Doppler permiten autenticación de dominio personalizado, estadísticas en tiempo real y mejor control de reputación. Mejor que plugin si tienes volumen alto (10k+ correos/mes).
- SMTP directo en wp-config.php: requiere código PHP; más técnico, pero sin dependencias de plugins.
- Migrar a otro CMS: Shopify y Tiendanube tienen problemas similares, pero ofrecen más control nativo sobre configuración SMTP.
¿Necesito DMARC si ya tengo SPF y DKIM?
p=none como mínimo. DMARC te protege de falsificaciones (spoofing) y muchos filtros lo consideran como señal de confianza. Comienza con p=none y monitorea los reportes durante dos semanas antes de pasar a p=quarantine.