การเชื่อมต่อ POS
หน้าการตั้งค่า การเชื่อมต่อ ใช้เชื่อมเซิร์ฟเวอร์ HandyCafe ที่มีสิทธิ์เข้ากับเครื่อง Ödeal D2D สิทธิ์การใช้งานจะถูกตรวจสอบผ่าน HandyCafe Cloud เมนูและหน้านี้จะถูกซ่อนทั้งหมดเมื่อร้านไม่ได้รับอนุญาตให้ใช้ Ödeal
ก่อนเริ่มต้น
คุณต้องมีการสมัครสมาชิก HandyCafe Cloud ที่ใช้งานอยู่ merchant key ของ Ödeal และ secret key ของ Ödeal นอกจากนี้คุณต้องสร้างเครื่องรูดบัตรในส่วน Cihazlarım ของ Ödeal ด้วย ชื่อที่กำหนดให้เครื่องนั้นแบบตรงตัวคือค่า externalDeviceKey ของเครื่อง ให้เริ่มจากสภาพแวดล้อม Stage แล้วเปลี่ยนไปใช้ Production ต่อเมื่อ Ödeal อนุมัติข้อมูลรับรองของ Production และการตั้งค่า callback แล้วเท่านั้น
ตั้งค่า Ödeal
- เปิด การตั้งค่า แล้วเลือก การเชื่อมต่อ
- ในส่วน บัญชี Ödeal ให้กรอก merchant key และ secret key ที่ Ödeal ให้มา HandyCafe จะส่งค่าเหล่านี้ไปยัง HandyCafe Cloud โดยตรง ค่าจะถูกเข้ารหัสไว้ ไม่ถูกเก็บในฐานข้อมูลในเครื่อง และจะไม่ถูกแสดงอีก
- เลือก ทดสอบการเชื่อมต่อ หากมีคีย์ใหม่อยู่ HandyCafe จะบันทึกคีย์อย่างปลอดภัยก่อนทดสอบการเชื่อมต่อ API ของ Ödeal การทดสอบนี้ยืนยันเฉพาะบัญชี Ödeal เท่านั้น ไม่ได้พิสูจน์ว่าเครื่องรูดบัตรจับคู่ไว้แล้วหรือออนไลน์อยู่
- เพิ่มเครื่องรูดบัตร กรอกชื่ออุปกรณ์ในระบบภายในให้ชัดเจน สำหรับ ชื่ออุปกรณ์ใน Ödeal (externalDeviceKey) ให้กรอกชื่ออุปกรณ์แบบตรงตัวที่สร้างไว้ใน Ödeal จากนั้นกรอก PaxID (ไม่บังคับ) สภาพแวดล้อม เวลารอการชำระเงิน จังหวัดของลูกค้า อำเภอของลูกค้า อัตราภาษีมูลค่าเพิ่มของเซสชัน และอัตราภาษีมูลค่าเพิ่มของออเดอร์
- เปิด เปิดใช้งานการเชื่อมต่อ POS แล้วเลือก บันทึก
- ทำรายการรับเงินสดบน Stage และการชำระด้วยบัตรบน Stage ให้ครบ เพื่อยืนยันการจับคู่เครื่องและเส้นทางการรับชำระเงินทั้งสองแบบ
เวอร์ชันนี้รองรับเครื่อง Ödeal ที่ใช้งานอยู่ได้เพียงเครื่องเดียวต่อหนึ่งเซิร์ฟเวอร์ ข้อจำกัดนี้ป้องกันไม่ให้การชำระเงินถูกส่งไปยังเครื่องที่ไม่ได้ตั้งใจ ก่อนที่ตัวเลือกเครื่องสำหรับแคชเชียร์จะพร้อมใช้งาน
HandyCafe จะบันทึกรายการเครื่องรูดบัตรไว้ในระบบภายในก่อนที่ Cloud จะยืนยันคู่ข้อมูลรับรองใหม่ การที่ Ödeal ปฏิเสธข้อมูลรับรองจะไม่ทำให้ชื่อเครื่องหรือช่องข้อมูลการจับคู่หายไป เครื่องที่ต้องใช้ข้อมูลรับรองใหม่จะถูกเก็บไว้ในสถานะไม่ได้ใช้งาน จนกว่าข้อมูลรับรองนั้นจะได้รับการยืนยันสำหรับสภาพแวดล้อมที่เลือกไว้
หน้าการเชื่อมต่ออ่านรายการเครื่องรูดบัตรจากฐานข้อมูล SQLite ภายในเครื่องโดยตรงและแสดงผลโดยไม่ต้องรอ Cloud มีเพียงสถานะข้อมูลรับรองที่เข้ารหัสและสิทธิ์ของผู้ให้บริการจากระยะไกลเท่านั้นที่ต้องเรียกไปยัง Cloud
หาก Ödeal ปฏิเสธการตั้งค่า HandyCafe จะแสดงคำอธิบายที่ Ödeal ส่งกลับมา การตอบกลับว่าไม่พบโปรไฟล์องค์กรหมายความว่าคู่ merchant key และ secret key ไม่ได้อยู่ในองค์กรใดในสภาพแวดล้อม Stage หรือ Production ที่เลือกไว้
พฤติกรรมการชำระเงิน
เมื่อวิธีชำระเงินที่ใช้อยู่เป็นเงินสดหรือบัตร การคิดเงินเซสชันพีซี การคิดเงินเซสชันคอนโซล และการปิดออเดอร์แบบเดี่ยวจะส่งตะกร้าแบบ idempotent ไปยัง Ödeal เงินสดจะถูกส่งเป็นตัวเลือกการชำระเงิน CASH ตามที่ Ödeal ระบุไว้ในเอกสาร เครื่องจะบันทึกการรับเงินสดและพิมพ์สลิปตามกฎหมายหรือใบเสร็จ e-Archive โดยไม่เปิดหน้าจอรับชำระด้วยบัตร ส่วนบัตรจะถูกส่งเป็น CREDITCARD โดย HandyCafe จะรอผลจาก callback ขณะที่ลูกค้าทำรายการบนเครื่องจนเสร็จ การคิดเงินที่มีทั้งเงินสดและบัตรจะส่งตัวเลือกการชำระเงินทั้งสองแบบพร้อมจำนวนเงินของแต่ละแบบ
ลูกค้าเลือกผ่อนชำระบนเครื่องได้เมื่อบัตรและข้อตกลงกับร้านค้ารองรับ HandyCafe จะเก็บจำนวนงวดที่รายงานกลับมาไว้กับรายการขายในระบบภายใน รายการขายนั้นจะถูกบันทึกก็ต่อเมื่อ Ödeal ยืนยันธุรกรรมแล้วเท่านั้น หากการบันทึกในระบบภายในล้มเหลวหลังการยืนยัน HandyCafe จะร้องขอการยกเลิกภายในวันเดียวกัน การยกเลิกที่ล้มเหลวจะสร้างข้อผิดพลาดที่ต้องกระทบยอดด้วยมือ และต้องไปตรวจสอบในรายงานธุรกรรมของ Ödeal วิธีชำระเงินประเภทอื่นนอกเหนือจากเงินสดและบัตรจะยังคงดำเนินต่อไปตามขั้นตอนการรับชำระเงินเดิมของ HandyCafe
การทดสอบและการใช้งานเครื่องรูดบัตร
ทดสอบการเชื่อมต่อ ยืนยันเฉพาะข้อมูลรับรองร้านค้าของ Ödeal และการเข้าถึง API เท่านั้น ไม่ได้พิมพ์ใบเสร็จ ไม่ได้ตัดเงินจากบัตร และไม่ได้พิสูจน์ว่า externalDeviceKey จับคู่กับเครื่องแล้ว
เอกสาร D2D API ที่ได้รับมาไม่ได้กำหนดเอ็นด์พอยต์แยกต่างหากสำหรับ พิมพ์ใบเสร็จทดสอบ หรือ ทดสอบตัดเงิน การทดสอบเพื่อรับมอบงานจึงใช้ตะกร้าปกติในสภาพแวดล้อม Stage คือส่งตะกร้าแบบเงินสดแล้วตรวจสลิปที่พิมพ์ออกมา จากนั้นส่งตะกร้าแบบบัตรแล้วทำธุรกรรมชำระครั้งเดียวหรือแบบผ่อนชำระบนเครื่องจนเสร็จ ให้ใช้ข้อมูลบัตรทดสอบของ Stage ที่ Ödeal ให้มาเท่านั้น
กรณีทดสอบรับมอบงานของ Ödeal รวมถึงการปิดยอดประจำวันและการพิมพ์ใบเสร็จล่าสุดซ้ำ แต่ทั้งสองอย่างเป็นการใช้งานบนตัวเครื่อง D2D ไม่ได้ระบุการเรียก API จากระยะไกลสำหรับงานเหล่านี้ HandyCafe จึงไม่แสดงเป็นปุ่มสั่งงานระยะไกล
การเปิดและปิดจากระยะไกล
ผู้ดูแลระบบ HandyCafe ควบคุม Ödeal ได้จาก แอดมิน > การตั้งค่าแอดมิน > ผู้ให้บริการ POS ในแดชบอร์ด สวิตช์ระดับโกลบอลคือตัวควบคุมหลัก ค่าเริ่มต้นระดับประเทศใช้รหัส ISO สองตัวอักษร เช่น TR การควบคุมระดับร้านสามารถเปิดหรือปิด Ödeal ให้ไลเซนส์ใบเดียวได้อย่างชัดเจน การตัดสินใจเฉพาะร้านจะมีผลเหนือค่าเริ่มต้นของประเทศ การล้างค่าการตัดสินใจของร้านจะทำให้ร้านนั้นกลับไปใช้ค่าตามประเทศอีกครั้ง
ลำดับการตัดสินคือ สวิตช์ระดับโกลบอล การตัดสินใจเฉพาะร้าน แล้วจึงค่าเริ่มต้นของประเทศ สวิตช์โกลบอลที่ปิดอยู่จะปิด Ödeal สำหรับทุกร้าน การปิดเฉพาะร้านอย่างชัดเจนจะซ่อนหน้านี้แม้ว่าประเทศของร้านจะเปิดอยู่ก็ตาม การเปิดเฉพาะร้านอย่างชัดเจนจะเปิดหน้านี้ให้ได้แม้ว่าประเทศของร้านจะไม่อยู่ในรายการค่าเริ่มต้น การปิดสิทธิ์เข้าถึงจะบล็อกการสร้างตะกร้าใหม่ทันที ส่วนธุรกรรมที่ค้างอยู่เดิมยังตรวจสอบหรือยกเลิกได้ เพื่อไม่ให้การชำระเงินที่กำลังดำเนินอยู่ค้างคาไว้
เซิร์ฟเวอร์ตรวจสอบสิทธิ์การใช้งานผ่าน HandyCafe Cloud และเก็บแคชการตัดสินใจระดับประเทศหรือระดับร้านที่ยืนยันสำเร็จครั้งล่าสุดไว้ แคตตาล็อกผู้ให้บริการจะตอบกลับด้วย HTTP 200 พร้อม error.code ที่มีโครงสร้างเมื่อข้อมูลรับรองไม่ถูกต้อง ฝั่งเดสก์ท็อปจัดการการตอบกลับนั้นด้วยการรีเฟรชข้อมูลรับรองแล้วลองใหม่ ความล้มเหลวชั่วคราวของการยืนยันตัวตนหรือเครือข่ายจะไม่ตีความการตัดสินใจของผู้ดูแลระบบที่เปิดอยู่ให้กลายเป็นปิด เมนูการเชื่อมต่อจึงคงที่ การตอบกลับที่สำเร็จในภายหลังจะอัปเดตแคชทันที รวมถึงการตัดสินใจปิดของผู้ดูแลระบบด้วย หากไม่เคยมีการตัดสินใจที่ยืนยันไว้ก่อน ประเทศของร้านที่ไม่ทราบ การสมัครสมาชิกที่ไม่ได้ใช้งาน หรือผู้ให้บริการที่ถูกปิดไว้ จะทำให้หน้านี้ยังคงถูกซ่อนอยู่ การดำเนินการใหม่ของ Ödeal จะถูกขออนุญาตจาก Cloud เสมอ แม้จะใช้การมองเห็นจากแคชอยู่ก็ตาม ระบบจะใช้ประเทศที่บันทึกไว้บนไลเซนส์เมื่อโปรไฟล์ร้านที่ซิงค์มาไม่มีข้อมูลประเทศ
ความปลอดภัยและการกู้คืน
ข้อมูลรับรอง Ödeal ถูกเข้ารหัสไว้ใน HandyCafe Cloud ด้วยคีย์ vault ของระบบที่ติดตั้งใช้งาน คำขอ callback จะถูกยืนยันตัวตนด้วยคีย์คำขอที่ตั้งค่าไว้ หรือด้วย header ของ merchant key และ secret key ของ Ödeal รหัสอ้างอิงตะกร้าจะคงที่สำหรับแต่ละออเดอร์หรือแต่ละเซสชัน การคิดเงินรายการเดิมซ้ำจึงไม่สร้างการตัดเงินครั้งที่สอง
การยกเลิกของ Ödeal ทำได้เฉพาะภายใต้กฎภายในวันเดียวกันของ Ödeal และต้องก่อนที่เครื่องจะปิดรอบเท่านั้น ตะกร้าที่ค้างอยู่สามารถลบแยกต่างหากได้ก่อนที่การชำระเงินจะเสร็จสมบูรณ์ Ödeal D2D ไม่มีการดำเนินการคืนเงินทั่วไป หากพ้นช่วงเวลาที่ยกเลิกได้แล้ว ให้ใช้ระบบหลังบ้านและรายงานธุรกรรมของ Ödeal
Ödeal D2D ไม่มีการดำเนินการปิดยอดหรือออกรายงาน Z จากระยะไกลตามที่ระบุไว้ในเอกสาร ให้ปิดยอดประจำวันบนตัวเครื่อง HandyCafe อ่านรายงานธุรกรรมเพื่อการกระทบยอดได้ และบันทึก callback การจ่ายคืนจาก Ödeal ไว้