diff --git a/upsmf-entity/pom.xml b/upsmf-entity/pom.xml
index 4748eeb4494ce76ec09a722d4cd05dfa326ba985..f283d5836c19d5f2c9fd70dbeb24e1a92ce1f3d4 100644
--- a/upsmf-entity/pom.xml
+++ b/upsmf-entity/pom.xml
@@ -92,6 +92,14 @@
 			<artifactId>modelmapper</artifactId>
 			<version>3.0.0</version>
 		</dependency>
+		<dependency>
+			<groupId>org.slf4j</groupId>
+			<artifactId>slf4j-api</artifactId>
+		</dependency>
+		<dependency>
+			<groupId>ch.qos.logback</groupId>
+			<artifactId>logback-classic</artifactId>
+		</dependency>
 		<dependency>
 			<groupId>org.upsmf</groupId>
 			<artifactId>upsmf-es-utils</artifactId>
diff --git a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/controller/StudentController.java b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/controller/StudentController.java
index 571000fb7a1e60725e3cde90de2144f3f4e76358..743f2958728d66d4334426bc4aec90d95eef52c6 100644
--- a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/controller/StudentController.java
+++ b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/controller/StudentController.java
@@ -8,6 +8,8 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.*;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import javax.validation.Valid;
 import java.io.IOException;
@@ -17,7 +19,7 @@ import java.util.Optional;
 @RestController
 @RequestMapping("/students")
 public class StudentController {
-
+    private final Logger logger = LoggerFactory.getLogger(StudentController.class);
     @Autowired
     private StudentService studentService;
 
@@ -56,7 +58,27 @@ public class StudentController {
             return ResponseEntity.badRequest().build();
         }
     }
+    @PutMapping("/closePendingFor14Days")
+    public ResponseEntity<?> updateStudentStatusToClosed() {
+        try {
+            List<Student> updatedStudents = studentService.updateStudentStatusToClosed();
+            return ResponseEntity.ok(updatedStudents);
+        } catch (Exception e) {
+            logger.error("Error updating student status based on days", e);
+            return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body("An error occurred while updating student status.");
+        }
+    }
 
