Auto attendance when employee login to ERP

Hi, I have created shift type and enabled “Enable Auto Attendance”. We don’t use a biometric device. I want attendance to be marked automatically as soon as my employee gets logged-in to ERP.

How do we achieve this?


Kindly refer to the below posts for your reference; the same query has been discussed here:


Hi Reema,

Thanks very much for the response. Can ERP not add Employee Checkins and Checkouts automatically when an employee 1st login and last logout for the day instead of creating check-in and check-out manually?

I actually want attendance to be marked as soon as they login?

Hi @Reema_Mehta

I have attached a screenshot for your quick ref. This is what we created our shift type. Please help how this will mark attendance automatically as soon as our employee logs in to the ERP


Unfortunately, we do not have an AI that will automatically mark the attendance. Yes, if you are using a biometric system, then the punch in and out will be done automatically but since you are not using it, you will have to create the checkins manually.

Also, kindly refer to the threads that I have mention, you will get your solution there.


Hi Reema, Can’t attendance be marked as soon as a user login?

Further as suggested by you and as mentioned in another links you shared, we created checkins manually but attendance was not automatically marked. what can be the problem?


No, currently we do not have that feature of automatically marking attendance when you login into the system. Too much AI :wink: unless you make one.


ok, thanks for such a prompt response.

We also tried to create checkins manually. But that didn’t also work… would appreciate a help in this regard.


You need to update the ‘Last Sync Date’ in the shift type. Kindly refer to the below link, the solution has been given here:


Hello !!

Here are solutions

Just paste this server script

if doc.operation == 'Login':
 employee_name_for_auto_attandenace = doc.full_name
 today_attendance_date =
 doctype = 'Attendance',
 employee_name = 'employee_name_for_auto_attandenace',
 attendance_date = today_attendance_date
 frappe.msgprint(msg=('Attendance for ' + doc.full_name + 'has been created'))


1 Like

where shall i paste?

For the record, there’s no menu for this, but you can change the URL to:

http://YOUR_IP:8001/desk#List/Server Script/List

To reach the Server Script screen.