ช่องโหว่ "OT ซ้อน" ที่ทำให้บริษัทจ่ายค่าล่วงเวลาเกินจริงโดยไม่มีใครรู้ตัว
หัวหน้างานที่มีคำขอรออนุมัติวันละหลายสิบรายการ เห็นเหตุผลคล้ายกัน เวลาใกล้กัน ก็กดอนุมัติผ่านทั้งสองใบ ผลคือระบบเงินเดือนบันทึกชั่วโมง OT รวม 2.88 ชั่วโมง ทั้งที่พนักงานคนนั้นอยู่ทำงานจริงอย่างมากแค่ 1.55 ชั่วโมง เพราะสองช่วงเวลานั้นซ้อนทับกันเกือบทั้งหมด
ถ้าพนักงานคนนี้ค่าจ้างชั่วโมงละ 100 บาท OT วันทำงานปกติคูณ 1.5 เท่า บริษัทจ่ายเกินไป (2.88 − 1.55) × 100 × 1.5 = เกือบ 200 บาทจากคำขอคู่เดียว ฟังดูเล็กน้อย แต่ลองคูณด้วยพนักงาน 200 คน ปีละ 12 เดือน และความจริงที่ว่าไม่มีใครนั่งไล่จับ — ตัวเลขจะไม่เล็กอีกต่อไป
ทำไมเรื่องนี้ถึงหลุดรอดสายตาทุกคน
เรื่องนี้ไม่ได้เกิดจากพนักงานตั้งใจโกงเสมอไป สาเหตุที่พบบ่อยที่สุดกลับธรรมดามาก:
1. ยื่นซ้ำเพราะคิดว่าใบแรกไม่ผ่าน — พนักงานยื่นจากมือถือ สัญญาณช้า ไม่เห็นข้อความยืนยัน เลยกดยื่นใหม่โดยแก้เวลาเลิกนิดหน่อยตามที่จำได้ ใบแรกที่คิดว่าหายไปนั้นจริง ๆ เข้าระบบไปแล้ว
2. ยื่นก่อนแล้วมาแก้ทีหลังด้วยการยื่นเพิ่ม — ทำ OT จริงถึง 18:33 แต่ใบเดิมเขียนไว้ 18:20 แทนที่จะยกเลิกใบเดิมแล้วยื่นใหม่ กลับยื่นใบที่สองเพิ่มเข้าไปเฉย ๆ
3. ระบบไม่มีอะไรห้ามเลย — ระบบขอ OT จำนวนมาก (รวมถึงไฟล์ Excel ที่หลายบริษัทยังใช้) ตรวจแค่ว่ากรอกครบไหม เวลาเริ่ม-เลิกสมเหตุสมผลไหม แต่ไม่เคยเทียบคำขอใหม่กับคำขอเดิมของพนักงานคนเดียวกัน
จุดสุดท้ายคือหัวใจของบทความนี้: ตราบใดที่ระบบยอมรับคำขอซ้อนเข้ามาได้ ภาระการจับผิดจะไปตกที่หัวหน้างานซึ่งเป็นด่านที่พลาดง่ายที่สุด เพราะเขาดูคำขอทีละใบ ไม่ได้ดูภาพรวมทั้งวันของพนักงานแต่ละคน
OT ซ้อนมี 2 แบบ — แบบที่สองแพงกว่าและเจอบ่อยกว่า
แบบที่ 1: ซ้อนกับคำขอ OT เดิม
คือเคสข้างต้น — สองใบเวลาทับกัน จ่ายซ้ำในช่วงที่ทับ ตรวจจับได้ด้วยการเทียบช่วงเวลา (interval overlap) ของคำขอทุกใบในวันเดียวกันของพนักงานคนเดียวกัน โดยไม่นับใบที่ถูกปฏิเสธหรือยกเลิกไปแล้ว
แบบที่ 2: ซ้อนกับเวลางานปกติ
เจอบ่อยกว่ามากและแพงกว่า: บริษัทเลิกงาน 17:30 น. แต่พนักงานยื่น OT เริ่ม 17:00 น. ช่วง 17:00–17:30 นั้นพนักงานได้เงินเดือนปกติอยู่แล้ว ถ้าอนุมัติ OT ตามใบ เท่ากับจ่ายช่วงครึ่งชั่วโมงนั้นสองรอบ — รอบแรกในเงินเดือน รอบที่สองเป็น OT คูณ 1.5
สาเหตุมักไม่ใช่เจตนา แต่เป็นความเข้าใจ: พนักงานจำว่า "เริ่มอยู่ต่อตั้งแต่ห้าโมง" เลยกรอก 17:00 ทั้งที่ OT ควรนับจากเวลาเลิกงานตามกะของตัวเองเป็นต้นไป และอย่าลืมว่าแต่ละคนอาจมีกะไม่เหมือนกัน — คนกะเช้าเลิก 17:00 ยื่น OT 17:00 ได้ถูกต้อง แต่คนกะปกติเลิก 17:30 ยื่นแบบเดียวกันคือทับเวลางาน ระบบที่ตรวจเรื่องนี้จึงต้องรู้จัก "กะรายคน" ไม่ใช่ใช้เวลาเลิกงานค่าเดียวทั้งบริษัท
4 กฎที่ระบบขอ OT ที่ดีต้องบังคับอัตโนมัติ
จากประสบการณ์พัฒนาระบบ HR ให้ธุรกิจไทยใช้จริง กฎที่ควรอยู่ในระบบ (ไม่ใช่ในความจำของหัวหน้างาน) มี 4 ข้อ:
กฎที่ 1 — คำนวณชั่วโมงที่ฝั่งระบบเสมอ ห้ามให้พนักงานกรอก "จำนวนชั่วโมง" เอง ระบบต้องคำนวณจากเวลาเริ่ม-สิ้นสุดเท่านั้น รองรับกรณีเลิกข้ามเที่ยงคืน (เช่น 22:00–02:00 ต้องได้ 4 ชั่วโมง ไม่ใช่ติดลบ) ตัวเลขที่จ่ายเงินจะได้มาจากแหล่งเดียว เถียงกันไม่ได้
กฎที่ 2 — ปฏิเสธคำขอที่ช่วงเวลาซ้อนกับใบเดิมทันทีตอนยื่น พร้อมแจ้งพนักงานว่า "ซ้อนกับใบเลขที่เท่าไหร่ ช่วงเวลาไหน" ให้เขาไปยกเลิกใบเดิมก่อนหรือยื่นช่วงที่ไม่ทับ การบล็อกตั้งแต่ตอนยื่นดีกว่าไปดักตอนอนุมัติ เพราะพนักงานแก้ไขเองได้ทันทีโดยไม่ต้องรอ HR
กฎที่ 3 — OT วันทำงานปกติต้องไม่ทับเวลางานตามกะของคนนั้น ระบบต้องดึงกะจริงของพนักงานรายวันมาเทียบ ไม่ใช่ใช้เวลาบริษัทค่าเดียว และควรยกเว้นการตรวจนี้ให้ OT ประเภทวันหยุด (เพราะวันหยุดไม่มี "เวลางานปกติ" ให้ทับ)
กฎที่ 4 — คำขอที่ถูกปฏิเสธหรือยกเลิกต้องไม่มาบล็อกการยื่นใหม่ ฟังดูตรงข้ามกับสามข้อแรก แต่สำคัญไม่แพ้กัน: ถ้าพนักงานยื่นผิดแล้วหัวหน้าปฏิเสธ เขาต้องยื่นช่วงเวลาเดิมที่ถูกต้องได้เลย ระบบที่นับใบตายเข้าไปด้วยจะสร้างทางตันให้ผู้ใช้
เช็กลิสต์สำหรับ HR: ตรวจย้อนหลังว่าบริษัทเคยจ่ายซ้อนไปแล้วหรือยัง
ถ้าระบบปัจจุบันของคุณยังไม่มีกฎพวกนี้ ลองตรวจย้อนหลังสัก 3 เดือนด้วยขั้นตอนนี้:
- ดึงรายการ OT ที่อนุมัติแล้วทั้งหมด เรียงตาม รหัสพนักงาน + วันที่ + เวลาเริ่ม
- มองหาพนักงานที่มี OT วันเดียวกันมากกว่า 1 รายการ แล้วเทียบช่วงเวลาว่าทับกันไหม
- เทียบเวลาเริ่ม OT ของแต่ละใบกับเวลาเลิกงานตามกะของพนักงานคนนั้นในวันนั้น — ใบที่เริ่มก่อนเลิกกะคือรายการต้องสงสัย
- รวมมูลค่าที่จ่ายเกิน แล้วตัดสินใจเชิงนโยบาย: เรียกคืน หักกลบงวดถัดไป หรือถือเป็นบทเรียนแล้ววางกฎใหม่ (ส่วนใหญ่เลือกอย่างหลัง เพราะการเรียกคืนกระทบขวัญกำลังใจเกินมูลค่าเงิน)
ทำครั้งเดียวใน Excel ได้ แต่ถ้าต้องทำทุกเดือนตลอดไป นั่นคือสัญญาณว่าถึงเวลาให้ระบบทำแทน
สรุป
OT ซ้อนไม่ใช่ปัญหาคนโกง แต่เป็นปัญหา "ระบบไม่มีรั้ว" — พนักงานยื่นพลาดได้เสมอ หัวหน้างานตรวจไม่ทันได้เสมอ สิ่งเดียวที่ไม่ควรพลาดคือซอฟต์แวร์ เพราะการเทียบช่วงเวลาซ้อนเป็นงานที่คอมพิวเตอร์ทำได้สมบูรณ์แบบในเสี้ยววินาที ระบบ HRPM บังคับกฎทั้ง 4 ข้อนี้ให้อัตโนมัติตั้งแต่วินาทีที่พนักงานกดยื่นจากมือถือ — คำขอที่ซ้อนกับใบเดิมหรือทับเวลางานตามกะจะถูกแจ้งเตือนทันทีพร้อมเหตุผล พนักงานแก้เองได้โดยไม่ต้องรบกวน HR แม้แต่ข้อความเดียว
คำถามที่พบบ่อย (FAQ)
ถาม: พนักงานยื่น OT 2 ใบวันเดียวกันได้ไหม? ตอบ: ได้ ถ้าช่วงเวลาไม่ทับกัน เช่น 17:30–19:00 ใบหนึ่ง และ 20:00–21:00 อีกใบ (กรณีกลับมาทำงานต่อ) ระบบที่ดีต้องยอมรับกรณีนี้ แต่บล็อกเฉพาะช่วงที่ซ้อนกัน
ถาม: OT ที่เริ่มก่อนเวลาเข้างานตอนเช้า (เช่น มาเตรียมงาน 06:00) ถือว่าทับเวลางานไหม? ตอบ: ไม่ทับ เพราะ 06:00–08:30 อยู่นอกช่วงเวลางาน ระบบควรตรวจว่า "ช่วง OT ทับกับช่วงเวลางาน" ไม่ใช่บังคับว่า OT ต้องอยู่หลังเลิกงานเท่านั้น
ถาม: ถ้าพนักงานทำ OT ต่อเนื่องข้ามเที่ยงคืน ระบบควรบันทึกยังไง? ตอบ: บันทึกเป็นใบเดียวของวันที่เริ่มงาน โดยระบบคำนวณชั่วโมงข้ามวันให้อัตโนมัติ เช่น เริ่ม 22:00 เลิก 02:00 ได้ 4 ชั่วโมง
ยกระดับงาน HR และ Payroll ของคุณให้เป็นเรื่องง่าย
ลดเวลางานเอกสาร คำนวณเงินเดือนอัตโนมัติ จัดการเวลาเข้างาน GPS และสลิปเงินเดือนออนไลน์ในระบบเดียว