หน้าแรก › คู่มือใช้งาน › แคชเชียร์และการเงิน
หมวด 03 · Cashier & Payment

คู่มือ POS ร้านอาหาร แคชเชียร์และการเงิน

วิธีใช้ระบบ POS ร้านอาหารสำหรับหน้าจอเก็บเงิน การแยกบิล ตรวจสลิป ใบเสร็จ ใบกำกับภาษี และการคืนเงิน — สำหรับแคชเชียร์ ผู้จัดการ และเจ้าของร้าน

อัปเดตล่าสุด 2026-05-15
แคชเชียร์รับชำระเงินผ่าน QR PromptPay
ภาพจำลอง แคชเชียร์สร้าง QR PromptPay ให้ลูกค้าสแกนชำระ — บรรยากาศการใช้งานจริงของหมวดนี้

3.1 แคชเชียร์และการปิดบิล

เลือกบิล ตรวจรายการ คิดยอด รับเงิน และปิดโต๊ะในขั้นตอนเดียว พร้อม Bill Stepper บอกความคืบหน้า 5 ขั้น

CashierManager
ก่อนเริ่ม
  • ตั้งค่าโหมดชำระเงินและ PromptPay เสร็จแล้ว (1.5)
  • มีบิลอยู่ในสถานะ bill_requested หรือ partially_paid
โครงสร้างหน้า
  • ซ้าย: รายชื่อบิลรอเช็ก แบ่ง 2 กลุ่ม — "ขอเช็คบิล / ชำระบางส่วน" และ "โต๊ะอื่นๆ"
  • กลาง: รายละเอียดบิล + Bill Stepper (บิลชั่วคราว → เลือกวิธีจ่าย → รับเงิน → ชำระครบ → ปิดโต๊ะ)
  • รายการเมนูแบ่งตามผู้จ่าย (participant) + ของกลาง (shared)
  • สรุปยอด: subtotal / service / VAT / discount / total / paid / balance
ขั้นตอน — ปิดบิลเงินสด
ขั้นตอน — รับ QR PromptPay
ผลลัพธ์ที่ควรเห็น
  • บิลย้ายไปสถานะ paid → closed
  • ใบเสร็จพิมพ์ออกมาจากเครื่องพิมพ์
  • โต๊ะกลับเป็น empty พร้อมรับลูกค้าถัดไป
หน้า Cashier ของ OrderDee — bill detail + Bill Stepper
ภาพจริงจาก UI หน้า Cashier — ซ้าย: รายชื่อบิลรอเช็ก (ขอเช็คบิล / ชำระบางส่วน), กลาง: Bill Stepper 5 ขั้น (บิลชั่วคราว → เลือกวิธีจ่าย → รับเงิน → ชำระครบ → ปิดโต๊ะ), รายการเมนูแบ่งตามผู้จ่าย, สรุปยอด Subtotal/VAT/Total และ 4 ปุ่มหลัก (สมาชิก / แยกบิล / QR ต่อคน / ใบเสร็จ)
Payment Modal ของ OrderDee — เลือกวิธีชำระเงิน
ภาพจริงจาก UI Modal "ชำระเงิน" — เลือกวิธี (เงินสด / QR PromptPay / บัตร) ใส่ยอดที่ลูกค้าให้ (กรณีเงินสด) หรือสร้าง QR พร้อม refID (กรณี PromptPay) และปุ่ม "ยืนยันรับเงิน"
💡 เคล็ดลับ — Bill Stepper ทำให้เห็นว่าตอนนี้บิลอยู่ในขั้นไหน หากจำเป็นต้องย้อนกลับ (เช่นลูกค้าขอแก้รายการก่อนชำระ) ระบบจะเตือนและขออนุมัติจาก Manager
บทที่เกี่ยวข้อง

3.2 แยกบิล Split Bill

แยกบิลได้ 3 แบบ: หารเท่า / จ่ายตามคน / แยกตามรายการ — รองรับการส่ง QR ต่อคนเข้ามือถือลูกค้าโดยตรง

