Bàn làm việc
🇻🇳 FOXAI Việt Nam
🇱🇦 FOXAI Laos
🔔6
·
—
—

Bàn làm việc

Thứ Bảy, 07/03/2026 · Vai trò: Chuyên viên C&B · Phạm vi: FOXAI Việt Nam 🇻🇳 + FOXAI Laos Co., Ltd 🇱🇦 (hợp nhất)
Hợp nhất
🇻🇳 VN
🇱🇦 LA
Tổng nhân sự đang làm việc
1.284
🇻🇳 912 · 🇱🇦 372 · 34 thử việc · 8 tạm hoãn
Quỹ lương hợp nhất — kỳ 03/2026
18,98 tỷ ₫
VN 15,71 tỷ ₫ + LA 3,27 tỷ ₫ quy đổi · vì sao ra số này?
Việc chờ tôi xử lý
14
4 đơn nghỉ · 7 hợp đồng · 3 chấm công
Cảnh báo tuân thủ
6
▲ 2 mức đỏ (trần OT) · 3 vàng · 1 nhắc nhở
Kỳ lương đang chạy — hai pháp nhân, hai dòng thời gian
một hệ thống · hai bộ luật · hai đồng tiền · một báo cáo hợp nhất
🇻🇳 FOXAI Việt Nam
Kỳ 03/2026 · pack VN-2026.01 · 912 NV · 22 công chuẩn (nghỉ T7+CN)
✓MỞ KỲ
✓THU CÔNG
✓TÍNH THỬ
4SOÁT XÉT
5DUYỆT
6PHÁT HÀNH
7CHI TRẢ
Run 2 (REGULAR + gộp RETRO) chạy 06/03 · net dự kiến 15,71 tỷ ₫ · 12 NV lệch >30% cần giải trình
Gồm truy lĩnh hồi tố QĐ-2026/031: 6.000.000 ₫ (P.T.Hằng, 22→25tr từ 01/01, QĐ nhập 05/03) · chốt công 25/03 · chi trả 05/04
🇱🇦 FOXAI Laos Co., Ltd
Kỳ 03/2026 · pack LA-2024.10 · 372 NV · 26 công chuẩn (chỉ nghỉ CN)
✓MỞ KỲ
2THU CÔNG
3TÍNH THỬ
4SOÁT XÉT
5DUYỆT
6PHÁT HÀNH
7CHI TRẢ
Net dự kiến 2,84 tỷ ₭ · bắt buộc chi bằng LAK · tỷ giá 1 ₭ = 1,15 ₫ đóng băng vào snapshot 25/03 (COMMERCIAL_BANK · BCEL)
Đang chờ dữ liệu máy chấm công nhà máy Vientiane · § LA-2026.07 DRAFT — chờ xác minh văn bản gốc
Việc của tôi
14 chờ xử lý
hàng đợi theo vai C&B
4Đơn nghỉ chờ duyệt
Đặng Minh Tú — Phép năm 2 ngày, 12–13/03 (Th5–Th6) · quỹ còn 11 → 9
Hoàng Thị Ngọc — Nghỉ kết hôn 3 ngày, 23–25/03 · nguyên lương, không trừ quỹ phép
Bounmy Keo 🇱🇦 — Nghỉ ốm 3 ngày, 05–07/03 · 📎 giấy bác sĩ (bắt buộc) · quỹ ốm LA 30 ngày/năm
Somchai Vongsa 🇱🇦 — Phép năm 1 ngày, 16/03 · quỹ LA 15 ngày, còn 12
7Hợp đồng & biến động
Lê Văn Hùng — HĐ xác định thời hạn lần 2 hết hạn 31/03 → lần ký tiếp bắt buộc HĐ vô thời hạn
Ngô Thị Lan Anh — hết thử việc 60 ngày vào 10/04 · lương thử việc 13.600.000 ₫ (85% × 16tr) · cần đánh giá chuyển chính thức
Phan Văn Đức — nghỉ việc 20/03 → wizard offboarding · thanh toán 4,5 ngày phép chưa dùng (encash)
+ 4 HĐ tuyển mới đợt 02/2026 đang chờ ký số (tích hợp CA)
3Exception chấm côngBLOCKING — chặn chốt kỳ
Trần Quốc Bảo — MISSING_OUT thứ Ba 10/03 (máy vân tay hỏng) · chờ punch_adjustment có lý do + người duyệt — punch gốc không sửa
2 CN chuyền Bắc Ninh — NO_PUNCH 06/03 · máy mất kết nối 3h12′ (ngưỡng cảnh báo thiết bị: 2 giờ)
Cảnh báo tuân thủ
6
tổng hợp 2 quốc gia
▲
Vượt trần OT tháng — Trần Quốc Bảo: 43,5h / 40h (VN)
Luỹ kế năm 118h/200h · hệ thống chỉ cảnh báo, không tự cắt giờ — con người quyết định
▲
Vượt trần OT tháng — Nguyễn Hữu Phước: 41,5h / 40h (VN)
Cũng nằm trong nhóm 12 NV lệch lương >30% (+38% so kỳ trước, do OT)
◔
HĐ xác định thời hạn lần 2 của Lê Văn Hùng hết hạn 31/03
BLLĐ 2019: chỉ được ký tối đa 2 lần HĐ xác định thời hạn → lần tới bắt buộc vô thời hạn · tạo HĐ mới
◔
GPLĐ của Nguyễn Văn Tùng (VN làm tại Lào) hết hạn 05/2026
Tỷ lệ LĐ nước ngoài pháp nhân Lào: 32/372 = 8,6% — đã dùng 86% hạn ngạch 10%
§
Country pack LA-2026.07 (DRAFT) chờ xác minh văn bản gốc
Ngưỡng miễn thuế TNCN Lào 2.500.000 ₭ — CẦN XÁC MINH VĂN BẢN GỐC trước khi kích hoạt; kỳ 3 vẫn chạy pack LA-2024.10
●
Phép tồn 2025 (carry-over) hết hạn 31/03/2026
47 NV còn tổng 96,5 ngày (P.T.Hằng còn 2,5) · gửi nhắc qua ESS
Tuyển mới 6 tháng gần nhất
VN 82 · LA 31 · *T3 tính đến 07/03
■ 🇻🇳 Việt Nam■ 🇱🇦 Lào
Phân bố nhân sự theo pháp nhân
as-of 07/03/2026
1.284
🇻🇳 FOXAI Việt Nam — 912 (71,0%)
870 chính thức · 34 thử việc · 8 tạm hoãn HĐ
🇱🇦 FOXAI Laos Co., Ltd — 372 (29,0%)
trong đó 32 lao động nước ngoài (8,6% / trần 10%)
Lịch phong toả deploy — kỳ 03/2026
22/03 → 07/04
tự sinh từ payroll_period của mọi tenant
Tháng 3/2026
Tháng 4/2026
■ phong toả ■ 25/03 chốt công ■ 05/04 trả lương ◯ hôm nay 07/03
Quy tắc vàng: không deploy trong 3 ngày trước chốt công (22–25/03), 2 ngày sau trả lương (05–07/04) và trọn tuần chạy lương của tenant Enterprise. Lịch phong toả sinh tự động từ payroll_period — không dựa vào trí nhớ của DevOps.
Trạng thái các phân hệ
bấm để đi tới màn tương ứng
◧ Hồ sơ nhân sự
1.284 hồ sơ · 34 thử việc · 8 tạm hoãn
ổn định
▤ Hợp đồng
7 chờ xử lý · Hùng hết hạn 31/03
cần chú ý
◔ Chấm công
3 exception BLOCKING — chặn chốt kỳ
3 exception
● Nghỉ phép
4 đơn chờ duyệt · carry-over hết hạn 31/03
4 chờ duyệt
§ Lương VN
bước 4/7 SOÁT XÉT · 12 lệch >30%
đang soát xét
§ Lương LA
bước 2/7 THU CÔNG · pack chờ xác minh
chờ dữ liệu
▸ ESS Mobile
1.031/1.284 NV đã kích hoạt (80%)
hoạt động
⋮ Danh mục
42 danh mục · 1 lần nhập có 3 dòng lỗi
1 việc nhỏ

ESS Mobile — hai vai, một ứng dụng

Trái: nhân viên (Phạm Thu Hằng) · Phải: quản lý (Vũ Đình Long) · Chuyển ngôn ngữ Việt ⇄ Lào ngay trên khung trái
VI
ລາວ
Chào buổi sáng,
Phạm Thu Hằng
NV2026-0412 · CV Kinh doanh cao cấp · G5
Ca hôm nay — Thứ Bảy 07/03: nghỉ tuần (VN tuần 5 ngày)
Ca kế tiếp: HC 08:00–17:00 · Thứ Hai 09/03
● Văn phòng HN — cách 34 m / bán kính 200 m ✓
⚠ Bật mock location → chặn punch + ghi SUSPICIOUS_DEVICE
Hôm nay là ngày nghỉ tuần — giờ làm sẽ vào rổ OT 200% và cần đăng ký làm thêm trước
Phiếu lươngđã phát hànhkỳ 03/2026
Thực lĩnh34.508.068 ₫
Tổng thu nhập37.508.409
Bảo hiểm bắt buộc (10,5%)−2.625.000
Thuế TNCN−375.341
Gồm truy lĩnh QĐ-2026/031: +6.000.000 ₫ (lương 22→25tr hồi tố từ 01/01)
TK nhận lươngBIDV ••••6812 hiện
Quỹ phép8,5 ngày
12 cấp đầu năm + 2,5 chuyển từ 2025 − 6 đã dùng (Tết) = 8,5
⚠ 2,5 ngày carry-over hết hạn 31/03 — dùng trước kẻo mất
① Chọn loại ② Chọn ngày ③ Gửi
Thông báo4
§
Phiếu lương kỳ 02/2026 đã phát hành
05/03 · chạm để xem — mỗi lần xem đều ghi nhật ký
▸
Bạn được uỷ quyền duyệt thay Vũ Đình Long
16–20/03 (anh Long công tác) · tự thu hồi khi hết hạn
●
QĐ-2026/031 đã áp dụng — truy lĩnh 6.000.000 ₫
sẽ chi cùng kỳ lương 03/2026
✓
Đơn công tác 03–04/03 đã được duyệt
tính công đủ (BUSINESS_TRIP)
◀ PHONE 1 — Vì sao punch tin được?
Kiểm bán kính 200 m từ work_location; phát hiện mock location và tốc độ di chuyển bất khả thi
So punched_at_local với received_at — lệch bất thường → cảnh báo chỉnh giờ thiết bị
Punch gốc bất biến: sửa sai giờ = tạo bản ghi điều chỉnh mới, kèm lý do + người duyệt
◀ Giải trình tận gốc trên mobile
Nhân viên tự xem cây tính toán từng bước của phiếu lương — giảm 80% câu hỏi "vì sao lương tôi thế này" gửi C&B
Trace kèm phiên bản pack + biểu thuế đã dùng — tái tạo được mọi kỳ trong quá khứ
ພ Tiếng Lào — không phải "dịch là xong"
Chữ Lào dấu chồng nhiều tầng → line-height +30% so với Latin; font Noto Sans Lao nhúng thẳng vào PDF phiếu lương
Bấm ລາວ ở góc trên để đổi nhãn chính của khung trái
PHONE 2 — MSS duyệt di động ▶
Vuốt phải duyệt / vuốt trái từ chối; quỹ phép hiện ngay trên thẻ — không cần mở màn khác
Uỷ quyền duyệt có thời hạn 16–20/03 cho Hằng, tự thu hồi; mọi hành động ghi audit log
Đơn nghỉ ốm Lào bắt buộc 📎 giấy bác sĩ (quỹ 30 ngày/năm) — khác hẳn VN (BHXH chi trả)
MSS — Quản lý
Vũ Đình Long
NV2021-0077 · Trưởng phòng KD · G7
▸ Uỷ quyền duyệt cho P.T.Hằng 16–20/03 (đi công tác) — tự thu hồi khi hết hạn
Hàng đợi duyệt4 đơn← từ chối · duyệt →
ĐTĐặng Minh TúPhép năm
2 ngày · Th5–Th6 12–13/03 · Kỹ sư PM
Quỹ còn 11/12 → sau duyệt còn 9
HNHoàng Thị NgọcKết hôn
3 ngày · 23–25/03 · CV tuyển dụng
Phép đặc biệt BLLĐ VN: nguyên lương, không trừ quỹ phép năm
BKBounmy KeoỐm 🇱🇦
3 ngày · 05–07/03 · NV kho — FOXAI Laos
📎 giay_bac_si_0503.pdf (bắt buộc) · quỹ ốm LA 30 ngày/năm, đã dùng 2 → còn 25
SVSomchai VongsaPhép năm 🇱🇦
1 ngày · Th2 16/03 · Kế toán tổng hợp — FOXAI Laos
Quỹ LA 15 ngày (luật Lào), còn 12 → 11 · rơi vào kỳ bạn công tác → Hằng sẽ duyệt
Đội của tôi hôm nay07/03
2 nghỉ1 muộn1 thiếu chấm ra
Bounmy Keo — nghỉ ốm (ngày 3/3, đơn đang chờ duyệt ở trên)
Hoàng Thị Ngọc — nghỉ bù (làm sự kiện tuyển dụng CN 01/03)
Somchai Vongsa — vào 08:09 (+9′ · ân hạn 5′ → ghi muộn 9′, không trừ lương)
Trần Quốc Bảo — MISSING_OUT 10/03 (máy hỏng) · tạo điều chỉnh
Trần OT của đội — 03/20262 vượt
Trần Quốc Bảo
43,5/40h
Nguyễn Hữu Phước
41,5/40h
Lê Văn Hùng
40,0/40h — chạm trần
Phạm Thu Hằng
6,5/40h
Luật VN: trần 40h/tháng · 200h/năm — hệ thống cảnh báo ngay khi xếp ca, không đợi tính lương; không tự cắt giờ

Danh mục dùng chung

Một màn hình quản lý dùng chung cho hơn 40 danh mục — đang mở danh mục education_level · mọi thay đổi đều có hiệu lực theo ngày
SEEDED — sinh sẵn khi tạo tenant, khách hàng sửa được
Đủ 10 chức năng chuẩn của màn danh mục ở phần bên dưới
Trình độ đào tạo — 9 mục
MãTên (vi · lo)is_trainedHồ sơHiệu lựcTrạng thái
⋮⋮ UNTRAINED §
Lao động phổ thông (chưa qua ĐT)
ແຮງງານທົ່ວໄປ
✗ chưa qua ĐT 31201/01/24 → ∞ đang dùng ↑↓
⋮⋮PRIMARY §
Sơ cấp nghề
ຊັ້ນຕົ້ນ
✓ đã qua ĐT9601/01/24 → ∞đang dùng↑↓
⋮⋮INTERMEDIATE §
Trung cấp
ຊັ້ນກາງ
✓ đã qua ĐT17801/01/24 → ∞đang dùng↑↓
⋮⋮COLLEGE §
Cao đẳng
ອະນຸປະລິນຍາ
✓ đã qua ĐT14301/01/24 → ∞đang dùng↑↓
⋮⋮BACHELOR §
Đại học
ປະລິນຍາຕີ
✓ đã qua ĐT48601/01/24 → ∞đang dùng↑↓
⋮⋮MASTER §
Thạc sĩ
ປະລິນຍາໂທ
✓ đã qua ĐT5201/01/24 → ∞đang dùng↑↓
⋮⋮DOCTOR §
Tiến sĩ
ປະລິນຍາເອກ
✓ đã qua ĐT301/01/24 → ∞đang dùng↑↓
⋮⋮CERT_FOXAI
Chứng chỉ nội bộ FOXAI
TENANT tự tạo — code sửa được
✓ đã qua ĐT001/02/26 → ∞đang dùng✕
⋮⋮SECONDARY_OLD §
Trung học chuyên nghiệp (mã cũ)
vô hiệu 12/01/2026 — ẩn khỏi lựa chọn mới
✓ đã qua ĐT1401/01/24 → 12/01/26vô hiệu⚿
‹ 1 ›  ·  9 mục · trang 1/1 · 50 mục/trang  ·  tổng hồ sơ tham chiếu: 1.284 = đúng tổng nhân sự ✓
Kết quả nhập Excel gần nhất — TD_education_level_20260305.xlsx
6 áp dụng · 3 lỗi
✓ 6 dòng hợp lệ đã áp dụng (05/03 14:22 · người nhập: Trương Mỹ Linh · MFA ✓)
✕ Dòng 4 — code BACHELOR đã tồn tại · vi phạm UNIQUE (tenant_id, code)
✕ Dòng 7 — thiếu name_i18n.lo · bắt buộc vì tenant có pháp nhân Lào
✕ Dòng 9 — attributes.is_trained = "Có" · phải là TRUE/FALSE
Sửa mục: UNTRAINED
SEEDED · is_system
Mã (code)
⚿ Khoá vì is_system = true — công thức đủ điều kiện của ALW_SUBSISTENCE tham chiếu code này
Tên hiển thị (name_i18n) vi lo en
attributes.is_trained
đã qua đào tạo?
§ is_trained = FALSE → quyết định Phụ cấp sinh hoạt Lào (ALW_SUBSISTENCE, tối đa 900.000 ₭ — chỉ cho LĐ phổ thông chưa qua đào tạo). Đang ảnh hưởng 87 NV pháp nhân Lào. Ví dụ Khamphan Sisouk (LA2025-0090): 1.800.000 + 700.000 = 2.500.000 ₭ gross · NSSF 137.500 · net 2.362.500 ₭. Ngưỡng miễn thuế 2.500.000 ₭ theo pack LA-2026.07 DRAFT — CẦN XÁC MINH VĂN BẢN GỐC.
Hiệu lực từ
Đến
sort_order
Bấm Lưu sẽ đóng bản ghi hiện tại và tạo bản ghi hiệu lực mới từ ngày áp dụng — không ghi đè lịch sử; kỳ lương cũ tái tạo đúng như đã tính.
Lịch sử thay đổi
đọc từ audit log — bất biến
05/03/2026 14:22
Nhập Excel: 6 dòng cập nhật, 3 dòng lỗi
Trương Mỹ Linh (Kế toán trưởng · MFA ✓)
20/02/2026
Sửa name_lo của MASTER
ປະລິນຍາໂທ້ → ປະລິນຍາໂທ · Trương Mỹ Linh
12/01/2026
Vô hiệu hoá SECONDARY_OLD
14 hồ sơ giữ nguyên tham chiếu · lý do: gộp vào INTERMEDIATE
01/01/2024
Seed bộ chuẩn khi tạo tenant
8 mục SEEDED · phiên bản seed v2024.01
Bốn loại danh mục — ai được sửa gì
LoạiAi quản lýAi sửa đượcVí dụ
SYSTEMNhà cung cấpKhông ai (chỉ đọc)Quốc gia, tiền tệ, múi giờ
STATUTORYCompliance teamChỉ complianceBiểu thuế, quỹ BH, ngày lễ pháp định
SEEDEDSinh sẵn khi tạo tenantKhách hàng sửa đượcLoại HĐ, loại phép, trình độ đào tạo ← màn này
TENANTKhách hàng tự tạoKhách hàngPhòng ban, ca làm việc, khoản lương riêng
Hai quy tắc bất di bất dịch: (1) danh mục đã dùng không được xoá — chỉ is_active = false; (2) code của bản ghi is_system không được sửa — công thức lương tham chiếu theo code.
Thứ tự khởi tạo danh mục — 14 bước
sai thứ tự = gãy khoá ngoại khi seed tenant
  1. SYSTEM: country, currency, locale, timezone, bank
  2. STATUTORY: country pack (rate_table, contribution_scheme, holiday, working_time_rule, time_bucket)
  3. tenant → legal_entity
  4. cost_center, work_location, job_grade
  5. org_unit_type → org_unit (cây)
  6. job_family → job_title → position
  7. employment_type, contract_type, education_level … ← màn này
  8. rounding_rule → work_shift → shift_pattern
  9. leave_type → accrual_rule
  10. lookup_table → pay_component → salary_structure
  11. role → permission → role_scope
  12. workflow_definition
  13. person → identity → employee
  14. Dữ liệu nghiệp vụ
Ví dụ lỗi thực tế: import position (bước 6) trước khi có org_unit (bước 5) → toàn bộ dòng bị từ chối theo dòng, như khối kết quả nhập Excel bên trái.

Quy trình nhập việc

Mỗi nhân sự mới là một hồ sơ riêng: ứng viên → hợp đồng → chấm công → nghỉ phép → bảo hiểm → kỳ lương đầu tiên
Hồ sơ đang mở
0
chưa hoàn tất đủ 12 bước
Hồ sơ đã hoàn tất
0
đã trả lương kỳ đầu và có lệnh chi
Tiến độ hồ sơ đang chọn
—
bước kế tiếp: chưa chọn hồ sơ
Kỳ lương đang mở
Tháng 3/2026
công chuẩn 22 ngày · pháp nhân Việt Nam
Hồ sơ nhập việc
chọn một dòng để mở 12 bước của hồ sơ đó
Mã hồ sơNhân sựĐơn vịPháp nhân Ngày vào làmTiến độTrạng thái
Mười hai bước
Chọn một hồ sơ ở bảng trên để xem 12 bước, hoặc tạo hồ sơ mới.
Vì sao thứ tự các bước không đảo được
phần lớn lỗi vận hành nhân sự đến từ làm sai thứ tự, không phải sai công thức
Hồ sơ trước hợp đồng
Chưa có mã số thuế và số sổ bảo hiểm thì hợp đồng ký xong vẫn không báo tăng được, hồ sơ bảo hiểm sẽ bị trả về.
Hợp đồng trước xếp ca
Xếp ca cho người chưa có hợp đồng hiệu lực nghĩa là để họ làm việc không hợp đồng, rủi ro pháp lý thuộc về doanh nghiệp.
Ngoại lệ trước chốt công
Một ngoại lệ chưa xử lý là cả kỳ chưa chắc chắn. Chốt công khi còn ngoại lệ thì phải sửa bằng truy lĩnh ở kỳ sau.
Chốt công trước tính lương
Bảng lương lấy số công làm đầu vào. Công còn sửa được thì mọi con số lương phía sau đều là tạm.
Tính lương trước duyệt, duyệt trước chi
Người tính không được là người duyệt. Đây là chốt kiểm soát chi mà kiểm toán nội bộ luôn kiểm tra đầu tiên.
Sinh trắc có thể bỏ qua
Đây là bước duy nhất được phép bỏ: người lao động từ chối thì cấp thẻ từ hoặc mã PIN, hồ sơ vẫn đi tiếp bình thường.

Sơ đồ tổ chức

Ba cây song song: tổ chức (org_unit) · báo cáo (reporting_line) · chi phí (cost_center) — truy vấn luôn kèm ngày hiệu lực
◧ Cây tổ chức
▤ Cây báo cáo
▲ Cây chi phí
Headcount hợp nhất
1.284
🇻🇳 912  ·  🇱🇦 372
Định biên (headcount_planned)
1.325
lấp đầy 96,9%
Chênh định biên
−43 / +2
1 đơn vị vượt định biên
Đơn vị đang hiệu lực
34
1 phiên bản chờ hiệu lực 01/04
⚠ Vượt định biên — Phòng KD Miền Bắc đang 62/60, vượt +2. Yêu cầu tuyển REQ-2026-018 đã bị khoá; phương án xử lý: nâng định biên lên 66 trong đợt tái cơ cấu hiệu lực 01/04/2026 (QĐ-2026/044).
Cây tổ chức (org_unit)
Mỗi nút: loại đơn vị · headcount thực / định biên — as_of 07/03/2026
as_of bắt buộc
Tập đoàn FOXAI GROUP 1.284/1.325
🇻🇳 FOXAI Việt Nam COMPANY 912/940
Văn phòng Tổng Giám đốc DEPARTMENT 18/20
Khối Kinh doanh DIVISION 174/180
Phòng KD Miền Bắc DEPARTMENT 62/60 ⚠
Tổ KD Dự án TEAM 24/22
Tổ KD Kênh phân phối TEAM 38/38
Phòng KD Miền Nam DEPARTMENT 56/62
Phòng Marketing DEPARTMENT 32/34
Phòng Chăm sóc KH DEPARTMENT 24/24
Khối Sản xuất DIVISION 566/574
Nhà máy Bắc Ninh FACTORY 512/518
Xưởng Lắp ráp WORKSHOP 316/320
Chuyền 1 LINE 104/106
Chuyền 2 LINE 108/108
Chuyền 3 LINE 104/106
Xưởng Hoàn thiện WORKSHOP 148/150
Phòng QA DEPARTMENT 30/30
Phòng Kế hoạch SX DEPARTMENT 18/18
Phòng Bảo trì Thiết bị DEPARTMENT 54/56
Khối Hỗ trợ DIVISION 154/166
Phòng HCNS DEPARTMENT 28/30
Phòng Tài chính Kế toán DEPARTMENT 26/28
Phòng CNTT DEPARTMENT 38/40
Phòng Kho vận DEPARTMENT 62/68
🇱🇦 FOXAI Laos Co., Ltd COMPANY 372/385
Văn phòng điều hành Vientiane DEPARTMENT 14/15
Nhà máy Vientiane FACTORY 317/328
Xưởng Sản xuất 1 WORKSHOP 152/158
Chuyền A LINE 76/79
Chuyền B LINE 76/79
Xưởng Sản xuất 2 WORKSHOP 129/134
Phòng QA-QC DEPARTMENT 22/22
Kế toán & Hành chính DEPARTMENT 14/14
Kho Savannakhet BRANCH 41/42
Chi tiết đơn vị đang chọn
vượt định biên
Mã đơn vị
OU-VN-KDMB
Tên (name_i18n · vi)
Phòng KD Miền Bắc
Loại đơn vị
DEPARTMENT · cấp 4
Pháp nhân
🇻🇳 FOXAI Việt Nam — duy nhất, không xuyên pháp nhân
Trưởng đơn vị
Vũ Đình Long NV2021-0077
Cost center
CC-210
Địa điểm làm việc
VP Hà Nội — Duy Tân Vùng I · LTTV 5.310.000 ₫
Hiệu lực
01/01/2021 → 31/03/2026
Headcount / định biên
62 / 60 (+2 vượt)
◔ Nút «Xoá» đang bị khoá: đơn vị còn 62 nhân viên. Hệ thống chỉ cho vô hiệu hoá sau khi điều chuyển hết người.
Quy tắc đang thi hành trên sơ đồ
nhật ký kiểm tra gần nhất
⚠
Vượt định biên
Phòng KD Miền Bắc 62/60 (+2) — cảnh báo từ 03/03, khoá yêu cầu tuyển mới của đơn vị.
▤
Tái cơ cấu tạo bản ghi mới
QĐ-2026/044: đổi tên + nâng định biên hiệu lực 01/04/2026 → sinh phiên bản v2, bản v1 đóng 31/03/2026. Không sửa đè lịch sử.
⛔
Chặn vòng lặp cây báo cáo
05/03 14:22 — từ chối lưu quan hệ tạo chu trình Bảo → Hùng → Sơn → Bảo.
◔
Quản lý nghỉ việc phải có người thay
Nếu Lê Văn Hùng không tái ký (HĐ hết hạn 31/03) — thủ tục nghỉ việc sẽ bị chặn tới khi chỉ định tổ trưởng mới cho 108 báo cáo trực tiếp. Phan Văn Đức (nghỉ 20/03) không quản lý ai → không chặn.
✓
Ràng buộc nền tảng
34/34 đơn vị thuộc đúng 1 pháp nhân; 100% truy vấn sơ đồ chạy kèm as_of_date (mặc định hôm nay 07/03/2026).

Đơn vị & Định biên

Danh mục org_unit (hiệu lực theo ngày) + vị trí position — định biên. work_location là nơi giữ vùng lương tối thiểu.
VI
LO
EN
🇱🇦 Hạn ngạch lao động nước ngoài (Lào): FOXAI Laos đang dùng 32/372 = 8,6% trên trần ~10% (37 suất) → còn tuyển được 5 người nước ngoài. Giấy phép lao động của Nguyễn Văn Tùng (LA2024-0055) hết hạn 05/2026 — hệ thống sẽ nhắc trước 30 ngày.
Danh mục đơn vị tổ chức (org_unit)
hiển thị 13/34 đơn vị · truy vấn tại ngày 07/03/2026
Đang hiệu lực Chờ hiệu lực Đã đóng as_of
MãTên đơn vị (name_i18n)LoạiPháp nhânTrưởng đơn vịCost centerĐịa điểm · vùng LTTVHiệu lựcHC/ĐB
OU-VN FOXAI Việt Nam COMPANY🇻🇳 FOXAI Việt Nam
Nguyễn Hải Nam
TGĐ
— VP Duy Tân, Hà Nội Vùng I 01/01/2019 → ∞912/940
OU-VN-KD Khối Kinh doanh DIVISION🇻🇳 FOXAI Việt Nam
Lê Quang Vinh
GĐ Kinh doanh
CC-200 VP Duy Tân, Hà Nội Vùng I 01/01/2021 → ∞174/180
OU-VN-KDMB v1 Phòng KD Miền Bắc DEPARTMENT🇻🇳 FOXAI Việt Nam
Vũ Đình Long
NV2021-0077
CC-210 VP Duy Tân, Hà Nội Vùng I · 5.310.000 ₫ 01/01/2021 → 31/03/2026 đóng theo QĐ-2026/044 62/60 ⚠
OU-VN-KDMB v2 Trung tâm KD Miền Bắc DEPARTMENT🇻🇳 FOXAI Việt Nam
Vũ Đình Long
giữ nguyên trưởng ĐV
CC-210 VP Duy Tân, Hà Nội Vùng I · 5.310.000 ₫ 01/04/2026 → ∞ chờ hiệu lực 62/66
OU-VN-SX Khối Sản xuất DIVISION🇻🇳 FOXAI Việt Nam
Trần Đức Thắng
GĐ Sản xuất
CC-100 KCN VSIP Bắc Ninh Vùng II 01/01/2021 → ∞566/574
OU-VN-NMBN Nhà máy Bắc Ninh FACTORY🇻🇳 FOXAI Việt Nam
Đỗ Văn Sơn
kiêm Quản đốc XLR
CC-110 KCN VSIP Bắc Ninh Vùng II · chờ phụ lục 01/06/2022 → ∞512/518
OU-VN-C2 Chuyền 2 — Xưởng Lắp ráp LINE🇻🇳 FOXAI Việt Nam
Lê Văn Hùng
NV2023-0455 · HĐ hết hạn 31/03
CC-110 KCN VSIP Bắc Ninh Vùng II 01/06/2022 → ∞108/108
OU-VN-KHOVAN Phòng Kho vận DEPARTMENT🇻🇳 FOXAI Việt Nam
Bùi Thế Anh
TP Kho vận
CC-300 Kho Long Biên, Hà Nội Vùng I 01/01/2020 → ∞62/68 tuyển 4 (1 thay P.V.Đức)
OU-LA FOXAI Laos Co., Ltd COMPANY🇱🇦 FOXAI Laos
Phonesavanh Inthavong
GĐ điều hành
CC-500 Vientiane Toàn quốc 1 mức · 2.500.000 ₭ 01/10/2023 → ∞372/385
OU-LA-NMVTE Nhà máy Vientiane FACTORY🇱🇦 FOXAI Laos
Phonesavanh Inthavong
kiêm nhiệm
CC-510 Bản Đông Phổ Sỹ, VTE Toàn quốc 1 mức 01/10/2023 → ∞317/328
OU-LA-XSX1 Xưởng Sản xuất 1 WORKSHOP🇱🇦 FOXAI Laos
Khamla Phommachanh
LA2023-0034 · Trưởng ca
CC-510 Bản Đông Phổ Sỹ, VTE Toàn quốc 1 mức 01/10/2023 → ∞152/158
OU-LA-KTHC Kế toán & Hành chính VTE DEPARTMENT🇱🇦 FOXAI Laos
Somchai Vongsa
LA2024-0112 · FUNCTIONAL → KTT VN
CC-500 Vientiane Toàn quốc 1 mức 01/10/2023 → ∞14/14
OU-LA-KHOSVK Kho Savannakhet BRANCH🇱🇦 FOXAI Laos
Somphone Chanthavong
Trưởng kho
CC-520 Savannakhet Toàn quốc 1 mức 01/02/2024 → ∞41/42
Hợp nhất toàn tập đoàn (34 đơn vị, đếm theo nút gốc mỗi pháp nhân: 912 + 372 · định biên 940 + 385)1.284/1.325
Ví dụ trên lưới: «Phòng KD Miền Bắc» đổi tên + nâng định biên từ 01/04/2026 → cùng mã OU-VN-KDMB có 2 bản ghi hiệu lực nối nhau (v1 đóng 31/03/2026, v2 mở 01/04/2026). Báo cáo kỳ lương tháng 3 vẫn in tên cũ; kỳ tháng 4 tự dùng tên mới. Bản ghi đã dùng trong nghiệp vụ không bao giờ bị xoá cứng — chỉ đóng hiệu lực.
◈ work_location giữ vùng lương tối thiểu: VN áp lương tối thiểu vùng theo 4 vùng tại địa điểm làm việc. Pack VN-2026.01 (NĐ 293/2025/NĐ-CP, hiệu lực 01/01/2026) đã công bố Vùng I 5.310.000 ₫ (tăng 350.000 so với NĐ 74/2024); mức vùng II–IV cập nhật khi có phụ lục chính thức. Danh sách địa bàn theo vùng cũng đổi khi có sáp nhập đơn vị hành chính, nên phải lưu ở work_location.minimum_wage_region có hiệu lực theo ngày; Lào toàn quốc một mức 2.500.000 ₭ nên cột vùng hiển thị chung. Chuyển nhân viên giữa 2 địa điểm khác vùng → hệ thống lương tự đối chiếu sàn lương mới.
Vị trí & định biên (position)
6 vị trí trọng yếu đang theo dõi · so khớp headcount_planned với thực tế
Mã vị tríTên vị tríĐơn vịNgạch Định biênĐang cóChênhTrạng thái
POS-KD-CVCCChuyên viên KD cao cấpPhòng KD Miền BắcG5 1214+2 vượt — khoá tuyển, chờ tái cơ cấu 01/04
POS-SX-TTCTổ trưởng chuyềnXưởng Lắp rápG4 330 đủ — rủi ro: HĐ L.V.Hùng hết hạn 31/03
POS-KHO-NVNhân viên khoPhòng Kho vậnG2 3026−4 đang tuyển 4 · 1 REPLACEMENT (P.V.Đức nghỉ 20/03)
POS-LA-KTTHKế toán tổng hợpKT & Hành chính VTEG5 21−1 REQ-LA-2026-003 · chờ duyệt ngân sách
POS-LA-LDPTLĐ phổ thông (chưa qua đào tạo)Xưởng Sản xuất 1 VTEG1 6054−6 is_trained = false → PC sinh hoạt 700.000 ₭
POS-HR-TDChuyên viên tuyển dụngPhòng HCNSG4 220 đủ định biên
Tổng nhóm theo dõi109100−11 / +2
◔ Vị trí POS-LA-LDPT gắn danh mục education_level.is_trained = false — điều kiện áp phụ cấp sinh hoạt Lào (Khamphan Sisouk LA2025-0090: lương 1.800.000 ₭ + phụ cấp 700.000 ₭ = đúng sàn 2.500.000 ₭). Thiếu danh mục này thì không tính đúng lương Lào.

