
ร้าน Moonshine
สินค้า 3,000 รายการ นับวันละ 25 ไม่ต้องปิดร้าน และรู้ว่าของหายจากตรงไหน
ภาพประกอบ ไม่ใช่ภาพร้านจริงของลูกค้า
- ประเภทงาน
- ระบบ POS + คุมสต็อกกันของหาย (Web App + แอป Android)
- ลูกค้า
- ร้านของใช้ทุกอย่าง สินค้า 3,000+ รายการ จ้างพนักงานขายแทนเจ้าของ
- ผู้ใช้งาน
- พนักงานหน้าร้าน (แท็บเล็ต) + เจ้าของร้าน (มือถือ + LINE)
- ขอบเขตงาน
- วิเคราะห์ปัญหา · ออกแบบกระบวนการ · UX/UI · พัฒนาระบบ · วางระบบบน Cloud · แอป Android · เชื่อมฮาร์ดแวร์หน้าร้าน
ปุ่มราคา (ของไม่มีบาร์โค้ด)
สรุปประจำวัน
โจทย์
โจทย์: ของหาย แต่ไม่รู้ว่าหายตรงไหน
ร้านที่มีสินค้าหลายพันรายการมักเจอปัญหาเดียวกัน คือนับสต็อกทั้งร้านไม่ไหว ของหายแต่ไม่รู้ว่าหายตรงไหน เงินสดไม่ตรง และเจ้าของไม่มีเวลาตรวจเอง
นับทั้งร้านพร้อมกันไม่ได้
สินค้ากว่า 3,000 รายการ
“นับทีต้องปิดร้านหลายวัน แต่ถ้าไม่นับก็ไม่รู้ว่าของหาย”
ขายไม่ลงบิล
หรือยกเลิกบิลแล้วเก็บเงินเอง
“ไม่รู้ว่าขายไปเท่าไรกันแน่”
เงินสดขาดตอนปิดกะ
ไม่รู้ว่าขาดเพราะอะไร
“ปิดกะทีไรเงินไม่ตรง”
ตัวเลขสต็อกถูกแก้
ให้ดูเหมือนของไม่หาย
“ตัวเลขในระบบสวย แต่ของบนชั้นไม่เท่า”
ลูกค้าขโมยของ
แต่ไม่รู้ว่าหายจากชั้นไหน
“รู้ว่าหาย แต่ไม่รู้ตรงไหน”
เจ้าของไม่มีเวลา
ไล่ตรวจยอดทุกวันไม่ไหว
“ไม่มีเวลานั่งไล่ยอดทุกวัน”
ข้อความในเครื่องหมายคำพูดคือสิ่งที่เราได้ยินระหว่างเก็บความต้องการกับเจ้าของร้าน
แนวคิด
แนวคิดของระบบ
ระบบรู้ยอดเอง
ยอดที่ควรมีคำนวณจากของที่รับเข้าลบของที่ขายออก ทุกชิ้นถูกบันทึกด้วยการสแกน ไม่ต้องให้คนจดตัวเลข
ไม่ต้องนับทั้งร้าน แค่นับทีละนิดทุกวัน
ระบบสุ่มสินค้าให้นับวันละประมาณ 25 รายการ โดยให้น้ำหนักกับสินค้าที่มีความเสี่ยงมากกว่า
คนขายไม่ได้เป็นคนคุมตัวเลข
พนักงานมองไม่เห็นยอดในระบบและแก้สต็อกไม่ได้ การปรับยอดทำได้เฉพาะเจ้าของ
นับรอบ (Cycle Count)
ไม่ต้องปิดร้านนับ 3,000 รายการ แค่นับวันละ 25
ระบบสุ่มสินค้าให้พนักงานนับทุกวัน ใช้เวลา 10–15 นาที สินค้าที่ขายดี ราคาสูง เคยหาย หรือไม่ได้นับนาน จะถูกสุ่มบ่อยกว่า ลากแถบด้านล่างเพื่อดูว่าการนับทีละนิดครอบคลุมทั้งร้านได้เร็วแค่ไหน
วันที่ใช้ระบบ
30 วัน (~1.0 เดือน)
นับครอบคลุมแล้ว
25%
- นับไปแล้ว
- 750 / 3,000
- ต่อวัน
- 25 รายการ · 10–15 นาที
- นับเฉลี่ยต่อรายการ
- เสี่ยงสูง 0.4 · ทั่วไป 0.2 ครั้ง
การจำลองนี้ใช้ตัวเลขตัวอย่างเพื่อสาธิต ไม่ใช่ข้อมูลจริงของร้านลูกค้า
เริ่มใช้ได้ทันที ไม่ต้องนับทั้งร้านก่อน — ยอดตั้งต้นของสินค้าเป็น "ไม่ทราบ" การนับครั้งแรกจะกลายเป็นยอดตั้งต้น
สุ่มจริงและถ่วงน้ำหนักตามความเสี่ยง (แนวคิด ABC) จากมูลค่าขาย 90 วัน ราคา ประวัติของหาย และระยะเวลาที่ไม่ได้นับ
พนักงานจึงเดาไม่ได้ว่าพรุ่งนี้จะต้องนับอะไร ซ่อนของหายไว้ในสินค้าที่ไม่ถูกนับไม่ได้
- ร้านยังเปิดขายตามปกติทุกวัน — ไม่ต้องปิดร้านนับสต็อกเลยสักวัน
นับแบบไม่เห็นยอด (Blind Count)
การนับเดียวกัน แต่สองคนเห็นไม่เหมือนกัน
พนักงานไม่เห็นยอดที่ระบบคาดไว้ และระบบไม่ส่งข้อมูลนี้ไปที่แท็บเล็ตเลย ไม่ใช่แค่ซ่อนไว้บนหน้าจอ ถ้ายอดต่างเกินเกณฑ์ ระบบสั่งให้คนอื่นนับซ้ำ
ถ่านไฟฉาย AA แพ็ก 4
โซน B · ชั้น 2
แชมพูขวดใหญ่
โซน D · ชั้น 1
เทปกาวใส
โซน A · ชั้น 3
บะหมี่กึ่งสำเร็จรูป ลัง
โซน C · ชั้น 1
พนักงานกรอกได้แค่จำนวนที่นับ ไม่มียอดในระบบให้เทียบ จึงนับแบบเดาให้ตัวเลขตรงไม่ได้
ตัวอย่างสมมติ ไม่ใช่ข้อมูลจริงของร้านลูกค้า
ปิดกะแบบไม่เห็นยอดเหมือนกัน
พนักงานนับเงินในลิ้นชักโดยไม่รู้ว่าระบบคาดไว้เท่าไร ระบบคำนวณส่วนต่างเองแล้วแจ้งเจ้าของ
ระบบแก้ปัญหาอย่างไร
ปิดช่องโหว่ที่ทำให้ของหายและเงินขาด
ขายโดยไม่ลงบิล หรือกดขายแบบไม่ระบุสินค้า
ทุกบรรทัดในบิลต้องเป็นสินค้าจริง ถ้าสแกนไม่เจอ พนักงานเพิ่มสินค้าด่วนได้ในไม่กี่วินาที แล้วรอเจ้าของตรวจภายหลัง
ยกเลิกบิลแล้วเก็บเงินเอง
ยกเลิกหรือแก้บิลได้ แต่ต้องระบุเหตุผล ระบบเก็บประวัติก่อน-หลังทั้งหมด พร้อมเวลาที่แม่นยำสำหรับย้อนดูกล้องวงจรปิด
แก้ตัวเลขสต็อกหรือบิลย้อนหลัง
ข้อมูลเงินและสต็อกแก้หรือลบไม่ได้ (Append-only) ฐานข้อมูลปฏิเสธการแก้ไขตั้งแต่ระดับล่างสุด ทุกการแก้จึงเป็นรายการใหม่ที่ตรวจย้อนได้
แยกไม่ออกว่านับผิดหรือของหายจริง
ยอดต่างเกินเกณฑ์ → ให้คนอื่นนับซ้ำ (คนเดิมนับซ้ำไม่ได้) ถ้ายังต่างอยู่ สินค้าจะถูกติดธงและแจ้งเจ้าของ
ไม่รู้ว่าของหายจากชั้นไหน
รายงานของหายรายเดือน แยกตามหมวดและโซนชั้นวาง แสดงทั้งมูลค่าและ % ของยอดขาย
ไม่รู้ว่าพนักงานคนไหนยอดผิดปกติ
เทียบยอดพนักงานในวันและช่วงเวลาเดียวกัน เพื่อหาคนที่ยอดต่ำกว่าปกติ
ฟีเจอร์หลัก
สามมุมมอง ในระบบเดียว
ปุ่มราคา (ของไม่มีบาร์โค้ด)
หน้าร้าน
พนักงาน · แท็บเล็ต
- ขายด้วยการสแกน ลงตะกร้าทันทีไม่ต้องรอเซิร์ฟเวอร์ ตอบสนองด้วยเสียง สีขอบจอ และการสั่น
- ขายชิ้นเดียวแล้วปิดบิลเงินสดได้ภายใน 3 แตะ ชำระเงินสด (คำนวณเงินทอน เปิดลิ้นชัก) หรือโอน (ถ่ายรูปสลิป)
- ปุ่มราคาสำหรับของชิ้นเล็กที่ไม่มีบาร์โค้ด และ "ของไม่มีป้าย" ที่ถ่ายรูปใส่ราคาให้เจ้าของตรวจทีหลัง
- รับของเข้า 3 แบบ และ "รับของแบบเร็ว" ถ่ายรูปบิลไว้ก่อน ค่อยใส่รายการทีหลัง
- สอนใช้งานในตัว โหมดฝึกขายที่ไม่บันทึกจริง และ "โหมดง่าย" ตัวอักษรใหญ่
ยอดขายวันนี้
฿18,420
รออนุมัติ
ผลนับวันนี้
ตรง 23 รายการ
⚑ ต่างเกินเกณฑ์ 1
เจ้าของ
มือถือ
- ภาพรวมยอดขายวันนี้ รายการรออนุมัติ (รับของ ของเสีย สินค้าใหม่) และผลนับสต็อก
- สุ่มตรวจเองได้ทั้งตามความเสี่ยง ทั้งโซน หรือทั้งหมวด ผลที่เจ้าของนับถือเป็นตัวตัดสิน
- รายงาน 10 แบบ: ยอดขาย · เทียบยอดพนักงาน · กะและเงินสด · ของหาย · สต็อกคงเหลือ · ของใกล้หมด · ของค้างนาน · ความครอบคลุมการนับ · ประวัติบิล · Audit log
- การเงิน รายรับ-รายจ่าย ทุนต่อชิ้น ซัพพลายเออร์ และกำไรขั้นต้น
- ออกบาร์โค้ดของร้านเอง (EAN-13) พิมพ์สติ๊กเกอร์หรือบอร์ดบาร์โค้ด
สรุปประจำวัน
แจ้งเตือน LINE
ส่งถึงหลายคนได้
- การ์ดสรุปประจำวัน: ยอดขาย ของใกล้หมด และผลนับที่ต่าง
- แจ้งทันทีเมื่อเงินขาดหรือผลนับต่างเกินเกณฑ์
- แจ้งเมื่อมีรายการรออนุมัติ พร้อมลิงก์ไปหน้าที่เกี่ยวข้อง ยืนยันผลนับได้ด้วยปุ่มเดียว
- ผู้รับเชื่อมบัญชีด้วยรหัสใช้ครั้งเดียว
ใช้กับอุปกรณ์หน้าร้านที่มีอยู่
เครื่องพิมพ์ใบเสร็จ
Bluetooth และ USB (ESC/POS) วาดใบเสร็จเป็นภาพ พิมพ์ภาษาไทยได้ทุกรุ่น
สแกนบาร์โค้ด
ใช้กล้องแท็บเล็ต (ML Kit) หรือเครื่องยิง USB/Bluetooth สแกนได้ทุกหน้า
ลิ้นชักเงิน
เปิดอัตโนมัติเมื่อขายเงินสด
แท็บเล็ต Android รุ่นเก่า
รองรับ WebView เก่าและจอ 15.6" ส่วน iOS ใช้ผ่าน Safari
ผลลัพธ์
ก่อนและหลังใช้ระบบ
- นับสต็อก: สุ่มนับวันละ ~25 รายการ ครบทั้งร้านใน 3–4 เดือน
- เริ่มใช้ระบบ: เริ่มได้ทันที การนับครั้งแรกกลายเป็นยอดตั้งต้น
- ยอดขายจริง: ทุกบรรทัดในบิลเป็นสินค้าจริงจากการสแกน
- ยกเลิกบิล: ต้องระบุเหตุผล เก็บประวัติก่อน-หลังพร้อมเวลา
- เงินสดปิดกะ: นับแบบไม่เห็นยอด ระบบคำนวณส่วนต่างแล้วแจ้งเจ้าของ
- ตัวเลขสต็อก: แก้หรือลบย้อนหลังไม่ได้ ทุกการปรับยอดตรวจย้อนได้
- ของหาย: รายงานแยกตามหมวดและโซนชั้นวาง
- เวลาของเจ้าของ: สรุปทาง LINE ทุกวัน แจ้งทันทีเมื่อผิดปกติ
นับสต็อก
เริ่มใช้ระบบ
ยอดขายจริง
ยกเลิกบิล
เงินสดปิดกะ
ตัวเลขสต็อก
ของหาย
เวลาของเจ้าของ
ฝั่งเทคนิค
เบื้องหลังทางเทคนิค
- สต็อกคำนวณจากสมุดบัญชีการเคลื่อนไหวของสินค้า ตรวจย้อนได้ทุกชิ้นว่ามาจากการขาย การรับ การยกเลิกบิล ของเสีย หรือการปรับยอด
- ใช้ trigger ในฐานข้อมูลปฏิเสธคำสั่ง UPDATE/DELETE กับข้อมูลธุรกรรม การแก้บิลจึงสร้างเป็น revision ใหม่
- ตรวจสิทธิ์ทุกคำสั่งที่ฝั่งเซิร์ฟเวอร์ ข้อมูลที่ส่งให้พนักงานกำหนดคอลัมน์ไว้ชัดเจน จึงไม่มียอดคาดหลุดออกไป
- แยกการสแกนจากเครื่องยิงบาร์โค้ดออกจากการพิมพ์ของคนด้วยจังหวะการกดแป้น จึงสแกนได้ทุกหน้าแม้เคอร์เซอร์อยู่ในช่องอื่น
- เลขบิลเรียงต่อเนื่องไม่ซ้ำ บันทึกการขายกันส่งซ้ำ (idempotent) เงินเก็บเป็นหน่วยสตางค์ ใช้เวลาจากเซิร์ฟเวอร์ทั้งหมด
- PIN และรหัสผ่านเข้ารหัสด้วย scrypt ล็อกชั่วคราวเมื่อกรอกผิดซ้ำ แท็บเล็ตต้องลงทะเบียนโดยเจ้าของก่อนใช้งาน
- Serverless บน AWS ออกแบบให้ต้นทุน infrastructure ต่ำพอกับค่าบริการรายปีระดับร้านค้าปลีก มี Unit test และ Integration test บนฐานข้อมูลจริง
ร้านคุณมีสินค้าเยอะ และอยากรู้ว่าของหายตรงไหนไหม?
เล่าให้เราฟังว่าร้านคุณขายและรับของยังไง เราประเมินให้ฟรีว่าระบบแบบไหนเหมาะกับร้าน และใช้งบเท่าไหร่