บริษัทเจออะไรอยู่
ลูกค้าของเราเป็นธุรกิจสินเชื่อที่รับโฉนดที่ดินเป็นหลักประกัน สัญญาหนึ่งฉบับเดินยาวหลายปี ตั้งแต่รับเรื่อง อนุมัติ จ่ายเงินกู้ รับชำระทุกงวด จนถึงวันไถ่ถอนโฉนดคืน ระหว่างทางมีทั้งลูกค้าที่จ่ายช้า ลูกค้าที่ขาดส่งจนต้องตามทวง และบางรายที่ต้องส่งต่อให้ทนาย
ทุกขั้นต้องตอบได้ว่ายอดคงเหลือเท่าไหร่ โฉนดตัวจริงอยู่ที่ไหน และใครทำอะไรกับสัญญานี้ไปแล้ว เดิมงานเหล่านี้กระจายอยู่ในระบบเก่ากับ spreadsheet
เราทำระบบใหม่ที่ดูแลสัญญาตั้งแต่วันแรกจนวันไถ่ถอน ให้ลูกค้าส่งสลิปค่างวดผ่าน LINE ได้เอง และส่งรายที่ค้างชำระต่อให้ทีมติดตามหนี้โดยไม่ต้องจดแยก
ภาพรวมการทำงาน

พนักงานทำงานในระบบหลังบ้าน ลูกค้าคุยกับบริษัทผ่าน LINE ส่วนการตรวจสลิปและการเตือนระบบทำเองตามรอบ
สัญญาหนึ่งฉบับเดินจากร่างสัญญา ส่งเรื่อง รับเรื่อง อนุมัติและจ่ายเงินกู้ แล้วรับชำระไปทุกงวดจนยอดคงเหลือเป็นศูนย์ จึงไถ่ถอนคืนโฉนด ทุกขั้นบันทึกว่าใครเป็นคนทำและทำเมื่อไหร่ ย้อนดูได้จากประวัติของสัญญา
สิ่งที่สร้าง
สัญญาและโฉนด
- ส่งเรื่องซ้ำโฉนดไม่ได้: ถ้าโฉนดยังผูกอยู่กับสัญญาอื่นที่ยังไม่ปิด ระบบไม่ให้ส่งเรื่อง
- อนุมัติแล้วบัญชีตามทันที: ระบบออกเลขสัญญาจริง บันทึกเงินจ่ายออกกับค่าธรรมเนียมลงบัญชี และบันทึกว่าโฉนดแต่ละใบอยู่กับใคร
- ไถ่ถอนเมื่อยอดเป็นศูนย์จริง: ต้องไม่มียอดคงเหลือและไม่มีบิลค้าง ถ้าปิดก่อนกำหนด ระบบคืนค่าธรรมเนียมบางส่วนตามเงื่อนไขของสัญญา
- ยกเลิกแล้วยังตรวจย้อนได้: ระบบยกเลิกรายการบัญชีที่เกี่ยวข้องตาม แต่เก็บไว้ให้ตรวจย้อนได้
รับชำระงวด
ดอกเบี้ยคิดรายวันนับจากวันที่ลูกค้าจ่ายครั้งล่าสุด จะคิดจากเงินต้นเดิมหรือจากเงินต้นคงเหลือก็ได้ตามสัญญา ถ้าจ่ายเลยระยะผ่อนผัน ระบบคิดค่าปรับให้ และคิดภาษีธุรกิจเฉพาะจากดอกเบี้ยที่รับด้วย

เงินที่รับมาตัดดอกเบี้ยกับค่าปรับก่อน ที่เหลือจึงลดเงินต้น ส่วนดอกที่ค้างยกไปรวมกับงวดหน้า
หน้ารับชำระแสดงให้เห็นก่อนกดยืนยันว่าเงินก้อนนี้ไปลงดอกเบี้ย ค่าปรับ และเงินต้นเท่าไหร่ พอยืนยันแล้วพิมพ์ใบเสร็จจากเครื่องพิมพ์ความร้อนได้เลย ลูกค้าที่ขอกู้เพิ่มระหว่างสัญญา ก็บันทึกในหน้าเดียวกันนี้