+    @GetMapping("/pendingFor21Days")
+    public ResponseEntity<?> getStudentsPendingFor21Days() {
+        try {
+            List<Student> students = studentService.getStudentsPendingForMoreThan21Days();
+            return ResponseEntity.ok(students);
+        } catch (Exception e) {
+            logger.error("Error fetching students pending for 21 days", e);
+            return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body("An error occurred while fetching students.");
+        }
+    }
     @DeleteMapping("/{id}")
     public ResponseEntity<Void> deleteStudent(@PathVariable Long id) {
         try {
@@ -68,9 +90,10 @@ public class StudentController {
     }
 
     @PutMapping("/{studentId}/verify")
-    public ResponseEntity<Student> verifyStudent(@PathVariable Long studentId, @RequestParam("status") VerificationStatus status) {
+    public ResponseEntity<Student> verifyStudent(@PathVariable Long studentId, @RequestParam("status") VerificationStatus status, @RequestParam("remarks") String remarks) {
         Student student = studentService.findById(studentId);
         student.setVerificationStatus(status);
+        student.setAdminRemarks(remarks);
         studentService.save(student);
         return ResponseEntity.ok(student);
     }
diff --git a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/Student.java b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/Student.java
index fef013f978b5a37ccb64c4ab5fb7fc6219c6f5d9..4a2562881448220b2e3e8e5f0407415b276e87b5 100644
--- a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/Student.java
+++ b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/Student.java
@@ -51,8 +51,13 @@ public class Student {
     private String highSchoolYearOfPassing;
     private String intermediateRollNo;
     private String intermediateYearOfPassing;
+    @Enumerated(EnumType.STRING)
     private VerificationStatus verificationStatus = VerificationStatus.PENDING;
     private String provisionalEnrollmentNumber;
+    private String adminRemarks;
+    private LocalDate enrollmentDate;
+    private LocalDate verificationDate;
+
     @ManyToOne
     @JoinColumn(name = "course_id")
     private Course course;
diff --git a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/VerificationStatus.java b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/VerificationStatus.java
index a2ae26474f4cc3d3eaf121339bb44ab0b8f73f17..c6371d305cde69ca9e3afb8a2b4c1bc609c844b6 100644
--- a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/VerificationStatus.java
+++ b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/VerificationStatus.java
@@ -1,5 +1,5 @@
 package com.tarento.upsmf.examsAndAdmissions.model;
 
 public enum VerificationStatus {
-    PENDING, VERIFIED, REJECTED
+    PENDING, VERIFIED, REJECTED, CLOSED
 }
diff --git a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/dto/StudentDto.java b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/dto/StudentDto.java
index d68eec73a34284c3b6f6c776d6d6d0a1d0a2aebe..3d2ac67b82f2e81908b13bc5804b787199565dfc 100644
--- a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/dto/StudentDto.java
+++ b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/model/dto/StudentDto.java
@@ -39,6 +39,8 @@ public class StudentDto {
     private String highSchoolYearOfPassing;
     private String intermediateRollNo;
     private String intermediateYearOfPassing;
+    private String adminRemarks;
+
 
     private MultipartFile highSchoolMarksheet;
     private MultipartFile highSchoolCertificate;
diff --git a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/StudentRepository.java b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/StudentRepository.java
index d478f90b16d530bbb204a9d0523884ed0f1c674a..3ebb1639d13e97dc8fb31961a9cce6b9355b64c3 100644
--- a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/StudentRepository.java
+++ b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/repository/StudentRepository.java
@@ -5,10 +5,14 @@ import com.tarento.upsmf.examsAndAdmissions.model.VerificationStatus;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.stereotype.Repository;
 
+import java.time.LocalDate;
 import java.util.List;
 
 @Repository
 public interface StudentRepository extends JpaRepository<Student, Long> {
     List<Student> findByVerificationStatus(VerificationStatus status);
+    List<Student> findByVerificationDateBeforeAndVerificationStatusNot(LocalDate date, VerificationStatus status);
+    List<Student> findByVerificationDateBeforeAndVerificationStatus(LocalDate date, VerificationStatus status);
+
 
 }
diff --git a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/StudentService.java b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/StudentService.java
index 2ab1bc6b8c6b0b625bc62ff96a3fabca9d7a5038..a1013f1a4673c56d9ac94abf3efa050a4a0d5a17 100644
--- a/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/StudentService.java
+++ b/upsmf-entity/src/main/java/com/tarento/upsmf/examsAndAdmissions/service/StudentService.java
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.Paths;
+import java.time.LocalDate;
 import java.util.List;
 import java.util.Optional;
 import java.util.UUID;
@@ -130,6 +131,23 @@ public class StudentService {
 
         return studentRepository.save(existingStudent);
     }
+    public List<Student> updateStudentStatusToClosed() {
+        LocalDate cutoffDate = LocalDate.now().minusDays(14);
+        List<Student> studentsToClose = studentRepository.findByVerificationDateBeforeAndVerificationStatusNot(cutoffDate, VerificationStatus.CLOSED);
+
+        logger.info("Students found to close: " + studentsToClose.size());
+
+        for (Student student : studentsToClose) {
+            student.setVerificationStatus(VerificationStatus.CLOSED);
+        }
+
+        return studentRepository.saveAll(studentsToClose);
+    }
+
+    public List<Student> getStudentsPendingForMoreThan21Days() {
+        LocalDate twentyOneDaysAgo = LocalDate.now().minusDays(21);
+        return studentRepository.findByVerificationDateBeforeAndVerificationStatus(twentyOneDaysAgo, VerificationStatus.PENDING);
+    }
 
     private void deleteFile(String filePath) {
         if (filePath == null || filePath.isEmpty()) {