Manual attendance recording is still vulnerable to data manipulation, entry delays, and high reliance on manual input. This research focuses on the implementation and integration of the Facial Recognition REST API into a web-based attendance information system to automate attendance recording. The novelty of this research lies in the integration of REST API-based facial recognition services with a three-layer architecture consisting of a camera device, a Raspberry Pi 5-based edge server, and a Laravel-based application server, developed using the Extreme Programming (XP) method, resulting in a modular, responsive, and easily scalable attendance system compared to previous approaches. The system was developed in four sprints over one month with an average speed of 15.5 story points per sprint, based on twelve user stories defined in the planning stage. In the facial recognition module, the identification process utilizes a combination of Haar Cascade for facial position detection, FaceNet for facial embedding formation, and Cosine Similarity for similarity measurement against a reference database consisting of 18 students with 6 reference photos per student. System testing was conducted using three class videos with a resolution of 1920×1080 pixels with an average duration of 5 minutes and 28 seconds. Evaluation of the accuracy of the facial recognition model was part of a collaborative study reviewed separately; this paper focuses on the system's integration performance and functionality. Functional testing using black box methods across 20 scenarios demonstrated that all modules—authentication, master data management, facial registration, facial recognition-based attendance, reporting, and error handling—performed according to specifications, with a consistent system response time of 2–4 seconds. The results demonstrate that the system reduces reliance on manual input, improves record-keeping efficiency, and provides real-time attendance data, and is ready for further development for broader adoption in educational settings.