ไอเดีย #35: ระบบสั่งอาหารผ่าน QR ที่โต๊ะ
ร้านอาหารตามสั่งช่วงเที่ยงคือสนามรบดี ๆ นี่เอง พนักงานเดินรับออร์เดอร์ไม่ทัน ลูกค้าโบกมือเรียกหลายรอบ จดผิดโต๊ะบ้าง ครัวอ่านลายมือไม่ออกบ้าง ตอนจ่ายเงินก็ต้องมานั่งรวมยอดกันใหม่ ระบบสั่งอาหารผ่าน QR ที่โต๊ะช่วยให้ลูกค้าสแกนแล้วสั่งเองได้เลย ร้านเล็กก็ใช้ได้โดยไม่ต้องลงทุนเครื่อง POS ราคาแพง แค่มีแท็บเล็ตหรือมือถือไว้ที่ครัวสักเครื่อง
ใครจะใช้
- ลูกค้า — สแกน QR ที่โต๊ะ ดูเมนู สั่งอาหาร เรียกเช็กบิล
- ครัว — เห็นรายการที่ต้องทำเรียงตามเวลา กดเปลี่ยนสถานะ
- พนักงานเสิร์ฟหรือแคชเชียร์ — ดูโต๊ะที่อาหารพร้อมเสิร์ฟ ปิดบิล รับเงิน
- เจ้าของร้าน — จัดการเมนู ราคา และดูยอดขาย
ฟีเจอร์ขั้นต่ำ (MVP)
- สร้าง QR ประจำโต๊ะ เมื่อสแกนจะเปิดเมนูที่ผูกกับโต๊ะนั้นอัตโนมัติ
- เมนูแยกหมวด มีรูป ราคา ตัวเลือกเสริม เช่น พิเศษ ไม่ใส่ผัก ระดับความเผ็ด และปิดเมนูที่ของหมดได้ทันที
- ตะกร้าและส่งออร์เดอร์ สั่งเพิ่มได้หลายรอบในบิลเดียว
- หน้าจอครัวแสดงออร์เดอร์ใหม่แบบเรียลไทม์ สถานะ รอทำ / กำลังทำ / พร้อมเสิร์ฟ
- สรุปบิลต่อโต๊ะ แสดง PromptPay QR ตามยอดจริง หรือเลือกจ่ายเงินสดที่เคาน์เตอร์
- รายงานยอดขายรายวันและเมนูขายดี
ต่อยอดได้อีก
- เชื่อม payment gateway ให้ยืนยันการจ่ายอัตโนมัติผ่าน webhook ไม่ต้องดูสลิป
- แจ้งเตือนพนักงานผ่าน LINE เมื่อมีโต๊ะเรียกพนักงานหรือขอเช็กบิล
- เมนูหลายภาษาสำหรับร้านในแหล่งท่องเที่ยว
- ตัดสต็อกวัตถุดิบตามสูตรของแต่ละเมนู
โครงข้อมูลตั้งต้น
tables— id, name, qr_token, is_activemenu_items— id, category_id, name, price, image, is_availablebills— id, table_id, status, subtotal, service_charge, vat, total, opened_at, closed_atorder_items— id, bill_id, menu_item_id, qty, options_json, unit_price, kitchen_status, created_atpayments— id, bill_id, method, amount, ref, paid_at
ระดับความยาก และสิ่งที่จะได้เรียนรู้
ระดับ ปานกลาง ถึง ท้าทาย ถ้าต้องการเรียลไทม์จริงจัง ฝั่ง backend ใช้ Yii2 หรือ Laravel + PostgreSQL/MySQL ฝั่งลูกค้าเป็นเว็บมือถือธรรมดาก็พอ สิ่งที่จะได้ฝึก:
- การส่งข้อมูลเรียลไทม์ไปหน้าครัว ด้วย WebSocket หรือ Server-Sent Events หรือเริ่มจาก polling ก่อน
- การเก็บราคา ณ ตอนสั่ง (snapshot) ลงใน order item ไม่ให้เปลี่ยนตามเมนูภายหลัง
- การสร้าง PromptPay QR ตามมาตรฐาน EMVCo พร้อมยอดเงิน
- การคำนวณ service charge และ VAT 7% แล้วปัดเศษสตางค์ให้ตรงกับใบเสร็จ
ข้อควรระวัง
- QR ที่โต๊ะถ้าเป็นแค่เลขโต๊ะ คนอาจแก้ URL สั่งแกล้งโต๊ะอื่นได้ ควรใช้ token สุ่มและผูกกับบิลที่เปิดอยู่เท่านั้น
- สลิปโอนเงินปลอมได้ง่าย อย่าปิดบิลจากรูปสลิปอย่างเดียว ควรมีคนยืนยันหรือใช้ระบบตรวจยอดเข้าจริง
- ช่วงคนแน่น ลูกค้าหลายคนในโต๊ะเดียวกดสั่งพร้อมกัน ต้องออกแบบให้ไม่เกิดออร์เดอร์ซ้ำจากการกดสองครั้ง
ใครเคยทำระบบ QR order ให้ร้านจริงบ้างครับ หน้าครัวใช้ WebSocket หรือ polling แล้วรับโหลดช่วงพีกได้แค่ไหน และถ้าเป็นคุณจะจัดการเรื่องแยกบิลในโต๊ะเดียวยังไง มาแชร์ประสบการณ์กันในกระทู้นี้ หรือโพสต์ผลงานของคุณไว้ในบอร์ดนี้ได้เลย