Codeworth

Kin-G TechnologiesIT Services, 2025

Automating attendance-linked payroll cycles and employee onboarding for an IT services team

A custom office portal connecting daily attendance to an offset 22nd-to-21st payroll cycle, with automatic absence deductions and self-service onboarding.

Payroll and attendance dashboard displaying monthly working cycle dates and attendance summaries

Problem

Kin-G Technologies does not pay by the calendar month. Its pay period runs from the 22nd of one month to the 21st of the next, so every payroll run means working out which attendance records and which leave requests fall inside a window that never lines up with the calendar.

The absence policy adds a second layer. An unapproved absence costs one and a half days' salary, worked out from a daily rate of gross salary divided by thirty. Approved leave has to be excluded from that penalty, and Sundays are not working days, so they can never count against anyone. Every one of those rules has to be applied correctly, for every employee, every month — and a mistake is not a rounding error but money taken from someone's pay.

Those are rules that are easy to state and easy to get wrong by hand. The company needed a system that applied them exactly as written, the same way each time.

What we built

We built KIN-G +, an internal operations portal that ties daily attendance directly to payroll, employee records and onboarding in one application, using React and Tailwind CSS on the front end with Express, Prisma and PostgreSQL behind it.

Payroll calculated from attendance, not alongside it

Instead of keeping attendance and payroll as separate records to be reconciled at the end of the month, the payroll calculation reads attendance directly. When a payslip is generated, the backend takes the attendance for that 22nd-to-21st cycle, removes approved leave and Sundays, and applies the one-and-a-half-day deduction to each remaining absence, itemised on the payslip. The company's rules live in one place in the code, rather than in whoever happens to be running payroll that month.

Two-stage onboarding invitations

Adding someone new is split in two. An administrator creates the employee record with the details the company owns — designation, reporting line and compensation — and the system issues an invitation link that expires after twenty-four hours. The new hire opens that link and completes their own account, entering their personal and bank details themselves. Sensitive details come straight from the person they belong to, instead of being passed along and retyped by someone else.

Four roles, four views of the same system

The portal is organised around four roles: global administrators, HR managers, managers and employees. Each sees the part of the system that matches their job — employees their own attendance and payslips, managers their team, and HR and administrators the wider operation.

Result

KIN-G + is built and in internal testing ahead of a full rollout, so there are no operational figures or time savings to report yet, and we will not estimate them.

What works today: payroll generated from attendance across the 22nd-to-21st cycle, with approved leave and Sundays excluded and absence deductions applied and itemised automatically; two-stage onboarding with expiring invitation links; and formatted payslips employees can view themselves.

The project reinforced something we now look for early. When a company's rules differ from the defaults most software assumes — an offset pay cycle, a non-linear deduction — encoding those exact rules in a system built around them is often simpler and more dependable than bending a generic tool until it nearly fits.

Itemised employee payslip view showing salary structure and calculated absence deductions
Attendance calendar and daily breakdown table with present, absent, and leave statuses
Employee directory and invitation screen for sending expiring registration links

Something here sound like your problem?

Call and describe it. We will tell you on that call whether we are the right people for it.

All case studies