Nhà thầu tổ chức công trường 3 ca 24/7, công nhân ca đêm làm từ 22:00 đến 06:00 — nhưng bảng lương cuối tháng không có dòng nào ghi "phụ cấp đêm". Không phải vì nhà thầu cố tình, mà vì không ai trong công ty biết rằng Điều 98 BLLĐ 2019 bắt buộc phải trả thêm ít nhất 30%. Đây là loại rủi ro pháp lý im lặng — không bị phát hiện ngay, nhưng khi công nhân khiếu nại hoặc thanh tra lao động vào, số tiền truy thu cộng phạt có thể lên đến vài trăm triệu.
⚖️ 1. Điều 98 BLLĐ 2019 Quy Định Gì?
Bộ luật Lao động 2019 (Luật số 45/2019/QH14, hiệu lực 01/01/2021) quy định rõ tại Điều 98:
📜 Trích Điều 98 BLLĐ 2019 — Tiền lương làm việc vào ban đêm
"Người lao động làm việc vào ban đêm thì được trả thêm ít nhất bằng 30% tiền lương tính theo đơn giá tiền lương hoặc tiền lương thực trả theo công việc của ngày làm việc bình thường."
Hai điểm cần nắm chắc:
- 30% là sàn tối thiểu — nhà thầu không được trả thấp hơn, nhưng có thể thỏa thuận cao hơn trong hợp đồng lao động hoặc thỏa ước tập thể.
- Tính trên đơn giá ngày thường — không phải 30% của tổng thu nhập hay tổng lương tháng.
Khung giờ "ban đêm" theo BLLĐ là gì?
Theo Điều 105 BLLĐ 2019 và Nghị định 145/2020/NĐ-CP: thời gian ban đêm được tính từ 22:00 đêm đến 06:00 sáng hôm sau (8 tiếng). Bất kỳ khoảng thời gian làm việc nào nằm trong khung 22:00–06:00 đều phát sinh quyền nhận phụ cấp đêm 30%.
💡 Overlap một phần cũng tính đủ
Ca chiều 14:00–22:30 → chỉ có 30 phút overlap (22:00–22:30) → vẫn phải tính phụ cấp đêm cho 30 phút đó. Nhiều nhà thầu nghĩ ca chiều kết thúc đúng 22:00 là không có phụ cấp đêm — sai.
🧮 2. Công Thức Tính Phụ Cấp Ca Đêm
Công thức cơ bản (ca đêm thông thường)
Bảng mức OT đêm tích lũy
Khi công nhân làm thêm giờ (OT) trong khung giờ đêm, phụ cấp tích lũy theo cả hai quy định (Điều 97 + Điều 98 BLLĐ):
| Loại OT |
Mức OT ban ngày |
Cộng thêm ca đêm |
Tổng mức trả tối thiểu |
| OT ngày thường (thứ 2–6) |
150% đơn giá |
+30% |
195% đơn giá |
| OT ngày nghỉ cuối tuần |
200% đơn giá |
+30% |
260% đơn giá |
| OT ngày lễ, Tết |
300% đơn giá |
+30% |
390% đơn giá |
⚠️ Cách tính thường bị nhầm
Nhiều kế toán nghĩ: OT đêm ngày thường = 150% + 30% riêng = 180%. SAI. Đúng phải là 150% × 1,3 = 195% (cộng đêm nhân vào hệ số OT, không phải cộng thêm 30 điểm phần trăm). Chênh lệch 15% này nhân với hàng trăm giờ OT cả năm là số tiền không nhỏ.
Ví dụ tính thực tế
Công nhân A, đơn giá 400.000đ/ca (8 giờ), làm OT thêm 3 tiếng trong ca đêm ngày thường:
🏗️ 3. Ca Đêm Trong Thực Tế Công Trường Xây Dựng
Tùy loại công trình, ca đêm xuất hiện dưới nhiều hình thức:
| Loại công trình |
Lý do cần ca đêm |
Khung giờ phổ biến |
Ghi chú phụ cấp |
| Chung cư, cao tầng |
Đổ bê tông sàn lớn — không ngắt ca giữa chừng |
20:00–06:00 (10h) |
Toàn bộ 22:00–06:00 tính đêm (8h) |
| Hầm, cầu, đường |
Tránh kẹt xe, thi công ban ngày bị cản |
22:00–05:00 (7h) |
Toàn bộ ca = ca đêm |
| Công trình trọng điểm |
Tiến độ gấp, 3 ca 24/7 |
22:00–06:00 (overnight) |
is_overnight=true, phụ cấp bắt buộc |
| Xây nhà phố, biệt thự |
Đổ cột, đà — ít khi có ca đêm thực sự |
Hiếm |
Chỉ phát sinh khi OT qua 22:00 |
Ca "overnight" — loại hay gặp nhất trong 3 ca 24/7
Ca đêm điển hình 22:00–06:00 là ca xuyên đêm (overnight shift): giờ kết thúc (06:00) nhỏ hơn giờ bắt đầu (22:00) → hệ thống tự nhận diện là overnight. Đây là ca toàn bộ nằm trong khung đêm — phụ cấp áp dụng cho 100% giờ làm, không phải một phần.
🔢 Giờ làm thực tế ca đêm 3 ca
3 ca × 8 giờ = 24 giờ/ngày. Nhưng thực tế mỗi ca cần khoảng 1 giờ giao ca + nghỉ giải lao → effective_hours thường là 7 giờ/ca (không phải 8). Đây là quy ước phổ biến trong ngành — PM cần config đúng để tính công và lương chính xác.
🚨 4. 5 Bẫy Pháp Lý Nhà Thầu Hay Mắc
-
1
Nhầm khung giờ đêm: 22:00–05:00 thay vì 22:00–06:00
Một số nhà thầu tính ca đêm kết thúc lúc 05:00 — thiếu đúng 1 tiếng phụ cấp. Với công trường 50 người, sai 1 tiếng/ngày mỗi ca = 50 tiếng/ngày → cả tháng là hơn 1.000 giờ không được trả đúng.
Khung đêm theo BLLĐ là 22:00–06:00 (8 tiếng cố định). Không thể rút ngắn.
-
2
Không tính phụ cấp cho ca overlap một phần
Ca chiều 14:00–22:30 → 30 phút cuối vào vùng đêm → vẫn phải tính. Ca sáng 05:00–13:00 → 1 tiếng đầu vào vùng đêm (05:00–06:00) → vẫn phải tính.
Bất kỳ phần nào của ca nằm trong 22:00–06:00 đều phát sinh phụ cấp đêm cho đúng phần đó.
-
3
Cộng 30% vào tổng thu nhập thay vì đơn giá ngày thường
Tổng thu nhập công nhân bao gồm nhiều khoản: lương cơ bản, BHXH người sử dụng, phụ cấp ăn, đi lại... Tính 30% trên tổng là sai. Chỉ tính 30% trên đơn giá của công việc ngày thường.
Phụ cấp đêm = Đơn giá ca ngày thường × 30%. Các khoản phụ cấp khác không đưa vào cơ sở tính.
-
4
OT đêm tính sai: cộng thêm 30 điểm % thay vì nhân hệ số 1,3
OT ngày thường 150%, nghĩ OT đêm = 150% + 30% = 180%. Thực tế phải là 150% × 1,3 = 195%. Chênh 15% mỗi giờ OT.
OT đêm = Hệ số OT ngày × 1,3. Nhân chứ không cộng thêm 30 điểm phần trăm.
-
5
Không config phụ cấp đêm vì nghĩ "không có ca đêm chính thức"
Nhiều công trường không có ca đêm chính thức nhưng hay xảy ra OT qua 22:00. Không config → khi OT qua 22:00 hệ thống không tự thêm phụ cấp → công nhân bị thiếu tiền.
Config night_premium_rate ngay khi setup dự án — dù chưa có kế hoạch ca đêm, phòng trường hợp OT phát sinh.
🤖 5. GEM AI PM Pro Xử Lý Phụ Cấp Ca Đêm Như Thế Nào?
Thay vì tính thủ công với nhiều nguy cơ sai sót, GEM AI PM Pro tích hợp phụ cấp ca đêm vào luồng chấm công và bảng lương tự động, tuân thủ đúng Điều 98 BLLĐ 2019:
⚙️ Cơ chế tự động theo chuẩn BLLĐ
🛡️
Validate tối thiểu 30%: Trường night_premium_rate trong ProjectConfigPanel có validation — không cho phép nhập giá trị thấp hơn 30. PM có thể tăng lên (35%, 40%) nhưng không thể kéo xuống dưới sàn luật định.
🔍
Tự động nhận diện ca đêm: Khi PM config ShiftDefinition, hệ thống tự kiểm tra overlap với khung 22:00–06:00. Nếu ca bắt đầu trước 06:00 hoặc kết thúc sau 22:00 → night_premium = true. Ca overnight (end_time < start_time) luôn được đánh dấu đêm.
📱
Tổ trưởng chọn ca khi chấm công: Màn hình L0 (tổ trưởng mobile) hiển thị danh sách ca đang mở. Khi chọn ca đêm, hệ thống ghi shift_id tương ứng và tự tính phụ cấp khi xuất lương — không cần nhớ hay tính tay.
💰
Bảng lương minh bạch: PayrollTab tổng hợp công theo từng ca, hiển thị riêng dòng "Phụ cấp ca đêm" trước khi xuất cho kế toán — công nhân xem bảng công trên điện thoại cũng thấy rõ số giờ đêm và khoản phụ cấp tương ứng.
📊
Mức OT đêm cấu hình linh hoạt: Ba mức night_ot_weekday_rate (45%), night_ot_weekend_rate (90%), night_ot_holiday_rate (135%) — PM có thể điều chỉnh theo thỏa thuận với công nhân, miễn không thấp hơn quy định BLLĐ.
📊 6. Case Study — Công Trường Hầm Chui Giao Thông Bình Dương
🏗️ Tình huống thực tế
Dự án: Hầm chui giao thông đô thị, tỉnh Bình Dương. 3 ca 24/7 trong giai đoạn đào hầm. 60 công nhân, trong đó 20 người/ca đêm (22:00–06:00), đơn giá 420.000đ/ca.
Trước khi chuẩn hóa: Kế toán công trường tính lương thủ công trên Excel, cột "phụ cấp đêm" không có — kế toán hiểu nhầm là lương đã bao gồm tất cả. Sau 3 tháng, 1 công nhân khiếu nại → kiểm tra → phát hiện toàn bộ 3 ca đêm chưa có phụ cấp. Số tiền truy thu: 20 người × 90 ca × 120.000đ = 216.000.000đ + chi phí xử lý tranh chấp.
Sau khi dùng GEM AI PM Pro: PM config 3 ca trong ProjectConfigPanel:
- Ca sáng: 06:00–14:00 (7h effective, night_premium=false)
- Ca chiều: 14:00–22:00 (7h effective, night_premium=false)
- Ca đêm: 22:00–06:00 (7h effective, is_overnight=true, night_premium=true, rate=30%)
Hệ thống tự động tính phụ cấp mỗi khi tổ trưởng chấm công ca đêm. Bảng lương tháng tiếp theo: 0 tranh chấp, công nhân ca đêm nhận đủ phụ cấp, thể hiện rõ trong bảng công cá nhân trên điện thoại.
Kết quả tài chính: Phụ cấp đêm 120.000đ/ca/người → tháng 6 ngày làm = 720.000đ thêm/tháng/người → nhà thầu giữ được thợ lành nghề vì minh bạch và công bằng (turnover ca đêm giảm từ 3–4 người bỏ việc/tháng xuống còn 0–1).
✅ 7. Checklist Nhà Thầu Trước Khi Triển Khai Ca Đêm
-
1
Xác định khung giờ ca đêm trong hợp đồng lao động
Ghi rõ giờ ca đêm (22:00–06:00), đơn giá ca, mức phụ cấp ≥ 30%. Ký trước khi công nhân lên công trường ca đêm lần đầu.
-
2
Config ShiftDefinition trong hệ thống quản lý
Đặt start_time, end_time, break_minutes, effective_hours. Hệ thống tự detect is_overnight và night_premium — kiểm tra lại trước khi save.
-
3
Kiểm tra night_premium_rate ≥ 30
Mức 30% là sàn pháp lý. Nếu có thỏa thuận riêng cao hơn (35%, 40%) → config đúng theo thỏa thuận. Không để mặc định rồi quên.
-
4
Huấn luyện tổ trưởng chọn đúng ca khi chấm công
Tổ trưởng cần biết chọn "Ca đêm" (không phải "Ca hành chính") khi chấm. Sai ca → sai phụ cấp → tranh chấp.
-
5
Kiểm tra bảng lương thử trước khi xuất chính thức
Xuất thử bảng lương tháng đầu, kiểm tra có dòng "Phụ cấp ca đêm" với số tiền đúng công thức. Nếu sai → sửa config, không sửa số liệu sau.
-
6
Lưu trữ hồ sơ chứng minh
Bảng chấm công có ghi rõ ca đêm, bảng lương có dòng phụ cấp → lưu ít nhất 5 năm theo quy định lao động. Đây là bằng chứng khi thanh tra hoặc khiếu nại.
⚡ Tóm Tắt 30 Giây
- Điều 98 BLLĐ 2019: làm việc trong khung 22:00–06:00 → phải trả thêm ≥ 30% đơn giá ca ngày thường.
- 30% là sàn — không thể thấp hơn; có thể thỏa thuận cao hơn.
- OT đêm = Hệ số OT × 1,3 (nhân, không cộng thêm 30 điểm %).
- Ca overlap một phần với 22:00–06:00 vẫn tính phụ cấp cho phần overlap.
- Ca overnight (22:00–06:00) tự động = 100% phụ cấp đêm.
- GEM AI PM Pro validate không cho config dưới 30%, tự detect ca đêm, tự tính vào bảng lương.
Hết Tính Phụ Cấp Đêm Thủ Công, Hết Sai Sót Pháp Lý
GEM AI PM Pro tự động nhận diện ca đêm, validate đúng Điều 98 BLLĐ, xuất bảng lương có phụ cấp đầy đủ — nhà thầu không cần nhớ công thức, không lo thanh tra.
Dùng Thử 30 Ngày Miễn Phí
Tài khoản demo: demo@gemclaudepm.com / Demo2026 · Không cần thẻ tín dụng