Payroll Import API
ภาพรวม (Overview)
API สำหรับนำเข้าข้อมูลเงินเดือนของพนักงาน รองรับ 2 รูปแบบหลัก:
- Income/Expense Import — นำเข้ารายการรายได้/รายจ่ายแยกตามประเภท
- Net Total Import — นำเข้าข้อมูลเงินเดือนสุทธิพร้อมคำนวณภาษีและประกันสังคมอัตโนมัติ
ขั้นตอนการใช้งาน (Workflow)
การนำเข้าข้อมูลเงินเดือนมี 3 ขั้นตอนหลัก:
- ดึง Template — เรียก Template API เพื่อดูโครงสร้างคอลัมน์และรายชื่อพนักงาน
- นำเข้าข้อมูล — ส่งข้อมูลตามโครงสร้างที่ได้จาก Template ไปยัง Import API
- ตรวจสอบผลลัพธ์ — เรียก Import Log API เพื่อดูประวัติและสถานะการนำเข้า
Income/Expense Import
นำเข้ารายการรายได้/รายจ่ายของพนักงานแยกตามประเภท (Salary Type) รองรับทั้งรอบเงินเดือนปกติและรอบเงินเดือนแยก (Split)
| API | Description |
|---|---|
| Income/Expense Template | ดึง Template คอลัมน์และข้อมูลพนักงาน |
| Income/Expense Import | นำเข้ารายได้/รายจ่าย |
| Split Income/Expense Template | ดึง Template สำหรับรอบเงินเดือนแยก |
| Split Income/Expense Import | นำเข้ารายได้/รายจ่ายสำหรับรอบเงินเดือนแยก |
| Income/Expense Import Log | ดูประวัติการนำเข้ารายได้/รายจ่าย |
Net Total Import
นำเข้าข้อมูลเงินเดือนสุทธิ ระบบจะสร้างสลิปเงินเดือนอัตโนมัติ พร้อมคำนวณภาษีและประกันสังคม
| API | Description |
|---|---|
| Net Total Template | ดึง Template คอลัมน์สำหรับข้อมูลเงินเดือน |
| Net Total Import | นำเข้าข้อมูลเงินเดือนและสร้างสลิป |
| Net Total Import Log | ดูประวัติการนำเข้าข้อมูลเงินเดือน |
โครงสร้างคอลัมน์ (Column Structure)
Template API จะส่งคืนรายการคอลัมน์แบบ dynamic ซึ่งประกอบด้วย:
| Column Key Pattern | Description | หมายเหตุ |
|---|---|---|
emp_code | รหัสพนักงาน | คอลัมน์คงที่ |
full_name | ชื่อ-นามสกุล | คอลัมน์คงที่ |
Income-{id} | รายได้ตามประเภท | คอลัมน์ dynamic ตาม config บริษัท |
Expense-{id} | รายจ่ายตามประเภท | คอลัมน์ dynamic ตาม config บริษัท |
tax | ภาษี | เฉพาะ Net Total |
nvat-04, nvat-05 | เงินหักประกันสังคม | เฉพาะ Net Total |
คอลัมน์ Income-{id} และ Expense-{id} จะแตกต่างกันตาม config ของแต่ละบริษัท ควรเรียก Template API ก่อนเพื่อดูคอลัมน์ที่ใช้ได้
Common Parameters
Employee Filter Parameters
API ที่ดึง Template รองรับการกรองพนักงานด้วย parameter ต่อไปนี้:
| Parameter | Type | Description |
|---|---|---|
keyword | string | ค้นหาจากชื่อ นามสกุล รหัสพนักงาน |
company_lists | array | กรองตามบริษัท (Base64 encoded ID) |
branch_lists | array | กรองตามสาขา (Base64 encoded ID) |
department_lists | array | กรองตามแผนก (Base64 encoded ID) |
division_lists | array | กรองตามฝ่าย (Base64 encoded ID) |
position_lists | array | กรองตามตำแหน่ง (Base64 encoded ID) |
employee_lists | array | กรองเฉพาะพนักงานที่ระบุ (Base64 encoded ID) |
hashtags | array | กรองตาม hashtag |
employee_type_code | array | กรองตามประเภทพนักงาน |
sys_del_flag | string | สถานะ: "N" = ทำงานอยู่, "Y" = ลาออก, "A" = ทั้งหมด |
signout_flag | string | สถานะลาออก: "Y" / "N" |
Pagination
| Parameter | Type | Default | Description |
|---|---|---|---|
_PAGE | number | 1 | หน้าที่ต้องการดึงข้อมูล |
_NUMBER_PER_PAGE | number | 20 | จำนวนรายการต่อหน้า |
Last updated on