Si necesita verificar si un correo electrónico es real, activo o seguro de usar, las reglas de validación incorporadas en Laravel pueden no ser suficientes.
Hoy, te mostraremos cómo hacer la validación de correo electrónico de Laravel paso a paso, desde el uso del método de validación hasta la creación de reglas de validación personalizadas. Pero si estás buscando una manera más fácil – una que compruebe algo más que el formato – también encontrarás una alternativa mejor que mantiene los correos electrónicos no válidos, falsos o de riesgo fuera de tu lista.
¿Cómo hacer la validación de correo electrónico Laravel?

Laravel proporciona reglas de validación de correo electrónico incorporadas, junto con la capacidad de crear reglas de validación personalizadas para satisfacer necesidades específicas. Le guiaremos a través de la configuración de la validación de correo electrónico de Laravel, el manejo de errores de validación y la implementación de la validación DNS y RFC.
#1 Validación de correo electrónico en Laravel usando el método validate
El método validate de Laravel, disponible en la clase Illuminate\Http\Request, facilita la validación de las peticiones HTTP entrantes. El siguiente ejemplo muestra las reglas básicas de validación de correo electrónico dentro de un método de controlador.

Para qué sirven estas normas:
- required – El campo no puede estar vacío.
- email:rfc,dns – Comprueba si el correo electrónico sigue los estándares RFC y verifica el dominio utilizando registros DNS.
Si la validación falla, Laravel redirige automáticamente a los usuarios y muestra mensajes de error en la sesión.
#2 Uso de la validación de solicitudes de formularios para un código más limpio
Una clase de solicitud de formulario ayuda a mantener la lógica de validación separada del controlador. Ejecute este comando:

A continuación, actualice la nueva clase dentro de app/Http/Requests/:

Ahora, actualiza tu controlador para utilizarlo:

Este enfoque hace que el código sea más limpio y reutilizable.
#3 Personalización de los mensajes de error de validación
Laravel tiene mensajes de error por defecto, pero puedes personalizarlos en resources/lang/en/validation.php:

O dentro de su clase de solicitud de formulario:

#4 Crear reglas de validación de correo electrónico personalizadas
Si necesita algo más avanzado, cree una regla de validación personalizada:

Actualizar app/Rules/ValidEmail.php:

Aplícalo dentro de un controlador:

Esto permite una gestión de errores personalizada y una validación avanzada.
#5 Tratamiento de errores de validación
Si la validación falla, Laravel devuelve errores automáticamente. Para mostrar mensajes en Blade:

Para las peticiones API, Laravel envía una respuesta 422 con errores:

#6 Validación avanzada de correo electrónico: DNS y registros MX
Para validar el dominio de un correo electrónico, utilice la validación DNS:

- rfc – Asegura que el correo electrónico sigue el RFC 5322.
- dns – Comprueba si el dominio tiene registros MX (es decir, puede recibir correos electrónicos).
Para una validación DNS personalizada, cree una regla:

Actualizar app/Rules/DnsValidator.php:

Aplícalo dentro de un controlador:

#7 Validación del correo electrónico en las solicitudes API JSON
Para las solicitudes API, devuelva respuestas JSON en lugar de redirecciones:

Laravel devuelve automáticamente:

Para gestionar la validación manualmente:

¿Por qué validar correos electrónicos con Laravel no es lo ideal?
La verificación de correo electrónico de Laravel tiene sus limitaciones. Sólo comprueba si un correo electrónico sigue el formato correcto – no verifica si el correo electrónico es real, activo o seguro de usar. He aquí por qué confiar únicamente en las reglas de validación integradas en Laravel podría no ser la mejor opción.
Sólo comprueba el formato de la dirección
El método validate proporcionado por Laravel asegura que un correo electrónico parece correcto, pero no confirma si la dirección existe. Las reglas de validación se centran en la estructura, no en la entregabilidad. Esto significa que correos no válidos, errores tipográficos o incluso direcciones falsas pueden pasar.
No cubre las direcciones trampa ni las trampas de spam.
El método de validación de Laravel no detecta las direcciones de correo electrónico «catch-all», que aceptan todos los mensajes entrantes, sean válidos o no. Tampoco puede filtrar las trampas de spam, que los proveedores de correo electrónico utilizan para atrapar a los remitentes que utilizan listas de correo electrónico obsoletas o compradas. Sin estas comprobaciones, su lista de correo electrónico podría llenarse de direcciones peligrosas.
Requiere conocimientos de programación
Configurar la validación de correo electrónico de Laravel requiere trabajar con un archivo PHP, utilizar la estructura de la aplicación del espacio de nombres PHP y escribir reglas de validación personalizadas. Si no te sientes cómodo con la sintaxis de Laravel, aplicar tus reglas de validación puede ser un reto. Los mensajes de error personalizados también necesitan ser configurados manualmente usando el método de validación.
No se puede automatizar
Laravel no proporciona automatización incorporada para la validación de correo electrónico más allá de los envíos de formularios. Necesitarías integrar APIs externas o escribir reglas de validación personalizadas para validar correos dinámicamente. Incluso con un sistema de mensajes de error personalizado, gestionar manualmente los fallos de validación puede ralentizar el desarrollo.
La mejor alternativa para validar emails con Laravel
Aunque las reglas de validación de correo electrónico de Laravel ayudan con las comprobaciones básicas de formato, no son suficientes para mantener una lista de correo electrónico limpia y fiable. Para verificar si un correo electrónico es válido, considere el uso de una herramienta que garantice que sus correos electrónicos lleguen a usuarios reales sin el riesgo de rebotes o trampas de spam.
Bouncer es una gran solución en este caso.