ใส่ยอด 10,000 บาท หน้าต่างบอกทันทีว่าตัดดอกเบี้ย ค่าปรับ และเงินต้นเท่าไหร่ และเงินต้นจะเหลือเท่าไหร่ (ข้อมูลตัวอย่าง)
แอปลูกค้าใน LINE และตรวจสลิป
ลูกค้าเปิดแอปจาก LINE Official Account ของบริษัท ผูกบัญชีครั้งแรกด้วยเลขบัตรประชาชน จากนั้นก็ดูสัญญาของตัวเองได้ ทั้งยอดที่ต้องจ่ายถ้าปิดวันนี้ จำนวนวันที่ค้างชำระ และการจ่ายครั้งล่าสุด แล้วส่งสลิปจากในแอป หรือส่งรูปสลิปในแชทเฉย ๆ ก็ได้

แอปลูกค้าใน LINE: ซ้ายคือสัญญาทั้งหมดกับสลิปที่รอตรวจ ขวาคือยอดไถ่ถอนวันนี้ ประวัติการจ่าย และปุ่มแจ้งชำระเงิน (ข้อมูลตัวอย่าง)
ระบบตรวจสลิปกับ SlipOK ให้ทันที แล้วแจ้งทีมใน Discord พร้อมลิงก์ตรงไปที่สลิป พนักงานยังเป็นคนกดยืนยันทุกสลิป ถ้ากดใช้ ระบบบันทึกงวดและส่งใบเสร็จให้ลูกค้าทาง LINE ถ้าปฏิเสธ ลูกค้าก็ได้ข้อความแจ้งเหมือนกัน

สลิปที่รอตรวจ: มาจากแอป แชท LINE หรือพนักงานอัปโหลดเอง พร้อมผลตรวจ เช่นสลิปซ้ำ ไม่พบ QR หรือบัญชีผู้รับไม่ตรง (ข้อมูลตัวอย่าง)
ทุกวันระบบส่ง LINE เตือนลูกค้าที่เลยกำหนดชำระ ลูกค้าจึงรู้ยอดของตัวเองโดยไม่ต้องโทรถาม
ติดตามหนี้และงานทนาย
สัญญาที่ค้างชำระเข้าคิวติดตามหนี้เอง ทีมทำงานไล่ตามระยะที่ค้าง ทุกครั้งที่โทรหรือส่งหนังสือ บันทึกลงประวัติของสัญญา คนที่มารับงานต่อจึงรู้ว่าคุยอะไรกันไปแล้ว สามคิวคือค้างชำระ หนี้ค้างนาน และบริหารหนี้เสีย หนังสือแจ้งพิมพ์ได้ทีละหลายฉบับจากคิวหนี้ค้างนาน รายที่กลับมาจ่ายก็ออกจากคิวไปเป็นสัญญาปกติ
ทนายเข้าระบบเดียวกันแต่เห็นเฉพาะงานคดี งานแต่ละคดีเดินตามขั้นตั้งแต่ส่งหนังสือ ยื่นฟ้อง ไกล่เกลี่ย จนถึงขายทอดตลาด แต่ละขั้นมีรายการเอกสารที่ต้องครบ และระบบเตือนทนายทุกวันเมื่อใกล้กำหนดส่ง
ก่อนยื่นฟ้อง หน้าปรับยอดเทียบยอดที่ต้องฟ้องจากหลายวิธีคิดให้ดูพร้อมกัน ทนายเลือกยอดที่ถูกต้องก่อนส่งเรื่อง
ซองเอกสารและโฉนดตัวจริง
ทุกสัญญามีซองเอกสารหนึ่งซอง ติดบาร์โค้ดและระบุชั้นที่เก็บ เบิกหรือคืนเอกสารทีละรายการได้ และพนักงานนับสต็อกซองทุกวันด้วยการสแกนบาร์โค้ด หน้าซองบอกได้ทันทีว่าเอกสารอยู่ครบ เบิกออกไปบางชิ้น หรือเบิกออกหมด เช่นตอนทนายนำเอกสารไปใช้ทำคดี

