Recording attendance through Biometric / Smart Card readers

Recording attendance through Biometric / Smart Card readers

Attendance data can be synchronized automatically through the biometric / smart card machines also. To enable this feature you will need to get in touch with your Account Manager.

Data which is needed for biometric integration is -
1. Employee ID : the employee ID from database has to be mapped as the Access Card ID in Employee Profile > Official Details. Access Card ID has to be unique across all active employees in the company
2. Time Stamp : this will provide the punch time and date
3. Direction : this will provide whether the punch is In or Out, if this field is not available breaks cannot be displayed
4. Reader ID : this provides information on which reader was used to capture the timestamp, if some readers are inside the office their records need to be excluded other wise wrong data will get created

Functional Design
There are different scenarios under which biometric/smartcard readers are installed.

Base Scenario - there is only one machine on the main door and
a) there is only one reader installed on the door - in this case direction of punch will not be captured
b) there are two readers installed on the door - one reader captures the in time and the other reader captures the out time stamp

Multiple doors in one office -
a) each door has a different readers but all readers are connected to a centralized database - in this case the Synch Service will pick up data from the centralized database
b) each door has a different readers and readers are connected to a different databases - in this case multiple Synch Services will have to be installed and each service will pick up data from one database

Common database across offices - if you have installed readers across locations but are bringing the data to a central location it has many advantages
a) Only one Synch Service is needed to pick up the data
b) Employees can move across offices and they will not need a re-registration

Important - If the employee is on approved leave and he swipes his smart card or marks his attendance through a biometric device then automatically a leave withdrawal request is created in the system

Technical Details
1. The biometric database has to be in MS Access or SQL Server and the data has to be pushed from the readers to the database if data is not pushed then the integration will not work
2. EazeWork would install a windows service on the machine where database is installed, this service is called Synch Service. We would need Windows OS and .Net 4.5 framework for the service to work. The service would run at a predefined time interval (typically it is kept as 30 minutes) and will fetch all the records from the last synchronization and update them in EazeWork servers
3. If for any reason the data has not been updated in the biometric database then the attendance records might start showing incomplete data. Each day's attendance is closed roughly 4 hours after the end of shift time, if complete data has not been received then attendance records will be closed with incomplete data
4. Application Administrator, CEO, HR Managers can review the status of the synchronization service through a dashboard widget as shown below.


If you observe that the Last Service Run time is more than 45 minutes old it means that the service is not running. You will have to restart the service, once you restart the service all the pending timestamps will be pushed to EazeHR servers.

If you observe that Last Service Run time is recent but Last Updated Timestamp is old and you know that employees are marking their attendance then the root cause is that timestamp data is not coming the source database from where Synch Service is picking up data. If you observe this then follow the steps given below -
1. Stop the Synch Service
2. Troubleshoot and ensure that all the timestamps from the readers are updated in the central biometric/smartcard database
3. Restart the Synch Service
If you do not stop the Synch Service then there is a risk that before the next run of Sync Service all the timestamps are not updated in the central biometric/smartcard. Synch Service will not pick up older time stamps once it has updated a more recent timestamp for an employee in EazeHR servers.

If multiple readers are linked to a common database then there is no way to know if a particular reader is not providing data to the central biometric/smartcard database.

Updation of timestamps

Scenario 1 - Only Day Begin In and Day End Out Time is to be shown.
In this case the attendance data will be created simply on the basis of the timestamps and the "Direction" of timestamp is not considered. The first time stamp will be used to mark the In and the time stamps received during the day will not be considered. At the end of day the last time stamp will be used to update the Out time.
Refer to the article on "Linking attendance data and shift timings" for more details.

Scenario 2 - Breaks are also captured
In this scenario the "Direction" timestamp is compulsory. The following rules are applied to convert the time stamps into attendance data.
- if first timestamp is received as "Out" it is not considered
- if two timestamps of same "Direction" are received the second one is not considered and is moved to Unmatched Attendance Log report which is available in Attendance reports
- in a normal case even number of timestamps should be received in pairs of In-time / Out-time for example :
In-time : 08:47 / Out-time : 10:06
In-time : 10:18 / Out-time : 13:03
In-time : 13:18 / Out-time : 16:55
In-time : 17:07 / Out-time : 17:08
In-time : 17:09 / Out-time : 19:22
This data will be shown as shown below on the Attendance Calendar


- if "Enable Auto Time Out" feature is Yes and if odd number of valid timestamps are received then the day end batch job will update the shift end time as the Out-time (there is a very specific scenario that the last In-time stamp is more than the shift end time in which case the Out-time will updated as In-time+1 minute)
- if "Enable Auto Time Out" feature is No and if odd number of valid timestamps are received then the day end batch job will update the record as "Missing Out-Time" record
- if no timestamps are received then days record is updated as Absent by the end of day batch job

Scenario 3 - Timestamps are updated after day end batch job has run. The way this is handled is different in the case break feature is enabled or not.

3a - Break feature is not enabled
In this case any time stamp which is received for previous days is updated in the database on receipt.

3b - Break feature is enabled
Since the day end batch job processes the day's attendance timestamps and closes the record based on the parameters selected in setup. If timestamps for previous days are received after the day's attendance is closed they would be kept in Unmatched Attendance Log during the day. At the end of day they would be processed together with the timestamps received earlier.  But if any manual updation is done of the previous day's records then the timestamps will not be processed.
-----------------------------------------------------------------------------------------------------------------
Example -

Date : 16/June
In-time : 09:15
No other timestamp is received and Enable Auto Time Out is No. System will create a Missing Out-Time record at the end of day on 16th.

Date 17/Jun
During the 10 am synchronization the following timestamps are received
Out-time : 18:25 (date 16/June)
In-time : 09:00 (date 17/June)
The 16th timestamp will be kept and processed during the day end batch job of 17th. If no manual processing has been done on the 16/June attendance record then system will update the Out-time of 16/June as 18:25. If any manual processing like updation of Missing Out-Time by Manager or by HR or submission / approval of time modification requests by employee then the timestamps received after the day end batch job will not be considered.
--------------------------------------------------------------------------------------------------------------------



    • Related Articles

    • Attendance management overview

      As shown below the attendance module covers a large number of processes. While regular attendance can be captured / updated through multiple multiple methods as explained below there are two additional processes which can be also be used if employee ...
    • Linking attendance data and shift timings

      Attendance can be recorded either through a mobile / browser based punch or through a biometric / smart card machine. The biometric / smart card machines also log the In an Out movement of employees. If the employee comes to office around his shift ...
    • Report - Attendance Log

      Menu : Reports > Attendance Reports > Attendance Log This report shows all punches which are being captured from various sources . Data shown in this report is - Method Used : the method which has been used to capture this punch - Date : date of the ...
    • Report - Attendance Details

      Menu : Reports > Attendance Detailed report which gives day wise attendance status of an employee for a given data range. Details of breaks taken and total hours worked are also available. It also shows the location from where the card has swiped if ...
    • Report - Attendance Shift Details

      Menu : Reports > Attendance This report shows daily status of attendance and compares it with the shift timings. This reports shows the following details for an employee - a) has he come late b) has he not worked full hours (short attendance) c) has ...