Booking Requirements (ข้อกำหนดระบบการจองรถเช่า)
หน้านี้รวบรวม Functional Requirements, Acceptance Criteria และ Business Rules ของระบบการจองรถยนต์เช่า (Booking System) ทั้งฝั่งลูกค้าและระบบงานเชื่อมต่อภายนอก ตามข้อกำหนดเอกสาร BRD V.1.1
1. การจองรถยนต์เช่า (Booking System)
ระบบต้องรองรับการจองรถเช่าของลูกค้าผ่านหน้าเว็บไซต์หลัก โดยแบ่งรูปแบบการจองออกเป็น 2 กรณี:
- Guest Booking: ผู้ใช้สามารถทำการจองรถเช่าได้โดยไม่จำเป็นต้องสมัครสมาชิกหรือมีบัญชีผู้ใช้ ระบบจะจัดเก็บข้อมูลการจองเฉพาะรายการนั้นๆ โดยไม่มีการบันทึกประวัติสะสมสิทธิ์หรือประวัติย้อนหลังในหน้าระบบ
- Member Booking: ลูกค้าที่เป็นสมาชิก (Member) ต้องเข้าสู่ระบบก่อนจอง ระบบจะเก็บประวัติการจองและประวัติการใช้งานรถเช่าทั้งหมดผูกกับรหัสสมาชิก (Member ID)
ขั้นตอนและข้อมูลที่ต้องใช้ในการจอง (Booking Steps & Inputs)
- เลือกสาขาและวันเวลา: ผู้จองเลือก วัน-เวลา และ สถานที่รับ/คืนรถ
- ตรวจสอบจำนวนรถว่าง (Real-time Stock): ก่อนยื่นข้อมูลจองและชำระเงิน ระบบต้องยิง API ไปยัง CarPro เพื่อตรวจสอบว่ามีจำนวนรถว่างในรุ่น/ประเภทดังกล่าวในช่วงเวลานั้นจริงหรือไม่ หาก Stock ว่างเป็น 0 จะต้องแสดงข้อความแจ้งเตือนทันทีและไม่ให้ทำรายการต่อ
- ข้อมูลผู้เช่าและคนขับ (Tenant & Driver Details):
- ผู้จองต้องระบุข้อมูลผู้เช่าประกอบด้วย: ชื่อ-นามสกุล, เบอร์โทรศัพท์, อีเมล
- การระบุผู้ขับขี่: สามารถเลือกได้ 2 แบบ:
- ผู้จองขับรถเอง (Self-Driver): ระบบจะดึงข้อมูลส่วนตัวของสมาชิก (Auto-fill) มาใส่ให้อัตโนมัติ
- ผู้อื่นเป็นคนขับ (Other Driver): ผู้จองต้องกรอกข้อมูลส่วนบุคคลและข้อมูลใบอนุญาตขับขี่ของผู้ขับขี่จริงเพิ่ม
- ส่วนลดและคูปอง (Promotion & Coupons): รองรับการกรอกโค้ดส่วนลดโปรโมชั่น/คูปอง โดยระบบจะยิง API ไปเช็คกับระบบ CarPro เพื่อยืนยันเงื่อนไขและนำมาคำนวณส่วนลดท้ายบิล
- การเลือกบริการเสริม (Add-on Products): ระบบต้องคำนวณค่าบริการเสริมตามที่ผู้จองระบุ โดย Add-on ที่รองรับในเฟสนี้ประกอบด้วย:
- CDW: Collision Damage Waiver (ประกันภัยความเสียหายจากการเฉี่ยวชน)
- SCDW: Super Collision Damage Waiver (ประกันภัยความเสียหายพิเศษ)
- TP: Theft Protection (ประกันภัยจากการโจรกรรม)
- OP - Tyre: ประกันยางรถยนต์
- OP - Windshield: ประกันกระจกบังลมหน้า
- OP - Plus: ประกันคุ้มครองพิเศษ (ยาง + กระจกหน้า + โจรกรรม)
- OP - SCDWY + Tyre + Windshield + Theft Protection: แพ็กเกจคุ้มครองเต็มรูปแบบ
- OP - SCDWY: ประกัน SCDW สำหรับผู้ขับขี่วัยเยาว์
- BBS: Baby Seat (เบาะนั่งสำหรับเด็ก)
- ADD Driver: สิทธิ์ผู้ขับขี่เพิ่มเติม (คนที่ 3)
- Young Driver: บริการสำหรับผู้ขับขี่อายุต่ำกว่า 21 ปี
- OWR: One Way Rental Fee (ค่าธรรมเนียมคืนรถต่างสาขา)
- Fuel Service: Refueling Fee (ค่าบริการเติมน้ำมันล่วงหน้า)
2. ขั้นตอนหลังชำระเงินสำเร็จ (Post-Payment & Integration)
เมื่อลูกค้าทำรายการชำระเงินผ่านระบบ Payment Gateway (Omise หรือ 2C2P) สำเร็จ ระบบงานหลักจะดำเนินการดังนี้:
- ตัดยอดรถเช่า (Cut Stock API): ระบบจะส่งข้อมูลรายละเอียดการจองไปยังระบบ CarPro ผ่าน API ทันทีเพื่อทำการ "ตัด Stock รถ" เพื่อรับประกันว่ารถคันดังกล่าวถูกล็อคจองเรียบร้อยแล้วในระบบกลาง
- ออกใบจอง: แสดงหมายเลขการจอง (Booking Number ที่สร้างจาก Running Number Service) ให้ลูกค้าทราบบนหน้าจอ
- ส่งการยืนยัน: ส่งรายละเอียดข้อมูลใบจองและเอกสารยืนยันให้กับลูกค้าผ่านช่องทาง Email หรือ SMS
3. การอัปเดต/แก้ไขใบจอง (Modify Booking)
ลูกค้าสามารถขอแก้ไขรายการจองด้วยตนเองผ่านเมนู "แก้ไขการจอง (Modify Booking)" บนเว็บไซต์ โดยมีเงื่อนไขดังนี้:
- รายการที่อนุญาตให้แก้ไข: ข้อมูลผู้ขับขี่, วัน-เวลารับและคืนรถ, สถานที่รับและคืนรถ
- เงื่อนไขเวลา (Cutoff Time): การแก้ไขต้องทำก่อนกำหนดวันรับรถไม่น้อยกว่า 24 ชั่วโมง
- การเช็คความพร้อมรถ: ทุกครั้งที่มีการแก้ไขวันเวลาหรือประเภทรถ ระบบต้องเชื่อมต่อกับ CarPro API เพื่อตรวจสอบ Stock ความพร้อมของรถในวันเวลาใหม่
- ประวัติการแก้ไข: บันทึกข้อมูลประวัติการแก้ไขลงในระบบ (Booking Change Log) ทุกครั้ง
- การปรับปรุงยอดชำระเงิน:
- ราคาใหม่แพงกว่า: ผู้จองชำระเงินส่วนต่างเพิ่มเติม (
AdditionalAmount) สถานะของใบจองจะยังเป็นCreatedจนกว่าจะชำระเงินส่วนต่างสำเร็จ - ราคาใหม่ถูกกว่า: ระบบบันทึกยอดเงินต่างสำหรับคืนเงิน (
RefundAmount) และปรับสถานะเป็นConfirmเพื่อเข้าสู่โฟลว์คืนเงินหลังบ้าน (Manual Refund) - ราคาเท่าเดิม: อัปเดตเวอร์ชันใบจองทันทีโดยไม่มีการเรียกเก็บเงินหรือสร้าง Refund
- ราคาใหม่แพงกว่า: ผู้จองชำระเงินส่วนต่างเพิ่มเติม (
- การแจ้งเตือน: ส่งข้อมูลอัปเดตฉบับใหม่ยืนยันให้ลูกค้าทราบผ่าน Email, SMS หรือ LINE และซิงก์ข้อมูลไปที่ CarPro API
4. การยกเลิกใบจองและการคืนเงิน (Cancel Booking & Refund Policy)
ลูกค้าสามารถดำเนินการยกเลิกใบจองด้วยตนเองผ่านเมนูประวัติการจอง โดยมีกฎและเกณฑ์ดังนี้:
เงื่อนไขการยกเลิกจอง
- ปุ่มยกเลิกจองจะแสดงเฉพาะรายการใบจองที่เข้าเงื่อนไขนโยบายของ Prime Car Rent เท่านั้น (สถานะใบจองเป็น
Confirmและต้องทำรายการก่อนกำหนดเวลารับรถไม่น้อยกว่า 24 ชั่วโมง หรือตามนโยบายของบริษัท) - ผู้ใช้ต้องกรอกเหตุผลการยกเลิก (เหตุผลบังคับยาวไม่เกิน 500 อักษร และรายละเอียดเสริมยาวไม่เกิน 1,000 อักษร)
อัตราค่าธรรมเนียมยกเลิกการจอง (Cancellation Fee Matrix)
ในการยกเลิกและคำนวณยอดเงินคืน ระบบจะคิดค่าปรับตามจำนวนวันจองเดิม:
| จำนวนวันเช่าในใบจองเดิม | ค่าธรรมเนียมการยกเลิก (Cancellation Fee) | ตัวอย่างการคำนวณ |
|---|---|---|
| เช่า 1 วัน | คิดค่าปรับเท่ากับ 50% ของราคาเช่า 1 วัน (PricePerDay × 0.5) | จอง 1 วัน ค่าเช่า 1,000 บาท → ค่าปรับ 500 บาท (คืนลูกค้า 500 บาท) |
| เช่า 2 วันขึ้นไป | คิดค่าปรับเท่ากับ ราคาเช่า 1 วันเต็ม (PricePerDay × 1.0) | จอง 3 วัน วันละ 1,000 บาท (รวม 3,000 บาท) → ค่าปรับ 1,000 บาท (คืนลูกค้า 2,000 บาท) |
ขั้นตอนการดำเนินการของระบบหลังกดยกเลิก
- เปลี่ยนสถานะการจองเป็น
Cancelled - คืนจำนวน Allotment รถกลับเข้าระบบ inventory กลางผ่าน API ของ CarPro เพื่อให้รถว่างสำหรับผู้อื่นจองต่อ
- สร้างรายการคำขอคืนเงิน (Refund Record) บันทึกลงฐานข้อมูลเพื่อให้ฝ่ายปฏิบัติการ (Operation User) เข้าไปประมวลผลต่อ (เนื่องจากระบบไม่มีการโอนเงินคืนธนาคารแบบอัตโนมัติ/Auto Refund)
- ส่ง Notification ยืนยันการยกเลิกจองให้ลูกค้าผ่าน Email หรือ SMS
- บันทึกข้อมูลการยกเลิก (ใครยกเลิก วันเวลา เหตุผล) ลงในฐานข้อมูลสำหรับ Audit ใน Back-office