Cashier
3 โหมดการแยกบิล
โหมดวิธีใช้
หารเท่าหารยอดรวมเท่าๆ กันตามจำนวนคน เหมาะกับกลุ่มเพื่อนที่ไม่อยากคิดเยอะ
จ่ายตามคนแต่ละคนจ่ายตามรายการที่ตัวเองสั่ง + แบ่งของกลางหารเท่า
แยกตามรายการกำหนดเองว่ารายการไหนใครจ่าย (drag-drop)
ขั้นตอน
  1. ที่หน้า Cashier เลือกบิลที่ต้องการแยก กด ✂ แยกบิล เปิด Split Modal
  2. เลือกโหมด 1 ใน 3 — ระบบคำนวณยอดต่อคนให้ดูพรีวิว
  3. (ถ้าโหมดแยกรายการ) ลาก-วางรายการอาหารให้แต่ละคน ส่วนที่ไม่ระบุจะเข้า "ของกลาง"
  4. กด บันทึกการแยก — ระบบสร้าง bill_shares ของแต่ละคน
  5. กด 📲 QR ต่อคน — ระบบสร้าง sub-QR สำหรับแต่ละ share พร้อมยอดของคนนั้น
  6. ส่ง QR ผ่านการ scan หรือ ส่งลิงก์ — ลูกค้าแต่ละคนจ่าย QR ของตัวเอง
  7. เมื่อทุกคนจ่ายครบ บิลจะเข้าสถานะ paid โดยอัตโนมัติ
Split Bill Modal ของ OrderDee — เลือก 3 โหมด พร้อมพรีวิวยอดต่อคน
ภาพจริงจาก UI Modal "แยกบิล" — แสดงยอดรวมและ VAT ที่ต้องแชร์, 3 ตัวเลือกโหมด (หารเท่า / คนเดียวจ่าย / เลือกรายการ), ฟิลด์หารเท่ากี่คน และพรีวิวยอดต่อคน (เช่น 284 ÷ 2 = คนละ ~142฿)
เอ
SVIP-01
฿120.50
สแกนเพื่อจ่ายส่วนของคุณ
บี
SVIP-01
฿86.00
สแกนเพื่อจ่ายส่วนของคุณ
ซี
SVIP-01
฿77.50
สแกนเพื่อจ่ายส่วนของคุณ
ภาพจำลอง UI QR ต่อคน — ระบบสร้าง QR PromptPay แยกสำหรับแต่ละ share (เอ/บี/ซี) พร้อมยอดของคนนั้น (รวม VAT และ Service ตามสัดส่วน) — ส่งให้ลูกค้าแต่ละคนสแกนจ่ายเองได้
📌 หมายเหตุ — VAT และ Service Charge จะถูกหาร ตามสัดส่วน ของแต่ละคนโดยอัตโนมัติ ไม่ต้องคิดเอง
บทที่เกี่ยวข้อง

3.3 ยืนยันการชำระเงินและสลิป

หน้าตรวจสลิป QR PromptPay ที่อัพโหลดเข้ามา — ยืนยันรับเงิน หรือปฏิเสธหากสลิปไม่ถูกต้อง พร้อม AI ช่วยตรวจอัตโนมัติ

CashierManager
โครงสร้างหน้า
  • Header แสดงจำนวนสลิปรอตรวจ + filter (ทั้งหมด / รอตรวจ / วันนี้)
  • Grid การ์ดสลิป 3 คอลัมน์: รูปสลิป + โต๊ะ + ยอด + เวลา + age badge (🕐 ส้ม > 5 นาที, แดง > 10 นาที)
