Sign Out Employee (ลาออก)
บันทึกการลาออก/พ้นสภาพของพนักงาน พร้อมสร้างเอกสารลาออกอัตโนมัติ
การลาออกเป็นการดำเนินการที่มีผลกระทบสูง ระบบจะปรับสถานะพนักงาน, สร้างเอกสารลาออก, ล้างสลิปเงินเดือนล่วงหน้า และถอนสิทธิ์การเข้าถึงระบบ หากต้องการยกเลิก ให้ใช้ Reactive เพื่อคืนสถานะ
Endpoint
POST /api/v1/open-apis/employee/update-employeeRequest Body
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
path_action | string | Yes | ต้องเป็น "sign-out" | "sign-out" |
employee_code | string | Yes | รหัสพนักงานที่ต้องการทำรายการลาออก | "EMP001" |
signout_dt | string | Yes | วันที่ลาออก รูปแบบ YYYY-MM-DD | "2024-06-30" |
signout_type_flag | string | Yes | รหัสประเภทการลาออก (ดู Option Values) | "01" |
signout_fund_dt | string | No | วันที่ลาออกจากกองทุน YYYY-MM-DD (บังคับถ้า signout_fund_flag='Y') | "2024-06-30" |
tax_calculation_type_lv | string | No | ประเภทการคำนวณภาษี (01=ภ.ง.ด.1, 02=ใบแนบ ภ.ง.ด.91) บังคับถ้า compensation_flag='Y' | "01" |
signout_month_pay | number | No | จำนวนเดือนจ่ายชดเชย (0-3) บังคับถ้า signout_type_flag='09' | 3 |
sso_out_dt | string | No | วันที่แจ้งออกประกันสังคม (ถ้าไม่ส่งจะใช้วันเดียวกับ signout_dt) | "2024-06-30" |
out_dt | string | No | วันที่พ้นสภาพจริง (ระบบจะคำนวณให้อัตโนมัติตามรอบเงินเดือน) | "2024-06-30" |
blacklist_flag | string | No | ขึ้น Blacklist หรือไม่ (Y/N) | "N" |
compensation_flag | string | No | มีการคำนวณเงินชดเชยหรือไม่ (Y/N) | "N" |
retirement_severance_flag | string | No | จ่ายชดเชยเกษียณ (Y/N) บังคับเป็น N ถ้าประเภทไม่ใช่เกษียณ '04' | "N" |
signout_fund_flag | string | No | ลาออกจากกองทุนด้วยหรือไม่ (Y/N) | "N" |
use_app_dt | string | No | วันที่เริ่มยื่นผ่านแอป (ต้อง >= signout_dt) | "2024-06-30" |
signout_remark | string | No | หมายเหตุการลาออก | "ได้ประกอบธุรกิจส่วนตัว" |
retirement_year | string | No | ปีที่เกษียณ (YYYY) | "2024" |
Option Values
signout_type_flag — ประเภทการลาออก/พ้นสภาพ
| Code | Description (TH) | Description (EN) |
|---|---|---|
01 | ลาออก/ละทิ้งหน้าที่โดยมีการติดต่อนายจ้างภายใน 6 วันทำงานติดต่อกัน | Resignation with employer contact within 6 working days |
02 | สิ้นสุดระยะเวลาการจ้าง | End of employment period |
03 | เลิกจ้าง/โครงการเกษียณก่อนกำหนด | Termination/Early Retirement |
04 | เกษียณอายุ | Retirement |
05 | ไล่ออก/ปลดออก/ให้ออก เนื่องจากกระทำความผิด | Dismissal due to misconduct |
06 | เสียชีวิต | Deceased |
07 | โอนย้ายสาขา | Transfer |
08 | ไม่ผ่านทดลองงาน | Failed probation |
09 | เลิกจ้างกะทันหัน | Immediate termination |
Validation Rules
Cross-field Business Validation
- หาก
compensation_flag = 'Y'ระบบจะบังคับขอtax_calculation_type_lvหากอายุงานพนักงานน้อยกว่า 5 ปี ต้องระบุเป็น'01'เท่านั้น - หาก
signout_type_flag = '09'(เลิกจ้างกะทันหัน) ระบบจะบังคับให้ส่งsignout_month_pay(0-3 เดือน) use_app_dtไม่สามารถน้อยกว่าsignout_dtได้- หากไม่ได้ส่ง
sso_out_dtระบบจะใช้วันที่เดียวกับsignout_dt - หาก
signout_type_flagไม่ใช่'04'(เกษียณ) ค่าretirement_severance_flagจะถูกบังคับเป็น'N'
System Auto Actions
ระบบจะดำเนินการอัตโนมัติ:
- สร้างเอกสารลาออก (PDF) พร้อมบันทึกประวัติ
- ล้างสลิปเงินเดือนล่วงหน้าของเดือนถัดไป
- คำนวณวันที่พ้นสภาพจริง (
out_dt) ตามรอบเงินเดือน - ถอนสิทธิ์การเป็นผู้อนุมัติจากทุกระดับ (เมื่อถึงวันที่มีผล)
- เพิกถอนสิทธิ์การเข้าถึงระบบสื่อสาร
Response Format
Success Response (HTTP 200)
{
"code": 200,
"message": "Signout mid-period. Out date: 2024-06-30",
"payload": {
"employee_id": "20241225ABCD1234EF56",
"employee_code": "EMP001",
"employee_name": "สมชาย",
"employee_last_name": "ใจดี",
"signout_flag": "Y",
"signout_dt": "2024-06-30",
"out_dt": "2024-06-30",
"sso_out_dt": "2024-06-30",
"signout_type_flag": "01",
"signout_remark": "ได้งานใหม่",
"blacklist_flag": "N",
"resign_doc_id": "20250601DOCS9999ZX99"
}
}Response Fields
| Field | Type | Description |
|---|---|---|
payload.employee_id | string | ID ของพนักงาน |
payload.employee_code | string | รหัสพนักงาน |
payload.employee_name | string | ชื่อพนักงาน |
payload.employee_last_name | string | นามสกุลพนักงาน |
payload.signout_flag | string | 'Y' ยืนยันว่าพ้นสภาพ |
payload.signout_dt | string | วันที่ลาออก |
payload.out_dt | string | วันที่ออกจริง (หลังการคำนวณรอบเงินเดือน) |
payload.sso_out_dt | string | วันที่ออกประกันสังคม |
payload.signout_type_flag | string | รหัสประเภทการลาออก |
payload.signout_remark | string | หมายเหตุการลาออก |
payload.blacklist_flag | string | สถานะ Blacklist |
payload.resign_doc_id | string | ID ของเอกสารลาออกที่สร้างขึ้น |
Error Response (HTTP 400)
{
"code": 400,
"message": "ข้อมูลไม่ถูกต้อง",
"errors": [
"Missing required parameter: 'signout_type_flag'",
"'signout_dt' must be in YYYY-MM-DD format (e.g., 2024-06-30)"
]
}| เงื่อนไข | Error Message |
|---|---|
ไม่ส่ง signout_type_flag | Missing required parameter: 'signout_type_flag' |
| รูปแบบวันที่ผิด | 'signout_dt' must be in YYYY-MM-DD format |
| ไม่พบรหัสพนักงาน | Employee not found with code: 'EMP9999' |
ประเภทลาออก 09 แต่ไม่ส่ง signout_month_pay | Missing required parameter: 'signout_month_pay' |
อายุงาน < 5 ปี แต่ tax_calculation_type_lv ไม่ใช่ 01 | Invalid 'tax_calculation_type_lv' for work ages < 5 years |
use_app_dt < signout_dt | 'use_app_dt' must be greater than or equal to 'signout_dt' |
Code Examples
cURL
# ลาออกเอง (Basic Sign Out)
curl -X POST "https://openapi.humansoft.co.th/api/v1/open-apis/employee/update-employee" \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \
-d '{
"path_action": "sign-out",
"employee_code": "EMP001",
"signout_dt": "2024-06-30",
"signout_type_flag": "01",
"signout_remark": "ได้งานใหม่",
"blacklist_flag": "N"
}'
# เลิกจ้าง พร้อมจ่ายชดเชย
curl -X POST "https://openapi.humansoft.co.th/api/v1/open-apis/employee/update-employee" \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \
-d '{
"path_action": "sign-out",
"employee_code": "EMP001",
"signout_dt": "2024-06-30",
"signout_type_flag": "09",
"signout_month_pay": 3,
"compensation_flag": "Y",
"tax_calculation_type_lv": "01",
"signout_remark": "เลิกจ้างกะทันหัน พร้อมชดเชย 3 เดือน"
}'Related APIs
- Get Resign Document - ดึงเอกสารลาออก (PDF)
- Reactive Employee - เปิดใช้งานพนักงานที่ลาออกอีกครั้ง
- Get Employee Info - ดึงข้อมูลพนักงานรายบุคคล
Last updated on