วิธีสร้างแอปจองคิว: ช่วงเวลา ความว่าง การแจ้งเตือน และเงินมัดจำ
การสร้างแอปจองคิวต้องใช้สี่อย่างทำงานร่วมกัน ได้แก่ รายการสิ่งที่จองได้ (บริการ ห้อง พนักงาน) กฎว่าแต่ละอย่างว่างเมื่อไร ขั้นตอนการจองที่เสนอเฉพาะช่วงเวลาที่ว่างจริง และหน้าส่วนตัวที่ธุรกิจใช้จัดการการจองที่เข้ามา เครื่องมือสร้างแอปด้วย AI สร้างเวอร์ชันแรกที่ใช้งานได้จากคำอธิบายสั้น ๆ ภายในไม่กี่นาที งานจริงคือการกำหนดกฎ ได้แก่ ความยาวของแต่ละช่วง เวลาพัก การยกเลิก และเขตเวลา แล้วทดสอบว่าการจองซ้ำเกิดขึ้นไม่ได้
เริ่มด้วยการตัดสินใจว่า "การจอง" หมายถึงอะไรสำหรับคุณ
แอปจองคิวดูคล้ายกันจากภายนอก แต่แตกต่างกันมากภายใน ตอบคำถามเหล่านี้ก่อน:
- อะไรถูกจอง บริการ (การตัดผม) คน (ครูสอนพิเศษ) ทรัพยากร (ห้องประชุม สนาม รถตู้) หรือที่นั่งในคาบเรียน (คลาสโยคะที่มี 12 ที่)
- ใช้เวลานานเท่าไร กำหนดตายตัวต่อบริการ หรือให้ลูกค้าเลือกเอง
- ใครเป็นผู้ให้บริการ คนเดียว พนักงานหลายคนที่มีเวลาทำงานของตัวเอง หรือไม่มีใครเลย (เช่นห้อง)
- เกิดอะไรขึ้นหลังจอง ยืนยันทันที หรือเป็นคำขอที่เจ้าของต้องอนุมัติ
- เกี่ยวกับเงินหรือไม่ ฟรี จ่ายวันที่มาใช้บริการ จ่ายมัดจำล่วงหน้า หรือจ่ายเต็มจำนวนล่วงหน้า
"ขอเวลา เจ้าของยืนยันทางอีเมล" สร้างง่ายกว่า "การจองทันทีกับปฏิทินพนักงานสามคนพร้อมเงินมัดจำ" มาก ทั้งสองแบบใช้ได้ เลือกแบบที่คุณต้องการจริงสำหรับเวอร์ชันแรก
แอปต้องมีอะไรบ้าง
ข้อมูล
| ตาราง | ฟิลด์หลัก |
|---|---|
| บริการ | ชื่อ ระยะเวลา ราคา เวลาพักหลังบริการ เปิดใช้งานหรือไม่ |
| พนักงานหรือทรัพยากร | ชื่อ บริการที่ให้ |
| ความว่าง | เวลาทำงานรายสัปดาห์ของพนักงานแต่ละคน และข้อยกเว้น (วันหยุด การปิดชั่วคราว) |
| การจอง | บริการ พนักงาน เวลาเริ่ม เวลาสิ้นสุด ข้อมูลลูกค้า สถานะ (รอ ยืนยัน ยกเลิก) สถานะการชำระเงิน |
| ลูกค้า | ชื่อ อีเมล โทรศัพท์ บันทึก ไม่จำเป็นในช่วงแรก และอาจเก็บไว้ในการจองก็ได้ |
การเก็บ เวลาสิ้นสุด ในทุกการจอง ไม่ใช่แค่เวลาเริ่ม ช่วยให้การตรวจสอบการทับซ้อนง่ายขึ้นมาก
หน้าต่าง ๆ
- สาธารณะ: รายการบริการ ตัวเลือกช่วงเวลา แบบฟอร์มจอง หน้ายืนยัน และลิงก์ยกเลิกหรือเลื่อนนัด
- ส่วนตัว (เจ้าของหรือพนักงาน): ตารางวันนี้ การจองที่กำลังจะมาถึง วิธีบล็อกเวลาหยุด และการตั้งค่าสำหรับบริการและเวลาทำการ
สิทธิ์การเข้าถึง
ลูกค้าควรเห็นเฉพาะช่วงที่ว่างหรือไม่ว่าง และไม่ควรเห็นชื่อลูกค้าคนอื่นเด็ดขาด พนักงานอาจเห็นเฉพาะตารางของตัวเอง ส่วนเจ้าของเห็นทั้งหมด เขียนสิ่งนี้ไว้ เพราะมันกำหนดว่าคุณต้องมีการเข้าสู่ระบบและบทบาทหรือไม่ คู่มือวิธีเพิ่มการเข้าสู่ระบบในแอปของคุณ อธิบายตัวเลือกไว้
ส่วนที่ยาก และวิธีจัดการ
การจองซ้ำ
บั๊กคลาสสิก: คนสองคนโหลดหน้าพร้อมกัน ทั้งคู่เห็นว่า 10:00 ว่าง และทั้งคู่จอง วิธีแก้คือตรวจสอบอีกครั้ง บนเซิร์ฟเวอร์ตอนที่บันทึกการจอง และปฏิเสธหากมีอะไรทับซ้อนแล้ว ขอสิ่งนี้อย่างชัดเจน:
เมื่อบันทึกการจอง ให้ตรวจบนเซิร์ฟเวอร์อีกครั้งว่าไม่มีการจองที่ยืนยันหรือรอดำเนินการของพนักงานคนเดียวกันทับซ้อนกับเวลาที่ขอ (รวมเวลาพักด้วย) หากทับซ้อน ให้ปฏิเสธและแสดงข้อความว่า "เวลานั้นเพิ่งถูกจองไปแล้ว กรุณาเลือกเวลาอื่น"
จากนั้นทดสอบด้วยหน้าต่างเบราว์เซอร์สองหน้าต่าง
เขตเวลา
เก็บทุกเวลาเป็น UTC และแปลงเพื่อแสดงผล ตัดสินใจว่าหน้าจองจะแสดงเขตเวลาของใคร โดยปกติเป็นของธุรกิจสำหรับบริการที่ต้องไปที่สถานที่ และของลูกค้าสำหรับการโทรออนไลน์ และแสดงป้ายกำกับไว้บนหน้า ทดสอบการจองที่ข้ามช่วงเปลี่ยนเวลาออมแสง
เวลาพัก การแจ้งล่วงหน้า และขีดจำกัด
กฎทั่วไปที่ควรตัดสินใจตั้งแต่ต้น: เวลาพักระหว่างนัด การแจ้งล่วงหน้าขั้นต่ำ ("ไม่รับการจองน้อยกว่า 2 ชั่วโมงล่วงหน้า") ระยะเวลาที่จองล่วงหน้าได้ และจำนวนสูงสุดต่อวัน แต่ละข้อใช้ประโยคเดียวในพรอมต์ หากไม่ระบุ AI จะเลือกค่าเริ่มต้นให้
การยกเลิกและการไม่มาตามนัด
ให้ทุกการยืนยันมีลิงก์ยกเลิกที่มีโทเคนเฉพาะ เพื่อให้ลูกค้าไม่ต้องมีบัญชี ตัดสินใจระยะเวลาที่ยกเลิกได้และเงินมัดจำคืนได้หรือไม่ และแสดงนโยบายนี้ก่อนชำระเงิน
การแจ้งเตือน
อีเมลหรือข้อความแจ้งเตือนต้องใช้บางอย่างที่ทำงานตามกำหนดเวลา ("ทุก 15 นาที ส่งการแจ้งเตือนสำหรับการจองที่จะเริ่มในอีก 24 ชั่วโมง") ตรวจว่าเครื่องมือสร้างและโฮสต์ของคุณจัดการงานตามกำหนดเวลาอย่างไร หากไม่รองรับ ให้ใช้ตัวตั้งเวลาภายนอกที่เรียก endpoint ในแอปของคุณ หรือส่งอีเมลยืนยันพร้อมไฟล์นัดหมายปฏิทินแนบไป เพื่อให้ปฏิทินของลูกค้าเตือนเขาเอง ดู วิธีส่งอีเมลจากแอปของคุณ สำหรับฝั่งผู้ให้บริการอีเมล
เงินมัดจำและการชำระเงิน
รูปแบบที่ใช้กันทั่วไปกับ Stripe:
- ลูกค้าเลือกช่วงเวลา แอปสร้างการจองที่ รอดำเนินการ ซึ่งจองช่วงเวลานั้นไว้ชั่วคราว (เช่น 15 นาที)
- แอปส่งลูกค้าไปยัง Stripe Checkout เพื่อจ่ายมัดจำ
- Stripe แจ้งแอปของคุณผ่าน webhook เมื่อการชำระเงินสำเร็จ การจองจะกลายเป็น ยืนยันแล้ว
- หากไม่มีการชำระเงินภายในเวลาที่กำหนด การจองรอดำเนินการจะหมดอายุและช่วงเวลานั้นจะว่างอีกครั้ง
ราคามาตรฐานของ Stripe คือเปอร์เซ็นต์บวกค่าธรรมเนียมคงที่ต่อการชำระด้วยบัตรที่สำเร็จ ไม่มีค่าธรรมเนียมรายเดือน (ณ เดือนกันยายน 2026) อัตราแตกต่างกันตามประเทศ ดูหน้าราคาของ Stripe สำหรับประเทศของคุณ ใช้โหมดทดสอบและบัตรทดสอบจนกว่าทุกอย่างจะทำงานได้ คู่มือการเพิ่มระบบชำระเงิน ของเราอธิบายทีละขั้นตอน
พรอมต์แรกที่ใช้ได้จริง
สร้างแอปจองคิวสำหรับ Northside Barbers บริการ: ตัดผม (30 นาที 25 ดอลลาร์) แต่งหนวด (15 นาที 12 ดอลลาร์) ตัดผมและแต่งหนวด (45 นาที 32 ดอลลาร์) มีช่างสองคน คือ Sam และ Ali ทำงานวันอังคารถึงวันเสาร์ เวลา 9:00-18:00 ลูกค้าเลือกบริการ จากนั้นเลือกช่างหรือ "ช่างคนไหนก็ได้" แล้วเห็นเฉพาะเวลาเริ่ม 15 นาทีที่ว่างในอีก 14 วันข้างหน้า และกรอกชื่อ โทรศัพท์ และอีเมล บันทึกการจองในฐานข้อมูล มีเวลาพัก 10 นาทีหลังแต่ละนัด และตรวจความว่างอีกครั้งตอนบันทึกเพื่อป้องกันการจองซ้ำ แสดงหน้ายืนยันพร้อมลิงก์ยกเลิก เจ้าของมีหน้าส่วนตัวที่แสดงการจองของวันนี้และที่กำลังจะมาถึง ยกเลิกการจองได้ และบล็อกเวลาได้ เวลาใช้เขตเวลาท้องถิ่นของร้าน ดีไซน์สะอาดและออกแบบให้มือถือเป็นหลัก
พรอมต์นี้ระบุบริการ พนักงาน เวลาทำการ กฎ และมุมมองของเจ้าของ ซึ่งเป็นสิ่งที่ AI ต้องเดามิฉะนั้น
ขั้นตอนการสร้าง
- ขั้นตอนการจองหลักก่อน บริการ → ช่วงเวลา → แบบฟอร์ม → การจองที่บันทึกแล้ว → การยืนยัน อย่าทำอย่างอื่นจนกว่าส่วนนี้จะทำงานบนโทรศัพท์ได้
- มุมมองของเจ้าของ รายการของวันนี้ รายการที่กำลังจะมาถึง การยกเลิก การบล็อกเวลา
- ป้องกันหน้าของเจ้าของ เพิ่มการเข้าสู่ระบบก่อนนำข้อมูลจริงเข้า
- กฎ เวลาพัก ระยะเวลาแจ้งล่วงหน้า ระยะเวลาที่จองล่วงหน้าได้ วันหยุด
- อีเมล การยืนยันพร้อมไฟล์นัดหมายปฏิทินและลิงก์ยกเลิก
- เงินมัดจำ หากต้องการ ให้เริ่มในโหมดทดสอบของ Stripe ก่อน
- ทดสอบกรณีขอบ หน้าต่างสองบานจองช่วงเดียวกัน การจองที่ข้ามเที่ยงคืน วันที่เปลี่ยนเวลาออมแสง การยกเลิกการจองที่ทำให้ช่วงเวลาว่างอีกครั้ง
- เผยแพร่ จากนั้นจองจริงด้วยตัวเองหนึ่งครั้งก่อนแชร์ลิงก์
ข้อผิดพลาดที่พบบ่อย
- ตรวจความว่างเฉพาะในเบราว์เซอร์ ดูถูกต้อง แต่ยังจองซ้ำได้
- เก็บเวลาท้องถิ่นโดยไม่มีเขตเวลา ใช้ได้จนกระทั่งนาฬิกาเปลี่ยน
- แสดงชื่อลูกค้าในปฏิทินสาธารณะ แสดงเฉพาะว่างหรือไม่ว่างเท่านั้น
- สร้างการจัดตารางพนักงาน แต้มสะสม และ SMS ตั้งแต่วันแรก เปิดตัวขั้นตอนหลักก่อน แล้วค่อยเพิ่มสิ่งที่ลูกค้าขอจริง
- เจ้าของไม่มีวิธีบล็อกเวลา วันที่ป่วยวันแรกจะทำให้ลูกค้าไม่มาตามนัด
เมื่อ Calendly (หรือที่คล้ายกัน) เป็นทางเลือกที่ดีกว่า
หากคุณเป็นคนคนเดียวที่แชร์เวลาว่างสำหรับการโทร เครื่องมือกำหนดนัดหมายเอาชนะได้ยาก ณ เดือนกันยายน 2026 แพ็กเกจฟรีของ Calendly ครอบคลุมประเภทกิจกรรมหนึ่งประเภท การเชื่อมต่อปฏิทินหนึ่งรายการ และการนัดหมายแบบหนึ่งต่อหนึ่งพร้อมหน้าจองที่ปรับแต่งได้ ส่วนแพ็กเกจแบบชำระเงินเพิ่มประเภทกิจกรรมและฟีเจอร์ทีม เครื่องมือเหล่านี้เชื่อมต่อกับปฏิทินที่มีอยู่ของคุณได้ทันที ซึ่งแอปที่สร้างเองต้องถูกสร้างขึ้นมาเพื่อทำแบบนั้น
สร้างเองเมื่อคุณต้องการกฎที่เครื่องมือเหล่านั้นไม่รองรับ ทรัพยากรที่จองได้หลายอย่าง แบรนด์ของคุณตลอดทั้งระบบ การจองที่เชื่อมกับข้อมูลอื่น (ลูกค้า คำสั่งซื้อ สมาชิกภาพ) หรือคุณกำลังสร้างผลิตภัณฑ์การจองเพื่อขายให้ผู้อื่น
การสร้างด้วย Mythex
ใน Mythex คุณอธิบายแอปจองคิวในแชต ระบบจะสร้างในหน้าตัวอย่างสด และเพิ่มฐานข้อมูล Postgres เมื่อการจองต้องถูกบันทึก เอกสารกรณีใช้งานการจองหน้าเว็บ แนะนำให้เริ่มจากแบบฟอร์มคำขอและรายการสำหรับแอดมิน แล้วค่อยเพิ่มส่วนที่เหลือ ควรชัดเจนว่าอะไรมีให้ในตัวและอะไรที่คุณต้องเชื่อมเอง Mythex ไม่มีการซิงก์ปฏิทิน การแจ้งเตือน SMS หรือผลิตภัณฑ์เงินมัดจำในตัว อีเมลผ่านผู้ให้บริการของคุณเอง เงินมัดจำผ่านคีย์ Stripe ของคุณที่เก็บเป็นความลับของโปรเจกต์ (สูตร Stripe) และกฎการจองซ้ำกับเขตเวลาเป็นสิ่งที่คุณต้องกำหนดและทดสอบเองตามที่กล่าวไว้ข้างต้น
คำสั่ง /test ให้เอเจนต์คลิกผ่านขั้นตอนการจองในหน้าตัวอย่างและรายงานสิ่งที่ผิดพลาด สำหรับพรอมต์เริ่มต้น ลองดูเทมเพลต เว็บจองร้านตัดผม หรือ ตัวจองการประชุม หรือเลือกดู เทมเพลตแอปทั้งหมด
คำถาม
แอปจองคิวต้องมีฟีเจอร์อะไรบ้าง
อย่างน้อยต้องมี รายการบริการพร้อมระยะเวลา วิธีแสดงเฉพาะช่วงเวลาที่ว่าง แบบฟอร์มจอง การยืนยันการจอง และหน้าส่วนตัวที่ธุรกิจเห็นและจัดการการจองได้ ส่วนการแจ้งเตือน เงินมัดจำ และปฏิทินของพนักงานจะตามมาทีหลัง
จะป้องกันการจองซ้ำได้อย่างไร
ตรวจความว่างบนเซิร์ฟเวอร์ตอนที่บันทึกการจอง ไม่ใช่ตอนที่โหลดหน้าเท่านั้น และปฏิเสธการจองหากช่วงเวลานั้นถูกจองไปแล้วระหว่างนั้น ทดสอบโดยพยายามจองช่วงเวลาเดียวกันจากหน้าต่างเบราว์เซอร์สองหน้าต่าง
แอปจองคิวที่สร้างเองรับเงินมัดจำได้ไหม
ได้ วิธีที่ใช้กันทั่วไปคือส่งลูกค้าไปยังหน้า Stripe Checkout เพื่อจ่ายมัดจำ และยืนยันการจองเมื่อการชำระเงินสำเร็จเท่านั้น คุณต้องมีบัญชี Stripe และคีย์ของตัวเอง
ควรสร้างแอปจองคิวเองหรือใช้ Calendly
หากมีคนหนึ่งคนที่ต้องแชร์เวลาว่างของตัวเอง และขั้นตอนการจองไม่มีอะไรพิเศษ เครื่องมือกำหนดนัดหมายอย่าง Calendly เร็วกว่าและประหยัดกว่าในการใช้งาน สร้างเองเมื่อคุณต้องการกฎของตัวเอง มีทรัพยากรหลายอย่าง ต้องการแบรนด์ของคุณตลอดทั้งระบบ หรือต้องการผูกการจองกับข้อมูลอื่นที่คุณเก็บไว้