diff --git a/frontend/src/lib/api/users.ts b/frontend/src/lib/api/users.ts
index 19f124d7787d07e724092ebe50159898a7f00aad..f90f6d658e9e336eabea154f1f5d000461245faf 100644
--- a/frontend/src/lib/api/users.ts
+++ b/frontend/src/lib/api/users.ts
@@ -14,6 +14,39 @@ export async function getUserAPI(fetch: fetchType, user_id: number): Promise<any
 	return await response.json();
 }
 
+export async function loginAPI(
+    fetch: fetchType,
+    email: string,
+    password: string
+): Promise<{ accessToken: string | null; refreshToken: string | null }> {
+    const response = await fetch(`/tmp-api/v1/auth/login`, {
+        method: 'POST',
+        headers: {
+            'Content-Type': 'application/json',
+            Accept: 'application/json',
+        },
+        credentials: 'include', 
+        body: JSON.stringify({ email, password }),
+    });
+
+    if (!response.ok) {
+        console.error(`Login failed:`, await response.json());
+        return { accessToken: null, refreshToken: null };
+    }
+
+    const cookies = document.cookie.split('; ').reduce((acc, cookie) => {
+        const [key, value] = cookie.split('=');
+        acc[key] = decodeURIComponent(value);
+        return acc;
+    }, {} as Record<string, string>);
+
+    return {
+        accessToken: cookies['access_token'] || null,
+        refreshToken: cookies['refresh_token'] || null,
+    };
+}
+
+
 export async function createUserContactAPI(
 	fetch: fetchType,
 	user_id: number,
diff --git a/frontend/src/routes/tutor/register/+page.svelte b/frontend/src/routes/tutor/register/+page.svelte
index ac0d2260ad4c46ccfeb1acd283ad06cf8742cb06..4061779692064ad118d956f9343c36e8dff3f8a1 100644
--- a/frontend/src/routes/tutor/register/+page.svelte
+++ b/frontend/src/routes/tutor/register/+page.svelte
@@ -5,13 +5,14 @@
 	import { onMount } from 'svelte';
 	import Timeslots from '$lib/components/users/timeslots.svelte';
 	import User from '$lib/types/user';
-	import { getUsersAPI, patchUserAPI, getUserContactsAPI, createUserAPI } from '$lib/api/users';
+	import { getUsersAPI, patchUserAPI, getUserContactsAPI, getUserAPI, loginAPI } from '$lib/api/users';
 	import { Icon, Envelope, Key, UserCircle, Calendar, QuestionMarkCircle } from 'svelte-hero-icons';
 	import Typingtest from '$lib/components/tests/typingtest.svelte';
 	import { formatToUTCDate } from '$lib/utils/date';
 	import type { PageData } from './$types';
 
 	let { data }: { data: PageData } = $props();
+	console.log('Data:', data);
 	let user = data.user;
 
 	let current_step = $state(0);
@@ -24,6 +25,7 @@
 			return;
 		}
 		User.parseAll(await getUsersAPI(fetch));
+		console.log('User:', user);
 
 		if (!user.home_language || !user.target_language || !user.birthdate || !user.gender) {
 			current_step = 3;
@@ -54,59 +56,73 @@
 	let timeslots = 0n;
 
 	async function onRegister() {
-		// Basic validation
-		if (nickname == '' || email == '' || password == '' || confirmPassword == '') {
-			message = $t('register.error.emptyFields');
-			return;
-		}
-		if (password.length < 8) {
-			message = $t('register.error.passwordRules');
-			return;
-		}
-		if (password != confirmPassword) {
-			message = $t('register.error.differentPasswords');
-			return;
-		}
-		const emailRegex = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/;
-		if (!emailRegex.test(email)) {
-			message = $t('register.error.emailRules');
-			return;
-		}
-		message = '';
-
-		try {
-			const response = await fetch('http://127.0.0.1:8000/tmp-api/v1/auth/register', {
-				method: 'POST',
-				headers: {
-					'Content-Type': 'application/json',
-					Accept: 'application/json'
-				},
-				body: JSON.stringify({
-					email,
-					password,
-					nickname,
-					is_tutor: true
-				})
-			});
-
-			if (response.status === 201) {
-				const userId = await response.text();
-				console.log('User created successfully with ID:', userId);
-				message = $t('register.success');
-				return;
-			} else {
-				const errorData = await response.json();
-				console.error('Registration failed:', errorData);
-				message = errorData.detail || $t('register.error.generic');
-			}
-		} catch (error) {
-			console.error('Error during registration:', error);
-			message = $t('register.error.generic');
-		}
-	}
+    if (nickname === '' || email === '' || password === '' || confirmPassword === '') {
+        message = $t('register.error.emptyFields');
+        return;
+    }
+    if (password.length < 8) {
+        message = $t('register.error.passwordRules');
+        return;
+    }
+    if (password !== confirmPassword) {
+        message = $t('register.error.differentPasswords');
+        return;
+    }
+    const emailRegex = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/;
+    if (!emailRegex.test(email)) {
+        message = $t('register.error.emailRules');
+        return;
+    }
+    message = '';
+
+    try {
+        const response = await fetch('http://127.0.0.1:8000/tmp-api/v1/auth/register', {
+            method: 'POST',
+            headers: {
+                'Content-Type': 'application/json',
+                Accept: 'application/json'
+            },
+            body: JSON.stringify({
+                email,
+                password,
+                nickname,
+                is_tutor: true
+            })
+        });
+
+        if (response.status === 201) {
+            const userId = await response.text(); 
+            console.log('User created successfully with ID:', userId);
+			console.log('response:', response);
+			const result = await loginAPI(fetch, email, password);
+			console.log('result:', result);
+
+
+            user = await getUserAPI(fetch, parseInt(userId));
+            if (user) {
+                console.log('User details fetched successfully:', user);
+                message = $t('register.success');
+                current_step++; // Move to the next step
+            } else {
+                console.error('Failed to fetch user details');
+                toastAlert('Failed to fetch user details. Please try again.');
+            }
+        } else {
+            const errorData = await response.json();
+            console.error('Registration failed:', errorData);
+            message = errorData.detail || $t('register.error.generic');
+        }
+    } catch (error) {
+        console.error('Error during registration:', error);
+        message = $t('register.error.generic');
+    }
+}
+
+
 
 	async function onData() {
-		const user_id = user.id;
+		console.log('onData: ', user);
+		const user_id = user?.id;
 
 		if (!user_id) {
 			toastAlert('Failed to get current user ID');