Danh sách nhân viên

1.284 nhân viên · FOXAI Việt Nam (912) + FOXAI Laos Co., Ltd (372) · dữ liệu tại ngày 07/03/2026
⚠ 7 cảnh báo trong 30 ngày: 3 hợp đồng hết hạn · 2 giấy tờ tùy thân hết hạn · 2 nhân viên đến tuổi nghỉ hưu — xem chi tiết bên dưới
Tổng nhân sự
1.284
🇻🇳 912 · 🇱🇦 372
Thử việc
34
8 tạm hoãn HĐLĐ (VN)
Cảnh báo 30 ngày
7
3 HĐ · 2 giấy tờ · 2 tuổi hưu
LĐ nước ngoài tại Lào
8,6%
32/372 · hạn ngạch 10% — còn 5 suất
Bộ lọc
Cột lương hiển thị theo quyền cấp trường: FULL / RANGE / HIDDEN — bạn đang xem với vai trò HR_SPECIALIST (phạm vi LEGAL_ENTITY, chặn JOB_GRADE_BELOW ≥ G7)
Tất cả · 1.284 ● Chính thức · 1.242 ◔ Thử việc · 34 ◒ Tạm hoãn HĐLĐ · 8 ▤ Đã nghỉ việc · 0 hiển thị Hồ sơ đã nghỉ việc lưu 60 tháng theo thiết lập tenant — không xóa cứng
2 đã chọn Xuất kèm cột lương sẽ ghi sensitive_access_log (SALARY · EXPORT) và bắt buộc nhập mục đích
Nhân viênPháp nhânĐơn vịChức danh · ngạch Loại HĐVào làmLương ◒Trạng tháiLưu ý
Hiển thị 14 / 1.284 nhân viên · trang 1/92 · mã NV sinh theo mẫu NV{YY}{####}, không tái sử dụng khi nghỉ việc
⚠ Bảng cảnh báo — trước 30 ngày
Sự kiện ContractExpiringSoon / DocumentExpiringSoon phát cho phân hệ Thông báo
⛔
HĐ xác định thời hạn lần 2 của Lê Văn Hùng (NV2023-0455) hết hạn 31/03/2026 — còn 24 ngày
Đã ký lại 1 lần — theo luật VN, lần ký tiếp theo bắt buộc là HĐ không xác định thời hạn. Hệ thống sẽ chặn tạo HĐ xác định thời hạn lần 3.
▤
Hộ chiếu của Phạm Thu Hằng (NV2026-0412) hết hạn 28/03/2026 — còn 21 ngày
person_document · loại PASSPORT · giấy tờ chính vẫn là CCCD (is_primary) nên không chặn nghiệp vụ, chỉ nhắc gia hạn.
◔
Giấy phép lao động của Nguyễn Văn Tùng (LA2024-0055) hết hạn 15/05/2026 — còn 69 ngày
Ngoài ngưỡng 30 ngày nhưng thuộc diện theo dõi hạn ngạch LĐ nước ngoài tại Lào: 32/372 = 8,6% / trần 10%. GPLĐ hết hạn mà chưa gia hạn → tự động chuyển cảnh báo đỏ + chặn xếp ca.
●
02 nhân viên đến tuổi nghỉ hưu trong quý 3/2026
Tuổi hưu lấy từ thiết lập tenant (mục Nhân sự) — khác nhau giữa VN và Lào theo country pack; danh sách chi tiết chỉ HR_MANAGER xem được.

Hồ sơ nhân viên

Person P-004112 · quan hệ lao động thứ 2 của person này (hồ sơ cũ NV2021-0203, 06/2021–08/2024 — lịch sử nối qua Person, mã cũ không tái sử dụng)
PH
Phạm Thu Hằng CHÍNH THỨC
Mã NV NV2026-0412Chuyên viên KD cao cấp · ngạch G5 🇻🇳 FOXAI Việt NamVào làm 01/01/2026 (tái tuyển dụng) ◔ Nhận ủy quyền duyệt của Vũ Đình Long 16–20/03
Quản lý trực tiếp
Vũ Đình Long
NV2021-0077
Cá nhân
Công việc
Lương & phụ cấp
Người phụ thuộc 2
Giấy tờ ⚠ 1
Tài sản cấp phát 2
Học vấn & Chứng chỉ ⚠ 1
Kinh nghiệm 3
Kỹ năng & Ngôn ngữ
Sức khoẻ 🔒
Thông tin cơ bản
✎ NV tự sửa thông tin liên hệ qua phê duyệt · 🔒 trường khoá với NV
Họ và tên
Phạm Thu Hằng
Ngày sinh
••/••/1993
Giới tính
Nữ
Quốc tịch
🇻🇳 Việt Nam
Tình trạng hôn nhân
Đã kết hôn
Email cá nhân ✎
hangpt93@gmail.com
Điện thoại ✎
0912 445 xxx
Dân tộc / Tôn giáo
Kinh · Không
Địa chỉ — 3 loại theo person_address
✎ NV tự sửa qua phê duyệt · mỗi địa chỉ có hiệu lực từ/đến
LoạiĐịa chỉHiệu lực
THƯỜNG TRÚSố 12 ngõ 84 Trần Thái Tông, P. Dịch Vọng, Cầu Giấy, Hà Nội01/01/2026 → 9999
TẠM TRÚCăn 1208 CT2 Vinhomes Smart City, Nam Từ Liêm, Hà Nội01/02/2026 → 9999
LIÊN HỆ= Địa chỉ tạm trú (is_primary)01/02/2026 → 9999
Giấy tờ định danh & mã số
Trường @Sensitive — mọi lần xem đầy đủ đều ghi nhật ký truy cập
Số CCCD 🔒
0342••••••89
MST cá nhân
8412557203
Số sổ BHXH (VN bắt buộc)
0119384752
Mã số LSSO
— không áp dụng pháp nhân VN
Trình độ đào tạo
Đại học — Kinh tế · is_trained = true
Chuyên ngành
Quản trị Kinh doanh, ĐH KTQD 2015
ℹ Vì sao trình độ đào tạo là trường bắt buộc với pháp nhân Lào: phụ cấp sinh hoạt tới 900.000 ₭ chỉ áp dụng cho lao động chưa qua đào tạo (cờ is_trained trên danh mục education_level). Thiếu trường này thì lương Lào tính sai — với hồ sơ VN chỉ ở mức "nên có".
Quyền tự phục vụ của nhân viên
✎ Tự sửa qua duyệt
Liên hệ · địa chỉ · người thân · TK ngân hàng
🔒 Không tự sửa
Lương · chức danh · đơn vị · ngày vào làm
Yêu cầu sửa đang chờ duyệt
1 — đổi số điện thoại (gửi 06/03)
⚠ Trường 🔒 chỉ thay đổi được bằng quyết định biến động có phê duyệt — không có nút sửa trực tiếp trên hồ sơ.
Người thân & liên hệ khẩn cấp
Chồng — Nguyễn Đức Anh
0983 220 xxx
Liên hệ khẩn cấp
Chồng (ưu tiên 1) · Mẹ đẻ (ưu tiên 2)
Tài khoản ngân hàng
@Sensitive · MASKED theo quyền
Vietcombank — CN Thăng Long
9704••••2214
Chia lương (split_percent)
100% một tài khoản
Xác minh
✓ verified 02/01/2026
◧ Ba cây độc lập — không trùng nhau trong doanh nghiệp thật: Hằng thuộc Phòng KD Miền Bắc (cây tổ chức), báo cáo trực tiếp cho Vũ Đình Long (cây báo cáo), chi phí lương hạch toán vào CC-210 (cây chi phí).
◧ Cây 1 — Tổ chức
as_of 07/03/2026
FOXAI Việt NamCông ty
Khối Kinh doanhKhối
Phòng KD Miền Bắc62/60
Đơn vị có hiệu lực theo ngày · định biên 62/60 — đang VƯỢT định biên +2 — chờ tái cơ cấu 01/04
● Cây 2 — Báo cáo
reporting_line
Quản lý trực tiếp (SOLID)
Vũ Đình Long — TP. KD
Hiệu lực
01/01/2026 → 9999-12-31
Kiêm nhiệm (DOTTED)
GĐ Kinh doanh — dự án FDI
◔ Ủy quyền đang hiệu lực: nhận quyền duyệt đơn nghỉ của Vũ Đình Long 16–20/03 (đi công tác). Mọi phê duyệt trong thời gian này ghi nhật ký cả hai danh tính: người thực hiện + người ủy quyền.
▲ Cây 3 — Chi phí
cost_center
Trung tâm chi phí
CC-210 · Kinh doanh MB
Phân bổ
100% (không chia dự án)
Sự kiện OrgUnitChanged
→ Payroll cập nhật phân bổ
Thông tin công việc
🔒 Chỉ đổi qua quyết định biến động
Vị trí (position)
CV Kinh doanh cao cấp POS-KD-012
Ngạch bậc 🔒
G5 — dùng cho phân quyền JOB_GRADE_BELOW
Loại hình
Toàn thời gian
Ca làm việc
ADMIN · 08:00–17:00 · nghỉ trưa không lương
Nơi làm việc (work_location)
VP Hà Nội — Duy Tân · Vùng I · LTTV 5.310.000 ₫
Ngày vào làm 🔒
01/01/2026 (tái tuyển — thâm niên cũ 2021–2024 nối qua Person)
work_location mang vùng lương tối thiểu — lương HĐ luôn được đối chiếu sàn LTTV của vùng khi lưu hợp đồng (VN 4 vùng; Lào một mức toàn quốc).
⚠ Biến động hồi tố đang chờ kỳ lương xử lý: QĐ-2026/031 (nhập 05/03/2026) tăng lương 22.000.000 → 25.000.000 hiệu lực 01/01/2026. Kỳ 01 + 02/2026 đã CLOSED → movement đặt triggers_retro=true, retro_from=2026-01-01, phát RetroTriggeredEvent → phân hệ lương tính truy lĩnh 6.000.000 ₫ vào kỳ 3/2026 (= (25.000.000 − 22.000.000) × 2 kỳ).
Hợp đồng hiện hành — HD/2026/018
🔒 NV chỉ xem, không sửa
Loại HĐ
HĐLĐ xác định thời hạn 24 tháng
Hiệu lực
01/01/2026 → 31/12/2027
Kiểu lương
GROSS · VND
Lương HĐ 🔒
25.000.000 ₫/tháng
Lương đóng BH (si_base_amount)
25.000.000 ₫ = lương HĐ
Ký kết
Ký số (E_SIGN) 28/12/2025 · 📎 bản lưu
si_base_amount nhập riêng khi lương đóng bảo hiểm khác lương HĐ (phổ biến ở DN trả 2 bậc) — của Hằng đang bằng lương HĐ: BH bắt buộc NLĐ 10,5% × 25.000.000 = 2.625.000 ₫ khớp phiếu lương kỳ 3/2026.
Phụ cấp theo hợp đồng (contract_allowance)
mỗi khoản có hiệu lực từ/đến riêng
Khoản (pay_component)Mức/thángHiệu lực từĐếnThuế/BH
Phụ cấp ăn ca ALW_LUNCH730.00001/01/20269999-12-31Miễn thuế toàn phần
Phụ cấp đi lại ALW_TRANSPORT500.00001/01/20269999-12-31Chịu thuế
Phụ cấp điện thoại ALW_PHONE300.00001/01/20269999-12-31Miễn theo định mức
Phụ cấp trách nhiệm ALW_RESPONSIBILITY1.000.00001/03/20269999-12-31Chịu thuế · tính đóng BH
Tổng phụ cấp đang hiệu lực (03/2026)2.530.000phân loại thuế/BH do country pack quyết định trên từng pay_component
Lịch sử lương
chuỗi biến động SALARY_CHANGE
05/03/2026 · QĐ-2026/031
25.000.000 ₫ — hồi tố từ 01/01/2026
Duyệt bởi TP. HR → truy lĩnh 6.000.000 ₫ trả kỳ 3/2026. Chấm cam = biến động hồi tố.
01/01/2026 · HD/2026/018
22.000.000 ₫ — tái tuyển dụng
Movement HIRE · person cũ P-004112, employee mới NV2026-0412.
08/2024
Kết thúc quan hệ lao động cũ (NV2021-0203)
Lịch sử giữ nguyên trên Person — không mất khi tái tuyển.
Phiếu lương gần nhất
Kỳ 3/2026 — thu nhập
37.508.409 ₫
BH bắt buộc (10,5%)
− 2.625.000 ₫
Thuế TNCN
− 375.341 ₫
Thực nhận
34.508.068 ₫
Người phụ thuộc đăng ký giảm trừ gia cảnh (person_dependent)
Chỉ áp dụng pháp nhân VN — Lào không có cơ chế giảm trừ người phụ thuộc
Họ tênQuan hệNăm sinhMST người phụ thuộcGiảm trừ từ thángĐăng kýHồ sơ chứng minh
NKNguyễn Minh Khôicon traiCon đẻ20198412557203-00101/2026registered_at 05/01/2026📎 Giấy khai sinh
NGNguyễn Thu Giangcon gáiCon đẻ20228412557203-00201/2026registered_at 05/01/2026📎 Giấy khai sinh
✓ Tổng giảm trừ khi tính thuế kỳ 2026: 15.500.000 (bản thân) + 6.200.000 × 2 (người phụ thuộc) = 27.900.000 ₫/tháng (NQ 110/2025, áp dụng từ kỳ thuế 2026). Khi lưu đăng ký, hệ thống phát sự kiện DependentRegistered → phân hệ Lương tự cập nhật giảm trừ, không nhập tay lần hai.
⚠ Cảnh báo giấy tờ: Hộ chiếu hết hạn 28/03/2026 — còn 21 ngày. Sự kiện DocumentExpiringSoon đã gửi thông báo cho HR + nhân viên ngày 26/02.
Giấy tờ tùy thân (person_document)
Số giấy tờ là trường @Sensitive — hiển thị che, mọi lần xem đều ghi nhật ký
LoạiSốNgày cấpNơi cấpHết hạnTệp
CCCD is_primary0342••••••8915/09/2021Cục CS QLHC về TTXH14/08/2033 đủ 40 tuổi📎 2 mặt
Hộ chiếuC55•••1828/03/2016Cục QL XNC28/03/2026 ⚠📎 trang chính
Bằng đại họcQH-15-0884230/06/2015ĐH Kinh tế Quốc dân—📎 bản scan
Giấy phép lao động: không áp dụng — quốc tịch VN làm việc tại pháp nhân VN. (So sánh: Nguyễn Văn Tùng LA2024-0055 làm tại Lào phải có GPLĐ, hết hạn 15/05/2026, thuộc hạn ngạch 10% LĐ nước ngoài.)
Tài sản cấp phát (asset_assignment)
Hỏng / mất → deduction_amount tự sinh dòng khấu trừ vào kỳ lương; khi nghỉ việc phải thu hồi đủ mới đóng được checklist offboarding
Mã tài sảnTênSerialGiá trịNgày cấpTình trạng khi giaoBiên bảnTrạng thái
FX-LT-0233Laptop Dell Latitude 5450JX8K2M321.500.00002/01/2026Mới 98%📎 BBBG-2026/014ĐANG GIỮ
FX-DT-0107Điện thoại Samsung A56R58W70118.900.00002/01/2026Mới 100%📎 BBBG-2026/014ĐANG GIỮ
Tổng giá trị đang giữ30.400.000nếu mất: khấu trừ theo biên bản định giá, trừ dần vào lương — vào kỳ lương cuối nếu nghỉ việc
ℹ Ví dụ liên kết lương: Phan Văn Đức (NV2020-0155) nghỉ 20/03 — wizard offboarding chặn bước "chốt lương cuối" tới khi mục thu hồi tài sản hoàn tất hoặc ghi nhận deduction_amount.
Học vấn (person_education)
Trình độ cao nhất quyết định cờ is_trained
BậcTrường / Cơ sởChuyên ngànhThời gianXếp loạiBằng
ĐẠI HỌCĐại học Kinh tế Quốc dânQuản trị Kinh doanh2011 – 2015Khá📎 Bản sao công chứng
THPTTHPT Chu Văn An — Hà Nội—2008 – 2011Giỏi📎
✓ Trình độ cao nhất Đại học → education_level.is_trained = TRUE. Với pháp nhân 🇱🇦 Lào, cờ này quyết định có được hưởng phụ cấp sinh hoạt tối đa 900.000 ₭ hay không — chỉ lao động phổ thông chưa qua đào tạo mới được hưởng (Thông báo 3534/MLSW). Xem ví dụ đối chứng: Khamphan Sisouk (LA2025-0090) chưa qua đào tạo → hưởng 700.000 ₭.
Chứng chỉ (person_certificate)
Cảnh báo trước 30 ngày khi sắp hết hạn
LoạiTên chứng chỉNơi cấpNgày cấpHết hạnTrạng tháiTệp
Ngoại ngữIELTS 7.0British Council12/03/202412/03/2026CÒN 5 NGÀY📎
Chuyên mônChứng chỉ Kế toán trưởngBộ Tài chính20/09/2023—VÔ THỜI HẠN📎
An toàn LĐHuấn luyện ATVSLĐ nhóm 4Trung tâm Kiểm định KV I05/01/202605/01/2028CÒN HIỆU LỰC📎
⚠ 1 chứng chỉ hết hạn trong 30 ngày — cùng cơ chế cảnh báo DocumentExpiringSoon với giấy tờ tuỳ thân và giấy phép lao động. Sự kiện được đẩy sang phân hệ Thông báo, không phải người dùng tự nhớ.
Vì sao học vấn là trường bắt buộc
🇻🇳 Việt Nam
NÊN CÓ
🇱🇦 Lào
BẮT BUỘC
Một engine thiết kế theo tư duy Việt Nam sẽ không bao giờ nghĩ tới việc phụ cấp phụ thuộc trình độ đào tạo. Đây là lý do education_level phải có thuộc tính is_trained BOOLEAN ngay từ mô hình dữ liệu, chứ không bổ sung sau.
Đào tạo nội bộ đã tham gia
Ghi nhận các khoá đào tạo nội bộ nhân viên đã tham gia
Kỹ năng đàm phán hợp đồng
11/2025 · 16h
Phòng chống rửa tiền (bắt buộc)
03/2025 · 4h
An toàn thông tin nội bộ
01/2026 · 2h
Kinh nghiệm làm việc trước khi vào FOXAI
Do ứng viên khai lúc tuyển dụng, HR xác minh
08/2018 – 05/2021 · 2 năm 9 tháng
Công ty CP Thương mại Minh Long — Chuyên viên Kinh doanh
Phụ trách kênh đại lý miền Bắc. Lý do nghỉ: thay đổi định hướng ngành. ✓ ĐÃ XÁC MINH
06/2016 – 07/2018 · 2 năm 2 tháng
Công ty TNHH Phân phối Đông Á — Nhân viên Kinh doanh
Bán hàng kênh siêu thị. CHƯA XÁC MINH
09/2015 – 05/2016 · 9 tháng
Tập đoàn Bán lẻ VietMart — Thực tập sinh Kinh doanh
Thực tập tốt nghiệp.
ℹ Tổng kinh nghiệm ngoài FOXAI: 5 năm 8 tháng. Con số này không tính vào thâm niên nội bộ (dùng cho quỹ phép, trợ cấp thôi việc) — thâm niên chỉ đếm thời gian tại các pháp nhân thuộc tenant, nối qua person_id khi tái tuyển dụng.
Thâm niên tính lương — nối qua Person
Hồ sơ cũ NV2021-0203
06/2021 → 08/2024
Gián đoạn (không tính)
09/2024 → 12/2025
Hồ sơ hiện tại NV2026-0412
01/01/2026 → nay
Thâm niên cộng dồn
≈ 3,4 năm
✓ FLOOR(3,4 / 5) = 0 → phép năm 12 ngày, chưa có ngày thâm niên. Nếu gộp Person và Employee làm một thì hồ sơ cũ đã mất, và hệ thống sẽ tính sai cả thâm niên lẫn trợ cấp thôi việc.
Người tham chiếu
Ông Trần Đại Nghĩa — TP KD, Minh Long
0903 xxx xxx
Bà Lê Hồng Vân — HR, Đông Á
0988 xxx xxx
Từ điển năng lực (competency) & Kỹ năng
Danh mục TENANT — dùng cho đánh giá KPI và tìm người cho dự án
Đàm phán hợp đồng
Thành thạo 4/5
Quản trị kênh phân phối
Thành thạo 4/5
Phân tích dữ liệu bán hàng
Khá 3/5
Trình bày & thuyết phục
Xuất sắc 5/5
Excel nâng cao
Khá 3/5
ℹ Mức năng lực do quản lý trực tiếp đánh giá tại kỳ review gần nhất (12/2025), không phải nhân viên tự khai.
Ngôn ngữ
Danh mục SYSTEM — ngôn ngữ + mức độ thành thạo
Ngôn ngữNgheNóiĐọcViếtChứng chỉ
🇻🇳 Tiếng ViệtBản ngữBản ngữBản ngữBản ngữ—
🇬🇧 Tiếng AnhTốtKháTốtTốtIELTS 7.0
🇱🇦 Tiếng LàoCơ bảnCơ bản———
⚠ Tiếng Lào ở mức cơ bản — cần lưu ý nếu điều chuyển sang pháp nhân 🇱🇦 FOXAI Laos. Bộ lọc "tìm người biết tiếng Lào" dùng chính bảng này.
Nghĩa vụ quân sự
Tình trạng
Không thuộc diện
🔒 Dữ liệu sức khoẻ là dữ liệu cá nhân NHẠY CẢM theo Luật Bảo vệ dữ liệu cá nhân (Luật 91/2025/QH15, hiệu lực 01/01/2026). Trường person.health_info chỉ có hai mức hiển thị HIDDEN | FULL — không có mức MASKED, vì che một phần bệnh án vẫn là tiết lộ. Mọi lần mở đều ghi sensitive_access_log với data_category = HEALTH kèm mục đích truy cập.
Khám sức khoẻ định kỳ
Chỉ lưu kết luận đủ/không đủ điều kiện — KHÔNG lưu chi tiết bệnh án
Ngày khámCơ sở y tếKết luận phân loạiĐủ điều kiện làm việcHồ sơ
15/01/2026Bệnh viện Đa khoa MedlatecLOẠI IĐỦ🔒
20/01/2025Bệnh viện Đa khoa MedlatecLOẠI IĐỦ🔒
ℹ Doanh nghiệp chỉ cần biết đủ hay không đủ điều kiện làm việc để bố trí công việc. Chi tiết chẩn đoán thuộc về cơ sở y tế — hệ thống HRM chỉ lưu tệp đã mã hoá và kết luận phân loại.
Thông tin y tế cần cho xử lý khẩn cấp
Nhân viên tự khai, có thể từ chối — không bắt buộc
Nhóm máu
••
Dị ứng thuốc
••••
Bệnh nền cần lưu ý
Nhân viên chọn không khai
Bảo hiểm sức khoẻ tự nguyện
PVI Care — hạn 31/12/2026
Ai được xem mục này
Vai tròperson.health_info
Nhân viên (chính chủ)FULL
Cán bộ y tế / An toàn LĐFULL
Trưởng phòng Nhân sựFULL — có ghi log
Quản lý trực tiếpHIDDEN
Chuyên viên C&BHIDDEN
Quản trị hệ thốngHIDDEN
⚠ Bạn đang đăng nhập với vai Chuyên viên C&B → mặc định HIDDEN. Nút "yêu cầu xem" gửi yêu cầu tới Trưởng phòng Nhân sự kèm lý do, không mở trực tiếp.
Quyền của cá nhân theo Luật 91/2025
Được biết dữ liệu nào đang lưu
✓
Rút lại đồng ý khai báo y tế
✓
Yêu cầu xoá sau khi nghỉ việc
✓
Xem nhật ký ai đã truy cập
✓
✓ Khi nhân viên yêu cầu xoá, hệ thống ẩn danh hoá chứ không xoá cứng — dữ liệu kế toán bắt buộc lưu trữ vẫn phải giữ.

Thêm nhân viên

Tái tuyển dụng — Lê Thị Thu Hà · pháp nhân 🇻🇳 FOXAI Việt Nam · bản nháp tự lưu 09:42
✓
1 · Danh tính
✓
2 · Công việc
3
3 · Hợp đồng & lương
4
4 · Tài khoản
5
5 · Xác nhận
⚠ Phát hiện trùng lặp ở bước 1: CCCD 0381••••••11 + họ tên + ngày sinh khớp person P-003107 · Lê Thị Thu Hà, từng làm 03/2022 → 08/2024 (mã cũ NV2022-0341, đã TERMINATED). Bạn đã chọn TÁI TUYỂN DỤNG: dùng lại Person để nối lịch sử (thâm niên, giấy tờ, quá trình cũ), tạo Employee mới với mã mới NV2026-0518 — mã cũ không tái sử dụng. Nếu chọn "tạo person mới" hệ thống sẽ yêu cầu lý do và ghi audit.
Bước 3 — Hợp đồng & lương
country pack VN-2026.01 kiểm tra ràng buộc ngay khi nhập
VN: tối đa 36 tháng · chỉ được ký lại 1 lần — lần 3 hệ thống tự khóa, bắt buộc chuyển không xác định thời hạn
Người ký lần trước của person này: HĐ XĐTH lần 1 (2022) → lần này vẫn được ký XĐTH (đếm lại từ đầu vì quan hệ lao động cũ đã chấm dứt > 30 ngày)
tháng × % lương
probation_rate tối thiểu 85% theo luật VN — nhập < 85 sẽ báo chặn · tái tuyển vị trí cũ: cân nhắc miễn thử việc
GROSSNETTheo giờTheo ngàyKhoán SP
✓ ≥ sàn LTTV Vùng I 5.310.000 ₫ (theo work_location đã chọn ở bước 2: VP Hà Nội) · tiền tệ VND theo pháp nhân
chỉ nhập khi khác lương hợp đồng
Phụ cấp ban đầu (contract_allowance)
KhoảnMức/thángHiệu lực từ
ALW_LUNCH — Phụ cấp ăn ca730.00016/03/2026
ALW_TRANSPORT — Phụ cấp đi lại500.00016/03/2026
Tổng phụ cấp1.230.000
Bước 4 (xem trước) — Tài khoản đăng nhập
tách Person / Identity / Employee
◉ Tạo identity đăng nhập
Email công ty + lời mời kích hoạt (INVITED → ACTIVE). Dành cho nhân viên văn phòng.
○ Chỉ chấm công: mã NV + PIN
Công nhân không cần email — Employee không cần Identity, chấm kiosk bằng NV2026-0518 + PIN 6 số.
○ Tạo sau
Có thể cấp identity bất kỳ lúc nào; khi nghỉ việc identity chuyển vai trò ALUMNI chứ không xóa.
Hồ sơ đang tạo
Person
P-003107 (tái sử dụng)
Họ tên
Lê Thị Thu Hà
Ngày sinh · tuổi tại ngày vào làm
02/1994 · 32,1 tuổi ✓ Đủ tuổi lao động
Mã NV mới
NV2026-0518
Đơn vị (bước 2)
Phòng HCNS — VP Hà Nội
Vị trí
CV Hành chính · định biên 2/3
Quản lý trực tiếp
Hoàng Thị Ngọc (NV2024-0310)
Tuổi tại ngày vào làm phải ≥ tuổi lao động tối thiểu theo quốc gia — kiểm tự động từ ngày sinh + ngày hiệu lực HĐ.
Checklist bước 5 sẽ tự sinh
checklist_template ONBOARDING · mốc theo ngày vào làm 16/03
✓
Quyết định tiếp nhận đã duyệt
HR · xong 05/03
IT tạo tài khoản, cấp thiết bị
IT · hạn 14/03 (D−2) · is_blocking — chưa xong không kích hoạt hồ sơ
Ký hợp đồng (E_SIGN)
NLĐ + đại diện DN · hạn 16/03 (D0) · requires_file
Khai báo tăng lao động BHXH
C&B · hạn 21/03 (D+5)
Đào tạo hội nhập & ATLĐ
HR · hạn 19/03 (D+3)

Nhập nhân viên từ Excel

Tệp nhap_nhan_su_T3-2026.xlsx · tải lên 07/03/2026 09:15 bởi Hoàng Thị Ngọc · ghi audit_log theo correlation_id chung cho cả lô
✓
TẢI MẪU
✓
TẢI LÊN (248 DÒNG)
3
KIỂM TRA THEO DÒNG
4
NHẬP VÀO HỆ THỐNG
Tổng dòng
248
2 pháp nhân: 🇻🇳 201 · 🇱🇦 47
Hợp lệ
236
214 tạo mới · 22 cập nhật theo mã NV
Lỗi — chặn nhập
12
liệt kê theo dòng bên dưới
Cảnh báo — vẫn nhập được
5
vd: thiếu ảnh chân dung (chưa bật chấm khuôn mặt)
12 dòng lỗi — sửa trong file rồi tải lên lại, hoặc nhập trước 236 dòng hợp lệ
DòngCộtGiá trịLý do lỗiQuy tắc
17noi_lam_viec(trống)Thiếu địa điểm làm việc → không xác định được vùng lương tối thiểu để đối chiếu sàn lương (VN bắt buộc qua work_location)Trường bắt buộc
23ngay_sinh31/13/2001Sai định dạng ngày — yêu cầu dd/MM/yyyy, tháng 13 không tồn tạiĐịnh dạng
41ma_nvNV2024-0089Trùng mã nhân viên đang hoạt động (Trần Quốc Bảo) — mã phải duy nhất trong tenant, không tái sử dụngMã NV duy nhất
58ngay_sinh + ngay_vao_lam12/09/2011 · 16/03/2026Tuổi tại ngày vào làm = 14,5 < tuổi lao động tối thiểu 15 của VNTuổi lao động tối thiểu
66trinh_do_dao_tao(trống)Pháp nhân Lào: trình độ đào tạo bắt buộc — cờ is_trained quyết định phụ cấp sinh hoạt (tới 900.000 ₭ cho LĐ chưa qua đào tạo)Bắt buộc với pháp nhân Lào
72so_cccd0381930022CCCD 10 ký tự — phải đủ 12 chữ số theo loại giấy tờ CCCDdocument_type
89so_cccd0794••••••31Trùng giấy tờ + họ tên + ngày sinh với person P-002845 đã có (nghỉ việc 2023) — cần xác nhận tái tuyển dụng qua wizard, import không tự tạo person trùngTrùng hồ sơ cá nhân
104don_viPKD-MTMã đơn vị không tồn tại hoặc hết hiệu lực tại ngày vào làm — cây tổ chức truy vấn kèm as_of_dateĐơn vị hiệu lực theo ngày
121luong_thoa_thuan3.800.000Thấp hơn sàn lương tối thiểu Vùng I (5.310.000 ₫) theo work_location "VP Hà Nội"wage_floor
137loai_hdHĐ thử việcPháp nhân Lào không có loại "HĐ thử việc" trong danh mục contract_type (chỉ VN có) — chọn HĐ xác định/không xác định thời hạnDanh mục loại hợp đồng
165gioi_tinh(trống)Bắt buộc với pháp nhân Lào — điều kiện hưởng ngày lễ theo giới tính (vd 08/03 chỉ nữ được nghỉ)Bắt buộc với pháp nhân Lào
202tien_te_luongVNDPháp nhân Lào bắt buộc trả lương bằng LAK — không nhận tiền tệ khác trên hợp đồngTiền tệ theo pháp nhân
12 lỗi / 248 dòng · dòng lỗi không chặn các dòng hợp lệ khác — có thể nhập từng phần
Nhập xong: 214 hồ sơ mới ở trạng thái HĐ DRAFT — chưa tính lương cho tới khi HĐ ACTIVE.

Hợp đồng lao động

FOXAI Việt Nam + FOXAI Laos Co., Ltd · dữ liệu đến 07/03/2026
HĐ đang hiệu lực
1.284
gồm 34 thử việc · 8 tạm hoãn
Hết hạn trong 30 ngày
7
1 ca bắt buộc chuyển vô thời hạn
Chờ ký (PENDING_SIGN)
3
2 ký số · 1 ký ướt
HĐ lương NET
41
VN 39 · LA 2 — phổ biến khối FDI
⚠ 7 hợp đồng hết hạn ≤ 30 ngày (hệ thống cảnh báo trước 30 ngày). Trong đó Lê Văn Hùng (NV2023-0455) đã ký HĐ xác định thời hạn lần 2 — lần ký tiếp theo bắt buộc là vô thời hạn (VN: tối đa 1 lần ký lại HĐ xác định).
Tất cả 🇻🇳 Việt Nam 🇱🇦 Lào Sắp hết hạn ≤30 ngày Có phụ lục
Danh sách hợp đồng
contract_no duy nhất trong tenant · lương hiển thị theo quyền — mọi lần xem đều ghi nhật ký
Số HĐNhân viênLoại hợp đồngCách trả Lương HĐLương đóng BH (si_base) Hiệu lựcKý kếtTrạng thái
HĐ-VN/2021-077
VL
Vũ Đình Long
NV2021-0077 · TP Kinh doanh · G7
🇻🇳 Vô thời hạn GROSS 45.000.000 ₫ = lương HĐ 01/07/2021 → ∅ Ký số CA ACTIVE
HĐ-VN/2022-367
HP
Nguyễn Hữu Phước
NV2022-0367 · Xưởng may 2
🇻🇳 Vô thời hạn GROSS 16.500.000 ₫ 14.000.000 ₫ ≠ lương HĐ 15/08/2022 → ∅ Ký ướt ACTIVE
HĐ-VN/2026-0412
PH
Phạm Thu Hằng
NV2026-0412 · CV KD cao cấp · G5
🇻🇳 Xác định 24 tháng lần 1 GROSS 25.000.000 ₫
theo PL-2026/031 (22tr trước 01/01)
= lương HĐ 05/01/2026 → 04/01/2028 Ký điện tử ACTIVE
└ PL-2026/031 PHỤ LỤC của HĐ-VN/2026-0412 — điều chỉnh lương theo QĐ-2026/031 22.000.000 → 25.000.000 ₫ = lương mới 01/01/2026 → ∅ Ký điện tử hồi tố → truy lĩnh
HĐ-VN/2023-455-L2
LH
Lê Văn Hùng
NV2023-0455 · Tổ trưởng chuyền BN
🇻🇳 Xác định 12 tháng LẦN 2 GROSS 14.000.000 ₫
+ PC tổ trưởng 800.000 (contract_allowance)
= lương HĐ 01/04/2025 → 31/03/2026 Ký ướt còn 24 ngày
HĐ-VN/2026-455-KXĐ
LH
Lê Văn Hùng
HĐ kế tiếp — bắt buộc vô thời hạn
🇻🇳 Vô thời hạn 🔒 bắt buộc GROSS 14.000.000 ₫
+ PC tổ trưởng 800.000 (contract_allowance)
= lương HĐ 01/04/2026 → ∅ Ký ướt PENDING_SIGN
HĐ-VN/2025-301
TL
Trương Mỹ Linh
NV2025-0301 · Kế toán trưởng
🇻🇳 Vô thời hạn NET 30.000.000 ₫ NET cam kết gross-up 01/03/2025 → ∅ Ký số CA ACTIVE
HĐ-TV/2026-0501
NL
Ngô Thị Lan Anh
NV2026-0501 · NV nội dung
🇻🇳 Thử việc 60 ngày GROSS 13.600.000 ₫
= 16.000.000 × 85% (probation_rate)
— chưa đóng BHXH 10/02/2026 → 10/04/2026 Ký điện tử còn 34 ngày
HĐ-VN/2020-155
PĐ
Phan Văn Đức
NV2020-0155 · NV kho (thủ kho)
🇻🇳 Vô thời hạn GROSS 13.200.000 ₫ = lương HĐ 01/06/2020 → ∅ Ký ướt chấm dứt 20/03 →
HĐ-LA/2024-112
SV
Somchai Vongsa
LA2024-0112 · Kế toán tổng hợp
🇱🇦 Vô thời hạn GROSS 9.800.000 ₭ LAK bắt buộc 4.500.000 ₭ trần NSSF 01/10/2024 → ∅ Ký ướt + scan 📎 ACTIVE
HĐ-LA/2025-090
KS
Khamphan Sisouk
LA2025-0090 · LĐ phổ thông — chưa qua đào tạo
🇱🇦 Xác định 12 tháng GROSS 1.800.000 ₭
+ PC sinh hoạt 700.000 ₭ (contract_allowance — trình độ chưa qua đào tạo)
2.500.000 ₭ lương + PC, dưới trần 01/07/2025 → 30/06/2026 Ký ướt ACTIVE
HĐ-LA/2024-055
NT
Nguyễn Văn Tùng
LA2024-0055 · người VN làm tại Lào
🇱🇦 Xác định 36 tháng = trần 36 th GROSS 26.000.000 ₭ LAK bắt buộc 4.500.000 ₭ trần NSSF 01/06/2024 → 31/05/2027 Ký ướt + scan 📎 GPLĐ hết 15/05
HĐ-TV/2026-…
LG
Lý Gia Hân
ứng viên trúng tuyển REQ-2026-011 — chưa cấp mã NV
🇻🇳 Thử việc 60 ngày GROSS 17.000.000 ₫
= 20.000.000 × 85%
— 16/03/2026 → 14/05/2026 chưa gửi DRAFT ← tuyển dụng
Luồng ký điện tử — HĐ-VN/2026-455-KXĐ (Lê Văn Hùng)
6 bước từ soạn thảo đến lưu trữ
⚠ Ràng buộc loại hợp đồng: nhân viên đã ký HĐ xác định thời hạn 2 lần (2024→2025, 2025→2026). Khi soạn HĐ kế tiếp, hệ thống khoá cứng loại hợp đồng = Vô thời hạn — HR không chọn được loại khác.
✓Soạn từ mẫu
✓HR duyệt nội dung
3Gửi NLĐ
4NLĐ xem & ký
5Đại diện DN ký
6Lưu trữ + gửi bản sao
Gửi NLĐ lúc
06/03/2026 16:42 — chờ nhân viên mở xem
employee_signed_at / employer_signed_at
— / —
Phương thức
WET — in 2 bản, ký tươi, scan đính kèm 📎
Ký số theo quốc gia
đối chiếu quy định hai nước
🇻🇳 VN — chữ ký số CA / chữ ký điện tử (Luật Giao dịch điện tử)
mặc định E_SIGN
🇱🇦 LA — Luật Chữ ký điện tử 59/NA (17/5/2019) nhưng hệ sinh thái CA còn mỏng
mặc định KÝ ƯỚT + scan
Tích hợp nhà cung cấp CA (VN)
1 nhà cung cấp đã tích hợp
Cảnh báo hợp đồng
quét hằng đêm, nhắc trước 30 ngày
⚠
HĐ Lê Văn Hùng hết hạn 31/03 — còn 24 ngày
Đã ký xác định thời hạn 2 lần → HĐ kế tiếp bắt buộc vô thời hạn (đang PENDING_SIGN)
◔
Thử việc Ngô Thị Lan Anh hết 10/04 — còn 34 ngày
Cần quyết định PROBATION_END trước hạn; quá hạn không quyết định = mặc nhiên tiếp tục
▲
Giấy phép lao động Nguyễn Văn Tùng hết 15/05/2026
Người nước ngoài tại Lào — tỷ lệ LĐ nước ngoài hiện 8,6% / hạn ngạch 10%
●
HĐ Phan Văn Đức chấm dứt 20/03 (TERMINATION)
Wizard nghỉ việc đang chạy — 2 mục chặn chưa xong

Biến động nhân sự

Mọi thay đổi là một SỰ KIỆN có before/after — không UPDATE đè hồ sơ
Tạo quyết định biến động
QĐ-2026/031 · nhập ngày 05/03/2026
PH
Phạm Thu Hằng
NV2026-0412 · CV KD cao cấp · G5 · Phòng KD Miền Bắc
TrườngTrướcSauChênh
Mức lương GROSS22.000.000 ₫25.000.000 ₫+13,6%
Bậc lươngG5G5không đổi
Vị trí / đơn vịCV KD cao cấp · P.KD MBkhông đổi—
Phụ cấpgiữ nguyên theo HĐgiữ nguyên—
⚠ Hiệu lực 01/01/2026 TRƯỚC hôm nay (07/03/2026) và các kỳ lương 01/2026, 02/2026 đã CLOSED. Khi quyết định được APPROVED, hệ thống sẽ tự đặt triggers_retro = true, retro_from = 01/01/2026 và phát RetroTriggeredEvent → phân hệ lương tự tạo yêu cầu TRUY LĨNH: (25.000.000 − 22.000.000) × 2 kỳ = 6.000.000 ₫, trả gộp vào kỳ 03/2026. Kỳ 03 trở đi tính thẳng theo mức mới. Vì sao ra số này?
●DRAFT
2PENDING
3APPROVED
4APPLIED
Chỉ khi APPLIED hồ sơ nhân viên mới được ghi nhận thay đổi — bản ghi movement giữ nguyên vĩnh viễn để truy vết.
Biến động hàng loạt — tăng lương Phòng KD
1 lệnh → tách thành N quyết định SALARY_CHANGE riêng
Nhân viênLương hiện tạiMới (+8%)Chênh / tháng
VL
Vũ Đình Long
NV2021-0077 · TP KD · G7
45.000.00048.600.000+3.600.000
PH
Phạm Thu Hằng
NV2026-0412 · CV KD cao cấp
25.000.000 sau QĐ-2026/03127.000.000+2.000.000
BH
Bùi Quang Huy
NV2024-0198 · CV KD
18.000.00019.440.000+1.440.000
ĐM
Đỗ Thị Mai
NV2025-0266 · NV KD
15.500.00016.740.000+1.240.000
TQ
Tạ Minh Quân
NV2023-0287 · NV KD
14.000.00015.120.000+1.120.000
Tổng (₫/tháng)117.500.000126.900.000+9.400.000
Quỹ lương tăng thêm
+9.400.000 ₫/tháng
BH phần doanh nghiệp 21,5% (ước trên phần tăng)
+2.021.000 ₫/tháng
Tổng chi phí DN tăng thêm
+11.421.000 ₫/tháng
* Ước tính chưa xét trần BHXH và si_base riêng — ví dụ Nguyễn Hữu Phước (Xưởng may 2) đóng BH trên 14.000.000 ₫ (≠ lương HĐ 16.500.000 ₫) nên phần BH thực tế thấp hơn.
✓ Hiệu lực 01/04/2026 là kỳ tương lai → không phát sinh truy lĩnh (đối chiếu với trường hợp hồi tố ở cột trái). Mỗi người sẽ có 1 quyết định riêng (QĐ-2026/044…048), số QĐ tự sinh theo mẫu cấu hình, đi qua luồng duyệt trước khi APPLIED.
Điều chuyển — QĐ-2026/044 · Đặng Minh Tú (NV2025-0233)
movement_type TRANSFER · hiệu lực 01/04/2026 · KHÔNG hồi tố — hiệu lực tương lai nên không sinh truy lĩnh
CHỜ DUYỆT CẤP 2
Thuộc tínhbefore_state (đến 31/03)after_state (từ 01/04)Hệ quả dây chuyền
Đơn vị org_unit_id Phòng Kỹ thuật OU-VN-KT Nhà máy Bắc Ninh — Tổ Cơ điện OU-VN-BN-CD Cây 1 đổi · báo cáo đơn vị tháng 4 tính vào Khối SX
Vị trí / chức danh position_id Kỹ sư phần mềm · G5 Kỹ sư hệ thống sản xuất · G5 giữ ngạch Định biên đơn vị đích 41/42 → còn 1 suất, không vượt định biên
Quản lý trực tiếp reporting_line Nguyễn Tiến Dũng (TP Kỹ thuật) Đỗ Văn Sơn (Quản đốc Xưởng) Cây 2 độc lập cây 1 · đơn nghỉ từ 01/04 chuyển hàng đợi duyệt sang QĐ mới
Trung tâm chi phí cost_center_id CC-200 Kỹ thuật CC-110 Nhà máy Bắc Ninh Cây 3 đổi · bút toán lương tháng 4 hạch toán sang CC-110
Địa điểm làm việc work_location_id VP Duy Tân, Hà Nội Vùng I · 5.310.000 ₫ KCN VSIP Bắc Ninh Vùng II · chờ kiểm sàn LTTV Đổi vùng lương tối thiểu — hệ thống kiểm lại sàn LTTV, GPS chấm công đổi toạ độ + bán kính
Ca làm việc work_shift_id ADMIN 08:00–17:00 · tuần 5 ngày SHIFT_A 06:00–14:00 · mẫu xoay 5-2 Phát ShiftAssignmentChanged → phân hệ Chấm công tính lại timesheet từ 01/04
Lương & phụ cấp 32.000.000 ₫ 32.000.000 ₫ không đổi Thêm ALW_HAZARD phụ cấp độc hại 800.000 ₫/tháng theo môi trường xưởng
✓ Vì sao điều chuyển phải là một sự kiện, không phải một lần UPDATE: bảy thuộc tính trên đổi cùng lúc, cùng ngày hiệu lực, và mỗi thuộc tính lại kéo theo một phân hệ khác. Nếu sửa đè lên hồ sơ, báo cáo chi phí tháng 3 sẽ bị tính sang CC-110 — sai kỳ. Bản ghi cũ chỉ được đóng lại tại 31/03, bản mới mở từ 01/04.
ℹ Sự kiện phát ra khi APPROVED: OrgUnitChanged → Lương & Báo cáo cập nhật phân bổ chi phí · ShiftAssignmentChanged → Chấm công tính lại lịch · reporting_line mới → hàng đợi duyệt đơn chuyển người · không có RetroTriggeredEvent vì hiệu lực nằm ở tương lai.
✓
Kiểm tra trước khi duyệt — 4/4 đạt
Định biên đơn vị đích còn suất (41/42) · Không tạo vòng lặp trong cây báo cáo · Đơn vị đích cùng pháp nhân 🇻🇳 FOXAI Việt Nam · Nhân viên không có đơn nghỉ đã duyệt vắt qua 01/04
Điều chuyển pháp nhân xuyên quốc gia — QĐ-2026/046 · Nguyễn Văn Tùng (LA2024-0055)
movement_type ENTITY_TRANSFER · 🇱🇦 FOXAI Laos → 🇻🇳 FOXAI Việt Nam · hiệu lực 01/05/2026
ĐA QUỐC GIA
Thuộc tính🇱🇦 Trước 01/05🇻🇳 Từ 01/05Vì sao không thể xử lý như điều chuyển thường
Pháp nhânFOXAI Laos Co., LtdFOXAI Việt NamCountry pack áp theo pháp nhân, không theo tenant
Country packLA-2024.10VN-2026.01Toàn bộ quy tắc thuế, bảo hiểm, lễ, OT đổi sang bộ khác
Đồng tiền trả lương8.400.000 ₭9.660.000 ₫Quy đổi theo tỷ giá NHTM ngày ký · không dùng tỷ giá hợp đồng cũ
Quỹ đóng gópNSSF 5,5% · trần 4.500.000 ₭BHXH+BHYT+BHTN 10,5% · trần theo mức tham chiếu1 quỹ → 5 quỹ: chốt sổ LSSO rồi mở sổ BHXH mới
Tuần làm việc48h · 6 ngày · công chuẩn 2640h · 5 ngày · công chuẩn 22Kỳ lương tháng 5 phải cắt hai lát nếu chuyển giữa kỳ
Phép năm15 ngày (LA)12 ngày + thâm niên (VN)Quỹ phép Lào phải chốt và thanh toán trước khi mở quỹ VN
Giấy tờGiấy phép lao động LA (hết 05/2026)Không cần GPLĐ — người Việt tại VNTrả lại quota lao động nước ngoài LA: 32/372 → 31/372 (8,3%)
⚠ Hồi tố: HẠN CHẾ. Không cho phép đặt ngày hiệu lực trong quá khứ với ENTITY_TRANSFER: kỳ lương đã chốt ở pháp nhân cũ dùng country pack khác, tính lại sẽ phải chọn dùng pack nào — câu hỏi không có đáp án đúng. Muốn sửa thì phải huỷ quyết định và làm lại, có ghi nhật ký.
✓ Một Person — hai Employee. Hệ thống không tạo con người mới: person_id giữ nguyên, đóng bản ghi employee Lào tại 30/04 và mở bản ghi Việt Nam từ 01/05. Nhờ vậy lịch sử công tác, học vấn, giấy tờ vẫn liền một mạch, và báo cáo hợp nhất đếm đúng một con người ở cả hai nước.
Biến động gần đây
toàn công ty · 30 ngày
PĐ
TERMINATION — Phan Văn Đức (NV2020-0155) APPROVED
QĐ-2026/039 · hiệu lực 20/03/2026 · người tạo: Hoàng Thị Ngọc · người duyệt: TP HCNS
Wizard offboarding đang chạy — còn 2 mục chặn. Hồi tố: hạn chế.
PH
SALARY_CHANGE — Phạm Thu Hằng DRAFT hồi tố 01/01
QĐ-2026/031 · nhập 05/03/2026 · 22.000.000 → 25.000.000 ₫
Kỳ 01+02/2026 đã CLOSED → sẽ tự tạo truy lĩnh 6.000.000 ₫ khi APPROVED.
NL
PROBATION_END — Ngô Thị Lan Anh DRAFT (hệ thống tự tạo)
Hiệu lực dự kiến 11/04/2026 · lương 13.600.000 → 16.000.000 ₫ (bỏ hệ số 85%)
Sinh tự động từ cảnh báo hết thử việc 10/04 — HR cần xác nhận kết quả đánh giá trước hạn.
12 loại biến động & khả năng hồi tố
quy tắc áp dụng cho từng loại
HIRE ✓PROBATION_END ✓ TRANSFER ✓PROMOTION ✓ SALARY_CHANGE ✓ phổ biến nhất ALLOWANCE_CHANGE ✓SHIFT_CHANGE ✓ ENTITY_TRANSFER ⚠ hạn chế SUSPENSION ✓RESUME ✓ TERMINATION ⚠ hạn chế REHIRE ✓
Quy tắc hồi tố: movement APPROVED có effective_date < hôm nay VÀ rơi vào kỳ lương đã CLOSED → triggers_retro = true + phát RetroTriggeredEvent. ENTITY_TRANSFER xuyên quốc gia (VN↔LA) hồi tố hạn chế vì đổi cả pack pháp quy, tiền tệ và cơ quan bảo hiểm. Thuật toán truy lĩnh chi tiết nằm ở phân hệ Lương.

Nghỉ việc (wizard)

Checklist bắt buộc trước khi chuyển TERMINATED
PĐ
Phan Văn Đức đang nghỉ việc
Mã NV NV2020-0155NV kho (thủ kho) · FOXAI Việt Nam Vào làm 01/06/2020HĐ vô thời hạn HĐ-VN/2020-155
Đơn xin nghỉ 03/02/2026 → hiệu lực 20/03/2026 ✓ báo trước đủ 45 ngày (HĐ vô thời hạn) Ngày làm việc cuối: 19/03/2026
✓1 · Quyết định chấm dứt
2Bàn giao & thu hồi
3Quyết toán lương cuối
4Chốt sổ & hồ sơ
5TERMINATED
Checklist nghỉ việc — 5/10 hoàn tất
2 mục chặn (is_blocking) · quá hạn sẽ nhắc người phụ trách
✓
Quyết định chấm dứt HĐLĐ đã duyệt
QĐ-2026/039 · duyệt 20/02/2026 bởi TP HCNS 📎
✓
Bàn giao công việc
Người nhận bàn giao: Lương Văn Thắng (NV2022-0140) · biên bản ký 04/03 📎
✕
Thu hồi tài sản cấp phát CHẶN
Còn 1 tài sản chưa trả: laptop Dell Latitude 5440 (TS-VN-0873, cấp 15/06/2023). Phương án thay thế: ghi nhận khấu trừ 1.200.000 ₫ vào kỳ lương cuối (asset_assignment.deduction_amount).
✓
Chốt quỹ phép còn lại
Tồn 4,5 ngày phép chưa dùng → chọn phương án THANH TOÁN vào kỳ lương cuối
✓
Tính trợ cấp thôi việc
= 0 ₫ — toàn bộ thời gian 06/2020→03/2026 đều tham gia BHTN nên không phát sinh trợ cấp thôi việc
Chốt sổ BHXH (VN)
Thực hiện sau ngày làm việc cuối 19/03 · trách nhiệm hoàn tất thủ tục trong 14 ngày sau chấm dứt
Quyết toán thuế TNCN / chứng từ khấu trừ
Cấp chứng từ khấu trừ thuế khi NLĐ yêu cầu — dùng cho quyết toán cuối năm tại nơi mới
Thu hồi quyền truy cập hệ thống
Tự động khoá tài khoản 18:00 ngày 20/03 khi phát sự kiện EmployeeTerminated → Auth
✕
Chuyển giao quyền quản lý CHẶN — ràng buộc cứng
Còn 2 nhân viên báo cáo trực tiếp: Lương Văn Thắng (NV2022-0140), Vũ Thị Hoa (NV2025-0244). Không cho phép chuyển TERMINATED khi chưa chỉ định người quản lý thay.
✓
Cấp giấy xác nhận công tác
NLĐ yêu cầu 05/03 → đã cấp GXN-2026/112 cùng ngày 📎

Kỳ lương cuối — 03/2026 (tạm tính)

Phan Văn Đức · lương ngày = 13.200.000 / 22 công chuẩn VN = 600.000 ₫ (đơn giá tròn đồng)
9.900.000 ₫ trước BH & thuế
Thu nhập
Lương 14 công thực tế (02→19/03)600.000 ₫/công × 14 · công chuẩn VN = 228.400.000
Thanh toán 4,5 ngày phép chưa dùng600.000 ₫/công × 4,52.700.000
Trợ cấp thôi việckhông phát sinh — đóng BHTN liên tục0
Khấu trừ
Khấu trừ tài sản chưa thu hồi (TS-VN-0873)tự sinh từ asset_assignment.deduction_amount−1.200.000
Tạm tính trước BH & thuế9.900.000 ₫
BH bắt buộc NLĐ 10,5% và thuế TNCN sẽ khấu trừ khi chạy bảng lương kỳ 03/2026 — số cuối cùng xem ở phân hệ lương. Vì sao ra số này?
Khi chuyển TERMINATED — sự kiện phát ra
phát tự động sang các phân hệ liên quan
◧
Time — dừng xếp ca từ 20/03
Ca đã xếp sau 19/03 bị gỡ, timesheet chốt đến ngày cuối
▤
Payroll — tính lương cuối kỳ 03/2026
Gồm 14 công + 4,5 phép − khấu trừ tài sản
●
Auth — khoá tài khoản 18:00 20/03
Thu hồi mọi phiên đăng nhập, ESS chỉ còn xem phiếu lương cuối
▲
Asset — chốt hồ sơ cấp phát
TS-VN-0873 chuyển trạng thái theo phương án khấu trừ
⛔ Nút Chuyển TERMINATED đang bị khoá: còn 2 mục chặn (thu hồi tài sản, chỉ định người quản lý thay). Mã nhân viên NV2020-0155 sẽ không được tái sử dụng sau khi nghỉ; nếu quay lại sẽ đi luồng REHIRE trên cùng hồ sơ person.

Tuyển dụng (Kanban)

Yêu cầu tuyển dụng → ứng viên → hồ sơ ứng tuyển
ℹ Tuân thủ dữ liệu cá nhân: mọi ứng viên phải có consent_at (đồng ý xử lý DLCN) trước khi hồ sơ được xử lý; hồ sơ tự động xoá/ẩn danh khi quá retention_until (mặc định 6 tháng sau khi đóng tin). Luật Bảo vệ dữ liệu cá nhân 91/2025/QH15 hiệu lực 01/01/2026 trao quyền yêu cầu xoá dữ liệu cho cá nhân — nút "Xoá theo yêu cầu" có ở từng hồ sơ.
Yêu cầu tuyển dụng đang mở (job_requisition)
SoD: requested_by ≠ approved_by
MãVị trí · đơn vịĐịnh biênKhung ngân sáchLý doHạn tuyểnTrạng thái
REQ-2026-011CV Kinh doanh · Phòng KD Miền Bắc2 18–25 tr ₫EXPANSION31/03/2026 OPEN — đã tuyển 1/2
REQ-2026-014NV kho (thủ kho) · Kho Hà Nội1 11–14 tr ₫REPLACEMENT01/04/2026 OPEN
REQ-LA-2026-003NV kho · FOXAI Laos (Vientiane)1 2,2–3,0 tr ₭EXPANSION15/04/2026 CHỜ DUYỆT
Mới nộp 3
Trần Đức Anh
CV Kinh doanh · REQ-2026-011 · nguồn TopCV
consent ✓ 05/03
Lê Hoài Nam
NV kho · REQ-2026-014 · giới thiệu nội bộ (Lương Văn Thắng)
consent ✓ 06/03
Soudavanh Phimmasone
NV kho Lào · REQ-LA-2026-003 · nộp trực tiếp
⚠ chưa có consent_at — khoá xử lý
Sàng lọc CV 2
Phạm Nhật Quang
CV Kinh doanh · REQ-2026-011
parsed_data từ CV: B2B 4 năm · tiếng Trung HSK5
★ 3,5consent ✓
Đinh Công Tráng
NV kho · REQ-2026-014 · CV giấy scan 📎
consent ✓ (bản giấy có chữ ký)
Phỏng vấn 2
Nguyễn Thu Trang
NV kho · REQ-2026-014
PV 14:00 thứ Ba 10/03 · hội đồng: Vũ Đình Long + Hoàng Thị Ngọc
★ 4,0lịch né 23–25/03
Hà Minh Châu
CV Kinh doanh · REQ-2026-011 · PV vòng 2: 12/03
★ 4,2consent ✓
Đề nghị (Offer) 1
Đoàn Văn Phú
NV kho · REQ-2026-014
offer_amount 12.500.000 ₫ · gửi 05/03 · hạn phản hồi 12/03
trong khung ngân sách ✓SENT
Trúng tuyển (HIRED) 1
Lý Gia Hân
CV Kinh doanh · REQ-2026-011
offer 20.000.000 ₫ · ACCEPTED 04/03 · vào làm dự kiến 16/03
consent ✓HIRED
⚠ Đối chiếu trùng danh tính: tìm thấy 1 person trùng họ tên + ngày sinh — ứng viên cũ năm 2024. Xác nhận gộp hồ sơ person thay vì tạo mới để tránh nhân bản danh tính.
  1. Tạo person — gộp với hồ sơ 2024 ✓
  2. Tạo employee (mã tự sinh NV2026-05xx)
  3. Tạo employment_contract DRAFT — thử việc 60 ngày, 20tr × 85%
  4. Tạo movement HIRE (hiệu lực 16/03)
  5. Kích hoạt checklist onboarding
  6. Sao chép CV, giấy tờ sang hồ sơ nhân sự
Loại 1
Hoàng Văn Sơn
NV kho · REQ-2026-014
rejection_reason: không đạt PV chuyên môn
tự ẩn danh sau 07/09/2026

Chiến dịch & Đề xuất tuyển dụng

Nhu cầu tuyển được duyệt trước khi mở nhận hồ sơ

Ứng viên (kho CV)

Hồ sơ ứng viên và tình trạng đồng ý xử lý dữ liệu cá nhân

Hồ sơ ứng tuyển

Bảng Kanban theo giai đoạn — bấm một thẻ để thao tác

Lịch phỏng vấn

Buổi phỏng vấn của cả tổ chức, xếp theo thời gian

Xếp ca & Lịch làm việc

Tuần 09–15/03/2026 · Nhà máy Bắc Ninh + FOXAI Laos · nguồn xếp: PATTERN / MANUAL / SWAP
⚠ 2 vi phạm tuân thủ phát hiện ngay khi xếp — nghỉ giữa 2 ca < 12h (Trần Quốc Bảo, 12/03) · chuỗi 7 ngày không nghỉ tuần (Lê Văn Hùng, 09–15/03). Hệ thống chặn trước khi vi phạm xảy ra, không đợi đến kỳ tính lương.
Lưới xếp ca tuần 09–15/03/2026
Kéo thả để đổi ca · ô có 🔒 đã khoá theo roster chốt · SHIFT_C ghi vào work_date = ngày BẮT ĐẦU ca
TuầnTháng
A SHIFT_A 06:00–14:00 B SHIFT_B 14:00–22:00 C↦ SHIFT_C 22:00–06:00 (+1 ngày, crosses_midnight) S⁄S SPLIT_FB ca gãy 09–13 & 16–21 HC Hành chính 08:00–17:00 · Nghỉ tuần P Nghỉ phép/ốm đã duyệt
Trần OT luỹ kế tháng 3/2026 — kiểm khi xếp ca
VN: 40h/tháng · LA: 45h/tháng
Trần Quốc Bảo 🇻🇳43,5 / 40h ▲ VƯỢT
Lê Văn Hùng 🇻🇳31,0 / 40h
Phan Văn Đức 🇻🇳12,0 / 40h
Khamla P. 🇱🇦12,0 / 45h
Bounmy Keo 🇱🇦4,0 / 45h
▲ Bảo đã vượt trần OT tháng VN (40h) — hệ thống chặn xếp thêm ca có OT cho Bảo trong tháng 3. Trần năm VN: 200h (300h ngành đặc thù). Vượt trần chỉ CẢNH BÁO ở bước tính, không tự cắt giờ.
◔ Trần OT tháng của Lào đang cấu hình 45h — CẦN XÁC MINH VĂN BẢN GỐC (V-03): một số nguồn ghi 30h. Phải đối chiếu Luật Lao động 43/NA bản gốc trước khi chốt cấu hình country pack.
Mẫu xoay ca (shift_pattern)
Áp cho nhóm — nguồn ô = PATTERN
5-2 · 5 làm 2 nghỉ (T7+CN) — khối văn phòng VN
6-1 · 6 làm 1 nghỉ (CN) — sản xuất Lào, tuần chuẩn 48h
2-2-3 · xoay 3 kíp 24/7 (A→B→C) — chuyền Bắc Ninh
Hàng đợi đổi ca chờ duyệt
shift_swap_request · nguồn ô sau duyệt = SWAP
Trần Quốc Bảo ⇄ Lê Văn Hùng — thứ Sáu 13/03
Bảo (SHIFT_B) đổi lấy ca Hùng (SHIFT_A) · gửi 06/03 21:14 · người duyệt: Vũ Đình Long
⚠ Nếu duyệt: Bảo nhận SHIFT_A 13/03 sau SHIFT_B 12/03 (giả định) — hệ thống sẽ kiểm lại quy tắc nghỉ 12h TRƯỚC khi ghi vào roster.
Khamla Phommachanh — xin đổi tự do ca 14/03 (target trống)
Chưa có người nhận · gửi 05/03 · hệ thống chỉ gợi ý người nhận là ca NGÀY (Khamla không được xếp ca đêm)

Bảng chấm công tháng 3/2026

01–31/03/2026 · VN nghỉ T7+CN → công chuẩn 22 · Lào chỉ nghỉ CN → công chuẩn 26 · hôm nay 07/03 · từ 08/03 trở đi là công dự kiến theo lịch đã xếp
Pipeline dữ liệu chấm công — 7 bước
chạy gần nhất 07/03 05:30
1RAW INGESTION
2NORMALIZE
3PAIR
4RESOLVE SHIFT
5ADJUST
6BUCKET
7AGGREGATE
Bước [1] append-only BẤT BIẾN · bước [3] ghép punch lấy roster làm mỏ neo — khi không chắc chắn KHÔNG đoán, tạo exception · bước [6] đang chờ xử lý 3 exception BLOCKING trước khi phân rổ chốt.
Ma trận công 10 nhân sự × 31 ngày
bấm ô đỏ ! để mở chi tiết punch ngày · ✓ đủ công · +n giờ OT · ▲ phút đi muộn
✓ đủ công +2 OT (giờ) ▲12 đi muộn (phút, sau grace 5') P nghỉ có phép · KH nghỉ kết hôn L nghỉ lễ theo điều kiện cá nhân ! exception chờ xử lý · nghỉ tuần · — ngoài quan hệ lao động
🇱🇦 08/03 — lễ theo GIỚI TÍNH: Khamla (nữ, Lào) được nghỉ lễ 08/03; nam đồng nghiệp Somchai, Bounmy KHÔNG. IS_PUBLIC_HOLIDAY() lọc theo điều kiện cá nhân. Năm 2026 lễ 08/03 trùng CN — nữ Lào được NGHỈ BÙ T2 09/03, ô ngày 9 ghi L nghỉ bù có lương.
✚ Bounmy Keo ốm 09–11/03 có giấy bác sĩ — quỹ ốm Lào 30 ngày/năm: đã dùng 2, đơn này 3 → còn 25. Ngày 10/03 máy vẫn ghi 1 punch của Bounmy → exception WORKED_ON_LEAVE (WARNING) chờ giải trình.
! Trần Quốc Bảo 10/03 MISSING_OUT (máy ZK-BN-02 mất kết nối) — ngày treo, KHÔNG tự suy diễn giờ ra. Công tạm tính 0, sẽ hồi lại khi điều chỉnh được duyệt → xem màn Chi tiết chấm công ngày.

Chi tiết chấm công ngày

Trần Quốc Bảo · NV2024-0089 · CN bậc 4, chuyền Bắc Ninh · thứ Ba 10/03/2026 · ca xếp: SHIFT_A 06:00–14:00 (nghỉ giữa ca 12:00–12:30 không lương)
MISSING_OUT · BLOCKING
① Punch thô — punch_raw (dữ liệu gốc, BẤT BIẾN)
append-only · dữ liệu gốc không bao giờ sửa/xoá — chỉ THÊM bản ghi điều chỉnh
#Giờ thiết bịUTCHướngNguồnThiết bịverify_modeTrạng thái
106:02:1109/03 23:02:11ZINDEVICEZK-BN-02FINGERPRINTPROCESSED
211:58:0410/03 04:58:04ZOUTDEVICEZK-BN-02FINGERPRINTPROCESSED
312:29:3710/03 05:29:37ZINDEVICEZK-BN-02FINGERPRINTPROCESSED
4— thiếu ——OUT?Máy ZK-BN-02 mất kết nối 11:05–14:20 — không nhận được punch ra cuối caMISSING_OUT
◈ Dữ liệu gốc: bảng trên là sự thật gốc, khoá ghi vĩnh viễn (append-only, partition theo punched_at_utc). Thuật toán ghép punch lấy ca SHIFT_A làm mỏ neo: cửa sổ tìm punch = 02:00–20:00 (lookback 4h / lookahead 6h). Thiếu OUT → KHÔNG suy diễn, không ghép bừa với punch ngày hôm sau (tránh tính thành 24h) — treo exception cho con người quyết.
② Ba giá trị thời gian song song — punch_pair
rounding_rule: NEAREST 15' · grace vào 5' · use_rounded_for_ot = true
Cặp / mốc① actual (thực)② rounded (tính lương)③ effective (xét quy tắc)
IN sáng06:02:1106:0006:00
OUT trưa11:58:0412:0012:00
IN chiều12:29:3712:3012:30
OUT cuối cathiếuchờ điều chỉnhchờ điều chỉnh
Đi muộn? IN thực 06:02 = trễ 2' — trong grace 5'KHÔNG ghi đi muộn (grace chỉ phục vụ kỷ luật chuyên cần)
Trả lương theo giá trị nào?② rounded — NEAREST trung tính, không bất lợi NLĐ
Xét OT / nghỉ giữa 2 ca theo giá trị nào?③ effective (doanh nghiệp CHỌN được, tách khỏi ②)
◈ Làm tròn ≠ ân hạn (grace). Làm tròn quyết định SỐ GIỜ ĐƯỢC TRẢ (rủi ro pháp lý cao nếu bất lợi NLĐ); grace chỉ quyết định CÓ BỊ GHI ĐI MUỘN. Khuyến nghị an toàn nhất: trả lương từng phút thực tế, grace chỉ dùng cho chuyên cần — hệ thống cảnh báo nếu khách bật làm tròn hướng UP ở punch IN.
③ Phiếu điều chỉnh — punch_adjustment
ADD punch OUT · KHÔNG đụng vào punch_raw
Loại điều chỉnhADD (thêm punch thiếu)
Hướng · thời điểm đề xuấtOUT · 10/03/2026 14:00
Bằng chứng đính kèm📎 bien-ban-su-co-ZKBN02_1003.pdf
Người yêu cầuLê Văn Hùng (tổ trưởng)
Người duyệtVũ Đình Long — TP KD chờ duyệt
Nhật kýmọi thao tác ghi audit log, kể cả từ chối
Sau duyệt: engine đọc punch_raw ∪ punch_adjustment đã duyệt → tập punch hiệu lực; punch gốc vẫn nguyên vẹn. Nếu kỳ công đã LOCKED → tự kích hoạt tính lại + đánh dấu truy lĩnh.
④ Phân rổ giờ của ngày (sau điều chỉnh dự kiến)
Ghép theo segment ca · bucket EXCLUSIVE trước, ADDITIVE sau
Đoạn cắtKhớp segment caGiờRổ (bucket)
06:00 → 12:00SHIFT_A khúc sáng6,0REG ×1,0
12:00 → 12:30nghỉ giữa ca (không lương)0,0—
12:30 → 14:00SHIFT_A khúc chiều1,5REG ×1,0
Tổng ngày 10/03 — work_day_credit = 1,0 công7,5REG 7,5h · OT 0 · NIGHT 0
◔ Trạng thái hiện tại: ngày treo MISSING_OUT nên chưa phân rổ (REG tạm 0). Bảng trên là kết quả dự kiến nếu điều chỉnh OUT 14:00 được duyệt — hiện lên trước cho người duyệt thấy hệ quả từng giờ.

Ngoại lệ & Chốt công

attendance_exception kỳ 3/2026 · đủ 12 loại theo danh mục chuẩn · quy tắc vàng: không chắc chắn → không đoán, treo cho con người quyết
🔒 Nút chốt bị khoá: ràng buộc cứng — không được chốt timesheet kỳ nếu còn exception BLOCKING chưa xử lý. Hiện còn 3 BLOCKING mở (2 của Trần Quốc Bảo + 1 của Phan Văn Đức). WARNING/INFO không chặn chốt nhưng lưu vết giải trình.
Vòng đời timesheet kỳ
người duyệt bảng công ≠ người chạy tính (SoD)
✓DRAFT
2CALCULATED
3APPROVED
4LOCKED → payroll
CALCULATED → APPROVED chỉ mở khi hết BLOCKING. Sau LOCKED: mọi thay đổi phải qua punch_adjustment có duyệt, tự kích hoạt tính lại và tự đánh dấu truy lĩnh nếu kỳ lương đã đóng. Payroll chỉ đọc TimesheetFact — không bao giờ đọc punch_raw.
Tất cả · 12 BLOCKING · 3 WARNING · 6 INFO · 3 · mỗi loại một dòng phát sinh trong kỳ 3/2026
exception_typeSeverityNhân sự · ngàyChi tiếtTrạng thái
MISSING_OUTBLOCKINGTrần Quốc Bảo · 10/03Thiếu chấm ra cuối ca (máy ZK-BN-02 mất kết nối) — phiếu điều chỉnh OUT 14:00 đang chờ duyệtOPEN
MISSING_INBLOCKINGLê Văn Hùng · 04/03Có OUT 22:07 nhưng không có IN — nghi quên chấm khi vào ca B 14:00OPEN
NO_PUNCHBLOCKINGPhan Văn Đức · 06/03Có lịch SHIFT_C 22:00–06:00 nhưng không có punch nào trong cửa sổ 18:00→12:00 hôm sauOPEN
OT_LIMIT_EXCEEDEDWARNINGTrần Quốc Bảo · luỹ kế T3OT 43,5h > trần VN 40h/tháng — hệ thống chỉ CẢNH BÁO, không tự cắt giờ (cắt tự động làm sai lương)OPEN
OT_WITHOUT_APPROVALWARNINGLê Văn Hùng · 05/03Ở lại sau ca 2,0h chưa có đăng ký OT được duyệt — giờ tạm treo ngoài rổ OTOPEN
ORPHAN_PUNCHWARNINGSomchai Vongsa · 03/03Punch 20:14 ngoài mọi segment ca HC 08:00–17:00 (lookahead 6h → nghi OT chưa đăng ký)EXPLAINED
LOCATION_VIOLATIONWARNINGNguyễn Văn Tùng · 05/03Chấm GPS cách work_location Vientiane 1,8km — vượt bán kính cho phép 300mOPEN
SUSPICIOUS_DEVICEWARNINGPhan Văn Đức · 04/03Android bật mock location khi chấm mobile — nghi giả mạo GPS, punch giữ nguyên + cờ nghi vấnOPEN
WORKED_ON_LEAVEWARNINGBounmy Keo · 10/03Có punch IN 08:44 trong ngày đã duyệt nghỉ ốm (09–11/03) — xung đột nghỉ/làmOPEN
LATE_ININFONgô Thị Lan Anh · 05/03IN 08:12 — trễ 12' sau grace 5' → late_minutes=12, không ảnh hưởng giờ được trảRESOLVED
EARLY_OUTINFOHoàng Thị Ngọc · 06/03OUT 16:40 — sớm 20' có xin phép miệng, ghi nhận early_minutes=20RESOLVED
DUPLICATE_PUNCHINFOKhamla Phommachanh · 02/032 punch cách 3 giây cùng máy KIOSK-VTE-01 — khử trùng lặp theo dedup_hash, giữ bản ghi đầuRESOLVED

Máy chấm công

Device Adapter Layer — mọi thiết bị chuẩn hoá về DevicePunchEvent → Device Gateway → queue → punch_raw
⚠ ZK-BN-02 (xưởng Bắc Ninh) mất kết nối 3h 12' — từ 11:05 hôm nay. Punch được máy đệm cục bộ, agent sẽ đẩy bù khi có mạng (không mất dữ liệu). Đây chính là máy gây MISSING_OUT của Trần Quốc Bảo ngày 10/03.
Thiết bị đang khai báo
3 phương thức kết nối: PUSH (máy tự gửi ADMS) · AGENT (phần mềm tại chỗ pull→đẩy cloud) · IMPORT (file, dự phòng bắt buộc)
Mã máyLoại · verify_modeVị tríKết nốiTrạng tháiSync cuốiPunch hôm nay
ZK-BN-01ZKTeco · FINGERPRINTCổng nhà máy Bắc NinhPUSH·ADMSOnline07/03 14:02312
ZK-BN-02ZKTeco · FINGERPRINTXưởng chuyền BNAGENT·LANOffline 3h 12'07/03 11:0596 (đệm 41)
HIK-HN-01Hikvision · FACE (score ≥ 0,88)Sảnh HQ Hà NộiPUSH·ISAPIOnline07/03 14:05207
MOB-GPSMobile app · GPS + selfieKinh doanh hiện trườngAPIHoạt độngthời gian thực78 1 mock
KIOSK-VTE-01Kiosk · PIN + cameraNhà máy Vientiane 🇱🇦AGENT·LANOnline07/03 13:58241
IMP-XLSXImport Excel thủ công— (kênh dự phòng)IMPORTSẵn sàng28/02 (kỳ trước)0
Tổng punch nhận hôm nay (07/03) — 312+96+207+78+241 = 934
Ánh xạ mã máy ↔ nhân viên — device_employee_mapping
mã trên máy THƯỜNG KHÁC mã nhân viên — thiếu ánh xạ punch thành ORPHAN
Máydevice_user_no→ Nhân viênTrạng thái
ZK-BN-0289Trần Quốc Bảo NV2024-0089Đã map
ZK-BN-02455Lê Văn Hùng NV2023-0455Đã map
KIOSK-VTE-0134Khamla Phommachanh LA2023-0034Đã map
ZK-BN-01512chưa khớp ai — 6 punch treo employee_id = NULLORPHAN
Đồng bộ 2 chiều: Hệ thống → máy: danh sách NV, vân tay/khuôn mặt, quyền ra vào · Máy → hệ thống: punch, trạng thái, cảnh báo. Nhân sự nghỉ việc (Phan Văn Đức, 20/03) tự động bị thu quyền trên mọi máy từ 21/03.
Chống gian lận chấm công
6 kỹ thuật ↔ biện pháp · 2 cảnh báo đang mở hôm nay
Kỹ thuật gian lậnBiện pháp của hệ thống
Chấm hộ bằng thẻBắt buộc sinh trắc học hoặc chụp ảnh kèm punch
Giả mạo GPS (fake location)Phát hiện mock location Android/iOS + kiểm tốc độ di chuyển bất khả thi
Chấm ngoài vùng cho phépKiểm bán kính từ work_location (300m)
Chỉnh giờ trên thiết bịSo punched_at_local với received_at, cảnh báo lệch bất thường
Chấm rồi về ngayCảnh báo khi khoảng cách IN–OUT quá ngắn
Sửa dữ liệu trong hệ thốngpunch_adjustment bắt buộc lý do + người duyệt + audit log
⚑
Mock location — Phan Văn Đức · 04/03 07:56
App phát hiện isMockLocation=true khi chấm mobile; toạ độ khai cách vị trí ước tính theo tốc độ di chuyển 14km trong 6 phút (bất khả thi). Punch giữ nguyên + cờ SUSPICIOUS_DEVICE, chuyển HR.
◔
IN–OUT cách 3 phút — Phan Văn Đức · 06/03 07:58 → 08:01
Nghi "chấm rồi về ngay" tại ZK-BN-01 — dưới ngưỡng tối thiểu 30'. Ngày này đồng thời NO_PUNCH ca đêm 06/03 → gộp hồ sơ xác minh.

Đăng ký sinh trắc học

Vân tay · Khuôn mặt · Thẻ từ — thu nhận mẫu, đồng bộ xuống máy chấm công, thu hồi khi nghỉ việc
🔒 Dữ liệu sinh trắc học là dữ liệu cá nhân NHẠY CẢM theo Luật Bảo vệ dữ liệu cá nhân (Luật 91/2025/QH15, hiệu lực 01/01/2026). Hệ thống lưu vector đặc trưng đã mã hoá — không lưu ảnh vân tay hay ảnh khuôn mặt gốc, và không thể dựng ngược lại ảnh từ vector. Mỗi lần thu nhận phải có văn bản đồng ý của người lao động; người lao động được quyền rút lại đồng ý và chuyển sang phương thức chấm công khác bất cứ lúc nào.
Đã đăng ký mẫu
1.147 / 1.284
89,3% nhân sự · 137 người dùng phương thức khác
Chờ đồng bộ xuống máy
23
1 máy mất kết nối 3h — hàng đợi giữ lại
Chất lượng mẫu kém
14
điểm < 60 — nên thu nhận lại
Chờ thu hồi mẫu
3
nhân sự đã nghỉ việc · quá hạn xoá 1 người
Tất cả (1.284) Chờ đồng bộ (23) Chất lượng kém (14) Chưa đăng ký (137) Chờ thu hồi (3)
Mẫu sinh trắc theo nhân viên
Mỗi người có thể có nhiều mẫu — vân tay 2 ngón để phòng khi ngón chính bị thương
bảng biometric_template
Trạng thái đồng bộ theo máy
mẫu phải nằm sẵn TRÊN máy thì mới chấm công được — máy không hỏi server lúc chấm
Máy chấm côngVị tríMẫu trên máyChờ đẩyĐồng bộ lần cuốiTrạng thái
D-BN-01
ZKTeco MB460 · vân tay + khuôn mặt
Cổng chính Xưởng 2 5120 07/03 09:12 ĐỒNG BỘ
D-BN-02
ZKTeco MB460 · vân tay
Cửa chuyền A 49814 07/03 06:05 (3h trước) MẤT KẾT NỐI
D-HN-01
Hikvision DS-K1T671 · khuôn mặt
Sảnh VP Duy Tân 1869 07/03 09:40 ĐANG ĐẨY
D-LA-01
Suprema BioStation · vân tay
🇱🇦 Nhà máy Vientiane 3410 07/03 08:55 ĐỒNG BỘ
4 máy · tổng lượt mẫu đã nạp1.537231.537 > 1.147 vì một người được nạp lên nhiều máy
⚠ D-BN-02 mất kết nối 3 giờ — 14 mẫu mới đang nằm trong hàng đợi. Trong lúc chờ, người mới đăng ký chấm công ở máy này sẽ không nhận diện được, sinh ngoại lệ NO_PUNCH. Hệ thống tự đẩy lại khi máy trở lại; không cần ai bấm gì, nhưng có cảnh báo để tổ trưởng biết mà cho chấm bù.
Thu nhận mẫu — Ngô Thị Lan Anh
NV2026-0501 · nhân viên mới, thử việc từ 10/02
✓Đồng ý
2Quét mẫu
3Kiểm chất lượng
4Đẩy xuống máy
Văn bản đồng ý xử lý dữ liệu sinh trắc
✓ đã ký 10/02/2026
Thiết bị thu nhận
D-HN-01 · Hikvision
Loại mẫu
Khuôn mặt + vân tay ngón trỏ phải
Lần quét 3/3 — điểm chất lượng 87 / 100
Lần 1 · 84
Lần 2 · 89
Lần 3 · 87
✓ Điểm ≥ 60 ở cả 3 lần quét → mẫu đạt. Hệ thống lấy vector trung bình làm mẫu chuẩn. Điểm thấp thường do ngón tay khô, bụi, hoặc ánh sáng ngược — nên thu nhận lại thay vì để nhận diện sai ngoài hiện trường.
Mã trên máy ≠ mã nhân viên
bảng device_employee_mapping
Nhân viênMã hệ thốngMã trên máyMáy
Trần Quốc BảoNV2024-00891042D-BN-01, D-BN-02
Lê Văn HùngNV2023-04550871D-BN-01, D-BN-02
Somchai VongsaLA2024-01122211D-LA-01
ℹ Máy chấm công chỉ nhận số nguyên ngắn, không nhận mã dạng NV2024-0089. Thiếu bảng ánh xạ này thì punch về server sẽ thành ORPHAN — có dữ liệu nhưng không biết của ai.
Thu hồi mẫu khi nghỉ việc
Xoá khỏi từng máy TRƯỚC, xoá trên server SAU — thứ tự này không được đảo
1 QUÁ HẠN
Nhân viênNgày nghỉHạn xoá mẫuXoá khỏi máyXoá trên serverTrạng thái
PĐ
Phan Văn Đức
NV2020-0155
20/03/2026 27/03/2026 chờ ngày nghỉ chờ ĐÃ LÊN LỊCH
VT
Vương Thị Thanh
NV2022-0091
28/02/2026 07/03/2026 ✓ 3/3 máy hôm nay ĐANG XOÁ
HT
Hà Minh Thắng
NV2021-0044
15/01/2026 22/01/2026 ✓ 2/2 máy chưa xoá QUÁ HẠN 44 NGÀY
⚠ Vì sao xoá khỏi máy trước, xoá server sau: nếu xoá bản ghi trên server trước, hệ thống mất danh sách máy nào đang giữ mẫu của người đó — và mẫu vẫn nằm lại trong bộ nhớ máy chấm công không ai biết. Người đã nghỉ việc vẫn mở được cửa nhà máy. Thứ tự này là ràng buộc cứng, không cho cấu hình đảo.
⚠ Hà Minh Thắng quá hạn 44 ngày — mẫu đã xoá khỏi 2 máy nhưng bản ghi server còn. Đây là vi phạm nguyên tắc lưu trữ tối thiểu của Luật 91/2025: dữ liệu sinh trắc chỉ được giữ trong thời gian cần thiết cho mục đích thu thập, mục đích đó chấm dứt khi quan hệ lao động chấm dứt. Cảnh báo này đẩy cho cả Quản trị hệ thống và Kiểm toán.
Hệ thống lưu gì
Vector đặc trưng (đã mã hoá)
CÓ
Điểm chất lượng, thuật toán, phiên bản
CÓ
Ảnh vân tay gốc
KHÔNG
Ảnh khuôn mặt gốc
KHÔNG
✓ Mã hoá at-rest bằng khoá riêng theo tenant. Lộ cơ sở dữ liệu vẫn không dựng lại được vân tay của ai, và không dùng chéo được sang tenant khác.
Ai được chạm vào
Vai tròQuyền
Cán bộ thu nhận mẫuTHU NHẬN
Quản trị hệ thốngĐỒNG BỘ · THU HỒI
Kiểm toánCHỈ XEM NHẬT KÝ
Chuyên viên C&BKHÔNG
Quản lý trực tiếpKHÔNG
ℹ Không vai trò nào được XUẤT vector ra ngoài — kể cả Quản trị hệ thống. Muốn dùng ở hệ thống khác thì thu nhận lại, không sao chép.
Quyền của người lao động
Từ chối đăng ký ngay từ đầu
✓
Rút lại đồng ý bất cứ lúc nào
✓
Xem nhật ký ai đã truy cập
✓
Yêu cầu xoá sau khi nghỉ
✓
⚠ Từ chối sinh trắc không được trở thành lý do kỷ luật hay trừ lương. Hệ thống bắt buộc còn phương thức thay thế: thẻ từ, mã NV + PIN tại kiosk, hoặc chấm công GPS trên điện thoại — 137 người đang dùng các cách này.

Đơn từ & Duyệt

Hàng chờ phê duyệt của bạn · hôm nay 07/03/2026 08:40 (thứ Bảy) · kỳ công 3/2026 — chốt công ngày 25
◔ Uỷ quyền: Vũ Đình Long đang uỷ quyền duyệt cho bạn 16–20/03 — mọi hành động ghi nhật ký CẢ HAI danh tính. Phạm vi giới hạn: chỉ leave.request.approve · hiệu lực 16/03 00:00 → 20/03 23:59 · trạng thái: ĐÃ LÊN LỊCH · lý do: công tác Viêng Chăn · xem bảng uỷ quyền ở màn Quy trình duyệt
Đơn chờ duyệt
4
3 chờ bạn · 1 đang ở cấp 2
Quá SLA
1
Bounmy Keo — quá hạn 41h (đơn hồi tố)
Sắp hết SLA (< 12h)
3
Tú còn 9h · Bảo (cấp 2) còn 6h · Ngọc còn 5h
Đã xử lý tháng 3
12
11 duyệt · 1 từ chối (có lý do bắt buộc)
Tất cả (4) Chờ bạn — cấp 1 (3) Đang ở cấp 2 (1) Quá SLA (1) 🇻🇳 FOXAI Việt Nam (3) 🇱🇦 FOXAI Laos (1)
Đơn chờ phê duyệt
Từ chối BẮT BUỘC nhập lý do · mọi quyết định ghi audit log kèm IP & thời điểm
Đặng Minh Tú — Nghỉ phép năm · 2 ngày · 12–13/03/2026 (T5–T6) ANNUAL Cấp 1/1 ◔ SLA còn 9h
NV2025-0233 · Kỹ sư PM · 🇻🇳 FOXAI Việt Nam · gửi 06/03 17:40 · quy trình «Đơn xin nghỉ phép» — 1 cấp vì đơn ≤ 3 ngày (> 3 ngày tự nâng thành 2 cấp)
Quỹ ANNUAL 2026 sau đơn này vì sao?
7,5 / 12 ngày — 12 cấp đầu năm − 2,5 đã dùng − 2 đơn này (pending trừ ngay khi gửi)
  • ✓ Không trùng lịch nghỉ — nhóm Kỹ thuật PM (6 người) không ai nghỉ 12–13/03
  • ✓ Đủ quỹ · min_unit HALF_DAY — đơn trọn ngày hợp lệ
  • ✓ Không rơi vào 3 ngày trước chốt công (23–25/03 hạn chế nghỉ)
Lý do: về quê giải quyết việc gia đình. Người bàn giao: Lê Văn Hùng.
Bounmy Keo — Nghỉ ốm · 3 ngày · 09–11/03/2026 (T2–T4) SICK · LA HỒI TỐ ⚠ QUÁ SLA 41h Cấp 1/1
LA2025-0078 · NV kho · 🇱🇦 FOXAI Laos Co., Ltd · nhập hộ bởi quản lý kho 04/03 16:00 (NV ốm, báo qua điện thoại — có ghi chú nhập hộ) · SLA bước 24h → hạn 05/03 16:00
Quỹ nghỉ ốm Lào 2026 (30 ngày/năm) vì sao?
25 / 30 ngày — 30 theo luật LA − 2 đã dùng − 3 đơn này
  • ✓ 📎 giay-chung-nhan-y-te_BV-Mahosot.pdf — loại phép SICK có requires_attachment = true: không đính kèm thì không gửi được đơn
  • ✓ Duyệt đơn sẽ tự giải trình 3 exception NO_PUNCH ngày 09–11/03 (liên kết chấm công ↔ nghỉ phép)
  • ⚠ paid_by = COMPANY: Lào DN tự trả lương ốm — khác VN nơi BHXH chi trả
Lào làm việc 6 ngày/tuần — 04→06/03 là 3 ngày công (công chuẩn LA = 26). Nhân viên đã đi làm lại sáng nay 07/03 (T7 là ngày làm việc tại Lào).
Hoàng Thị Ngọc — Nghỉ kết hôn · 3 ngày · 23–25/03/2026 (T2–T4) MARRIAGE Cấp 1/1 ◔ SLA còn 5h
NV2024-0310 · CV tuyển dụng · 🇻🇳 FOXAI Việt Nam · gửi 06/03 14:00 · 1 cấp duyệt duy nhất: bạn (DIRECT_MANAGER) — quy tắc ≤3 ngày = 1 cấp
Quỹ áp dụng
Phép chế độ BLLĐ — 3 ngày nguyên lương, KHÔNG trừ quỹ phép năm (is_paid 100%, paid_by COMPANY)
  • ✓ min_unit = DAY — chỉ nghỉ trọn ngày, ô «nửa ngày / theo giờ» bị khoá khi tạo đơn
  • ✓ Báo trước ≥ 7 ngày: gửi 06/03 cho ngày nghỉ 23/03 (trước 17 ngày) — đạt
  • ⚠ Trùng lịch: 23/03 có 1 người khác phòng HCNS đã được duyệt nghỉ — xem lịch nhóm trước khi duyệt
  • ⚠ 23–25/03 sát ngày chốt công 25/03 — nhắc C&B kiểm bảng công trước khi khoá
Đính kèm sau: giấy đăng ký kết hôn (bổ sung trong 30 ngày theo quy định nội bộ).
Trần Quốc Bảo — Nghỉ không lương · 5 ngày · 16–20/03/2026 (T2–T6) UNPAID Cấp 2/2 — đang chờ bạn ◔ SLA còn 6h
NV2024-0089 · CN bậc 4, ca kíp · 🇻🇳 FOXAI Việt Nam · quy trình «Đơn xin nghỉ không lương» — cố định 2 cấp
✓ Cấp 1 · Lê Văn Hùng (Tổ trưởng chuyền BN) — duyệt 06/03 14:20
2 Cấp 2 · Bạn (ORG_UNIT_HEAD)
Quỹ áp dụng
UNPAID không giới hạn (thoả thuận) — không trừ quỹ; không lương · không tính ngày công · không tính thâm niên
  • ✓ 5 ngày < 14 ngày làm việc/tháng → tháng 3 vẫn đóng BHXH bình thường (≥ 14 ngày không lương mới dừng đóng tháng đó)
  • ⚠ Roster 16–20/03 đã xếp ca SHIFT_A — duyệt đơn sẽ đổi 5 ngày thành day_off_type = LEAVE
  • ✓ Nghỉ 5 ngày làm giảm OT dự kiến — NV này đang vượt trần OT tháng (43,5h / trần 40h)
Lý do: việc gia đình — sửa nhà sau bão. Ghi chú cấp 1 (Lê Văn Hùng): «Chuyền BN đủ người thay ca tuần 16–20/03».

Quỹ phép & Tích luỹ

Danh mục loại phép VN | LA đặt cạnh nhau · sổ cái quỹ phép (leave_balance_txn) — không bao giờ UPDATE thẳng số dư
Loại phép seed sẵn — 🇻🇳 Việt Nam | 🇱🇦 Lào cạnh nhau
Cùng một leave_type.code, tham số khác nhau theo country pack (VN-2026.01 · LA-2024.10)
codeLoại phép🇻🇳 Việt Nam🇱🇦 Làopaid_bymin_unitChứng từ
ANNUALNghỉ phép năm 12 ngày + 1 ngày / 5 năm thâm niên (14–16 ngày nghề nặng nhọc, độc hại) 15 ngày (18 nếu nghề rủi ro cao) · min_service_months = 12 — đủ 1 năm liên tục mới hưởng COMPANYHALF_DAY—
SICKNghỉ ốm BHXH chi trả — DN không trả lương ngày ốm, lập hồ sơ hưởng chế độ 30 ngày/năm, DN trả, bắt buộc giấy chứng nhận y tế VN: SOCIAL_INSURANCE LA: COMPANYDAY📎 bắt buộc
MATERNITYNghỉ thai sản 6 tháng — BHXH chi trả 90–105 ngày — chế độ thai sản thuộc quỹ NSSF SOCIAL_INSURANCEDAY📎 bắt buộc
PATERNITYNghỉ khi vợ sinh gender = MALE 5–14 ngày (BHXH chi trả, tuỳ trường hợp sinh) Theo thoả thuận — không có mức pháp định VN: SOCIAL_INSURANCEDAY📎 giấy khai sinh
MARRIAGENghỉ kết hôn 3 ngày nguyên lương Theo thoả thuận COMPANYDAY — khoá nửa ngày📎 bổ sung 30 ngày
BEREAVEMENTNghỉ tang 3 ngày (thân nhân trực hệ) Theo thoả thuận COMPANYDAY—
UNPAIDNghỉ không lương Không giới hạn (thoả thuận) · không tính công, không tính thâm niên · VN: ≥ 14 ngày làm việc/tháng → không đóng BHXH tháng đó is_paid = falseDAY—
COMPENSATORYNghỉ bù Sinh tự động từ giao dịch ACCRUAL nguồn OT / trực lễ — không cấp đầu năm COMPANYHALF_DAY—
BUSINESS_TRIPCông tác Tính công đủ (affects_attendance = true) — không phải nghỉ, khai để khớp exception chấm công ngoài văn phòng COMPANYHALF_DAY—
Vì sao paid_by là trường bắt buộc? Ở VN, nghỉ ốm và thai sản do BHXH chi trả — engine lương phải LOẠI các ngày này khỏi SALARY_BY_DAYS (DN không trả) và sinh hồ sơ đề nghị hưởng chế độ nộp cơ quan BHXH. Ở Lào, nghỉ ốm 30 ngày/năm lại do DN tự trả. Thiếu trường này, cùng một đơn nghỉ ốm sẽ tính lương đúng ở nước này và sai ở nước kia.
Vũ Đình Long — sổ cái quỹ phép ANNUAL 2026
NV2021-0077 · Trưởng phòng KD · G7 · vào làm 01/01/2021 → thâm niên 5,2 năm
ANNUAL 2026 = 12 + FLOOR(SENIORITY_YEARS() / 5) = 12 + FLOOR(5,0 / 5) = 12 + 1 = 13 ngày  · thâm niên chốt tại ngày cấp 01/01/2026 = tròn 5,0 năm
Đối chiếu cùng công thức: Phạm Thu Hằng tái tuyển dụng — thâm niên NỐI qua Person ≈ 3,4 năm (giai đoạn 06/2021–08/2024 ≈ 3,2 năm + từ 01/01/2026) → FLOOR(3,4/5) = 0 → chỉ 12 ngày. Thêm 1 ngày thâm niên phải chờ mốc tròn 5 năm thâm niên cộng dồn (khoảng giữa 2027).
⚠ 1,5 ngày carry-over 2025 sẽ HẾT HẠN 31/03/2026 (carry_over_expire_month = 3) — còn 24 ngày để dùng. Đã dùng 2 ngày đầu năm được trừ vào carry-over trước (FIFO): 3,5 − 2 = 1,5 còn lại.
NgàyGiao dịchSố ngàyTham chiếuLý do / Ghi chúNgười tạo
01/01/2026CARRY_OVER+3,5CO-2025Chuyển 3,5 ngày dư 2025 (≤ carry_over_max = 5) · hạn dùng 31/03/2026Hệ thống
01/01/2026ACCRUAL+13,0GRANT-2026Cấp đầu năm (method UPFRONT): 12 cơ bản + 1 thâm niênHệ thống
15/01/2026USE−1,0LV-2026-0089Nghỉ phép 15/01 — duyệt cấp 1: Ban Giám đốcVũ Đình Long
05/02/2026USE−2,0LV-2026-0161Nghỉ phép 05–06/02Vũ Đình Long
06/02/2026CANCEL+1,0LV-2026-0161Huỷ ngày 06/02 — đi công tác đột xuất · hoàn quỹ tự động, đơn gốc giữ nguyên vếtHệ thống
20/02/2026ADJUST+0,5ADJ-2026-007Bù 0,5 ngày tính thiếu kỳ 12/2025 — lý do bắt buộc, duyệt: Trưởng phòng HR (audit log)Chuyên viên C&B
31/03/2026EXPIRE dự kiến−1,5CO-2025Sẽ tự sinh nếu 1,5 ngày carry-over không dùng trước 31/03Hệ thống
Số dư khả dụng hiện tại (chưa tính dòng dự kiến)15,0= 3,5 + 13,0 − 1,0 − 2,0 + 1,0 + 0,5
available = opening + accrued + adjusted − used − pending − encashed − expired
opening
3,5
+ accrued
13,0
+ adjusted
0,5
− used
2,0
− pending
0,0
− encashed
0,0
− expired
0,0
= available
15,0
used ròng = 1,0 + 2,0 − 1,0 (CANCEL hoàn lại) = 2,0 · cột available là cột GENERATED — muốn đổi số dư phải ghi thêm giao dịch vào sổ cái, không UPDATE trực tiếp

Ngày lễ 2 quốc gia — 2026

🇻🇳 11 ngày đồng đều | 🇱🇦 9 ngày pháp định trong đó 4 dòng CÓ ĐIỀU KIỆN cá nhân (eligibility_expr)
🇻🇳 FOXAI Việt Nam — lịch lễ pháp định 2026
pack VN-2026.01 · STATUTORY — chỉ compliance team sửa
NgàyTênSố ngàyGhi chú
01/01Tết Dương lịch1—
16–20/02Tết Nguyên đán Bính Ngọ5Mùng 1 = 17/02 · lịch nghỉ theo thông báo Chính phủ
26/04Giỗ Tổ Hùng Vương (10/3 ÂL)1rơi CHỦ NHẬT → nghỉ bù T2 27/04
30/04Ngày Giải phóng miền Nam1—
01/05Quốc tế Lao động1—
01–02/09Quốc khánh202/09 + 1 ngày liền kề
Tổng — áp dụng đồng đều mọi NLĐ11không cần cột điều kiện
Pack VN không cần eligibility_expr — 11 ngày cho tất cả. Lễ trùng ngày nghỉ hằng tuần thì nghỉ bù ngày làm việc kế tiếp (Giỗ Tổ 26/04 → bù 27/04). Đi làm ngày lễ: giờ công vào rổ OT_HOLIDAY 300% + phụ cấp đêm nếu có (ADDITIVE).
🇱🇦 FOXAI Laos Co., Ltd — lịch lễ pháp định 2026
pack LA-2024.10 · 4 dòng có eligibility_expr
NgàyTênNgàyeligibility_expr
01/01Tết Dương lịch1toàn bộ
08/03Quốc tế Phụ nữ1EMP('gender') = 'FEMALE'
2026 rơi CN → nữ nghỉ bù T2 09/03
14–16/04Tết Lào (Pi Mai)3toàn bộ
01/05Quốc tế Lao động1toàn bộ
20/07Thành lập Hội LHPN Lào1EMP('gender') = 'FEMALE'
chỉ cán bộ / công nhân viên nữ
07/10Ngày Nhà giáo1EMP('job_family') = 'TEACHING'
FOXAI Laos: 0 nhân sự thuộc diện
02/12Quốc khánh Lào1toàn bộ
theo QTQuốc khánh nước sở tại của NLĐ1EMP('nationality') <> 'LA'
vd 02/09 cho người Việt Nam
Tổng lễ pháp định (không kể dòng theo quốc tịch)94 dòng có điều kiện cá nhân
Ai được nghỉ 08/03/2026? — cùng công ty FOXAI Laos
08/03 rơi Chủ nhật → suất nghỉ chuyển sang T2 09/03
Khamla Phommachanh · LA2023-0034 · Trưởng ca SX · NỮ
✓ Nghỉ có lương — bù thứ Hai 09/03 (08/03 rơi CN). Nếu chị vẫn đi làm 09/03: IS_PUBLIC_HOLIDAY() = true chỉ với chị → giờ làm được phân vào rổ lễ, không phải ngày thường.
✓
Somchai Vongsa · LA2024-0112 · Kế toán tổng hợp · NAM
✗ Ngày làm việc bình thường — cùng công ty, cùng lịch lễ, khác giới tính. Đi làm 09/03 tính công REG như mọi thứ Hai.
✗
Nguyễn Văn Tùng · LA2024-0055 · quốc tịch VN, làm tại Lào · NAM
✗ 08/03 không áp dụng (nam) — NHƯNG được nghỉ 02/09 (Quốc khánh Việt Nam) theo EMP('nationality') <> 'LA'. Đồng nghiệp người Lào ngày 02/09 đi làm bình thường.
02/09
Cùng một ngày, cùng một pháp nhân — quyền nghỉ khác nhau theo thuộc tính cá nhân. Đây là lý do statutory_holiday bắt buộc có cột eligibility_expr và VN thì không cần: không thể «dùng chung một bản, chỉnh vài tham số».
Lễ Phật giáo tại Lào — KHÔNG pháp định
Cấu hình «lễ công ty» trong holiday_calendar riêng của tenant, tuỳ chọn từng doanh nghiệp
Visakha Bousa (Phật đản) · ~31/05/2026 đi làm
Boun Khao Phansa (vào chay) · ~29/07/2026 đi làm
Boun Ok Phansa (ra chay) · ~26/10/2026 đi làm
Boun That Luang · ~24/11/2026 lễ công ty — nghỉ có lương
⚠ FOXAI Laos chọn nghỉ That Luang làm lễ công ty (chính sách riêng, có lương). Ngày lễ công ty không nằm trong pack STATUTORY — bật/tắt tại đây không cần compliance team; hiệu lực ghi valid_from/valid_to và giờ đi làm hôm đó phân rổ theo cấu hình tenant, không theo luật.
Nhắc lịch kỳ 3/2026: LA chỉ nghỉ CN (1, 8, 15, 22, 29/03) → 26 công chuẩn; VN nghỉ T7+CN → 22 công chuẩn. Tháng 3/2026 không có ngày lễ nào ở cả hai nước — riêng nữ tại Lào có 1 ngày nghỉ bù 09/03.

Quy trình duyệt & Uỷ quyền

12 quy trình seed sẵn cho tenant mới · thiết kế chi tiết «Duyệt bảng lương» 3 cấp · uỷ quyền có thời hạn và phạm vi giới hạn
12 quy trình seed sẵn
Sinh tự động khi khởi tạo tenant · số cấp mặc định theo chính sách chuẩn — khách sửa được, trừ ràng buộc SoD
Quy trìnhSố cấpNgười duyệt theoSLA/bướcGhi chú nghiệp vụ
Đơn xin nghỉ phép1–2DIRECT_MANAGER → ORG_UNIT_HEAD24h≤ 3 ngày: 1 cấp · > 3 ngày: tự nâng 2 cấp (condition trên bước 2)
Đơn xin nghỉ không lương2DIRECT_MANAGER → ORG_UNIT_HEAD24hCố định 2 cấp — ảnh hưởng BHXH nếu ≥ 14 ngày/tháng
Đơn giải trình chấm công1DIRECT_MANAGER12hKết quả ghi thành punch_adjustment — punch gốc bất biến
Đăng ký làm thêm giờ2DIRECT_MANAGER → ORG_UNIT_HEAD12hChặn kèm cảnh báo khi vượt trần OT (VN 40h/tháng · LA 45h ⚠ cần xác minh)
Đổi ca1DIRECT_MANAGER12hTừ shift_swap_request — duyệt xong roster ghi source = SWAP
Đề xuất tuyển dụng2–3ORG_UNIT_HEAD → ROLE: HR_MANAGER48h+ cấp 3 (GĐ) khi vị trí ngoài định biên — condition
Đề xuất tăng lương3DIRECT_MANAGER → ROLE: HR_MANAGER → ROLE: EXECUTIVE48hKết quả sinh QĐ lương có hiệu lực theo ngày (hồi tố được)
Quyết định điều chuyển2ORG_UNIT_HEAD → ROLE: HR_MANAGER48hĐơn vị nhận + đơn vị giao đều nhận thông báo
Quyết định nghỉ việc2–3ORG_UNIT_HEAD → ROLE: HR_MANAGER48hKích hoạt wizard offboarding (thanh toán phép tồn, thu hồi tài sản)
Duyệt bảng lương 🔒 SoD2–3ROLE: CB_SPECIALIST → ROLE: HR_MANAGER → ROLE: Kế toán trưởng24hNgười tạo ≠ người duyệt cuối — ràng buộc CỨNG, xem chi tiết dưới ▾
Duyệt chi trả lương2ROLE: PAYROLL_APPROVER → ROLE: ACCOUNTANT24hChỉ chạy sau khi bảng lương đã APPROVED · sinh file chi ngân hàng
Tạm ứng lương2AMOUNT_MATRIX24h≤ 5.000.000 ₫: DIRECT_MANAGER · > 5.000.000 ₫: thêm Kế toán trưởng
12 quy trìnhtổng 22–26 bước duyệtmỗi bước có approver_rule + condition + sla_hours riêng
Thiết kế: «Duyệt bảng lương» — 3 cấp, kỳ 3/2026 🇻🇳
C&B → Trưởng phòng HR → Kế toán trưởng
✓ Lập bảng lương
C&B (Nguyễn Thị Mai) · 05/03
1 Cấp 1 · C&B đối soát chéo
ROLE: CB_SPECIALIST · SLA 8h
2 Cấp 2 · Trưởng phòng HR
ROLE: HR_MANAGER · SLA 24h
3 Cấp 3 (cuối) · Kế toán trưởng
Trương Mỹ Linh · SLA 24h
Cấp 3 — Trương Mỹ Linh (Kế toán trưởng)MFA bắt buộc khi phê duyệt
Condition bước 4 (chỉ chạy khi cần)EXPRESSION: quỹ lương lệch > 10% kỳ trước → thêm cấp Giám đốc
Đối soát kỳ 3/2026net 15,71 tỷ ₫ · 912 NV · 12 người lệch > 30% phải giải trình trước cấp 3
🔒 Ràng buộc cứng (SoD): người tạo bảng lương không được là người duyệt cuối. Kỳ 3/2026 do C&B Nguyễn Thị Mai lập → hệ thống tự loại chị Mai khỏi danh sách người duyệt cấp 3, kể cả khi chị được gán thêm vai trò.
Cho phép người tạo tự duyệt cấp cuối
Cách xác định người duyệt (approver_rule)
7 loại đang hỗ trợ
LoạiÝ nghĩaVí dụ đang dùng
DIRECT_MANAGERQuản lý trực tiếpĐơn nghỉ phép cấp 1
MANAGER_LEVEL_NQuản lý cấp N phía trênN=2 cho đơn của tổ trưởng (tránh tự duyệt vòng)
ORG_UNIT_HEADTrưởng đơn vị của người tạoNghỉ không lương cấp 2
ROLEBất kỳ ai có vai trò XHR_MANAGER duyệt tăng lương cấp 2
SPECIFIC_USERNgười cụ thểTrương Mỹ Linh — duyệt lương cấp cuối
AMOUNT_MATRIXTheo ma trận hạn mức tiềnTạm ứng > 5.000.000 ₫ thêm Kế toán trưởng
EXPRESSIONBiểu thức tuỳ chỉnh (L3)Quỹ lương lệch > 10% → thêm cấp GĐ
Uỷ quyền duyệt (delegation)
Có phạm vi giới hạn + thời hạn · mọi hành động ghi nhật ký CẢ HAI danh tính (actor_identity + on_behalf_of)
Người uỷ quyềnNgười nhậnPhạm vi giới hạnTừ – ĐếnLý doTrạng tháiNhật ký
Vũ Đình Long
NV2021-0077
Phạm Thu Hằng
NV2026-0412
leave.request.approve
KHÔNG gồm duyệt OT, KHÔNG gồm bảng lương
16/03 00:00
→ 20/03 23:59
Công tác Viêng Chăn ĐÃ LÊN LỊCH 0 hành động
Vũ Đình Long
NV2021-0077
Phạm Thu Hằng
NV2026-0412
leave.request.approve 09/02 00:00
→ 13/02 23:59
Nghỉ phép ĐÃ HẾT HẠN 14 hành động kép
🔒 Uỷ quyền không vượt được SoD: yêu cầu «Trương Mỹ Linh uỷ quyền duyệt bảng lương cấp cuối cho C&B Nguyễn Thị Mai» ngày 05/03 đã bị hệ thống TỪ CHỐI — người nhận uỷ quyền là người tạo bảng lương kỳ 3/2026. Ràng buộc «người tạo ≠ người duyệt cuối» áp cả qua đường uỷ quyền, không có ngoại lệ.

Kỳ lương

FOXAI Việt Nam (VND · 22 công)  ·  FOXAI Laos Co., Ltd (LAK · 26 công) — pack & tỷ giá đóng băng theo kỳ
Net hợp nhất kỳ 03/2026
18,98 tỷ ₫
1.284 nhân viên · 2 pháp nhân
VN — thực lãnh
15,71 tỷ ₫
912 phiếu · đang REVIEWING (run 2)
LA — thực lãnh
2,84 tỷ ₭
× 1,15 = 3,27 tỷ ₫ · fx 25/03 BCEL
Chi phí DN — VN
22,60 tỷ ₫
gồm 21,5% BH phần doanh nghiệp
⚠ Phong toả phát hành 22/03 → 07/04 — từ 3 ngày trước chốt công (25/03) đến 2 ngày sau ngày chi lương (05/04): không phát hành country pack mới, không kích hoạt công thức mới. Pack LA-2026.07 đang DRAFT sẽ chỉ được gán cho kỳ sau khi PUBLISHED.
Vòng đời kỳ 2026-03 · FOXAI Việt Nam
tính lại từ REVIEWING sẽ quay về CALCULATED; REOPENED là nhánh riêng sau PAID, bắt buộc có audit
✓OPEN
✓CALCULATING
✓CALCULATED
●REVIEWING
5APPROVED
6CLOSED
7PAID
run 1 · REGULAR · 05/03 (huỷ — thiếu QĐ-2026/031) run 2 · REGULAR + gộp RETRO · 06/03 21:13 · 912 phiếu · 38s input_snapshot SNP-2603-8841 rule_snapshot RUL-2603-3327
Các kỳ 12/2025 → 04/2026
country_pack_ver và fx_rate_date đóng băng lúc tạo kỳ — đổi pack sau đó phải tạo run mới, không sửa ngầm
hôm nay: 07/03/2026
KỳPháp nhânChu kỳChốt côngNgày chi Pack (đóng băng)fx_rate_dateRunTrạng thái
2025-12🇻🇳 FOXAI VN01–31/1225/1205/01 VN-2025.07 giảm trừ cũ 11tr —1PAID
2026-01🇻🇳 FOXAI VN01–31/0125/0105/02 VN-2026.01 kỳ đầu áp 15,5tr + 6,2tr/NPT (NQ 110/2025) —1PAID
2026-02🇻🇳 FOXAI VN01–28/0225/0205/03 VN-2026.01 —1PAID
2026-03🇻🇳 FOXAI VN01–31/0325/0305/04 VN-2026.01 biểu thuế 7 bậc — 5 bậc chỉ từ kỳ 07/2026 —2 gộp RETROREVIEWING
2025-12🇱🇦 FOXAI Laos01–31/1226/1205/01 LA-2024.10 24/12 · 1₭=1,19₫1PAID
2026-01🇱🇦 FOXAI Laos01–31/0126/0105/02 LA-2024.10 26/01 · 1₭=1,17₫1PAID
2026-02🇱🇦 FOXAI Laos01–28/0225/0205/03 LA-2024.10 25/02 · 1₭=1,16₫1 → 2 OFF_CYCLEREOPENED
🗒 Audit mở lại kỳ 2026-02 (LA) — 06/03/2026 08:40, quyết định: Kế toán trưởng LA · đề nghị: Somchai Vongsa (LA2024-0112). Lý do: (1) BCEL trả về 2 dòng lỗi sai số tài khoản — chi lại tiền mặt đợt 12/03; (2) Bounmy Keo (LA2025-0078) nộp bổ sung giấy bác sĩ nghỉ ốm 3 ngày (quỹ 30 ngày/năm) sau chốt công — tính lại 1 phiếu. Kế hoạch: run 2 · OFF_CYCLE, chỉ 3 nhân viên trong phạm vi. Mọi lần mở lại kỳ đều ghi nhật ký.
2026-03🇱🇦 FOXAI Laos01–31/0326/0305/04 LA-2024.10 LA-2026.07 DRAFT — cấm gán cho kỳ 25/03 (kế hoạch) · 1₭=1,15₫ BCEL—OPEN
◔ Kỳ Lào bắt buộc có fx_rate_date: trả lương bằng LAK, tỷ giá ngân hàng thương mại trong vòng 3 ngày làm việc của kỳ chi (loại COMMERCIAL_BANK · BCEL) — cấm dùng tỷ giá lịch sử ghi trong hợp đồng. Kỳ VN không có tỷ giá (—). Quy đổi 1 ₭ = 1,15 ₫ chỉ dùng cho báo cáo hợp nhất.

Bảng lương — kỳ 2026-03 · FOXAI Việt Nam

run 2 (REGULAR + gộp RETRO) · pack VN-2026.01 · 912 phiếu · trạng thái kỳ: REVIEWING
Thực lãnh toàn kỳ
15,71 tỷ ₫
+1,8% so kỳ 02/2026
Chi phí doanh nghiệp
22,60 tỷ ₫
= gross + 21,5% BH phần DN
Thuế TNCN khấu trừ
1,42 tỷ ₫
biểu 7 bậc · giảm trừ NQ 110/2025
Cờ cần chú ý
15
12 lệch >30% · 2 vượt trần OT · 1 nghỉ việc
Có cờ nghiệp vụ · 7 Tất cả · 912
SNP-2603-8841RUL-2603-3327
Nhân viên Thu nhập Khấu trừ NLĐ Thực lãnh Chi phí DN (+21,5%) Cờ
Lương CBCôngOT giờTổng thu nhập BH 10,5%Thuế TNCN
7 nhân viên (lọc) 176.992.705—89,5 h207.088.160 17.156.2346.189.062 183.742.864242.217.592
◔ Bấm dòng để mở phiếu lương + cây giải trình. Thuế Hùng & Bảo = 0 vì giảm trừ mới (15,5tr + 6,2tr/NPT · NQ 110/2025) cộng BH đã vượt thu nhập chịu thuế — phần OT vượt đơn giá 100% dự kiến miễn thuế TNCN chờ xác minh NĐ 253/2026.
Kiểm tra sau tính — run 2 · 06/03 21:13
9 kiểm tra tự động; 🔴 chặn trình duyệt, 🟡 cảnh báo phải giải trình
2 cảnh báo có số lượng
#Kiểm traMứcKết quảChi tiết
1gross − tổng khấu trừ = net, từng phiếu🔴 chặn✓ 912/912khớp từng đồng
2SUM(payslip_line) = payslip.gross🔴 chặn✓0 phiếu lệch dòng
3net_pay ≤ 0🟡✓ 0 trường hợp—
4Thực nhận dưới lương tối thiểu vùng🔴 chặn✓ 0vùng I 5.310.000 ₫ · NĐ 293/2025 (vùng II–IV chờ xác minh)
5Chênh lệch > 30% so kỳ trước🟡⚠ 12 ngườilớn nhất: Lê Văn Hùng +38,0% (OT 40h) — kèm danh sách giải trình
6Nhân viên ACTIVE không có phiếu🔴 chặn✓ 0—
7Đã nghỉ việc nhưng vẫn có phiếu🟡✓ 1 — hợp lệPhan Văn Đức nghỉ 20/03 → phiếu kỳ cuối FINAL_PAY (đã xác nhận)
8Vượt trần OT 40h/tháng — Đ.107 BLLĐ🟡⚠ 2 ngườiTrần Quốc Bảo 43,5h · Nguyễn Hữu Phước 41,5h — cần phê duyệt ngành đặc thù
9Tổng quỹ lương lệch > 20% so kỳ trước🟡✓ +1,8%18,92 tỷ vs 18,59 tỷ — trong ngưỡng

Phiếu lương & Giải trình

Mỗi con số trên phiếu đều có cây tính toán từng bước (calc_trace) — bằng chứng cho nhân viên, C&B và thanh tra

Phạm Thu Hằng — NV2026-0412

CV Kinh doanh cao cấp · G5 · kỳ 2026-03 · run 2 · pack VN-2026.01
34.508.068 ₫ thực lãnh
Thu nhập
Lương cơ bản BASIC_SALARY · 22/22 công · v4 hiệu lực 01/01/2026
25.000.000
Phụ cấp ăn ca ALW_MEAL · miễn thuế tối đa 730.000 ₫/tháng
730.000
Thưởng hiệu quả kinh doanh BON_PERF · chịu thuế
4.500.000
Làm thêm 150% ngày thường OT_150 · 6,0h × 213.068,181818 ₫/h (đơn giá giữ 6 số lẻ)
1.278.409
Truy lĩnh tăng lương 01–02/2026 RETRO_BASIC_SALARY · QĐ-2026/031 · 2 kỳ × 3.000.000
+6.000.000
Tổng thu nhập
37.508.409
Khấu trừ
BHXH 8% trên lương đóng BH 25.000.000
−2.000.000
BHYT 1,5%
−375.000
BHTN 1% trần theo lương tối thiểu vùng — cơ sở trần tách đôi từ 2026
−250.000
Thuế TNCN PIT · biểu 7 bậc · trace bên phải →
−375.341
Thực lãnh chia 2 tài khoản 70/30 — xem Chi trả
34.508.068
⚠ Truy thu BHXH kỳ 01–02/2026: 630.000 ₫ (2 kỳ × 315.000 = 10,5% × chênh 3.000.000) sẽ khấu trừ vào kỳ 04/2026, sau khi hồ sơ điều chỉnh mức đóng (D02-LT) được cơ quan BHXH xác nhận — không trừ trước khi hồ sơ được duyệt.
Cây giải trình thuế TNCN — 7 bước
calc_trace · formula_version 7
PIT = ROUND( BRACKET( THU_NHAP_TINH_THUE, 'PIT_VN' ), 0, 'HALF_UP' )
1 · THU_NHAP_CHIU_THUE36.778.409
37.508.409 − 730.000 ăn ca miễn thuế. Truy lĩnh 6.000.000 chịu thuế tại kỳ chi trả (nguyên tắc thuế TNCN theo thời điểm chi trả).
2 · GIAM_TRU_BAN_THAN−15.500.000
CONST('PIT_SELF_DEDUCTION') Nghị quyết 110/2025/UBTVQH15 — áp từ kỳ tính thuế 2026
3 · GIAM_TRU_PHU_THUOC−12.400.000
2 người phụ thuộc × 6.200.000 (đã đăng ký với cơ quan thuế)
4 · BAO_HIEM_BAT_BUOC−2.625.000
10,5% × 25.000.000 (8% + 1,5% + 1%)
5 · THU_NHAP_TINH_THUE6.253.409
36.778.409 − 15.500.000 − 12.400.000 − 2.625.000
6 · BRACKET · PIT_VN375.340,90
biểu 7 bậc, table_version 2026.01 — biểu 5 bậc chỉ hiệu lực từ 01/07/2026 (pack VN-2026.07)
5%0 → 5.000.000 · trọn bậc250.000
10%5.000.000 → 10.000.000 · dùng 1.253.409125.340,90
15%+bậc 3–7 không chạm0
7 · ROUND375.341
scale 0 · HALF_UP — làm tròn là thuộc tính của component, chỉ làm tròn 1 lần ở bước cuối
B · OT đêm ngày lễ (VN) — cộng dồn ADDITIVE
Trần Quốc Bảo · tính thử 1 ca 22:00–06:00 ngày lễ 30/04/2026 · run SIMULATION
Lớp đơn giáCăn cứHệ sốThành tiền (₫)
OT ngày lễ, Tết8,0h × 68.181,818182 ₫/h300%1.636.363,64
Phụ cấp làm đêmcộng thêm trên cùng ca+30%163.636,36
Làm thêm vào ban đêmcộng thêm trên cùng ca+20%109.090,91
Tổng 1 ca — time_bucket ADDITIVE350%1.909.091
✓ Ba lớp cộng dồn trên cùng số giờ (300% + 30% + 20% = 350%). Nếu nhân chồng 3,0 × 1,3 × 1,2 = 468% — sai luật. Số lẻ trung gian giữ 2 chữ số, chỉ làm tròn tổng cuối: 1.909.090,91 → 1.909.091 ₫.
⚠ Tính theo pack LA-2026.07 DRAFT — ngưỡng miễn 2.500.000 ₭ · chờ văn bản gốc của Bộ Tài chính Lào — cấm dùng cho kỳ chính thức

C · Khamphan Sisouk — LA2025-0090

LĐ phổ thông · education_trained = FALSE · kỳ tính thử 2026-03 · 26/26 công
2.362.500 ₭ thực lãnh · chi TIỀN MẶT có ký nhận
Lương cơ bản BASIC_SALARY · dưới lương tối thiểu 2.500.000 ₭
1.800.000
Phụ cấp sinh hoạt ALW_SUBSISTENCE · TB 3534/MLSW · trần 900.000
+700.000
Tổng thu nhập đúng sàn lương tối thiểu 2.500.000 ✓
2.500.000
NSSF 5,5% trên MIN(2.500.000; trần 4.500.000) — 1 quỹ duy nhất, 1 dòng
−137.500
Thuế TNCN Lào 2.362.500 ≤ ngưỡng miễn 2.500.000 (DRAFT)
0
Thực lãnh
2.362.500 ₭
ALW_SUBSISTENCE = IF( AND( EMP('education_trained') = FALSE,
  BASIC_SALARY < CONST('MIN_WAGE_LA') ),
  MIN( CONST('SUBSISTENCE_MAX'), CONST('MIN_WAGE_LA') − BASIC_SALARY ), 0 )
Biên liên quan: đã qua đào tạo, lương 1.800.000 → phụ cấp 0, chỉ cảnh báo dưới sàn · lương 2.600.000 ≥ 2.500.000 → phụ cấp 0 · Somchai 9.800.000 ₭ → NSSF chỉ tính trên trần 4.500.000 = 247.500 ₭. Quy đổi 2.362.500 × 1,15 = 2.716.875 ₫ — chỉ cho báo cáo hợp nhất, bắt buộc trả bằng LAK.

Duyệt bảng lương — kỳ 2026-03 · FOXAI Việt Nam

run 2 · 912 phiếu · trình lúc 06/03 21:40 · quy trình 3 cấp: C&B → Trưởng phòng HR → Kế toán trưởng
⚠ Còn 12 phiếu lệch >30% và 2 phiếu vượt trần OT chưa được người duyệt xác nhận đã đọc giải trình — hệ thống sẽ nhắc lại ở bước KTT.
✓C&B TRÌNH — bạn · 06/03 21:40
●TRƯỞNG PHÒNG HR — Lê Thị Thu Trang · đang xem
3KẾ TOÁN TRƯỞNG — Trương Mỹ Linh · yêu cầu MFA
9 kiểm tra tự động sau tính
🔴 chặn duyệt · 🟡 phải giải trình
Kiểm traMứcKết quả
gross − khấu trừ = net từng phiếu🔴✓ 912/912
SUM(payslip_line) = gross🔴✓
net ≤ 0🟡✓ 0 trường hợp
Dưới lương tối thiểu vùng🔴✓ chặn 0 phiếu
Lệch >30% so kỳ trước🟡⚠ 12 cảnh báo — Hùng +38% (OT), 8 ca SX BN, 3 thưởng KD
ACTIVE thiếu phiếu🔴✓ 0
Đã nghỉ còn phiếu🟡⚠ 1 — Phan Văn Đức: phiếu kỳ cuối FINAL_PAY (nghỉ 20/03, +4,5 ngày phép) — hợp lệ, đã ghi chú
Vượt trần OT 40h/tháng🟡⚠ 2 — Bảo 43,5h · Phước 41,5h
Tổng quỹ lệch >20%🟡✓ lệch +1,8% (18,92 vs 18,59 tỷ)
Quỹ lương gross theo đơn vị — kỳ 03 vs kỳ 02
tổng 18.924.843.750 ₫ · cộng khớp comment nguồn
Khối SX Bắc Ninh
8,422 tỷ · +2,9%
Khối Văn phòng HN
4,706 tỷ · +0,8%
Khối Kinh doanh
3,958 tỷ · +2,3%
Kho vận
1,839 tỷ · −1,6%
SX Bắc Ninh tăng do OT (12 cảnh báo lệch tập trung tại đây) · Kho vận giảm do Phan Văn Đức nghỉ 20/03.
Phê duyệt
bước 2/3 — Trưởng phòng HR
🔒 Nút duyệt của bạn bị khoá (SoD) — bạn là người kích hoạt run 2 (06/03 21:13). Nguyên tắc phân tách nhiệm vụ: người chạy bảng lương không được là người duyệt cuối. Việc duyệt thuộc về Trưởng phòng HR và Kế toán trưởng.
Bước KTT (Trương Mỹ Linh) yêu cầu xác thực MFA trước khi ký duyệt. Sau APPROVED kỳ mới được CLOSED và file chi mới được gửi ngân hàng.
Lịch sử duyệt & nhật ký run
06/03 · 21:13
Run 2 hoàn tất
912 phiếu · 0 lỗi · 38 giây · gộp 1 RETRO (QĐ-2026/031) · snapshot SNP-2603-8841 / RUL-2603-3327
06/03 · 21:40
Bạn (C&B) trình duyệt
Đính kèm giải trình 12 ca lệch >30% + 2 ca vượt trần OT
07/03 · 09:12
Lê Thị Thu Trang mở xem
Trưởng phòng HR — chưa cho ý kiến
chờ
Trương Mỹ Linh (KTT)
Ký duyệt cuối — bắt buộc MFA · nếu duyệt: kỳ → APPROVED, mở khoá gửi file chi

Truy lĩnh / Truy thu

Tính lại kỳ đã CLOSED/PAID bằng đúng bộ quy tắc của từng kỳ — delta sinh dòng RETRO_* vào kỳ hiện tại, không mở lại kỳ cũ
trigger: SALARY_CHANGE · QĐ-2026/031
Hồ sơ truy lĩnh — Phạm Thu Hằng (NV2026-0412)
Quyết định
QĐ-2026/031 — tăng lương 22.000.000 → 25.000.000
Hiệu lực (retro_from)
01/01/2026
Ngày nhập quyết định
05/03/2026 — sau khi kỳ 01, 02 đã PAID
Kỳ nguồn bị tính lại
2026-01 · 2026-02 (status PAID — giữ nguyên, không mở lại)
Kỳ nhận (applied_period)
2026-03 · run 2
Delta gross / ròng
+6.000.000 / +5.370.000 ₫
Dòng thời gian
01/01/2026
Hiệu lực tăng lương (hồi tố)
Kỳ 01, 02 chạy với mức cũ 22.000.000 — hợp lệ tại thời điểm chạy
05/03/2026
Nhập QĐ-2026/031
Engine phát hiện 2 kỳ PAID bị ảnh hưởng → xếp lịch retro
06/03/2026
Run 2 kỳ 03 gộp RETRO
+6.000.000 GROSS lên phiếu kỳ 3 · chịu thuế tại kỳ chi trả
kỳ 04/2026
Truy thu BHXH 630.000
Khấu trừ sau khi hồ sơ điều chỉnh D02-LT được cơ quan BHXH xác nhận
retro_adjustment — từng kỳ nguồn × từng component
luôn so với kết quả đã trả gần nhất; rule_version_used ghi đúng phiên bản công thức đã áp
Kỳ nguồnComponentold_amountnew_amountdeltatriggerretro_policyrule_version_used
2026-01BASIC_SALARY22.000.00025.000.000+3.000.000SALARY_CHANGEUSE_OLD_RULEBASIC v4 · 2026.01
2026-02BASIC_SALARY22.000.00025.000.000+3.000.000SALARY_CHANGEUSE_OLD_RULEBASIC v4 · 2026.01
2026-01SI_EMPLOYEE2.310.0002.625.000+315.000 truy thuSALARY_CHANGEUSE_OLD_RULE tỷ lệ 10,5% không đổiSI_VN · 2026.01
2026-02SI_EMPLOYEE2.310.0002.625.000+315.000 truy thuSALARY_CHANGEUSE_OLD_RULESI_VN · 2026.01
2026-01PIT000SALARY_CHANGEUSE_NEW_RULE NQ110 hồi tố kỳ thuế 2026PIT_VN 7 bậc · 2026.01
2026-02PIT000SALARY_CHANGEUSE_NEW_RULEPIT_VN 7 bậc · 2026.01
Tổng hợp sinh dòng RETRO_* vào kỳ 2026-03+6.000.000 · truy thu BH 630.000 · Δ thuế kỳ cũ 0ròng +5.370.000 ₫
◔ RETRO_PIT kỳ nguồn = 0 vì hệ thống áp nguyên tắc thuế TNCN theo thời điểm chi trả: không tính lại thuế kỳ 01–02, toàn bộ khoản truy lĩnh +6.000.000 chịu thuế gộp tại kỳ chi trả 03/2026 — đã nằm trong PIT 375.341 ₫ của phiếu kỳ 3. Lưu ý: kỳ nguồn 01–02/2026 chỉ có 1 người phụ thuộc (bé Phạm Gia Hân sinh 01/2026, đăng ký 05/03/2026 → giảm trừ áp từ kỳ 03), nên không được dùng giảm trừ 12,4tr cho kỳ nguồn; delta = 0 là do chính sách thời điểm chi trả, không phải vì "dưới ngưỡng". BH phần DN phát sinh thêm 21,5% × 3.000.000 × 2 kỳ = 1.290.000 ₫ ghi vào chi phí, không qua phiếu NLĐ.
retro_policy — dùng quy tắc cũ hay mới khi tính lại?
cờ cấu hình trên từng công thức, tuyệt đối không hard-code
Tình huốngChế độKỳ cũ được tính bằng…
Thay đổi do chính sách công ty
vd: đổi công thức phụ cấp chuyên cần từ 01/03, không hồi tố
USE_OLD_RULEcông thức ACTIVE tại period_start của kỳ cũ
Thay đổi do luật hồi tố
vd: NQ 110/2025 — giảm trừ mới áp từ đầu kỳ tính thuế 2026 dù ban hành sau
USE_NEW_RULEcông thức/tham số ACTIVE hiện tại
5 vấn đề đặc thù của retro
bấm từng mục để mở
1 · Truy lĩnh làm đổi bậc thuế kỳ cũ
Tính lại thuế theo biểu của chính kỳ cũ, ghi delta thuế thành dòng riêng (RETRO_PIT). Ca Hằng: cả trước và sau tăng lương đều dưới ngưỡng nộp → delta 0; nếu kỳ cũ đã có thuế, phần chênh sẽ hiện riêng, không trộn vào thuế kỳ này.
2 · Truy thu bảo hiểm
Sinh dòng khấu trừ và hồ sơ điều chỉnh mức đóng gửi cơ quan BHXH (D02-LT). Khấu trừ 630.000 của Hằng chỉ chạy ở kỳ 04 sau khi hồ sơ được xác nhận — tránh lệch giữa số đã trừ và số cơ quan BHXH ghi nhận.
3 · Nhân viên đã nghỉ việc
Vẫn phải tính lại. Delta dương → chi trả bổ sung (chuyển khoản/tiền mặt ngoài kỳ); delta âm → thu hồi hoặc ghi nhận nợ. Vd: nếu QĐ lương ảnh hưởng Phan Văn Đức (nghỉ 20/03), hệ thống vẫn sinh retro cho phiếu FINAL_PAY của anh.
4 · Truy lĩnh chồng truy lĩnh
Luôn so với kết quả đã trả gần nhất, không so bản tính đầu tiên. Nếu tháng 5 lại có QĐ hồi tố nữa cho Hằng, engine so với phiếu kỳ 3 (đã gồm +6.000.000), tránh trả trùng.
5 · Vắt qua năm tài chính
Retro chạm kỳ ≤ 12/2025 sẽ bật cảnh báo ảnh hưởng quyết toán thuế TNCN năm cũ (tờ khai đã nộp) — yêu cầu C&B xác nhận trước khi áp, kèm danh sách chứng từ phải điều chỉnh.

Chi trả & Bút toán

disbursement_batch theo ngân hàng (adapter định dạng riêng) · đối chiếu kết quả trả về từng dòng · bút toán khớp Nợ/Có từng đồng
🔒 Kỳ 2026-03 (VN) đang REVIEWING — file chi được sinh trước để KTT soát nhưng nút GỬI ngân hàng khoá đến khi kỳ APPROVED.
Batch chi lương — kỳ 2026-03 · 🇻🇳 VN (VND)
ngày chi 05/04 · mỗi ngân hàng một adapter định dạng
KênhĐịnh dạng fileSố ngườiTổng tiền (₫)Trạng thái
VCBVCB-CITAD v3.2 · .txt81214.200.000.000GENERATED
BIDVBIDV iBank · .xlsx881.268.132.000DRAFT
Chưa gắn TK (giữ lại)— tự tách batch phụ khi NV bổ sung TK12241.868.000DRAFT · chờ TK
Tổng = thực lãnh kỳ 03 VN91215.710.000.000✓ khớp
Batch chi lương — kỳ 2026-02 · 🇱🇦 LA (LAK)
ngày chi 05/03 · bắt buộc trả LAK · tiền mặt phải có danh sách ký nhận
KênhĐịnh dạng fileSố ngườiTổng tiền (₭)Trạng thái
BCELBCEL SmartTransfer · .csv3412.710.000.000CONFIRMED · 339 ✓ / 2 lỗi
Tiền mặtMẫu ký nhận (song ngữ Lào–Việt)31132.000.00028/31 đã ký
Tổng = thực lãnh kỳ 02 LA3722.842.000.000✓ khớp
◔ Chi tiền mặt vẫn phổ biến ngoài Vientiane — danh sách ký nhận là chứng từ bắt buộc.
Đối chiếu kết quả BCEL trả về — batch kỳ 02 LA
trạng thái từng dòng · 2 lỗi → nguyên nhân kỳ LA-02 REOPENED
DòngNhân viênSố tiền (₭)Trạng tháiMã lỗi ngân hàng
117Vilay Chanthavong LA2025-01028.450.000FAILEDE013 — số TK không tồn tại
252Somphone Keomany LA2026-0011 · vào 02/20265.230.000FAILEDE013 — số TK không tồn tại
—339 dòng còn lại2.696.320.000CONFIRMED—
341 dòng2.710.000.000✓ khớp tổng batch
↩ 2 dòng lỗi (13.680.000 ₭) chuyển sang chi tiền mặt đợt bổ sung 12/03 — thuộc run 2 OFF_CYCLE của kỳ LA-02 REOPENED. Nhân viên được nhắc cập nhật số TK trước kỳ 03.
Chia lương nhiều tài khoản — Phạm Thu Hằng
employee_bank_account.split_percent · kỳ 03 VN
Tài khoảnsplit_percentSố tiền (₫)
VCB ••••6688 70%24.155.648
BIDV ••••1102 30%10.352.420
Thực lãnh kỳ 0334.508.068
◔ 70% = 24.155.647,6 → làm tròn 24.155.648; tài khoản cuối nhận phần dư để tổng khớp từng đồng. Mọi lần bấm "hiện" số TK đều ghi nhật ký.
Danh sách ký nhận tiền mặt — kỳ 02 LA
chứng từ bắt buộc · 28/31 đã ký · 3 chưa ký
Nhân viênSố tiền (₭)Ký nhận
Khamphan Sisouk LA2025-00902.362.500✓ 05/03 · 16:20
Khamla Phommachanh LA2023-00345.600.000✓ 05/03 · 16:32
Bounmy Keo LA2025-00784.100.000chưa ký — nghỉ ốm có giấy BS
28 người khác (26 đã ký · 2 chưa)119.937.50026 ✓ / 2 chưa
31 người132.000.000✓ khớp batch
◔ Tiền chưa ký nhận giữ tại quỹ, quá 30 ngày tự động chuyển trạng thái "chờ xử lý" và nhắc HR. Khamphan nhận đúng net 2.362.500 ₭ như trên phiếu lương.
payroll_journal — kỳ 2026-03 · 🇻🇳 VN
ánh xạ component → tài khoản theo pháp nhân (VN: TT200 · LA: hệ thống TK Lào riêng)
NợCóSố tiền (₫)Diễn giải
622 / 641 / 64233418.924.843.750Chi phí lương kỳ 03 (gross)
622 / 641 / 6423383–33863.675.156.250BH phần DN 21,5% × 17.093.750.000
3343383–33861.794.843.750BH NLĐ 10,5% khấu trừ qua lương
33433351.420.000.000Thuế TNCN khấu trừ
33411215.710.000.000Chi lương qua ngân hàng (05/04)
Tổng Nợ = Tổng Có41.524.843.750✓ TK 334 tất toán: 18.924.843.750 = 1.794.843.750 + 1.420.000.000 + 15.710.000.000
Phân bổ phần dư theo cost center
quy tắc 3 — tổng phân bổ phải khớp tổng bảng lương, kế toán mới duyệt
Cost centerTrọng sốPhần nguyênRải dưPhân bổ (₫)
CC-HN01 Kinh doanh HN1/33.333.333+13.333.334
CC-HN02 Văn phòng HN1/33.333.333+13.333.334
CC-BN01 Nhà máy BN1/33.333.333—3.333.333
Thưởng dự án FOX-Q19.999.999+210.000.001
PHAN_BO(total, w[]):  base[i] = FLOOR(total × w[i] / SUM(w))
remainder = total − SUM(base)  // = 2
sắp theo phần thập phân bị cắt giảm dần (0,6667 bằng nhau → thứ tự ổn định)
rải +1 từng đơn vị đến khi hết → không bao giờ lệch tổng
Nếu chia đều rồi làm tròn từng dòng (3.333.333,67 → 3.333.334 ×3 = 10.000.002) tổng sẽ thừa 1 ₫ so với bảng lương — kế toán không duyệt.

Thành phần lương

Danh mục pay_component — kiến trúc 4 tầng, 3 mức tự do · pháp nhân FOXAI Việt Nam + FOXAI Laos
Tổng thành phần
62
9 SYSTEM 🔒 · 38 STANDARD · 15 CUSTOM
Hạn mức gói Professional
53/60 cột tuỳ chỉnh
STANDARD + CUSTOM — còn 7 cột
Theo quốc gia
41 VN · 14 LA
+ 7 dùng chung 2 pháp nhân
Khoá pháp định
9 SYSTEM
PIT · SI_* · GROSS/NET/TOTAL_COST
Ba mức tự do trên thành phần lương: các cột bảo hiểm và cột tổng khấu trừ thuộc tier SYSTEM 🔒 — chỉ Compliance sửa tham số tỷ lệ/trần, không sửa công thức. Tier STANDARD/CUSTOM dùng được IF/IFS, BRACKET luỹ tiến, TABLE tra bảng để mô tả quy chế riêng của doanh nghiệp.
Tất cả · 20 EARNING · 11 DEDUCTION · 4 EMPLOYER_COST · 2 INFO · 3
pay_component — 62 bản ghi
hiển thị 20 dòng tiêu biểu · nhấp nút cuối dòng để thấy quyền sửa theo tier
MãTên thành phầnTierNhóm Thuế TNCNNền BHNền OT Làm tròn
BASIC_SALARY
Lương cơ bản
Tầng 3 COMPONENT — nền của SI, OT, tháng 13
STANDARDEARNING YES✓✓ 0 · HALF_UP
SALARY_BY_DAYS
Lương theo ngày công
= BASIC_SALARY × WORK_DAYS() / STANDARD_DAYS()
STANDARDEARNING YES—— 0 · HALF_UP
PROBATION_RATE
Hệ số thử việc
Ngô Thị Lan Anh (NV2026-0501): 85% × 16.000.000 — thử việc hết 10/04/2026
STANDARDINFO ——— 2 · HALF_UP
ALW_POSITION
Phụ cấp chức vụ
= TABLE('PHU_CAP_CHUC_VU', EMP('job_grade'), EMP('location')) → xem bảng tra
STANDARDEARNING YES✓✓ 0 · HALF_UP
ALW_RESPONSIBILITY
Phụ cấp trách nhiệm
Ghi trong HĐLĐ → tính vào nền đóng BHXH
STANDARDEARNING YES✓— 0 · HALF_UP
ALW_LUNCH
Phụ cấp ăn ca
taxable_expr = MAX(0, ALW_LUNCH − 730000)
miễn thuế phần ≤ 730.000 ₫/tháng — vượt mới chịu thuế
STANDARDEARNING PARTIAL—— 0 · HALF_UP
ALW_PHONE
Phụ cấp điện thoại
Khoán theo quy chế công ty — trong mức khoán không tính thuế
STANDARDEARNING NO—— 0 · HALF_UP
ALW_ATTENDANCE
Thưởng chuyên cần công thức v3 DRAFT
v2 hard-code 22 công — sai với Lào (26 công) · nhấp để mở trình soạn
STANDARDEARNING YES—— 0 · HALF_UP
ALW_SUBSISTENCE
Phụ cấp sinh hoạt 🇱🇦
Case test LA-04: Khamphan Sisouk (chưa qua đào tạo, 1.800.000 ₭) → +700.000 ₭ = đủ sàn 2.500.000 ₭
🔒 SYSTEM · LAEARNING YES✓— 0 · HALF_UP
OT_150
Làm thêm ngày thường 150%
Họ OT_* sinh theo time_bucket (200/300%, đêm +30%, OT đêm +20%) · phần phụ trội dự kiến miễn thuế — chờ NĐ 253/2026 (V-08)
STANDARDEARNING PARTIAL—— 0 · HALF_UP
BONUS_13TH
Lương tháng 13
= AVG_LAST(BASIC_SALARY, 12) × SENIORITY_MONTHS()/12 (nếu < 1 năm)
STANDARDEARNING YES—— 0 · HALF_UP
BONUS_PROJECT
Thưởng dự án (riêng FOXAI)
Tier CUSTOM — tự do hoàn toàn, tính vào hạn mức 60 cột
CUSTOMEARNING YES—— 0 · HALF_UP
DED_UNION
Đoàn phí công đoàn
1% tiền lương làm căn cứ đóng BHXH — chỉ đoàn viên
STANDARDDEDUCTION ——— 0 · HALF_UP
DED_ADVANCE
Trừ tạm ứng
Chỉ đọc đơn tạm ứng ĐÃ DUYỆT — tầng 1 FACT, bất biến, công thức không sửa được nguồn
STANDARDDEDUCTION ——— 0 · HALF_UP
SI_EMPLOYEE
BH bắt buộc — NLĐ
🇻🇳 10,5% = HT 8 + BHYT 1,5 + BHTN 1 · 🇱🇦 NSSF 5,5% trần 4.500.000 ₭ — tầng 4 STATUTORY
🔒 SYSTEMDEDUCTION ——— 0 · theo quỹ
SI_EMPLOYER
BH bắt buộc — DN
🇻🇳 21,5% (5 quỹ: HT 14 + ÔĐTS 3 + TNLĐ 0,5 + BHYT 3 + BHTN 1) · 🇱🇦 NSSF 6% (1 quỹ duy nhất)
🔒 SYSTEMEMPLOYER_COST ——— 0 · theo quỹ
PIT
Thuế TNCN
= BRACKET(THU_NHAP_TINH_THUE, 'PIT_VN') → bảng tra 7 bậc / 5 bậc
Đổi luật = thêm bản ghi rate_table, không sửa công thức
🔒 SYSTEMDEDUCTION ——— 0 · HALF_UP
GROSS_PAY
Tổng thu nhập
Cột tổng bị khoá — kiểm tra SUM(dòng) = GROSS mức 🔴 chặn sau mỗi lần chạy
🔒 SYSTEMINFO ——— 0 · HALF_UP
NET_PAY
Thực lĩnh
Đối chiếu gross − khấu trừ = net từng phiếu (🔴 chặn) · cảnh báo net ≤ 0
🔒 SYSTEMINFO ——— 0 · HALF_UP
TOTAL_COST
Tổng chi phí DN
= GROSS_PAY + SI_EMPLOYER + phí công đoàn DN — nguồn cho phân bổ cost_center (rải phần dư từng đồng)
🔒 SYSTEMEMPLOYER_COST ——— 0 · HALF_UP
🔒 SYSTEM Compliance sửa tham số, công thức khoá STANDARD sửa công thức được — kèm cảnh báo + quy trình duyệt CUSTOM tự do — tính vào hạn mức gói PARTIAL có taxable_expr riêng Nền BH / OT is_si_base · is_ot_base — country pack quyết định

Trình soạn công thức

ALW_ATTENDANCE — Thưởng chuyên cần · tier STANDARD · bản nháp v3 (v2 ACTIVE từ 01/06/2025)
✓ DRAFT v3 · 05/03
✓ Chạy thử & so sánh · 06/03
✓ Bộ test 4/4 PASS
● Gửi duyệt (PENDING)
5 ACTIVE · valid_from 01/04/2026
version = 3 retro_policy = USE_OLD_RULE valid_from = 01/04/2026 tác giả: bạn (C&B) · duyệt: Trương Mỹ Linh — KTT
change_reason: “Sửa lỗi hard-code 22 công (sai với pháp nhân Lào — công chuẩn 26); thêm bậc 400.000 cho người thiếu đúng 1 công và không đi muộn.” · retro_policy = USE_OLD_RULE vì đây là thay đổi chính sách công ty — kỳ cũ giữ quy tắc cũ, không truy thu hàng loạt.
◔ Kỳ 03/2026 đang OPEN — không cho sửa công thức trên kỳ CALCULATING/CLOSED. Kích hoạt là dữ liệu có valid_from, không phải deploy → không vướng phong toả deploy 22/03 – 07/04.
Thanh công thức — cú pháp Excel, lưu AST
văn bản chỉ là giao diện · engine chạy AST JSON đã biên dịch
1= IFS(
2  WORK_DAYS() >= STANDARD_DAYS(),  800000,
3  AND( WORK_DAYS() >= STANDARD_D
4       LATE_MINUTES() = 0 ),   400000,
5  TRUE,                       0
6  )
STANDARD_DAYS()Công chuẩn pháp nhân · NUMBER · VN-2026.01: 22 — LA-2024.10: 26
SCHEDULED_DAYS()Ngày được xếp lịch thực tế của NV trong kỳ · NUMBER · vd 21
SENIORITY_YEARS(from?)Thâm niên (năm) · NUMBER · vd 3,25
✓ Kiểu trả về: MONEY (theo tiền tệ pháp nhân) · 17/500 node · sâu 5/32 · 231B/4KB · biên dịch 4ms → cache AST
WORK_DAYS→ ALW_ATTENDANCE→ GROSS_PAY→ PIT→ NET_PAY→ TOTAL_COST
⚠ Cảnh báo bảo vệ: 4 component hạ nguồn phụ thuộc ALW_ATTENDANCE — đổi kết quả sẽ lan tới GROSS_PAY, PIT, NET_PAY, TOTAL_COST. Xoá/đổi tên bị chặn khi còn tham chiếu. · ✓ Không phát hiện phụ thuộc vòng (Tarjan SCC) · ✓ Không bỏ sót component bắt buộc.
⛔ 05/03 09:12 — bản nháp đầu bị chặn khi lưu: tham chiếu ALW_DILIGENCE không tồn tại (kiểm tra hợp lệ ngay khi lưu — không để lỗi cú pháp lọt tới phiên chạy lương ban đêm).
Xem trước trực tiếp — 3 nhân viên đại diện
tính lại ngay khi đang nhập, chưa cần lưu · số liệu dự phóng đến hết kỳ 03/2026 — chốt công 25/03
Nhân viênPháp nhânWORK_DAYS()STANDARD_DAYS()LATE (phút)Kết quả v3
PH
Phạm Thu Hằng
NV2026-0412 · G5
🇻🇳 VN22220800.000 ₫
TB
Trần Quốc Bảo
NV2024-0089 · CN bậc 4
🇻🇳 VN21 ⚠220400.000 ₫
SV
Somchai Vongsa
LA2024-0112 · Kế toán TH
🇱🇦 LA26260800.000 ₭
Nhấp một dòng để xem bảng giải trình từng bước:
⚠ Gợi ý: hằng số 800000 áp theo tiền tệ pháp nhân (₫ / ₭). Nếu muốn mức riêng cho Lào → dùng TABLE('MUC_CHUYEN_CAN', EMP('legal_entity')).
Chạy thử & so sánh — v2 ACTIVE vs v3 DRAFT
1.284 NV · 18,7 giây2 NV lệch
Nhân viênCôngv2 (ACTIVE)v3 (DRAFT)ΔGhi chú
Phạm Thu Hằng
VN · 22 công chuẩn
22/22800.000800.0000không đổi (dòng đối chứng)
Trần Quốc Bảo
VN · thiếu 1 công, 0 phút muộn
21/220400.000+400.000bậc khuyến khích mới của v3
Bounmy Keo
LA · nghỉ ốm 3 ngày (SICK: affects_attendance = false)
23/26800.0000−800.000v2 hard-code 22 → trả nhầm cho NV Lào thiếu công từ 01/06/2025
Somchai Vongsa
LA · 26 công chuẩn
26/26800.000800.0000v3 đúng nhờ STANDARD_DAYS()
Quỹ chuyên cần cả kỳ (dự phóng)986.800.000986.400.000−400.000
Khoản trả nhầm phía Lào: retro_policy = USE_OLD_RULE → không tự động truy thu; nếu muốn thu hồi phải mở đợt điều chỉnh riêng có duyệt.
Bộ test của người dùng — chạy lại tự động mỗi lần đổi công thức
4/4 PASS
✓ PASST1 · Phạm Thu Hằng — 22/22 công, kỳ 03/2026 → kỳ vọng 800.000 ₫ · thực tế 800.000 ₫
✓ PASST2 · Trần Quốc Bảo — 21/22 công, 0 phút muộn → kỳ vọng 400.000 ₫ · thực tế 400.000 ₫
✓ PASST3 · Bounmy Keo — 23/26 công (ốm 3 ngày) → kỳ vọng 0 · thực tế 0
✓ PASST4 · Somchai Vongsa — 26/26 công, pháp nhân LA → kỳ vọng 800.000 ₭ · thực tế 800.000 ₭
Bộ test pass là điều kiện để nút “Gửi duyệt” mở khoá.
Thư viện hàm — 42 hàm, 5 nhóm
nhấp một hàm để chèn vào công thức
Thư viện mẫu theo ngành
chọn một mẫu để nạp vào bản nháp
◧ Sản xuất theo ca ▤ Bán lẻ ◔ F&B ▲ Xây dựng § Văn phòng
Sandbox — 8 chốt chặn bắt buộc
engine tham chiếu CEL — không Turing-đầy đủ, đảm bảo dừng
1 · Không I/O, network, importcontext bất biến
2 · Đảm bảo dừngkhông cho user viết vòng lặp
3 · Cost budget tất định17 / 500 đơn vị ✓
4 · Giới hạn cấu trúcsâu 5/32 · 231B/4KB ✓
5 · Data scoping — chốt hay bị quên nhấtchỉ thấy context 1 NV, không SUMIF toàn bảng
6 · Validate lúc lưuđã chặn 1 bản nháp lỗi 05/03
7 · Timeout 50ms/NVđo được 0,8ms ✓
8 · Cô lập tenanttầng process/pool riêng
Tổng phòng ban nếu cần → hàm dựng sẵn DEPT_AGG('SUM', code) có kiểm tra quyền — không mở SUMIF (chống rò rỉ lương giữa nhân viên).

Bảng tra & Lookup

rate_table pháp định (country pack) · lookup_table người dùng · statutory_constant — “sửa luật là sửa dữ liệu, không sửa công thức”
PIT_VN — biểu 7 bậc
ĐANG ÁP DỤNG · kỳ 03/2026
calc_method PROGRESSIVEbase_unit MONTHLYVNDvalid_to = 30/06/2026
BậcThu nhập tính thuế/thángSuấtThuế luỹ kế tại trần
1Đến 5.000.0005%250.000
2Trên 5 – 10 triệu10%750.000
3Trên 10 – 18 triệu15%1.950.000
4Trên 18 – 32 triệu20%4.750.000
5Trên 32 – 52 triệu25%9.750.000
6Trên 52 – 80 triệu30%18.150.000
7Trên 80 triệu35%—
Phiên bản này được giữ lại vĩnh viễn — truy lĩnh các kỳ ≤ 06/2026 luôn tính lại bằng biểu 7 bậc.
PIT_VN — biểu 5 bậc
ĐÃ LÊN LỊCH · valid_from 01/07/2026
Luật 109/2025/QH15NĐ 253/2026 · TT 87/2026legal_basis bắt buộc
BậcThu nhập tính thuế/thángSuấtThuế luỹ kế tại trần
1Đến 10 triệu5%500.000
2Trên 10 – 30 triệu10%2.500.000
3Trên 30 – 60 triệu20%8.500.000
4Trên 60 – 100 triệu30%20.500.000
5Trên 100 triệu35%—
2026 có hai chế độ thuế trong một năm: giảm trừ mới áp từ kỳ thuế 2026 (01/01) nhưng biểu 5 bậc chỉ từ 01/07 — hệ thống áp dụng nguyên tắc mọi tham số có hiệu lực theo ngày (case test VN-03/VN-04).
Đổi luật = THÊM bản ghi valid_from mới — không sửa công thức, không deploy. Công thức PIT vẫn nguyên vẹn: = BRACKET(THU_NHAP_TINH_THUE, 'PIT_VN'). Engine tự chọn phiên bản theo ngày kỳ lương.
Ví dụ cùng TNTT 16.176.471 ₫ (hồ sơ gross-up của Trương Mỹ Linh): 7 bậc → 1.676.471 ₫ · 5 bậc → 1.117.647 ₫ (giảm 558.824 ₫/tháng) — xem màn Gross-up →
⚠ CẦN XÁC MINH VĂN BẢN GỐC — V-01 (bảng bậc đầy đủ) · V-02 (ngày hiệu lực sắc lệnh 06/08/2025) — pack LA-2026.07 đang DRAFT, chưa PUBLISHED
PIT_LA — thuế TNCN Lào 🇱🇦
pack LA-2026.07 · DRAFT
BậcThu nhập/tháng (₭)Suất
1Đến 2.500.000 ngưỡng miễn mới0%
2Trên 2.500.000 – 5.000.0005%
3Trên 5.000.000 – …10%
…các bậc giữa — chờ bản gốc Bộ Tài chính Lào (V-01)…
cao nhấtTrên 65.000.00025%
Cảnh báo nguồn dữ liệu: hãng tư vấn chuyên về Lào, bản cập nhật 05/2026, vẫn công bố ngưỡng miễn cũ 1.300.000 ₭ — trong khi sắc lệnh đã nâng lên 2.500.000 ₭. Chỉ tin văn bản gốc; nguồn thứ cấp chỉ để phát hiện “có thay đổi”.
Ví dụ chính thức — case test LA-02, thu nhập 6.000.000 ₭/tháng:
0%2.500.000 ₭ đầu tiên (miễn)0
5%2.500.000 ₭ tiếp theo125.000
10%1.000.000 ₭ còn lại100.000
Thuế = 0 + 125.000 + 100.000 = 225.000 ₭
Cơ sở tínhthu nhập sau khi trừ NSSF — Lào rất ít giảm trừ cá nhân
Khamphan Sisouk (LA2025-0090)2.500.000 − 137.500 = 2.362.500 ₭ ≤ 2,5tr → thuế 0
Kỳ 06/2026 vs 07/2026 (case LA-13)tự áp ngưỡng cũ/mới theo valid_from
lookup_table — PHU_CAP_CHUC_VU (người dùng tự tạo)
key: job_grade × location · value: MONEY(VND) · tenant FOXAI Việt Nam
job_gradelocationGiá trịvalid_fromvalid_to
G7HN3.000.00001/01/2026∞Vũ Đình Long — TP Kinh doanh
G7HCM3.000.00001/01/2026∞
G6HN2.200.00001/01/2026∞
G5HN1.500.00001/01/2026∞bản ghi mới
G5HN1.200.00001/06/202531/12/2025SUPERSEDED
G5HCM1.500.00001/01/2026∞
Ô trống không im lặng: khoá G4 × BN chưa có giá trị — engine báo LOOKUP_MISS ngay lúc validate cấu hình, không âm thầm trả 0 vào lương.
Cách công thức gọi bảng tra
= TABLE('PHU_CAP_CHUC_VU', EMP('job_grade'), EMP('location'))
Long G7 · HN · kỳ 03/2026→ 3.000.000 ₫
G5 · HN, kỳ 11/2025 (truy lĩnh)→ 1.200.000 ₫ (bản ghi cũ)
Hiệu lựctừng dòng có valid_from/valid_to riêng
Thay đổi mức phụ cấp bằng dữ liệu: tăng phụ cấp chức vụ = thêm dòng dữ liệu có hiệu lực mới. Chuyên viên C&B tự làm, không cần sửa công thức, không gọi hỗ trợ.
statutory_constant — hằng số pháp lý có hiệu lực theo ngày
công thức gọi CONST('…') — không bao giờ hard-code số vào công thức
codeTênGiá trị cũ (hiệu lực)Giá trị mới (hiệu lực)legal_basis
PIT_SELF_DEDUCTIONGiảm trừ bản thân (VN) 11.000.000 (đến 31/12/2025) 15.500.000 (kỳ thuế 2026) NQ 110/2025/UBTVQH15 · luật hồi tố → retro_policy USE_NEW_RULE
PIT_DEPENDENT_DEDUCTIONGiảm trừ mỗi người phụ thuộc (VN) 4.400.000 (đến 31/12/2025) 6.200.000 (kỳ thuế 2026) NQ 110/2025/UBTVQH15 · Hằng có 2 NPT → giảm trừ 12.400.000
MIN_WAGE_LALương tối thiểu Lào 1.600.000 ₭ (đến 30/09/2024) 2.500.000 ₭ (01/10/2024) TB 3534/MLSW · V-04 đang đàm phán 2026: 2,71tr+900k / 4,1tr / 2,83tr
SUBSISTENCE_MAXTrần phụ cấp sinh hoạt (Lào) — 900.000 ₭ (01/10/2024) TB 3534/MLSW · chỉ LĐ phổ thông chưa qua đào tạo, lương < 2,5tr ₭
NSSF_CEILINGTrần đóng NSSF (Lào) — 4.500.000 ₭ LSSO · Somchai lương 9,8tr ₭ vẫn chỉ đóng 5,5% × 4,5tr = 247.500 ₭
MIN_WAGE_REGION_1LTTV vùng I (VN) 4.960.000 (đến 31/12/2025) 5.310.000 (01/01/2026) NĐ 293/2025/NĐ-CP · V-06 vùng II–IV chờ văn bản gốc
REFERENCE_WAGEMức tham chiếu (trần BHXH/BHYT = 20×) — ••• V-09 chặn chờ văn bản hướng dẫn Luật BHXH 2024 — pack không PUBLISHED khi còn 🔴
◔ Mỗi thay đổi tham số cần 2 người kiểm tra chéo với văn bản gốc + ghi legal_basis từng bản ghi. Kỳ lương đóng băng country_pack_ver vào snapshot — chạy lại 10 năm sau vẫn ra đúng số cũ.
TL

Hợp đồng NET — Gross-up

Trương Mỹ Linh · NV2025-0301 · Kế toán trưởng · HĐ NET 30.000.000 ₫/tháng · 0 người phụ thuộc · kỳ 03/2026 (biểu 7 bậc)
Bài toán vòng: thuế phụ thuộc GROSS → GROSS phụ thuộc thuế. Vì biểu thuế luỹ tiến từng phần, không tồn tại công thức đóng — bắt buộc giải lặp: solver đặt BASIC_SALARY = mid, chạy lại toàn bộ DAG 62 component, so NET ra với 30.000.000, rồi siết khoảng [lo ; hi] kiểu chia đôi.
NET mục tiêu
30.000.000 ₫
ghi trong HĐLĐ — phổ biến ở DN FDI
GROSS tìm được
35.392.705 ₫
Số vòng lặp
25/60 MAX_ITER
25 lần chạy lại DAG ≈ 20ms
Sai số cuối
0 ₫
TOLERANCE 1₫ — VND ưu tiên khớp tuyệt đối
Tham số solver
đóng băng theo snapshot kỳ 03/2026 · pack VN-2026.01
Biểu thuếPIT_VN · 7 bậc (trước 01/07/2026)
Giảm trừ bản thân15.500.000 (NQ 110/2025)
Người phụ thuộc0 × 6.200.000 = 0
BH bắt buộc NLĐ10,5% · nền = GROSS (dưới trần)
Trần tách đôiBHXH/BHYT: 20× mức tham chiếu (V-09) · BHTN: 20× LTTV vùng I = 106.200.000 → đều dưới trần ✓
Khoảng khởi tạolo = 30.000.000 · hi = 30tr/(1−20%)×1,5 = 56.250.000
Dừng khi|diff| ≤ 1₫ hoặc hết 60 vòng
Kiểm tra tính đơn điệu — 3 điểm trước khi chia đôi
nếu không đơn điệu thì cảnh báo, không chạy
g = 30.000.000
net 25.897.500
g = 43.125.000
net 35.627.500
g = 56.250.000
net 44.882.812
✓ NET tăng nghiêm ngặt theo GROSS trên [lo ; hi] → chia đôi an toàn. Công thức bậc thang do người dùng viết có thể phá tính đơn điệu — khi đó solver từ chối chạy và chỉ tên component gây ra.
Ba nguyên tắc vận hành của solver
1 · Engine phải rẻ để chạy lạigross-up = 20–60 lần chạy DAG cho MỘT nhân viên · đo được ≈ 0,8ms/lần
2 · Phát hiện không hội tụbáo lỗi rõ ràng — tuyệt đối không im lặng trả kết quả sai
3 · Solver BỌC NGOÀI DAGkhông phải hàm trong công thức — nó điều khiển cả đồ thị
SOLVER gross-up→ override BASIC_SALARY = mid → DAG 62 component→ NET → so với 30.000.000→ siết lo/hi ↺
⛔ Ví dụ lỗi — GrossUpNotConvergedError: NV2025-0188 · target_net 28.000.000 · 60 vòng · last_diff +214.508. Nguyên nhân thường gặp: thưởng bậc thang làm NET không đơn điệu. Phiếu lương bị CHẶN, kỳ lương không khoá được — không bao giờ trả “gần đúng”.

Phiếu kiểm chứng — chạy DAG lần cuối tại GROSS tìm được

Trương Mỹ Linh · kỳ 03/2026 · run_type SIMULATION → ghi vào phiếu chính thức khi chốt
30.000.000 ₫ NET — đúng từng đồng với HĐ
Thu nhập
GROSS_PAY (nghiệm solver)BASIC_SALARY sau gross-up35.392.705
Khấu trừ
BH bắt buộc NLĐ 10,5%BHXH 8% = 2.831.416 · BHYT 1,5% = 530.891 · BHTN 1% = 353.927−3.716.234
Giảm trừ bản thân (không trừ tiền — chỉ trừ nền thuế)TNTT = 35.392.705 − 3.716.234 − 15.500.000 = 16.176.471·
Thuế TNCN — BRACKET 7 bậc250.000 + 500.000 + 6.176.471 × 15% (→ 926.471)−1.676.471
NET_PAY30.000.000
Đối chiếu tự động sau tính: gross − khấu trừ = net ✓ (kiểm tra 🔴 chặn) · mở cây giải trình đầy đủ
Chi phí thật của hợp đồng NET
NET nhân viên nhận30.000.000 ₫
GROSS quy đổi35.392.705 ₫
BH phía DN 21,5%+7.609.432 ₫
TOTAL_COST43.002.137 ₫ = 143,3% NET
Từ 01/07/2026 (biểu 5 bậc), cùng HĐ NET 30tr → GROSS chỉ còn 34.698.945 ₫ (tiết kiệm 693.760 ₫/tháng). Engine tự đổi theo valid_from — HĐ NET không phải ký lại.
Trường hợp đặc biệt
Cố định cả NET + một khoản phụ cấpNewton–Raphson đa biến, hoặc giới hạn chỉ solve 1 biến
Thưởng gross-up một lầnsolve riêng phần thưởng, giữ nguyên lương cơ bản
Công thức không đơn điệuphát hiện bằng 3 điểm thử → cảnh báo người dùng
Nhật ký hội tụ — chia đôi khoảng (binary search)
mỗi vòng = 1 lần EVALUATE_DAG đầy đủ · mid làm tròn tới ₫ trước khi chạy · nhấp dòng xem BH/TNTT/thuế của vòng đó
Vònglo (₫)hi (₫)mid — GROSS thửNET(mid)diff vs 30.000.000Hành động
130.000.00056.250.00043.125.00035.627.500+5.627.500NET quá cao → hi ← mid
230.000.00043.125.00036.562.50030.889.921+889.921hi ← mid
330.000.00036.562.50033.281.25028.393.711−1.606.289NET quá thấp → lo ← mid
433.281.25036.562.50034.921.87529.641.816−358.184lo ← mid
534.921.87536.562.50035.742.18830.265.869+265.869hi ← mid
634.921.87535.742.18835.332.03229.953.844−46.156lo ← mid
⋯ vòng 7 – 20: khoảng [lo ; hi] thu hẹp 410.156 ₫ → 25 ₫ (mỗi vòng chia đôi, 14 lần chạy DAG) ⋯
2135.392.69135.392.71635.392.70429.999.999−1vào dung sai — dò tiếp nghiệm diff = 0 *
2235.392.70435.392.71635.392.71030.000.004+4hi ← mid
2335.392.70435.392.71035.392.70730.000.002+2hi ← mid
2435.392.70435.392.70735.392.70630.000.001+1hi ← mid
2535.392.70435.392.70635.392.70530.000.0000HỘI TỤ ✓ trả GROSS
* TOLERANCE = 1 đơn vị tiền. Với VND (minor_unit = 0), engine tiếp tục dò trong dải dung sai để ưu tiên nghiệm khớp tuyệt đối 0 ₫ — vòng 25/60, còn xa MAX_ITER. Kết quả + toàn bộ nhật ký vòng lặp được ghi vào calc_trace của dòng phiếu lương (giải trình được với thanh tra).

Bảo hiểm bắt buộc

Kỳ 03/2026 · FOXAI Việt Nam (pack VN-2026.01) · FOXAI Laos Co., Ltd (pack LA-2024.10) · hôm nay 07/03/2026
Tham gia BHXH — VN
870 người
912 NV − 34 thử việc − 8 tạm hoãn
Tham gia NSSF — LA
372 người
1 quỹ duy nhất (LSSO)
Truy đóng điều chỉnh kỳ này
1,92 tr ₫
hồi tố tăng lương P.T.Hằng ×2 kỳ
Hạn kê khai gần nhất
31/03
IVAN (VN) · 15/04 LSSO (LA)
🇻🇳 5 quỹ tách biệt — 🇱🇦 1 quỹ NSSF
Tỷ lệ đóng từ 2026 · VN: 5 dòng trên phiếu lương · LA: 1 dòng
Quỹ (contribution_scheme)Cơ quanNLĐDN
🇻🇳 Hưu trí và tử tuất SI_VN_PENSIONBHXH VN8%14%
🇻🇳 Ốm đau – thai sản SI_VN_SICK_MATBHXH VN—3%
🇻🇳 TNLĐ – bệnh nghề nghiệp SI_VN_OSH theo ngành — V-10BHXH VN—0,5%
🇻🇳 Bảo hiểm y tế SI_VN_HEALTHBHXH VN1,5%3%
🇻🇳 Bảo hiểm thất nghiệp SI_VN_UNEMPBHXH VN1%1%
🇻🇳 Tổng Việt Nam10,5%21,5%
🇱🇦 NSSF — quỹ duy nhất SI_LA_NSSF hưu trí + y tế + thai sản + TNLĐLSSO5,5%6%
🇱🇦 Tổng Lào5,5%6%
◧ Nguyên tắc thiết kế: schema không có cột "bhxh/bhyt/bhtn" cứng. Mỗi quỹ là một bản ghi contribution_scheme có hiệu lực theo ngày — VN sinh 5 bản ghi, Lào 1 bản ghi. Nhờ vậy thêm quốc gia mới không phải sửa bảng lương.
⚠ Một số nguồn ghi tổng DN Việt Nam là 22% (biến thể tỷ lệ TNLĐ-BNN theo ngành). Tỷ lệ 0,5% cho phép cấu hình theo ngành nghề — điểm xác minh V-10.
Ví dụ 2026: một người "đụng" cả HAI trần khác nhau
Hồ sơ Ban điều hành — tên che theo quyền · lương đóng BH 120.000.000 ₫ · địa bàn vùng I
QuỹCơ sở trần (ceiling_basis)Trần áp dụngNLĐ đóngDN đóng
Hưu trí – tử tuấtREFERENCE_WAGE × 2046.800.0003.744.0006.552.000
Ốm đau – thai sảnREFERENCE_WAGE × 2046.800.000—1.404.000
TNLĐ – BNNREFERENCE_WAGE × 2046.800.000—234.000
BHYTREFERENCE_WAGE × 2046.800.000702.0001.404.000
BHTNMINIMUM_WAGE_REGION (vùng I) × 20106.200.0001.062.0001.062.000
Tổng trích trên lương 120.000.000 ₫5.508.00010.656.000
◔ Từ 2026 cơ sở tính trần bị tách đôi: BHXH/BHYT theo 20× mức tham chiếu (khái niệm mới thay "mức lương cơ sở"), riêng BHTN theo 20× lương tối thiểu vùng. Vì vậy mỗi quỹ phải có ceiling_basis riêng — không thể dùng một trần chung. Tỷ lệ trích thực tế của người này chỉ còn 4,59% (5.508.000 ∕ 120.000.000) thay vì 10,5%.
⚠ Mức tham chiếu 2.340.000 ₫ là GIẢ ĐỊNH theo mức lương cơ sở hiện hành — giá trị chính thức chờ văn bản hướng dẫn Luật BHXH 2024 (điểm chặn V-09). Sàn đóng = LTTV vùng (floor_basis = MINIMUM_WAGE_REGION, vùng I: 5.310.000 ₫ theo NĐ 293/2025).
🇱🇦 Trần NSSF cứng 4.500.000 ₭
Thu nhập vượt ngưỡng KHÔNG tính đóng
SV
Somchai Vongsa
LA2024-0112 · Kế toán tổng hợp · FOXAI Laos
Lương tháng 3/2026
9.800.000 ₭
Căn cứ đóng NSSF trần cứng
4.500.000 ₭
Phần vượt trần — không tính đóng
5.300.000 ₭
NLĐ đóng 5,5% × 4.500.000
247.500 ₭
DN đóng 6% × 4.500.000
270.000 ₭
Căn cứ đóng chiếm 46% lương thực — đúng case test LA-03
Hạn nộp & kênh kê khai
🇻🇳 Kê khai tăng/giảm/điều chỉnh (D02-LT)
qua IVAN · trong tháng phát sinh
🇻🇳 Nộp tiền BHXH kỳ 03/2026
chậm nhất 31/03/2026
🇱🇦 Bảng kê + nộp NSSF kỳ 03/2026
trước 15/04/2026 · LSSO
🇱🇦 Kênh điện tử
LSSO App — đang triển khai
◧ Pack LA v1.0 xuất file & biểu mẫu theo đúng biểu quy định — LSSO chưa mở API cho doanh nghiệp (NSSO mới tập huấn nộp trực tuyến 6/2026 cùng ILO). Adapter API sẽ bổ sung khi cơ quan công bố chuẩn kết nối.
🇻🇳 Kê khai biến động tháng 03/2026 — TĂNG · GIẢM · ĐIỀU CHỈNH
Mẫu D02-LT · gửi cơ quan BHXH qua IVAN · trạng thái: CHƯA GỬI
LoạiNhân viênHiệu lựcMức đóng cũMức đóng mớiGhi chú nghiệp vụ
TĂNG
BQ
Bùi Anh Quân
NV2026-0512 · CN vận hành
02/03/2026—8.500.000 Tuyển mới, HĐ xác định thời hạn 12 tháng
TĂNG
LT
Lý Thu Trang
NV2026-0513 · NV kho
05/03/2026—7.900.000 Tuyển mới — khác Lan Anh (NV2026-0501): HĐ thử việc riêng chưa thuộc diện đóng
GIẢM
PĐ
Phan Văn Đức
NV2020-0155 · NV kho
01/04/20269.200.000— Nghỉ việc 20/03 → làm ≥ 14 ngày công ⇒ tháng 3 vẫn đóng ĐỦ tháng, báo giảm từ 04/2026
ĐIỀU CHỈNH
PH
Phạm Thu Hằng
NV2026-0412 · CV KD cao cấp
hồi tố 01/01/202622.000.00025.000.000 QĐ-2026/031 nhập 05/03 → hồ sơ điều chỉnh 2 kỳ (01 + 02/2026) · truy đóng NLĐ 630.000 + DN 1.290.000 = 1.920.000 ₫ — khớp truy lĩnh 6tr trên bảng lương
⚠ 8 nhân viên tạm hoãn HĐLĐ không phát sinh đóng kỳ này; 34 nhân viên thử việc sẽ báo TĂNG khi ký HĐLĐ chính thức (Ngô Thị Lan Anh dự kiến 11/04/2026).

Thuế TNCN

Kỳ 03/2026 · VN áp biểu 7 bậc + giảm trừ mới (hai chế độ trong một năm) · LA theo sắc lệnh 06/08/2025
◔ 2026 — hai chế độ thuế trong MỘT năm: giảm trừ gia cảnh mới 15,5tr + 6,2tr/người phụ thuộc (NQ 110/2025/UBTVQH15) áp từ kỳ tính thuế 2026, nhưng biểu 5 bậc chỉ hiệu lực từ 01/07/2026 (Luật 109/2025/QH15). Kỳ 03/2026 này: giảm trừ MỚI + biểu 7 bậc CŨ.
🇻🇳 Tờ khai khấu trừ thuế TNCN — kỳ 03/2026
Mẫu 05/KK-TNCN · khai theo tháng · trạng thái NHÁP
Tổng số người lao động trả thu nhập
912
Số cá nhân có thuế khấu trừ trong kỳ
487
Tổng thu nhập chịu thuế đã trả
18.260.000.000 ₫
Thuế TNCN đã khấu trừ
1.420.000.000 ₫
Hạn nộp tờ khai + tiền thuế
20/04/2026
◧ Ví dụ trong kỳ: Phạm Thu Hằng — giảm trừ 15.500.000 + 2 × 6.200.000 = 27.900.000 ₫, thuế khấu trừ 375.341 ₫ (khớp phiếu lương, đã gồm truy lĩnh 6tr chịu thuế tại kỳ chi trả 03/2026 (nguyên tắc thời điểm chi trả); kỳ gốc chỉ truy thu BH 630.000, không truy thu thuế).
🇻🇳 Quyết toán thuế TNCN năm 2025
Hạn 31/03/2026 — còn 24 ngày · 812/912 NV đủ điều kiện uỷ quyền quyết toán
Nhân viênĐã khấu trừ 2025Thuế theo quyết toánChênh lệchXử lý
PH
Phạm Thu Hằng
NV2026-0412 · uỷ quyền
14.820.00013.956.000−864.000Hoàn / bù trừ kỳ sau
ĐT
Đặng Minh Tú
NV2025-0233 · uỷ quyền
21.480.00021.480.0000Khớp
TL
Trương Mỹ Linh
NV2025-0301 · TN 2 nơi — tự QT
36.250.00038.114.000+1.864.000Nộp thêm — không được uỷ quyền
VL
Vũ Đình Long
NV2021-0077 · uỷ quyền
58.900.00057.360.000−1.540.000Hoàn / bù trừ kỳ sau
PĐ
Phan Văn Đức
NV2020-0155 · nghỉ 20/03 — tự QT
3.120.0002.208.000−912.000NV nghỉ việc — không uỷ quyền được
Cộng 5 hồ sơ134.570.000133.118.000−1.452.000
🇻🇳 Người phụ thuộc — hồ sơ Phạm Thu Hằng
Giảm trừ 6.200.000 ₫/người/tháng · áp TỪ THÁNG đăng ký (case VN-12)
Người phụ thuộcQuan hệMST NPTĐăng kýÁp dụng
Phạm Gia Bảo (2019)Con841235678902/2024từ kỳ 02/2024
Phạm Gia Hân (01/2026)Con873011452205/03/2026từ kỳ 03/2026 — KHÔNG hồi tố 01–02
PĐ
Cấp chứng từ khấu trừ thuế TNCN — Phan Văn Đức
Nghỉ việc 20/03/2026 · thuế đã khấu trừ 01–03/2026: 1.185.000 ₫ · dùng để tự quyết toán tại cơ quan thuế
Chứng từ cấp theo yêu cầu của người lao động — bắt buộc trước khi thanh lý hồ sơ offboarding.
⚠ Ngưỡng miễn thuế Lào MỚI 2.500.000 ₭ (sắc lệnh 06/08/2025) — chờ bản gốc Bộ Tài chính (V-01/V-02). Nhiều nguồn thứ cấp, kể cả hãng tư vấn cập nhật 5/2026, vẫn đăng ngưỡng CŨ 1.300.000 ₭ — bằng chứng trực tiếp cho rủi ro R1!
🇱🇦 Kê khai PIT tháng 03/2026
Nộp trước ngày 15 tháng sau · kênh TaxRIS / Smart Tax
Số NLĐ trả thu nhập
372
Số NLĐ dưới ngưỡng miễn (thuế = 0)
118
Thuế PIT khấu trừ kỳ 03/2026
96.480.000 ₭
Hạn nộp
15/04/2026 · TaxRIS
Khoản giảm trừ cá nhân
rất ít — bậc áp trên TN sau NSSF
🇱🇦 Ví dụ tính thuế — pack LA-2026.07 (DRAFT)
Thu nhập tính thuế = lương − NSSF · luỹ tiến từng phần
Trường hợpTN sau NSSFThuếDiễn giải
Ví dụ chính thức (case LA-02)6.000.000225.0002,5tr miễn + 2,5tr×5% + 1tr×10%
KS
Khamphan Sisouk
LA2025-0090 · LĐ phổ thông
2.362.5000Dưới ngưỡng miễn 2,5tr → net 2.362.500 ₭ (case LA-04)
SV
Somchai Vongsa
LA2024-0112 · Kế toán TH
9.552.500580.250125.000 + 4.552.500 × 10% bậc >5tr GIẢ ĐỊNH — chờ V-01
Bậc PIT_LA (DRAFT)Thu nhập/tháng (₭)Thuế suất
1đến 2.500.0000%
22.500.000 – 5.000.0005%
35.000.000 – …10%
…chờ bảng bậc đầy đủ từ văn bản gốc…
Cao nhấttrên 65.000.00025%
⚠ V-01 CHẶN PHÁT HÀNH: bảng bậc đầy đủ phải lấy từ bản gốc Bộ Tài chính Lào. Pack LA-2026.07 giữ trạng thái DRAFT — kỳ 03/2026 vẫn tính theo pack PUBLISHED LA-2024.10.

Country Pack — quản trị tuân thủ

Luật là DỮ LIỆU có phiên bản, không phải code · "Không deploy code. Không sửa công thức. Chỉ thêm dữ liệu."
Quy trình phát hành — VN-2026.07 (biểu thuế 5 bậc) đang ở bước REVIEW
SLA: PUBLISHED trước ngày hiệu lực ≥ 10 ngày làm việc → hạn chót 17/06/2026 (hiệu lực 01/07/2026)
✓DRAFT
✓NHẬP THAM SỐ + legal_basis
✓TEST HỒI QUY 12/12
◔REVIEW 2 NGƯỜI — VĂN BẢN GỐC
5PUBLISHED (valid_from = 01/07/2026)
Người nhập tham số
Trương Mỹ Linh
Review 1 — đối chiếu Luật 109/2025
Vũ Đình Long ✓ 05/03
Review 2 — đối chiếu NĐ 253/2026
đang chờ cố vấn pháp lý
Nguyên tắc 2 người kiểm tra chéo: người nhập ≠ người review — mọi thay đổi tham số phải có 2 người xác nhận với văn bản gốc.
◧ Bản PUBLISHED là bất biến — không ai sửa được. Muốn thay đổi: tạo version mới, chạy lại test, review lại. Bản cũ giữ nguyên để tính truy lĩnh đúng luật tại thời điểm phát sinh.
🇻🇳 Dòng phiên bản pack Việt Nam
rate_table · statutory_constant · contribution_scheme · wage_floor…
01/07/2025 · VN-2025.07 PUBLISHED — hết vai trò chính
Luật BHXH 2024 có hiệu lực
Vẫn được engine dùng khi tính truy lĩnh các kỳ ≤ 12/2025.
01/01/2026 · VN-2026.01 PUBLISHED — ĐANG ÁP DỤNG · KHOÁ SỬA
LTTV mới + giảm trừ gia cảnh mới
legal_basis: NĐ 293/2025/NĐ-CP (vùng I 5.310.000, +350.000) · NQ 110/2025/UBTVQH15 (15,5tr / 6,2tr) · Luật Việc làm 2025. Vùng II–IV chờ điền từ văn bản gốc (V-06), địa bàn vùng sau sáp nhập hành chính (V-07).
01/07/2026 · VN-2026.07 DRAFT — REVIEW
Biểu thuế TNCN 5 bậc
legal_basis: Luật 109/2025/QH15 · NĐ 253/2026, NĐ 252/2026 · TT 87/2026/TT-BTC. Kèm: miễn thuế tiền OT thay đổi (V-08 — taxable_expr khả năng PARTIAL), giảm trừ y tế – giáo dục mới (V-12).
🇱🇦 Dòng phiên bản pack Lào
Theo dõi: Công báo Lào · Bộ Tài chính · LSSO · KPL · Laotian Times
01/10/2024 · LA-2024.10 PUBLISHED — ĐANG ÁP DỤNG · KHOÁ SỬA
Lương tối thiểu 2.500.000 ₭ + phụ cấp sinh hoạt
legal_basis: Thông báo 3534/MLSW — phụ cấp sinh hoạt tối đa 900.000 ₭ CHỈ cho lao động phổ thông chưa qua đào tạo lương dưới 2,5tr (vì vậy education_level.is_trained là trường bắt buộc).
~01/07/2026 · LA-2026.07 DRAFT — CHẶN bởi V-01/V-02
Nâng ngưỡng miễn PIT lên 2.500.000 ₭
legal_basis: Sắc lệnh Chủ tịch nước 06/08/2025. Chờ bảng bậc đầy đủ + ngày hiệu lực chính xác từ bản gốc (báo chí 30/06/2026 mới nói "hiệu lực trong tháng").
2026 · LA-2026.xx CHUẨN BỊ SẴN
Lương tối thiểu mới — đang đàm phán 19/03/2026
Công đoàn đề xuất 4,1tr · Bộ LĐ 2.710.451 + 900.000 phụ cấp · giới chủ 2.831.680 tổng. Đã đặt cảnh báo theo dõi để phát hành nhanh khi Văn phòng Thủ tướng công bố (V-04).
🇻🇳 Diff VN-2026.01 → VN-2026.07: biểu thuế 7 bậc → 5 bậc
rate_table PIT_VN · thu nhập tính thuế/tháng · bậc 15% và 25% bị bỏ, ngưỡng nới rộng
#Biểu 7 bậc (đến 30/06/2026)SuấtBiểu 5 bậc (từ 01/07/2026)Suất
1Đến 5 triệu5%Đến 10 triệu5%
2Trên 5 – 10 triệu10%Trên 10 – 30 triệu10%
3Trên 10 – 18 triệu15%Trên 30 – 60 triệu20%
4Trên 18 – 32 triệu20%Trên 60 – 100 triệu30%
5Trên 32 – 52 triệu25%Trên 100 triệu35%
6Trên 52 – 80 triệu30%——
7Trên 80 triệu35%——
Bộ test hồi quy — pack không PASS đủ thì KHÔNG được PUBLISHED
VN-2026.07: 12/12 PASS · LA-2026.07: 12/13 (1 chờ V-01)
🇻🇳 VN 12 🇱🇦 LA 13
12 điểm PHẢI xác minh trước khi phát hành pack
Nguồn thứ cấp chỉ để phát hiện thay đổi — tham số phải theo văn bản gốc

Báo cáo hợp nhất VN + LA

Kỳ 03/2026 · FOXAI Việt Nam (VND) + FOXAI Laos Co., Ltd (LAK) · quy đổi theo tỷ giá ĐÓNG BĂNG của kỳ
Net hợp nhất
18,98 tỷ ₫
15,71 tỷ ₫ + 3,27 tỷ ₫ quy đổi
Headcount hợp nhất
1.284 người
912 🇻🇳 + 372 🇱🇦
Chi phí DN hợp nhất
26,65 tỷ ₫
22,60 tỷ ₫ + 4,05 tỷ ₫ quy đổi
Tỷ giá kỳ (đóng băng)
1,15 ₫/₭
25/03/2026 · COMMERCIAL_BANK · BCEL
Quỹ lương 2 pháp nhân — kỳ 03/2026
Nguyên tệ giữ nguyên · cột quy đổi chỉ phục vụ hợp nhất
Pháp nhânHCCông chuẩnNet (nguyên tệ)Quy đổi ₫ (×1,15)
🇻🇳 FOXAI Việt Nam
pack VN-2026.01 · nghỉ T7+CN
9122215.710.000.000 ₫15.710.000.000
🇱🇦 FOXAI Laos Co., Ltd
pack LA-2024.10 · chỉ nghỉ CN · trả lương bắt buộc LAK
372262.840.000.000 ₭3.266.000.000
Hợp nhất1.28418.976.000.000 ₫
Net bình quân/người 🇻🇳
17.225.877 ₫
Net bình quân/người 🇱🇦
7.634.409 ₭ (≈ 8.779.570 ₫)
Chi phí DN 🇻🇳 / 🇱🇦
22,60 tỷ ₫ / 3,52 tỷ ₭
Snapshot tỷ giá kỳ 03/2026
bảng exchange_rate → đóng băng vào payroll_period
rate (LAK → VND)
1,1500000000
rate_date
25/03/2026
rate_type
COMMERCIAL_BANK
source
BCEL
fx_rate_date so với ngày chi lương 05/04
trong vòng 3 ngày làm việc của kỳ trả ✓
⚠ Luật Lào CẤM tỷ giá lịch sử ghi trong hợp đồng — phải dùng tỷ giá ngân hàng thương mại tại kỳ trả (case LA-12: HĐ ghi USD vẫn quy đổi LAK, đóng băng ngày). payroll_period.fx_rate_date là trường bắt buộc với pháp nhân Lào.
◔ Rủi ro R6 — biến động tỷ giá LAK: báo cáo hợp nhất luôn đọc tỷ giá từ snapshot đóng băng theo kỳ, không lấy tỷ giá hiện hành. Mở lại báo cáo kỳ 03/2026 vào năm sau vẫn ra đúng 18,98 tỷ ₫ — con số không "trôi" theo thị trường.
Chi phí doanh nghiệp theo đơn vị — 2 nước trên cùng một trục (quy đổi ₫)
VN màu ngọc · LA màu tím kíp · tổng khớp 22,60 tỷ ₫ + 4,05 tỷ ₫ = 26,65 tỷ ₫
🇻🇳 Khối Sản xuất
9,84 tỷ ₫
🇻🇳 Khối Kinh doanh
5,12 tỷ ₫
🇻🇳 Khối Kỹ thuật
4,37 tỷ ₫
🇻🇳 Back-office
3,27 tỷ ₫
🇱🇦 Nhà máy Vientiane
2,53 tỷ ₫ (2,20 tỷ ₭)
🇱🇦 Kho & Logistics
0,92 tỷ ₫ (0,80 tỷ ₭)
🇱🇦 Văn phòng LA
0,60 tỷ ₫ (0,52 tỷ ₭)
■ FOXAI Việt Nam — 22,60 tỷ ₫■ FOXAI Laos — 3,52 tỷ ₭ × 1,15 = 4,05 tỷ ₫
Đối chiếu chỉ tiêu pháp định VN – LA
Hai quốc gia cạnh nhau — lý do phải thiết kế bằng tham số, không hard-code
Hạng mục🇻🇳 Việt Nam🇱🇦 LàoTác động thiết kế
Công chuẩn kỳ 03/202622 ngày (nghỉ T7 + CN)26 ngày (chỉ nghỉ CN)work_calendar theo pháp nhân
Tuần làm việc48h (khuyến khích 40h) / 5 ngày48h / 6 ngàyCấu hình pháp nhân
Trần OT tháng40h (200h/năm, 300h ngành đặc thù)45h V-03: nguồn khác ghi 30hworking_time_rule
Hệ số OT150 / 200 / 300% · đêm +30% · OT đêm +20%1,5 / 2,5 / 3× · ca đêm +15% mọi lúctime_bucket chế độ ADDITIVE
Số quỹ bảo hiểm5 quỹ tách biệt1 quỹ NSSFcontribution_scheme trừu tượng
Tỷ lệ NLĐ / DN10,5% / 21,5%5,5% / 6%Tham số theo pack
Cơ sở trần đóngTách đôi: mức tham chiếu + LTTVTrần cứng 4,5tr ₭ceiling_basis từng quỹ
Phép năm12 ngày + 1/5 năm thâm niên15 ngày (18 nghề rủi ro)leave_accrual_rule
Ngày lễ11 ngày, đồng đều~9 ngày, có điều kiện cá nhân (08/03 chỉ nữ; QK nước ngoài)eligibility_expr
Lương tối thiểu4 vùng (vùng I: 5.310.000 ₫)Toàn quốc 2,5tr ₭ + phụ cấp sinh hoạt có điều kiệnwage_floor + eligibility
Đồng tiền trả lươngVNDBắt buộc LAK — tỷ giá NHTM trong 3 ngàyfx_rate_date bắt buộc
Nộp hồ sơ điện tửIVAN + thuế điện tửTaxRIS · LSSO App đang triển khaiAdapter khác nhau, LA v1 xuất file

Tài khoản & Danh tính

Tách bạch PERSON — IDENTITY — EMPLOYEE · 1.284 nhân sự · 1.093 tài khoản đăng nhập · 4 tài khoản dịch vụ
Mô hình 3 khái niệm — vì sao không gộp "nhân viên" với "tài khoản"
PERSON · Con người
Danh tính duy nhất, tồn tại độc lập với việc làm và tài khoản
Nguyễn Văn Tùng
QT Việt Nam · Hộ chiếu C9****31
1 : N ──────▶
1 : N ──────▶
IDENTITY · Tài khoản đăng nhập
Có thể = 0 (công nhân kiosk) hoặc không gắn Person (SERVICE)
tung.nguyen ACTIVE HUMAN
EMPLOYEE · Quan hệ lao động
Thuộc đúng 1 pháp nhân tại 1 thời điểm — có lịch sử
NV2019-0102 FOXAI Việt Nam · kết thúc 31/08/2024
LA2024-0055 FOXAI Laos Co., Ltd · đang hiệu lực
◈ Một con người (Tùng) → 1 identity đăng nhập duy nhất → 2 employee ở 2 pháp nhân. Chuyển từ VN sang Lào không tạo hồ sơ mới, không mất lịch sử thâm niên.
5 tình huống buộc phải tách
nếu gộp Person = Identity = Employee thì bế tắc
Tình huốngNếu gộpNếu táchVí dụ thực tế
Nghỉ việc rồi quay lạiHồ sơ mới → mất lịch sửCùng Person, thêm Employee mớiPhan Văn Đức (nếu tái tuyển)
Làm ở 2 pháp nhân VN + LàoKhông xử lý được1 Person → 2 EmployeeNguyễn Văn Tùng
Kế toán thuê ngoài truy cậpPhải tạo "nhân viên ảo"Identity không cần Employeekt-ngoai (PARTNER)
Công nhân không emailTài khoản rácEmployee không cần IdentityTrần Quốc Bảo
Xem phiếu lương sau nghỉ việcKhóa tài khoản là mất quyềnIdentity sống, quyền thu hẹp (ALUMNI)Phan Văn Đức
Vòng đời tài khoản
khoá sau 5 lần sai mật khẩu · tự mở sau 15 phút · DISABLED không bao giờ xoá
INVITED lời mời hết hạn 7 ngày
──(kích hoạt)──▶
ACTIVE đăng nhập bình thường
⇄ sai mật khẩu 5 lần
◀ hết 15 phút / admin mở
LOCKED locked_until = +15 phút
──(nghỉ việc / admin)──▶
DISABLED không xoá — giữ truy vết lịch sử thao tác
⚠ Nhân viên nghỉ việc: tài khoản chuyển vai trò ALUMNI (chỉ xem phiếu lương & giấy tờ của mình trong 60 tháng — theo thiết lập lưu trữ của tenant), sau đó mới DISABLED. INVITED hết hạn lời mời cũng rơi về DISABLED.
Danh sách tài khoản & định danh
Tất cả · 11HUMANSERVICEPARTNER
Có cờ cảnh báo MFA bắt buộc
Người / định danhĐăng nhậpLoạiVai trò P · I · ETrạng tháiMFAHoạt động gần nhất
Phạm Thu Hằng
NV2026-0412 · CV KD cao cấp · G5
hang.pham HUMAN EMPLOYEE
+ nhận uỷ quyền duyệt 16–20/03 (từ Vũ Đình Long)
PIE ACTIVE — không bắt buộc Mobile · 07/03 08:56
xem phiếu lương của mình → đã ghi access log
Trương Mỹ Linh
NV2025-0301 · Kế toán trưởng
linh.truong HUMAN PAYROLL_APPROVER · ACCOUNTANT PIE ACTIVE ✓ MFA · TOTP
bắt buộc với KTT
Web · 07/03 07:40
Đỗ Thu Trang
NV2022-0198 · Chuyên viên C&B
trang.do HUMAN CB_SPECIALIST PIE ACTIVE ✓ MFA · TOTP
bắt buộc với C&B
Web · 06/03 16:44
sửa công thức — có ghi audit
Vũ Đình Long
NV2021-0077 · Trưởng phòng KD · G7
long.vu HUMAN MANAGER
− uỷ quyền duyệt cho Hằng 16–20/03 · công tác Viêng Chăn
PIE ACTIVE ✓ tự nguyện
khuyến nghị cấp quản lý
Mobile · 06/03 21:18
Lê Hồng Nhung
Công ty Kiểm toán AACS — thuê ngoài
kt-ngoai PARTNER ACCOUNTANT (phạm vi giới hạn: báo cáo tổng hợp) PIE ACTIVE ⚠ cờ truy cập bất thường 06/03 — Web · 06/03 14:58
xem lương 47 người/giờ → xem Nhật ký
Trần Quốc Bảo
NV2024-0089 · CN bậc 4 · ca kíp
KHÔNG IDENTITY
chấm công kiosk: mã NV + PIN
— — (không đăng nhập) PIE — không có tài khoản — Kiosk · 07/03 06:31
vào ca OT thứ Bảy
⚙
svc-integration
Đồng bộ máy chấm công · person_id = NULL
ak_live_7f2•••c9
API key — không có mật khẩu
SERVICE time.punch.import hr.employee.view
phạm vi giới hạn, chỉ đọc + ghi punch
PIE ACTIVE n/a API · 07/03 06:30
đồng bộ 1.284 punch / 14 máy
Phan Văn Đức
NV2020-0155 · NV kho VN
duc.phan HUMAN EMPLOYEE → ALUMNI từ 21/03/2026
xem phiếu lương & giấy tờ của mình đến 20/03/2031 (60 tháng)
PIE ACTIVE nghỉ việc 20/03 — Web · 05/03 17:02
Nguyễn Văn Tùng
LA2024-0055 · người VN làm tại Lào
tung.nguyen HUMAN EMPLOYEE PIEE ACTIVE 1 người · 2 employee — Mobile · 06/03 19:44 (locale vi)
Bounmy Keo
LA2025-0078 · NV kho LA
+856 20 55 234 118
đăng nhập bằng SĐT + SMS OTP
HUMAN EMPLOYEE PIE ACTIVE — Mobile · 05/03 07:12 (locale lo)
Lê Văn Hùng
NV2023-0455 · Tổ trưởng chuyền BN
hung.le HUMAN MANAGER PIE LOCKED
sai mật khẩu lần 5 lúc 08:47 · tự mở 09:02
— failed_attempts = 5
Ngô Thị Lan Anh
NV2026-0501 · NV nội dung · thử việc 85%
lananh.ngo HUMAN EMPLOYEE PIE INVITED
gửi 05/03 · lời mời hết hạn 12/03
— chưa kích hoạt
Phiên làm việc theo kênh
TTL cấu hình cấp tenant
Thông sốWebMobileKiosk
Access token TTL15 phút15 phút5 phút
Refresh token TTL8 giờ30 ngày12 giờ
Đồng thời nhiều thiết bị✓ Có✓ Có✗ Không
Thu hồi phiên từ xa✓ Có✓ Có✓ Có
■ Bắt buộc: khi đổi mật khẩu, thay đổi vai trò, hoặc nghỉ việc → thu hồi toàn bộ refresh token của identity đó ngay lập tức.
Chính sách mật khẩu & xác thực
cấu hình theo tenant · hash Argon2id
Độ dài tối thiểu · chữ hoa · chữ số8 ký tự · bắt buộc · bắt buộc
Ký tự đặc biệtTắt — gây khó cho công nhân
Cấm mật khẩu phổ biến · chứa tên/ngày sinh/mã NV✓ Bật cả hai
Không dùng lại mật khẩu gần nhất3 lần
Bắt đổi định kỳKhông (max_age_days = 0, khuyến nghị hiện đại)
Khoá tài khoảnsai 5 lần → khoá 15 phút
HashArgon2id — cấm MD5/SHA1/bcrypt cost thấp
Username + mật khẩuEmail OTP SMS OTP — bắt buộc thị trường Lào 🇱🇦 Mã NV + PIN (kiosk)SSO SAML/OIDC API key (service)Sinh trắc học (mobile)

Vai trò & Phân quyền

Mô hình lai RBAC + ABAC + quyền cấp trường · 13 vai trò seed sẵn cho mọi tenant mới
QUYỀN = QUYỀN CHỨC NĂNG (RBAC) ∩ PHẠM VI DỮ LIỆU (ABAC) ∩ QUYỀN CẤP TRƯỜNG
"được xem bảng lương" ∩ "của pháp nhân FOXAI Việt Nam, cấp bậc dưới G6" ∩ "trừ cột số tài khoản ngân hàng" — câu hỏi thực tế của HRM luôn là ai được xem lương của ai, không chỉ ai được vào màn hình nào.
13 vai trò mặc định (seed khi tạo tenant)
bấm để xem chi tiết
MãTênPhạm vi mặc định
EMPLOYEENhân viênSELF
MANAGERQuản lý trực tiếpDIRECT_REPORTS
DEPT_HEADTrưởng đơn vịTEAM_TREE
HR_SPECIALISTChuyên viên HRLEGAL_ENTITY
HR_MANAGERTrưởng phòng HRLEGAL_ENTITY
CB_SPECIALIST ◀Chuyên viên C&BLEGAL_ENTITY JOB_GRADE_BELOW
PAYROLL_APPROVERNgười duyệt lươngLEGAL_ENTITY
ACCOUNTANTKế toánLEGAL_ENTITY
EXECUTIVEBan giám đốcALL
SYS_ADMINQuản trị hệ thốngALL không xem lương
AUDITORKiểm toánALL chỉ đọc
PARTNER_IMPLĐối tác triển khaiALL dữ liệu ẩn danh
ALUMNICựu nhân viênSELF giới hạn thời gian
Chiều 1 — Quyền chức năng · CB_SPECIALIST
2 người đang giữ: trang.do, +1
PermissionÝ nghĩaCấp
hr.employee.viewXem hồ sơ nhân sự✓
payroll.period.createTạo kỳ lương✓
payroll.run.executeChạy tính lương✓
payroll.component.configCấu hình khoản lương✓
payroll.formula.editSửa công thức (bắt buộc ghi lý do)✓
payroll.payslip.viewXem phiếu lương✓
statutory.declare.submitNộp kê khai BHXH / thuế✓
report.build · report.exportBáo cáo (xuất hàng loạt → ghi log)✓
payroll.approve Duyệt bảng lương — SoD: người tạo bảng lương không được duyệt cuối. Ràng buộc cứng tầng lõi, không cấu hình tắt được. ✗ khoá
payroll.disburseChi trả lương (thuộc ACCOUNTANT)✗
time.timesheet.approveDuyệt bảng công (thuộc MANAGER)✗
system.role.manageQuản lý phân quyền (thuộc SYS_ADMIN)✗
Chiều 2 — Phạm vi dữ liệu của CB_SPECIALIST
role_scope #1 → LEGAL_ENTITY {"entity_ids":["FOXAI Việt Nam"]} ∩ role_scope #2 → JOB_GRADE_BELOW {"max_grade":"G6"}
⚠ JOB_GRADE_BELOW là bắt buộc thực tế: C&B / trưởng phòng nhân sự thường không được xem lương ban giám đốc. Hệ quả trên dữ liệu thật: Phạm Thu Hằng (G5) → thấy; Vũ Đình Long (G7, vượt max G6) → bị ẩn khỏi mọi danh sách lương.
Thử truy vấn: bảng lương kỳ 03/2026 · FOXAI Việt Nam912 hồ sơ → trả về 887 (25 hồ sơ ≥ G6 bị lọc)
Thử truy vấn: FOXAI Laos Co., Ltd0 hồ sơ — ngoài entity_ids
9 loại scope_type
bảng role_scope · scope_value dạng JSONB
scope_typeÝ nghĩaVí dụ scope_value
SELFChỉ bản thân—
DIRECT_REPORTSNV báo cáo trực tiếp—
TEAM_TREEToàn bộ cây bên dưới{"depth": null}
ORG_UNITĐơn vị chỉ định{"unit_ids": […]}
LEGAL_ENTITYPháp nhân chỉ định{"entity_ids": […]}
COUNTRYToàn bộ một quốc gia{"countries": ["VN"]}
JOB_GRADE_BELOWChỉ cấp bậc thấp hơn mình{"max_grade": "G6"}
ALLToàn tenant—
CUSTOMBiểu thức (L3){"expr":"EMP('cost_center') IN […]"}
Chiều 3 — Quyền cấp trường (field-level)
áp dụng kể cả khi đã có quyền xem bản ghi · MASKED = 0123****89 · RANGE = khoảng lương thay vì số chính xác
field_pathMANAGERDEPT_HEADCB_SPECIALISTSYS_ADMINAUDITOR
person.national_idMASKEDMASKEDFULLMASKEDMASKED
person.date_of_birthFULLFULLFULLMASKEDMASKED
employee.bank_accountHIDDENHIDDENMASKEDHIDDENMASKED
employee.salary ◀ xem ví dụ bên dướiHIDDENRANGEFULLHIDDEN ★FULL chỉ đọc
payslip.net_payHIDDENHIDDENFULLHIDDENFULL
person.health_infoHIDDENHIDDENHIDDENHIDDENHIDDEN
★ SYS_ADMIN không xem được lương — tách quản trị kỹ thuật khỏi dữ liệu nhạy cảm là nguyên tắc kiểm soát nội bộ cơ bản. Khách hàng muốn gộp? Phải chủ động gán thêm vai trò — và thao tác gán đó để lại dấu vết trong audit log (hành động bắt buộc ghi lý do).
Cùng một dòng dữ liệu — ba vai trò nhìn thấy ba kiểu
CB_SPECIALIST · FULL
Phạm Thu Hằng
NV2026-0412 · G5
25.000.000 ₫ STK VCB: 9704 22** **91 55 (MASKED)
DEPT_HEAD · RANGE
Phạm Thu Hằng
NV2026-0412 · G5
20 – 30 triệu (dải G5) STK: •••••••••• (HIDDEN)
MANAGER · HIDDEN
Phạm Thu Hằng
NV2026-0412 · G5
●●●●●●●●
Ủy quyền tạm thời (delegation)
quản lý đi công tác, nghỉ phép là chuyện thường ngày — bắt buộc có
MãTừ → ĐếnPhạm vi được ủyHiệu lựcLý doTrạng thái
UQ-2026/012 Vũ Đình Long → Phạm Thu Hằng leave.request.approve time.timesheet.approve
chỉ duyệt đơn nghỉ + bảng công — KHÔNG kèm quyền xem lương
16/03 00:00 → 20/03 23:59 Công tác Viêng Chăn SCHEDULED
UQ-2026/007 Vũ Đình Long → Phạm Thu Hằng leave.request.approve 10/02 → 14/02 Nghỉ phép EXPIRED
■ Quy tắc: mọi hành động thực hiện qua ủy quyền phải ghi nhật ký cả hai danh tính — người thực hiện và người ủy quyền (xem ví dụ 12/02 trong Nhật ký & Kiểm toán).

Nhật ký & Kiểm toán

Ba loại nhật ký tách riêng — thời hạn lưu và người xem khác nhau · bảng chỉ INSERT
⚠ Cảnh báo đang mở: tài khoản kt-ngoai (đối tác kiểm toán AACS) xem lương 47 người trong 1 giờ — vượt ngưỡng 20 người/giờ → đã tự động báo SysAdmin + Auditor lúc 06/03 14:58.
Audit Log — thay đổi dữ liệu lưu ≥ 7 năm
Access Log — đọc dữ liệu nhạy cảm lưu ≥ 2 năm
System Log — kỹ thuật lưu 90 ngày
Audit log — ai sửa gì, giá trị trước/sau
người xem: Auditor, SysAdmin
Thời điểmNgười thao tácHành động · Đối tượngThay đổi / Lý docorrelation
06/03 16:44:07
trang.do
CV C&B
UPDATE
payroll.formula · ALW_ATTENDANCE
IF(days_late=0, 500000, 0)
IF(AND(days_late=0, days_leave<=1), 500000, 0)
§ Lý do (bắt buộc): "QĐ 12/QĐ-FOX 01/03 — siết điều kiện thưởng chuyên cần"
8c41-77af
06/03 16:44:07
trang.do
CV C&B
UPDATE
payroll.formula · DED_LATE
Đổi mức trừ đi muộn theo cùng QĐ 12/QĐ-FOX — cùng correlation_id: 2 thay đổi trong 1 giao dịch được gom nhóm để truy vết trọn gói 8c41-77af
05/03 09:12:31
trang.do
CV C&B
UPDATE
employee_salary · NV2026-0412
22.000.000 → 25.000.000 · valid_from 01/01/2026 (hồi tố, QĐ-2026/031)
Bitemporal: đóng bản ghi cũ (recorded_to = now), chèn bản ghi mới — không UPDATE đè. Truy lĩnh 6.000.000 ₫ (3.000.000 × 2 tháng) tính vào kỳ 03/2026.
5510-1b2e
06/03 08:40
somchay.ktt
Kế toán trưởng (LA)
REOPEN
payroll.period · 02/2026 🇱🇦
PAID → REOPENED · run 1 → 2 (OFF_CYCLE)
§ Lý do (bắt buộc, không nhập không lưu được): "2 dòng lỗi BCEL sai số TK + bổ sung giấy bác sĩ Bounmy Keo"
c2d8-90e1
12/02 09:31:02
hang.pham
thừa ủy quyền long.vu · UQ-2026/007
ghi CẢ HAI danh tính
APPROVE
leave.request · NV2025-0233
Duyệt đơn nghỉ phép Đặng Minh Tú qua ủy quyền — trường on_behalf_of = long.vu bắt buộc khác NULL khi hành động qua delegation 77aa-3f02
03/03 08:20:15
long.vu
Trưởng phòng KD
APPROVE
time.punch_adjust · NV2024-0310
Duyệt điều chỉnh quên chấm ra 02/03 của Hoàng Thị Ngọc. Punch gốc bất biến — chỉ INSERT bản ghi điều chỉnh mới kèm lý do + người duyệt, bản gốc giữ nguyên. 1f9c-44d7
02/03 11:02:58
khoa.tran
SYS_ADMIN
UPDATE
role_assignment · kt-ngoai
Gán vai trò ACCOUNTANT (phạm vi: chỉ báo cáo tổng hợp) cho đối tác AACS. § Lý do (bắt buộc — thay đổi phân quyền): "HĐ kiểm toán số 04/2026/AACS" b3e0-6c55
6 hành động BẮT BUỘC ghi lý do
không có reason → giao dịch bị từ chối
✓
Điều chỉnh dữ liệu chấm công
ví dụ dòng 03/03 — Hoàng Thị Ngọc
✓
Điều chỉnh quỹ phép
✓
Mở lại kỳ lương đã chốt
ví dụ dòng 06/03 — kỳ 02/2026 🇱🇦 REOPENED
✓
Sửa công thức lương
ví dụ dòng 06/03 — ALW_ATTENDANCE
✓
Xuất dữ liệu hàng loạt
✓
Thay đổi phân quyền
ví dụ dòng 02/03 — gán vai trò kt-ngoai
■ Bất biến của nhật ký
Bảng nhật ký chỉ cho INSERT. Quyền UPDATE/DELETE bị thu hồi ở cấp database, kể cả với tài khoản ứng dụng. Khách hàng yêu cầu kiểm toán chặt → sao lưu sang lưu trữ WORM (ghi một lần).

Thiết lập 4 cấp

PLATFORM → TENANT → LEGAL ENTITY → ORG UNIT · cấp dưới ghi đè cấp trên · mọi thiết lập có hiệu lực theo ngày
Tenant: FOXAI Group · gói PROFESSIONAL · cô lập SHARED + RLS
Chuỗi kế thừa & ghi đè
ví dụ sống: bán kính GPS chấm công
PLATFORM chỉ nhà cung cấp sửa
Gói dịch vụ · phát hành country pack · lịch bảo trì · rate limit · giới hạn xuất bản ghi
time.gps_radius_m = 300 (mặc định nền tảng)
▼ cấp dưới ghi đè
TENANT · FOXAI Group
time.gps_radius_m = 200 ghi đè · cấm chấm công hộ · chốt công 25 · trả lương 05
▼
ENTITY · FOXAI Laos Co., Ltd 🇱🇦
time.gps_radius_m — kế thừa 200 (không ghi đè) · nhưng tiền tệ, tuần làm việc, pack… bắt buộc đặt ở cấp này (bảng bên dưới)
▼
ORG UNIT · Kho Viêng Chăn
time.gps_radius_m = 300 ghi đè — bãi xe rộng, sóng GPS yếu; giá trị hiệu lực cuối cùng cho nhân viên kho
Thiết lập cấp Tenant tiêu biểu
bảng setting · key dạng chấm · giá trị JSONB
KhoáGiá trịGhi chú nghiệp vụ
hr.employee_code_ruleNV{YYYY}-{####}sinh ra NV2026-0412 (Hằng), NV2024-0089 (Bảo)…
hr.contract_no_ruleHĐ-{PN}/{YYYY}-{###}PN = mã pháp nhân (VN/LA/TV) — sinh ra HĐ-VN/2026-0412; số tự tăng theo năm
time.gps_radius_m200bị ORG_UNIT Kho Viêng Chăn ghi đè 300
time.punch_by_proxyfalsecấm chấm công hộ
time.sourcesMÁY·GPS·WiFi·QR·KHUÔN MẶTnguồn chấm công cho phép
leave.year_basisCALENDARnăm phép theo năm dương lịch
payroll.cutoff_day25 → 20 (từ 01/07/2026)xem cách áp dụng hiệu lực theo ngày bên dưới ▼
payroll.payday05phong toả deploy bám theo: 22/03 → 07/04
payroll.net_contracttruecho phép HĐ lương NET — Trương Mỹ Linh NET 30tr (gross-up)
payroll.payslip_visible_rolesSELF + CB + APPROVER"ai được xem lương" — quản lý trực tiếp KHÔNG có
security.mfa_required_rolesSYS_ADMIN·CB·KTTkhớp badge MFA ở màn Tài khoản
retention.after_termination60 thángPhan Văn Đức xem phiếu lương ALUMNI đến 20/03/2031
Hiệu lực theo ngày — đổi ngày chốt công 25 → 20
hai bản ghi nối nhau trong bảng setting, không sửa đè
keyvaluevalid_fromvalid_toupdated_by
payroll.cutoff_day2501/01/202430/06/2026 (được đóng lại)khoa.tran · 05/03/2026
payroll.cutoff_day2001/07/20269999-12-31khoa.tran · 05/03/2026
Kỳ 03/2026 → 06/2026
Chốt công ngày 25
Bản ghi cũ vẫn hiệu lực — kỳ lương tháng 6 vẫn dùng ngày 25 dù thiết lập mới đã được nhập từ 05/03.
Từ kỳ 07/2026
Chốt công ngày 20
Bản ghi mới tự kích hoạt theo valid_from — không cần ai "bấm nút" vào đêm 30/06.
■ Nguyên tắc chung của toàn hệ thống: thiết lập, danh mục, lương, cơ cấu tổ chức… đều có valid_from / valid_to. Báo cáo kỳ 3 phải phản ánh cấu hình của kỳ 3, kể cả khi chạy lại vào tháng 8.
Thiết lập cấp Legal Entity — 🇻🇳 đặt cạnh 🇱🇦
những thứ bắt buộc ở cấp pháp nhân vì khác nhau giữa hai nước
Thiết lậpFOXAI Việt Nam 🇻🇳FOXAI Laos Co., Ltd 🇱🇦
Country pack đang áp VN-2026.01 · PUBLISHED biểu thuế 7 bậc (5 bậc chỉ từ pack VN-2026.07) LA-2024.10 · PUBLISHED LA-2026.07 · DRAFT — cần xác minh văn bản gốc V-01/V-02
Đồng tiền chức năngVND ₫LAK ₭ — luật buộc trả bằng LAK, tỷ giá NHTM đóng băng vào snapshot kỳ: 25/03/2026 · 1 ₭ = 1,15 ₫ (BCEL)
Múi giờAsia/Ho_Chi_MinhAsia/Vientiane
Tuần làm việc chuẩn5 ngày (nghỉ T7 + CN)6 ngày (chỉ nghỉ CN)
Giờ chuẩn / tuần4048
Công chuẩn tháng 3/2026 (01/03 là Chủ nhật) 22 công — 31 ngày − 5 CN (1,8,15,22,29) − 4 T7 (7,14,21,28) 26 công — 31 ngày − 5 CN
Mã đơn vị BHXH / LSSOBHXH: TB 0421 889LSSO: VTE-04-412
Mã số thuếMST 0104 987 654TIN 500 123 456-7-00
Ngôn ngữ phiếu lươngvilo + en — font Noto Sans Lao nhúng PDF, dấu chồng nhiều tầng cần chiều cao dòng +30%
Lịch lễ pháp định 2026 11 ngày ~9 ngày có điều kiện: 08/03 chỉ nữ (Khamla Phommachanh nghỉ, đồng nghiệp nam không); 02/09 quốc khánh nước mình cho người nước ngoài (Nguyễn Văn Tùng)
Cảnh báo riêng Lương tối thiểu vùng theo work_location (không phải theo tenant) ⚠ Hạn ngạch LĐ nước ngoài: 32/372 = 8,6% / trần 10% · GPLĐ của Tùng hết hạn 05/2026 → nhắc gia hạn
Onboarding tenant — checklist tự sinh 11 mục
✓ hoàn tất sau 22 phút · mục tiêu ≤ 30 phút
✓
13 vai trò mặc định (gồm ràng buộc SoD của bảng lương)
✓
Toàn bộ danh mục hệ thống (theo đúng thứ tự ma trận phụ thuộc 14 bước)
✓
Country pack VN-2026.01 + LA-2024.10 pack = DỮ LIỆU có phiên bản, đổi không cần deploy
✓
Bộ pay component chuẩn lương cơ bản, phụ cấp, OT, BH, thuế + ALW_SUBSISTENCE (Lào)
✓
Bộ time bucket chuẩn theo quốc gia OT150/200/300 (VN) · 1.5/2.5/3× (LA)
✓
3 ca làm việc mẫu ADMIN 08:00–17:00 · SHIFT_A 06:00–14:00 · SHIFT_C 22:00–06:00 (qua đêm)
✓
Lịch nghỉ lễ 2026 VN 11 ngày · LA ~9 ngày có điều kiện giới tính/quốc tịch
✓
6 quy trình duyệt mặc định nghỉ phép, OT, giải trình công, bảng lương 2–3 cấp…
✓
Mẫu phiếu lương + mẫu hợp đồng song ngữ theo entity: vi / lo + en
✓
Tài khoản quản trị đầu tiên + email kích hoạt khoa.tran — INVITED → ACTIVE 12/01/2026
✓
Dữ liệu khởi tạo dùng thử (tuỳ chọn)
4 loại danh mục & quy tắc bất di bất dịch
áp dụng cho toàn bộ danh mục của hệ thống
LoạiAi quản lýAi sửa đượcVí dụ
SYSTEMNhà cung cấpKhông ai (chỉ đọc)Quốc gia, tiền tệ, múi giờ
STATUTORYCompliance teamChỉ complianceBiểu thuế, quỹ BH, lễ pháp định
SEEDEDSinh sẵn khi tạo tenantKhách hàng sửa đượcLoại hợp đồng, loại phép, chức danh
TENANTKhách hàng tự tạoKhách hàngPhòng ban, ca làm việc, khoản lương riêng
3 quy tắc bất di bất dịch:
1 · Danh mục đã dùng trong nghiệp vụ không được xóa — chỉ is_active = false, kèm cảnh báo số bản ghi liên quan (ví dụ: vô hiệu "Ca 3 đêm" → chặn vì 4.812 bản chấm công đang tham chiếu).
2 · Trường code của bản ghi is_system = true không sửa được — công thức lương tham chiếu theo code.
3 · Mọi danh mục đều có valid_from / valid_to.
Tên đa ngôn ngữname_i18n {"vi","lo","en"} — tab nhập vi / lo / en trên cùng form
education_level (Lào)bắt buộc thuộc tính is_trained — quyết định phụ cấp sinh hoạt (Khamphan: chưa qua đào tạo → 700.000 ₭)
gender (Lào)dùng cho điều kiện ngày lễ 08/03 — chỉ FEMALE
✓