diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts
index 52a961c6c2cfcf8ae3d4aa8822cf753cdd1ae978..cc9f16a2572084418e8084ac0e8436e89d5fe78e 100644
--- a/src/app/app-routing.module.ts
+++ b/src/app/app-routing.module.ts
@@ -5,6 +5,7 @@ import { HomeComponent } from './home/home.component';
 import { LegalNoticeComponent } from './legal-notice/legal-notice.component';
 import { StructureDetailsComponent } from './structure-list/components/structure-details/structure-details.component';
 import { StructureListComponent } from './structure-list/structure-list.component';
+import { UserVerificationComponent } from './user-verification/user-verification.component';
 
 const routes: Routes = [
   { path: 'print', outlet: 'print', children: [{ path: 'structure', component: StructureDetailsComponent }] },
@@ -36,6 +37,10 @@ const routes: Routes = [
     path: 'about',
     component: AboutComponent,
   },
+  {
+    path: 'users/verify/:id',
+    component: UserVerificationComponent,
+  },
   {
     path: '**',
     redirectTo: 'home',
diff --git a/src/app/app.module.ts b/src/app/app.module.ts
index e951cd68bad1da63920dfe5dc9a205f29dae98db..02649bb0928321b50390bc3aee7092d6fcdc9ef5 100644
--- a/src/app/app.module.ts
+++ b/src/app/app.module.ts
@@ -22,6 +22,7 @@ import { ModalFilterComponent } from './structure-list/components/modal-filter/m
 import { LegalNoticeComponent } from './legal-notice/legal-notice.component';
 import { AboutComponent } from './about/about.component';
 import { MenuPhoneComponent } from './menu-phone/menu-phone.component';
+import { UserVerificationComponent } from './user-verification/user-verification.component';
 
 @NgModule({
   declarations: [
@@ -38,6 +39,7 @@ import { MenuPhoneComponent } from './menu-phone/menu-phone.component';
     LegalNoticeComponent,
     AboutComponent,
     MenuPhoneComponent,
+    UserVerificationComponent,
   ],
   imports: [
     BrowserModule,
diff --git a/src/app/services/auth.service.ts b/src/app/services/auth.service.ts
index 1341f4aa30df4ab03c95732004cab8a1d9671d71..0a4e3810bdc8e0621aaf4871ca7d3e862cf4413d 100644
--- a/src/app/services/auth.service.ts
+++ b/src/app/services/auth.service.ts
@@ -32,4 +32,10 @@ export class AuthService {
   public register(user: User): Observable<any> {
     return this.http.post('api/users', user);
   }
+
+  public verifyUser(userId: string, token: string): Observable<any> {
+    return this.http.post(`api/users/verify/${userId}`, null, {
+      params: { token },
+    });
+  }
 }
diff --git a/src/app/user-verification/user-verification.component.html b/src/app/user-verification/user-verification.component.html
new file mode 100644
index 0000000000000000000000000000000000000000..acb513c81be1f0418d4ccdec20f41e2644e76a97
--- /dev/null
+++ b/src/app/user-verification/user-verification.component.html
@@ -0,0 +1,13 @@
+<div fxLayout="column" class="content-container">
+  <h1 style="display: none">Vérification du mail utilisateur</h1>
+  <div class="section-container" fxLayout="colum" fxLayoutAlign="center center">
+    <p *ngIf="!verificationSuccess && !verificationIssue">Votre email est en cours de vérification ...</p>
+    <p *ngIf="verificationSuccess">
+      Vous avez correctement validé l'email associé a votre compte. Vous pouvez dès maintenant vous connecter au site.
+    </p>
+    <p *ngIf="verificationIssue">
+      Une erreur est survenue lors de la validation de votre email... Veuillez envoyer un mail au support.
+    </p>
+    <div></div>
+  </div>
+</div>
diff --git a/src/app/user-verification/user-verification.component.scss b/src/app/user-verification/user-verification.component.scss
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/app/user-verification/user-verification.component.spec.ts b/src/app/user-verification/user-verification.component.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..241a7b6ad2873d8422d1b0d5563d9e0d77a0a3ec
--- /dev/null
+++ b/src/app/user-verification/user-verification.component.spec.ts
@@ -0,0 +1,25 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { UserVerificationComponent } from './user-verification.component';
+
+describe('UserVerificationComponent', () => {
+  let component: UserVerificationComponent;
+  let fixture: ComponentFixture<UserVerificationComponent>;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      declarations: [ UserVerificationComponent ]
+    })
+    .compileComponents();
+  });
+
+  beforeEach(() => {
+    fixture = TestBed.createComponent(UserVerificationComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
diff --git a/src/app/user-verification/user-verification.component.ts b/src/app/user-verification/user-verification.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..e5c0e4e7903c5777b94d1d6e536f8af442850414
--- /dev/null
+++ b/src/app/user-verification/user-verification.component.ts
@@ -0,0 +1,37 @@
+import { Component, OnInit } from '@angular/core';
+import { ActivatedRoute } from '@angular/router';
+import { AuthService } from '../services/auth.service';
+
+@Component({
+  selector: 'app-user-verification',
+  templateUrl: './user-verification.component.html',
+  styleUrls: ['./user-verification.component.scss'],
+})
+export class UserVerificationComponent implements OnInit {
+  public userId: string;
+  public token: string;
+  public verificationSuccess = false;
+  public verificationIssue = false;
+
+  constructor(private activatedRoute: ActivatedRoute, private authService: AuthService) {
+    this.activatedRoute.queryParams.subscribe((params) => {
+      this.token = params['token'];
+    });
+  }
+
+  ngOnInit(): void {
+    this.userId = this.activatedRoute.snapshot.paramMap.get('id');
+    this.sendVerification();
+  }
+
+  private sendVerification(): void {
+    this.authService.verifyUser(this.userId, this.token).subscribe(
+      () => {
+        this.verificationSuccess = true;
+      },
+      () => {
+        this.verificationIssue = true;
+      }
+    );
+  }
+}