An employee attendance and leave app needs four parts: mobile check-in by geolocation or by scanning a QR code at the branch, shift and work-week management, leave requests with a clear approval path and calculated balances, and monthly reports exported for payroll. Build it by describing it in Fanann with roles for employees, managers and HR, and configure leave types to match your contracts and your country's labor law.
- how to build an employee attendance app
- attendance and leave management app
- gps attendance app for employees
- qr code attendance system
- shift attendance app for restaurants
How do you build an attendance and leave app for your staff?
An employee attendance and leave app replaces three things that wear out any manager: a sign-in book or fingerprint device that gives no useful reports, leave requests scattered across WhatsApp, and spreadsheets used to calculate pay at month end. Staff check in from their phones, request leave in the same app, managers approve with a tap, and HR gets a ready monthly report. With an AI app builder you describe this in plain language and it gets built.
Why build instead of buying an HR suite? Off-the-shelf HR systems are excellent for companies that need everything: payroll, insurance, hiring and performance reviews. But many small and mid-sized businesses only need attendance and leave, done their way: restaurant shifts, field maintenance crews or branches with different hours. A custom app is simpler and closer to how they actually work.
Who it suits
- Restaurants, cafés and retail shops with shifts and branches.
- Maintenance, contracting and delivery companies with field teams.
- Clinics, training centers and small private schools.
- Offices and startups on flexible or hybrid schedules.
How do employees check in? Comparing methods
| Method | How it works | Suits | Watch out for |
|---|---|---|---|
| Geolocation | Check-in accepted only within a radius around the branch or site | Field teams and branches | GPS accuracy indoors and location privacy |
| QR code at the branch | Staff scan a code on a screen that changes every minute | Offices and shops | A fixed printed code can be photographed and shared |
| Tablet at the entrance | Staff enter a PIN or scan a badge | Factories and warehouses | Needs a fixed device and supervision |
| Selfie at check-in | A photo taken for verification | Limited cases | Photos are sensitive data; use with care and clear consent |
Shifts, work weeks and leave: the data model
This structure covers most small and mid-sized companies and can grow later:
| Table | Key fields |
|---|---|
| Employees | Name, mobile, employee ID, branch, department, line manager, start date, contract type |
| Branches and sites | Name, coordinates, accepted radius in meters, weekly days off |
| Shifts | Name, start and end time, grace period for lateness, break |
| Shift roster | Employee, date, shift |
| Attendance records | Employee, in and out times, method, location, status (on time, late, absent) |
| Leave types | Name, deducts from balance or not, attachment required (such as a medical note) |
| Leave requests | Employee, type, from and to, days, status, approver, note |
| Leave balances | Employee, type, entitlement, used, remaining |
Make weekly days off a setting per branch, not a fixed value. The weekend is usually Friday and Saturday in Saudi Arabia and Saturday and Sunday in the UAE (Friday to Sunday in Sharjah), and businesses like restaurants run all week on shifts. Dates can show in Hijri and Gregorian side by side.
The leave request and approval path
- 1The employee requests
They choose the leave type and dates, see their remaining balance before submitting, and attach a document if required.
- 2The line manager reviews
They get a notification, see who else is off in the same period, then approve or reject with a reason.
- 3HR confirms
For types that need a second approval, such as long or unpaid leave.
- 4Balance and roster update
The balance is deducted automatically and the employee shows as on leave in the shift roster.
- 5Delegation when away
If the manager is on leave, requests go to their delegate so nothing waits a week.
The same path works for other requests: short permissions, fixing a missed check-in or overtime. Start with leave only, then add the rest once the team is used to it.
Permissions
Employees see only their own records and requests. Managers see their team. HR sees everyone and edits settings. Leadership sees reports. More in roles and permissions for staff. Larger companies can use single sign-on (SSO) with company accounts instead of a phone OTP.
Reports, payroll and Ramadan
- Monthly report per employee: days present, lateness in minutes, absences, leave by type, overtime.
- Daily branch report: who is in, who is late, who has not checked in yet, ready for the manager each morning.
- Payroll export: an Excel or CSV file with the columns your accountant or payroll system needs.
- Alerts: an employee has not checked in 15 minutes after their shift started, or forgot to check out.
The app does not calculate or pay salaries unless you decide to build that later. Its job is to hand your accountant clean numbers instead of manual tallies. A metrics dashboard can be built as described in build an admin dashboard.
Employee data privacy
An attendance app collects personal data, location and sometimes medical notes. Practical rules:
- Capture location only at the moment of check-in and check-out, not continuous tracking all day.
- Tell staff in writing what is collected, why and who can see it.
- Medical notes are visible to HR only, not to line managers.
- Set a retention period based on what you need for legal and accounting purposes.
- Keep an audit log of who edited attendance records and when.
A ready prompt to build the attendance and leave app in Fanann
Build me an attendance and leave app, Arabic first (RTL) with English, for a restaurant company with 4 branches and 60 employees. Roles: employee, branch manager, HR, leadership. Sign-in with mobile number and OTP. Check-in and check-out from the phone by scanning a QR code that changes every 60 seconds on a branch screen, plus a check that the employee is within 150 meters of the branch; store location only at the moment of check-in. Shifts: start and end time and a grace period, a weekly roster per branch, days off configurable per branch, and a seasonal Ramadan schedule with start and end dates. Leave types and balances configurable from the HR panel (no default numbers). A leave request shows the employee their balance, is approved by the branch manager and then HR for selected types, with delegation when the manager is away. Medical notes visible to HR only. A daily branch report and a monthly report per employee (attendance, lateness, absence, leave, overtime) with Excel export. Alert when someone has not checked in 15 minutes after their shift. Audit log for any edit. Show me the plan first.
Try it in FanannLaunch checklist and common mistakes
- Check in from inside the branch and from outside the radius; confirm the second is rejected.
- Try a photographed QR code after two minutes and confirm it fails.
- Request leave as an employee and follow the path through to the balance deduction.
- Confirm a branch manager cannot see staff from another branch.
- Reconcile one trial month against your manual count before relying on it.
- Pilot in one branch for two weeks, then roll out.
- Tracking staff location all day
- Leave balances hard-coded in the app
- One weekend for every branch
- No backup approver when the manager is away
- Location at check-in only
- Rules configurable from the HR panel
- Days off and shifts set per branch
- Clear delegation for approvals
For build versus buy, read build internal tools or buy SaaS? and browse internal tools use cases.
Key takeaways
- Choose check-in by the nature of the work: QR for fixed branches, geolocation for field teams.
- Shifts and weekends differ between Saudi Arabia and the UAE and between branches, so make them configurable.
- The approval path matters more than the form: who approves, and what happens when the manager is away?
- Never hard-code leave balances from memory. Configure them from your contracts and labor law and verify with the official body.
- Employee data and location are personal data: collect the minimum and tell staff clearly.
Frequently asked questions
How do I build an employee attendance app?
Can I stop employees checking in from home?
How many days of annual leave should the app give?
Does an attendance app calculate payroll?
Is tracking employee location legal?
Ask your AI assistant about this
Copy this prompt into the AI assistant you use, then add the details of your own case.
I am reading this guide: “How to build an employee attendance and leave app” https://fanann.com/en/blog/build-attendance-hr-app/ My question: how to build an employee attendance app Use that page as a source and explain the answer step by step for my situation, tell me what to check before I start, and cite the page link.