ขั้นตอน — ยืนยันรับเงิน
  1. ไปเมนู ตรวจสลิป (Payments) — เห็นการ์ดสลิปรอตรวจ
  2. คลิกการ์ด เปิด Slip Modal — รูปขยายได้ (click zoom) + ข้อมูลบิล
  3. ตรวจ 4 จุด: ยอดตรง / เวลาเป็นวันนี้ / ผู้รับถูกต้อง (PromptPay ID ร้าน) / ไม่ใช่สลิปซ้ำ
  4. กด ✓ ยืนยันรับเงิน — บิลกลายเป็น paid
  5. หากผิด กด ✗ ปฏิเสธสลิป เลือกเหตุผล + กรอกหมายเหตุ → ระบบแจ้งลูกค้าให้อัปโหลดใหม่
หน้า Payments ของ OrderDee — Grid การ์ดสลิป QR PromptPay รอตรวจ
ภาพจริงจาก UI หน้าตรวจสลิป — header แสดงจำนวนสลิปรอตรวจ + filter (ทั้งหมด / รอตรวจ / วันนี้), grid การ์ดสลิป 3 คอลัมน์ พร้อมรูปสลิป โต๊ะ ยอด เวลา และ age badge (🕐 ส้ม > 5 นาที, แดง > 10 นาที)
Slip Modal ของ OrderDee — รูปสลิปขยายและปุ่ม ยืนยัน/ปฏิเสธ
ภาพจริงจาก UI Modal ตรวจสลิป — รูปสลิป QR PromptPay ขยาย (click zoom ได้), ข้อมูลบิล (โต๊ะ/ยอด/เวลา), ผลการตรวจ AI OCR และปุ่ม "✓ ยืนยันรับเงิน" / "✗ ปฏิเสธสลิป"
💡 เคล็ดลับ AI — ระบบใช้ AI Slip OCR ตรวจสลิปอัตโนมัติ: หาก amount + receiver + เวลา ตรงทั้งหมด ระบบจะ auto-confirm โดยไม่ต้องคนกด ลด workload ของแคชเชียร์
⚠️ ระวังสลิปปลอม — ตรวจ เวลาที่โอน ต้องเป็นวันนี้และใกล้กับเวลาปัจจุบัน หากเป็นเวลานานเกินไป (เช่น โอนเมื่อ 3 ชั่วโมงก่อน) ควรปฏิเสธและขอใหม่

3.4 ใบเสร็จและใบกำกับภาษี

ออกใบเสร็จรับเงิน (RC) สำหรับลูกค้าทั่วไป หรือใบกำกับภาษี (TI) สำหรับลูกค้าที่ต้องใช้ประกอบเอกสารบัญชี/ภาษี รองรับการพิมพ์ Thermal 80mm และ A4

CashierManager
ขั้นตอน — ออกใบเสร็จรับเงิน
  1. หลังบิลชำระเสร็จ ระบบนำไปที่หน้าเลือกประเภท: 🧾 ใบเสร็จรับเงิน หรือ 📄 ใบกำกับภาษี
  2. กด ใบเสร็จรับเงิน — ระบบออก receipt เลขที่ R-YYYY-MM-XXXX ทันที
  3. เลือกขนาดกระดาษ: 80mm Thermal (default) หรือ A4
  4. กด 🖨 พิมพ์ — ระบบสร้าง print job และส่งไปยังเครื่องพิมพ์ที่ตั้งไว้
  5. หาก print fail ระบบโชว์ status bar สีแดง — กด พิมพ์ซ้ำ
ขั้นตอน — ออกใบกำกับภาษี
  1. กด ใบกำกับภาษี — เปิดฟอร์มกรอกข้อมูลลูกค้า
  2. เลือกประเภทลูกค้า: บุคคลธรรมดา หรือ นิติบุคคล
  3. กรอก: ชื่อ, เลขผู้เสียภาษี 13 หลัก, ที่อยู่, สาขา (ถ้านิติบุคคล)
  4. กด ออกใบกำกับภาษี — ระบบออกใบเลขที่ R-YYYY-MM-XXXX ประเภท tax_invoice
  5. พิมพ์/ส่ง LINE/อีเมลให้ลูกค้า
🧾
ใบเสร็จรับเงิน

สำหรับลูกค้าทั่วไป — ออกได้ทันที

📄
ใบกำกับภาษี

