← Architectural case studies
Business workflow architectureIn development

Auditable Workforce Workflows

Attendance, leave, and payroll workflows built around traceable calculations, independent review, and preserved history.

ASP.NET Core PostgreSQL Razor Pages & APIs

The business problem

What the system needs to handle.

When attendance, leave, and payroll records disagree, a team needs to see how a result was reached. Corrections must account for earlier decisions and payments while keeping the original record available.

Engineering scope

Product engineering for an ASP.NET Core application spanning employee records, attendance evidence, leave, payroll preparation, and employee finance.

Architecture overview

From source evidence to a reviewed result

  1. Attendance & leave
  2. Calculation & review
  3. Posting & correction history
A simplified view of the engineering responsibilities.

Key decisions

Where the design matters.

The choices that shape how the system can be changed, reviewed, and operated.

Explain the calculation

Pay previews combine approved time and leave with effective salary rules. Unresolved evidence is surfaced before a total is treated as ready for review.

Preserve decisions when records change

Reviewed calculations and original slips retain their history. Linked corrections and reversals describe what changed and how the adjustment relates to the earlier record.

Protect the workflow in the database

PostgreSQL supports scope checks, concurrency, and history protection. Related posting effects are handled together so the application can reason about a complete business operation.

Implementation

What has been implemented.

  • Browser workflows and versioned APIs for the business modules.
  • Repository tests covering approvals, corrections, attendance, leave, and finance boundaries.
  • CSV exports and printable statements for reviewing operational records.

Apply this to your project

Have a similar engineering challenge?

Discuss the system, the constraints, and the first useful piece of work.

Discuss your project