ขั้นตอนตั้งแต่ลูกค้ากด Link จนถึงชำระเงินสำเร็จ และระบบได้รับ Webhook
Link จะนำไปยังหน้า InetPaymentCenter ที่ /pay/{sessionId}
📸 รูป: หน้า InetPaymentCenter ที่ลูกค้าเห็นครั้งแรก
แสดงชื่อร้านค้า, รายการสินค้า, ยอดเงินรวม, ตัวเลือกชำระเงิน (QR, Credit, etc.)
ถ้าลูกค้าเปิดจาก LINE app ระบบจะ detect LIFF context และเปิด payment ใน browser ภายนอก (ผ่าน liff.openWindow external=true)
ลูกค้าเลือกจาก PayTypes ที่ Merchant อนุญาตไว้ตอนสร้าง Session
📸 รูป: ส่วน "เลือกวิธีชำระเงิน" ใน InetPaymentCenter
แสดงปุ่ม QR, Credit Card, Installment, Digital Wallet ที่ลูกค้ากดเลือก
ระบบอาจขอข้อมูลเพิ่มตาม PayType ที่เลือก
📸 รูป: ฟอร์มกรอก Credit Card ใน InetPaymentCenter
แสดงฟิลด์ Card Number, Expiry, CVV, Cardholder Name, ปุ่ม Pay
Frontend ส่ง PayType ที่เลือกไป Backend → Backend เรียก INet createPayment
📸 แนบรูป: หน้าแสดง QR Code ที่ได้จาก INet (สำหรับ QR PayType)
แสดง QR Code ขนาดใหญ่ พร้อมข้อความ "สแกนเพื่อชำระเงิน" และจำนวนเงิน
หลังลูกค้าชำระเงินสำเร็จ INet จะส่ง Webhook ไปยัง URL ที่ตั้งค่าไว้
📸 แนบรูป: Webhook Logs ที่แสดง webhook ล่าสุดจาก INet
แสดงรายการ webhook ที่มี status "completed", "payment_confirmed" หรือสถานะสำเร็จ
paidAt, paidAmount, paymentTypefailReasonexpiresAtหน้าจอลูกค้าจะเปลี่ยนเป็นแสดงสถานะ ชำระเงินสำเร็จ
📸 แนบรูป: หน้า InetPaymentCenter ที่แสดง "ชำระเงินสำเร็จ"
แสดงไอคอนเขียว ยอดเงิน Payment Ref จาก INet ปุ่ม "กลับหน้าร้านค้า" (ถ้ามี successUrl)
successUrl: แสดงปุ่ม "กลับหน้าร้านค้า" หรือ redirect อัตโนมัติfailUrl: redirect เมื่อชำระล้มเหลวทุกฝ่ายได้รับการอัปเดต: ลูกค้าเห็นหน้าสำเร็จ, ระบบ backend ได้รับ webhook, session status = paid