Cómo Bouncer verifica los correos electrónicos:
Puede cargar su lista de direcciones de correo electrónico y dejar que Bouncer haga el resto:
- Comprobación de sintaxis y formato – Garantiza que el correo electrónico sigue la estructura adecuada (por ejemplo, name@example.com).
- Comprobación de dominio y registro MX: comprueba si el dominio existe y tiene servidores de correo configurados para recibir correos electrónicos.
- Validación SMTP – Bouncer se conecta al servidor de correo del destinatario (sin enviar un correo electrónico) para comprobar si la bandeja de entrada existe y si se pueden recibir mensajes.
- Detección de «catch-all» y «spam trap»: identifica los dominios de riesgo que aceptan todos los correos electrónicos (incluso los no válidos) o atrapan a los remitentes de spam.
- Comprobación de toxicidad: marca los correos electrónicos potencialmente dañinos, como los desechables, los temporales o las direcciones fraudulentas conocidas.
Bouncer: lo que la validación de correo electrónico de Laravel no cubre
Bouncer ofrece lo que las reglas de validación integradas en Laravel no ofrecen: una verificación real que va más allá de la mera comprobación del formato.
Bouncer confirma si un correo electrónico es válido
Las aplicaciones Laravel dependen de la validación basada en la sintaxis. El método validate proporcionado por Laravel sólo comprueba si un correo electrónico sigue la estructura correcta. No comprueba si existe una bandeja de entrada o si el correo electrónico es accesible. Bouncer, por otro lado, verifica las direcciones de correo electrónico válidas conectándose con los servidores de correo, asegurándose de que cada dirección está realmente activa.
Detecta correos electrónicos no válidos, maliciosos y tóxicos
Las actualizaciones de las versiones de Laravel han mejorado la validación del correo electrónico, pero aún no detectan las trampas de spam, las direcciones fraudulentas ni los dominios comodín. La función Bouncer Shield de Bouncer bloquea los correos electrónicos no válidos y maliciosos al instante, protegiendo su lista de contactos de riesgo que podrían dañar la reputación de su remitente.
Verificación automatizada sin codificación
Escribir una regla de validación personalizada en un archivo PHP implica configurar manualmente la lógica, gestionar los fallos de validación y definir un mensaje de error personalizado. Bouncer elimina este trabajo extra con una plataforma y una API fáciles de usar, lo que simplifica la verificación masiva de correo electrónico, sin necesidad de codificación manual.
Controles más allá del formato con información sobre la entregabilidad
Aunque las reglas de validación de Laravel pueden detectar la falta de símbolos «@», no ofrecen información sobre la entregabilidad del correo electrónico. Bouncer proporciona un kit de entregabilidad que comprueba la ubicación en la bandeja de entrada, verifica la autenticación del correo electrónico y supervisa las listas negras para garantizar que sus mensajes lleguen a usuarios reales.
Verificación masiva y en tiempo real para una mayor precisión
Las aplicaciones Laravel procesan un correo electrónico a la vez utilizando métodos de validación dentro de los controladores. Sin embargo, Bouncer admite la verificación masiva, lo que le permite limpiar miles de direcciones de correo electrónico en una sola solicitud. Su API en tiempo real garantiza que los nuevos correos electrónicos se verifiquen al instante, evitando registros no válidos y reduciendo las tasas de rebote.
👉 Echa un vistazo a cómo validar direcciones de correo electrónico paso a paso, sin codificación.
¿Por qué elegir Bouncer en lugar de la validación de Laravel?
- El método de validación de Laravel asegura que un email parece válido. Bouncer confirma si realmente funciona.
- Laravel requiere reglas de validación personalizadas para comprobaciones avanzadas. Bouncer lo hace automáticamente.
- Laravel no bloquea trampas de spam, catch-alls o emails tóxicos. Lo hace Bouncer.
- Laravel necesita conocimientos de codificación para implementar la validación. Bouncer no necesita código.
- Laravel no verifica la entregabilidad. Bouncer mejora la ubicación en la bandeja de entrada con información real.
Para las empresas que dependen de direcciones de correo electrónico limpias y válidas, Bouncer puede ser una mejor opción. Garantiza que sus correos electrónicos lleguen a las bandejas de entrada correctas, técnicamente válidas y entregables.
Conclusión
Antes de decidirte a utilizar la validación de correo electrónico de Laravel, debes saber esto: no confirma si la dirección de correo electrónico funciona. No detectará correos falsos, trampas de spam o direcciones peligrosas que puedan dañar la reputación del remitente. Además, la configuración de reglas de validación personalizadas requiere conocimientos de codificación, e incluso entonces, Laravel no verificará direcciones de correo electrónico válidas más allá del formato básico.
Bouncer puede ser una alternativa mejor. Verifica correos electrónicos reales, bloquea trampas de spam y automatiza todo el proceso, sin necesidad de codificación. Tanto si necesita verificación masiva como comprobaciones de correo electrónico en tiempo real, Bouncer garantiza que sus mensajes lleguen a bandejas de entrada reales, no a callejones sin salida.
No se limite a comprobar si un correo electrónico parece correcto: asegúrese de que funciona. Pruebe Bouncer hoy mismo con créditos gratuitos.