สำหรับลูกค้าที่ต้องการเอกสารบัญชี/ภาษี

ภาพจำลอง UI หน้าเลือกประเภทใบเสร็จหลังบิลชำระเสร็จ — กด "ใบเสร็จรับเงิน" สำหรับลูกค้าทั่วไป หรือ "ใบกำกับภาษี" เพื่อกรอกข้อมูลลูกค้า (ชื่อ, เลขผู้เสียภาษี, ที่อยู่)
ครัวคุณป้า

สาขาสีลม · TEL 02-234-5678


RECEIPT #R-2026-05-2401
16/05/2026 14:32 · โต๊ะ SVIP-01

ผัดไทยกุ้งสด ×2160.00
ข้าวเปล่า ×240.00
ชาเย็น ×290.00

Subtotal290.00
Service 10%29.00
VAT 7%22.33

TOTAL฿341.00
เงินสดรับ500.00
เงินทอน159.00

ขอบคุณที่ใช้บริการ ❤️

ภาพจำลอง UI ตัวอย่าง Receipt Thermal 80mm — โลโก้ร้าน, เลขใบเสร็จ, รายการอาหาร, ยอดรวม + เงินทอน — รูปแบบเดียวกับใบเสร็จที่พิมพ์ออกจากเครื่อง
📌 หมายเหตุ — ใบเสร็จที่ออกแล้ว แก้ไขไม่ได้ หากผิดต้องออกใบใหม่ + ออก refund ของใบเก่า ระบบเก็บเลข PDF ทุกใบเพื่อ audit

3.5 คืนเงินและ Void บิลที่จ่ายแล้ว

ออกคำขอคืนเงิน (Refund) ทั้งบิล/บางรายการ หรือ Void บิลที่ผิดพลาด — ต้องผ่านการอนุมัติของ Manager เสมอ

CashierManager
โครงสร้างหน้า Refunds
  • Summary cards (4 ช่อง): รออนุมัติ / คืนวันนี้ / Void วันนี้ / เกิน ฿500 รออนุมัติ
  • Date range tabs: วันนี้ / เมื่อวาน / 7 วัน / 30 วัน / ทั้งหมด
  • Filter: ประเภท (Refund/Void), วิธีคืน (เงินสด/QR/โอน/บัตร), สถานะ (รออนุมัติ/อนุมัติแล้ว/เสร็จ/ปฏิเสธ)
ขั้นตอน — ขอคืนเงิน
  1. ไปเมนู คืนเงิน (Refunds) กด + ขอคืนเงิน
  2. ค้นหา เลขที่บิล หรือเลือกจากลิสต์ — ระบบแสดงรายการในบิล
  3. เลือกประเภท: Refund (คืนเงินจริง) หรือ Void (ยกเลิกบิลผิด ไม่มีเงินจริง)
  4. เลือกขอบเขต: full (ทั้งบิล) / items (เลือกรายการ) / custom (กำหนดยอดเอง)
  5. กรอก เหตุผล + เลือก วิธีคืน (เงินสด/QR)
  6. กด ส่งคำขอ — สถานะ = pending_approval รอ Manager
ขั้นตอน — อนุมัติ (Manager)
  1. Manager เปิด notification "ขอคืนเงิน" หรือไปที่ Refunds tab "รออนุมัติ"
  2. คลิกแถว เปิด Detail Drawer — เห็นรายละเอียดบิลเดิม + รายการที่ขอคืน + เหตุผล
  3. กด ✓ อนุมัติ — ระบบสร้าง refund record + ออกใบเสร็จปรับปรุง (refund receipt)
  4. หากไม่อนุมัติ กด ปฏิเสธ ใส่เหตุผล — Cashier จะเห็นและสามารถส่งใหม่
