Workday Time Tracking: tính giờ, tăng ca và nối payroll
Bài này là phần “máy tính” của chấm công: từ giờ nhân viên khai thành giờ trả lương, qua các time calculation — nơi luật lao động được mã hoá thành cấu hình.
Time calculation: 13 loại, một logic
Phần tiêu đề “Time calculation: 13 loại, một logic”Quy tắc biến reported time thành calculated time: nhân viên khai 10 giờ → quy tắc tách thành 8h Thường + 2h Tăng ca → Payroll trả đúng đơn giá từng loại. Mỗi block được gán calculation tag — tag chính là cầu nối sang earning bên payroll.
Các loại dùng nhiều nhất ở Việt Nam:
| Loại | Bài toán |
|---|---|
| Standard Overtime | Tăng ca vượt ngưỡng ngày/tuần/kỳ (chọn cả chu kỳ 24h cuộn) |
| Shift Differential | Phụ cấp ca đêm — tag giờ rơi trong khung (ví dụ 22:00–06:00), Workday tự tách block vắt qua mốc |
| Consecutive Day | Làm ngày thứ N liên tiếp thì hưởng mức cao hơn (đếm xuyên tuần được) |
| Minimum Daily/Weekly Hours | Bảo đảm số giờ tối thiểu — tự sinh block bù |
| Minimum Rest | Tính phụ trội khi không đủ thời gian nghỉ giữa hai ca |
| Time Block Conditional / Create | ”Dao đa năng”: tag theo điều kiện (Chủ nhật, ngày lễ) hoặc sinh block mới (thưởng giờ, giờ nghỉ lễ) |
Ví dụ đáng học: kết hợp shift differential + calculated field để làm quy tắc “quá nửa ca rơi vào khung đêm thì cả ca hưởng phụ cấp” — rất gần cách tính phụ cấp ca đêm của nhiều doanh nghiệp VN.
Thứ tự ưu tiên — sai là trả lương sai
Phần tiêu đề “Thứ tự ưu tiên — sai là trả lương sai”flowchart LR P1["Ưu tiên 10<br/>Double time"] --> P2["Ưu tiên 20<br/>OT theo NGÀY"] --> P3["Ưu tiên 30<br/>OT theo TUẦN<br/>(chỉ đếm giờ còn tag Thường)"] --> P4["Ưu tiên cuối<br/>OT theo THÁNG<br/>(không quy tắc nào<br/>tham chiếu được nữa)"]
Ba nguyên tắc: quy tắc nào sinh dữ liệu cho quy tắc khác thì chạy trước; OT theo tháng luôn chạy cuối; để khoảng trống giữa các số ưu tiên và dùng dải riêng theo quốc gia để dễ chèn về sau.
Calculation group quyết định ai chịu quy tắc nào — chọn worker-based hay position-based khi tạo là không đổi được, và người làm nhiều vị trí sẽ ra kết quả OT rất khác nhau giữa hai kiểu (position-based tính riêng từng vị trí, worker-based cộng dồn).
Xác nhận cuối ca và kiểm tra hợp lệ
Phần tiêu đề “Xác nhận cuối ca và kiểm tra hợp lệ”- Time attestation: bảng câu hỏi khi check-out cuối ca (“bạn có được nghỉ đủ giờ ăn không?”, “có bị thương trong ca không?”) — bằng chứng tuân thủ, khỏi phải hỏi lại sau. Chỉ chạy với phương thức check in/out, không dùng được với máy chấm công bên thứ ba.
- Time entry validation: Critical chặn submit, Warning cho qua. Gotcha âm thầm nhất chương: mọi điều kiện trong một rule phải cùng một business object — trộn Time Day với Time Week thì validation không chạy mà cũng không báo lỗi.
- Block thiếu giờ Out bị loại khỏi mọi calculation — chạy report tìm incomplete blocks trước khi khoá kỳ.
Nhập và duyệt giờ hàng loạt
Phần tiêu đề “Nhập và duyệt giờ hàng loạt”Có đủ đường cho quy mô lớn: Mass Enter Time (cả nhóm cùng một ngày, ví dụ nghỉ lễ), Mass Auto-fill from Schedule (sinh giờ từ lịch ca), Auto Submit Time (một lịch thay cho 52 lần submit/năm), Mass Approve qua Mass Operation Management (≤50.000 event — nhớ tick Send to Completion, không thì quy trình dở dang).
Duyệt giờ có hai report tách vai: Review Time cho quản lý cùng đơn vị, Review Project Time cho quản lý dự án khác đơn vị. Điểm hay: AI phát hiện giờ bất thường — mô hình học từ chính lịch sử duyệt/từ chối của quản lý, chấm điểm những block lạ (giờ vào ra khác thường, ngày trong tuần lạ, worktag lạ). Khuyến nghị của Workday rất thẳng: chạy Time Tracking ít nhất 1 năm rồi mới bật, và để mô hình học ≥3 tuần trên Production.
Kèm theo: Attendance Management chấm điểm chuyên cần (đi muộn > 10 phút = X điểm, điểm hết hạn sau 1–366 ngày, quản lý miễn điểm có lý do) và no-show tự sinh khi hết thời gian ân hạn mà không ai check-in.
Nối sang Payroll
Phần tiêu đề “Nối sang Payroll”Payroll kéo giờ đã duyệt theo calculation tag đã map vào earning; kỳ chấm công map với kỳ lương qua period schedule, trong đó lock date chặn nhập giờ khi đang chạy lương. Bốn điều hay bị hỏi:
- Nhân viên vừa có giờ chấm công vừa có payroll input cùng earning → Payroll xử lý cả hai trên hai dòng riêng, không đè nhau.
- Nhập giờ sau khi đã chạy lương → chạy Retro Pay Calculation trước kỳ sau; giờ đã trả rồi mà sửa sẽ mang trạng thái Modified after Paid.
- Chỉ muốn đẩy giờ ngoại lệ sang lương? Đơn giản là không map tag “Thường” vào earning nào.
- Thời điểm mốc mở/khoá kỳ luôn tính theo giờ Pacific — đừng để lệch ngày với đội vận hành ở VN.
Với nghỉ phép: Workday không gửi calculation tag của time off sang payroll — phải map qua Absence Component Related Calculations, đây là chỗ hay sai khi trả lương ngày phép.
Chắt lọc từ Workday HCM Administrator Guide (Time Calculations, Attestations, Entering & Approving Time tr.2887–3080) — doc.workday.com.