นับสต็อกซองเอกสารประจำวัน: สแกนบาร์โค้ดทีละซอง แล้วดูได้ทันทีว่าซองไหนยังไม่ได้นับ (ข้อมูลตัวอย่าง)
ตรวจประกาศขายทอดตลาด
ทุกวันระบบตรวจประกาศขายทอดตลาดที่กรมบังคับคดีเผยแพร่ แล้วเทียบกับโฉนดที่บริษัทรับไว้ ถ้าเจอโฉนดที่ตรงกัน ระบบแจ้งทีมทันที ทีมไม่ต้องไล่เปิดประกาศดูเองทีละฉบับ
หลังบ้านของผู้บริหาร
- Dashboard และปฏิทินงาน: ยอดสัญญา เงินในแต่ละบัญชีธนาคาร สัญญาค้างชำระแยกตามช่วง และงานที่ครบกำหนดวันนี้
- รายงานผู้บริหาร: ยอดปล่อยกู้รายเดือน เทียบรายปี ลูกหนี้คงเหลือ และสถานะคดี
- รายงานบัญชี: เงินเข้าออกประจำวัน รายงานภาษี และงบทดลองแยกสาขา
- ลงเวลาเข้างาน: นับจากการเข้าระบบครั้งแรกของวัน และพนักงานเข้าระบบได้จากเครื่องที่ผู้ดูแลอนุญาตไว้
- ปิดยอดประจำวัน: หลังเวลาปิดร้าน ระบบล็อกการรับชำระและการบันทึกรายรับรายจ่าย ยอดของแต่ละวันจึงไม่เปลี่ยนหลังปิดบัญชี

Dashboard ของวัน: ยอดสัญญาแต่ละสถานะ ยอดรับชำระ เงินเข้าออกแยกบัญชี และงวดที่รับวันนี้ (ข้อมูลตัวอย่าง)
ย้ายข้อมูลจาก Google Sheets
ต่อมามีบริษัทอีกสองแห่งเตรียมมาใช้ระบบเดียวกัน ตอนนี้กำลังทดสอบระบบอยู่ ทั้งสองแห่งเดิมจดทุกสัญญาและทุกงวดไว้ใน Google Sheets ไฟล์ที่ใหญ่ที่สุดมีหลายแสนแถว เราเขียนตัวนำเข้าที่
- คิดยอดคงเหลือใหม่จากทุกรายการรับจ่าย ไม่ใช้คอลัมน์ยอดคงเหลือในชีตตรง ๆ
- แปลงวันที่ พ.ศ. ในชีตเป็น ค.ศ. ก่อนเก็บลงฐานข้อมูล
- นำเข้าสถานะคดีและประวัติงานย้อนหลัง เป็นงานที่ทำเสร็จแล้ว ทีมจึงไม่ได้แจ้งเตือนย้อนหลังเด้งมาหลายร้อยรายการ
- อ่านไฟล์ทีละแถว ไฟล์ใหญ่แค่ไหนก็ใช้หน่วยความจำเท่าเดิม
- รันซ้ำได้หลายรอบ ทีมตรวจผลแต่ละรอบเทียบกับชีตเดิม ให้มั่นใจก่อนเริ่มใช้จริง
หลายบริษัทจากโค้ดชุดเดียว
ทั้งสามแห่งใช้โค้ดชุดเดียวกัน แต่แยก deploy แยกฐานข้อมูล ชื่อ โลโก้ และสีของทั้งหลังบ้านและแอปใน LINE ตั้งได้จากหน้าตั้งค่าของแต่ละแห่ง พอแก้บั๊กหรือเพิ่มฟีเจอร์ CI รันชุดทดสอบครั้งเดียวแล้ว deploy ให้ทุกแห่งพร้อมกัน
ใช้กับระบบของคุณได้ยังไง
ถ้าธุรกิจปล่อยสินเชื่อหรือขายผ่อน แล้วยังตามยอดใน spreadsheet อยู่ ลองเริ่มจากคำถามเหล่านี้
- ยอดคงเหลือของลูกค้าแต่ละราย คิดจากอะไร และใครแก้ได้บ้าง
- เงินที่รับมาแต่ละครั้ง ตัดดอกเบี้ย ค่าปรับ หรือเงินต้นก่อน
- หลักประกันตัวจริงอยู่ที่ไหน และใครเบิกออกไปล่าสุด
- ลูกค้าที่ค้างชำระ ใครเป็นคนตามต่อ และส่งต่อกันเมื่อไหร่
ผลลัพธ์
- 2568 เริ่มใช้แทนระบบเดิม พร้อมคิวติดตามหนี้และระบบบัญชีรายรับรายจ่าย
- 2569 แอปลูกค้าใน LINE กับตรวจสลิปอัตโนมัติ งานทนาย ลงเวลาเข้างาน และบริษัทอีกสองแห่งย้ายข้อมูลจาก Google Sheets มาทดสอบบนระบบเดียวกัน
ระบบเขียนด้วย Laravel 12 ใช้ Filament 5 กับ Livewire 4 ทำหลังบ้าน ฐานข้อมูลเป็น PostgreSQL งานเบื้องหลังอย่างตรวจสลิปและแจ้งเตือนรันบน Horizon และ CI รันชุดทดสอบก่อน deploy ทุกครั้ง






