Skip to main content

Introductie

E-mailverificatie (Email Verification) is een mechanisme dat controleert of een gebruiker daadwerkelijk eigenaar is van het geregistreerde e-mailadres. Laravel levert het versturen van de verificatiemail en de verificatieverwerking standaard mee, zodat je met minimale implementatie een veilige verificatieflow kunt bouwen.
Gebruik je een starter kit, dan zijn de authenticatieschermen en de e-mailverificatieflow al ingebouwd. Implementeer je handmatig, definieer dan zelf het model, de routes en de views volgens de stappen op deze pagina.

Model en database voorbereiden

MustVerifyEmail implementeren

Controleer of App\Models\User de interface Illuminate\Contracts\Auth\MustVerifyEmail implementeert.
Voeg je deze interface toe, dan wordt automatisch een verificatiemail verstuurd naar nieuw geregistreerde gebruikers. Implementeer je de registratie zonder starter kit, vuur dan na een geslaagde registratie het Registered-event af.

De kolom email_verified_at controleren

De tabel users heeft een kolom email_verified_at nodig. Deze zit doorgaans al in de standaardmigration 0001_01_01_000000_create_users_table.php.

Routing (drie routes)

Voor e-mailverificatie definieer je drie routes: verification.notice, verification.verify en verification.send.
1

Definieer de route voor de verificatiemelding (verification.notice)

Deze retourneert een scherm dat niet-geverifieerde gebruikers vraagt hun e-mail te controleren.
2

Definieer de verificatiehandler-route (verification.verify)

Wanneer de gebruiker op de link in de e-mail klikt, wordt de ondertekende URL gevalideerd en de verificatie afgerond.
3

Definieer de route voor opnieuw versturen (verification.send)

Verstuurt de verificatiemail opnieuw wanneer de gebruiker deze is kwijtgeraakt.

Routes beschermen

Wil je alleen geverifieerde gebruikers toegang geven, gebruik dan de verified-middleware. Meestal combineer je die met auth.
Bezoekt een niet-geverifieerde gebruiker de route, dan stuurt Laravel die automatisch door naar verification.notice.

Aanpassen

Om de inhoud van de verificatiemail aan te passen, stel je VerifyEmail::toMailUsing in binnen de boot-methode van de AppServiceProvider.

Events

Bij e-mailverificatie wordt het event Illuminate\Auth\Events\Verified afgevuurd. Bij starter kits wordt dit automatisch afgehandeld; bij handmatige implementatie voeg je waar nodig zelf eventverwerking toe.
Laatst gewijzigd op 6 september 2026