หน้า Refunds ของ OrderDee — Summary cards + ตาราง + status badges
ภาพจริงจาก UI หน้าคืนเงิน/Void — Summary cards 4 ช่อง (รออนุมัติ / คืนวันนี้ / Void วันนี้ / เกิน ฿500 รออนุมัติ), Date range tabs, Filter ประเภทและวิธีคืน, Status tabs และตารางรายการคำขอ refund/void พร้อม status badges
Create Refund Modal ของ OrderDee
ภาพจริงจาก UI Modal "+ ขอคืนเงิน" — ค้นหาเลขที่บิล, เลือกประเภท (Refund / Void), เลือกขอบเขต (full / items / custom), กรอกเหตุผล, เลือกวิธีคืน และส่งคำขอเข้ารออนุมัติของ Manager
⚠️ Refund vs Void — Refund: บิลปกติ ลูกค้าจ่ายแล้วและเราคืนเงิน, Void: บิลผิด ยังไม่ควรนับ (เช่น พนักงานกดผิด) — เลือกให้ถูกเพราะมีผลต่อรายงานยอดขาย

3.6 ยอดเงิน ภาษี และการปัดเศษ

ทำความเข้าใจสูตรคำนวณยอดบิลของ OrderDee ตั้งแต่ subtotal ไปจนถึง total — ใช้ตรวจสอบยอดและอธิบายลูกค้าได้

OwnerManagerCashier
ลำดับการคำนวณ
  1. Subtotal = Σ (ราคาเมนู × จำนวน + modifier) ของทุกรายการที่ไม่ยกเลิก
  2. − Discount ส่วนลด เช่น คูปอง หรือใช้แต้มแลกส่วนลด
  3. + Service Charge = (Subtotal − Discount) × อัตรา service (เช่น 10%)
  4. + VAT = (Subtotal − Discount + Service) × อัตรา VAT (เช่น 7%) กรณี exclusive
  5. ± Rounding ปัดเศษตามกฎที่ตั้ง (ปัดขึ้น/ลง/ปกติ)
  6. = Total ยอดสุทธิที่ลูกค้าจ่าย
กรณี VAT รวมในราคา (inclusive)
  • ราคาเมนูในระบบ รวม VAT แล้ว — Subtotal ที่ลูกค้าเห็นในใบเสร็จเป็น "ยอดรวม VAT"
  • บนใบกำกับภาษี ระบบยังคงแยก ยอดก่อน VAT และ VAT 7% ออกมาให้ลูกค้าใช้ประกอบเอกสารบัญชี/ภาษีตามที่กฎหมายกำหนด
  • ดูตัวอย่างคำนวณละเอียดใน บท 1.4 VAT และ Service Charge
การใช้แต้ม / คูปอง / ของแถม
  • แต้ม — แลกเป็น discount_amount ก่อนคิด service และ VAT
  • คูปอง % — คิดจาก subtotal (ก่อน service/VAT) เว้นแต่จะตั้งกฎพิเศษ
  • คูปอง buy_x_get_y — ลดราคารายการ y ใน order_items snapshot ทำให้ subtotal ลดลง
  • free_item — เพิ่มเมนูฟรีเข้า order_items ที่ price_snapshot = 0
ตัวอย่าง breakdown
ครัวคุณป้า · ตามสั่งไทย

บิล #3e60b284 · โต๊ะ SVIP-01

ผัดไทยกุ้งสด ×2160.00
ข้าวเปล่า ×240.00
ชาเย็น ×290.00
Subtotal290.00
− Discount (คูปอง 10%)−29.00
+ Service Charge 10%26.10
+ VAT 7%20.10
± Rounding (ปัดมาตรฐาน)−0.20
Total฿307.00
ภาพจำลอง UI ตัวอย่างใบเสร็จที่แสดงทุกบรรทัดของการคำนวณ — Subtotal 290 → ส่วนลด 10% → Service 10% → VAT 7% → ปัดมาตรฐาน → Total 307฿
💡 เคล็ดลับ — ทุกบิลเก็บ snapshot ของราคา ชื่อ และ modifier ในตอนที่สั่ง — แม้คุณจะแก้ราคาเมนูในภายหลัง บิลเก่ายังคงโชว์ยอดเดิมเป๊ะ