ในเซสชันและนอกเซสชันแตกต่างกันอย่างไร แล้วเพราะเหตุใดจึงมีความสำคัญ

คำว่า "ในเซสชัน" หมายถึงกรณีที่ลูกค้าชำระเงินบนแอป/เว็บไซต์ของคุณ ส่วน "นอกเซสชัน" หมายถึงกรณีที่ผู้ค้าเริ่มการชำระเงินเองหรือระบบเริ่มการชำระเงินโดยอัตโนมัติ ทั้งสองคำนี้เป็นคำศัพท์เฉพาะที่ Stripe ใช้เพื่อพยายามแสดงให้เห็นว่ารายการชำระเงินถูกสร้างขึ้นมาอย่างไร รวมทั้งเพื่อให้เข้าใจได้ชัดเจนขึ้นว่าการดำเนินการใดบ้างมีหรือไม่มีโอกาสเกิดขึ้นในระหว่างขั้นตอนการชำระเงิน

เมื่อมีการทำรายการชำระเงิน "ในเซสชัน" หมายความว่าลูกค้ากำลังใช้งานเว็บไซต์หรือแอปพลิเคชันบนอุปกรณ์เคลื่อนที่ของคุณและกำลังพยายามชำระเงินให้กับคุณ หากทำรายการไม่สำเร็จ ลูกค้าก็สามารถใช้วิธีการชำระเงินวิธีอื่นเพื่อลองอีกครั้งได้ ในกรณีที่การชำระเงินดังกล่าวจำเป็นต้องมีการดำเนินการเพิ่มเติม (เข้าสู่กระบวนการ 3D Secure, เปลี่ยนเส้นทางไปสู่พาร์ทเนอร์อย่าง Klarna ฯลฯ) ลูกค้าก็สามารถดำเนินขั้นตอนต่างๆ ได้ทันทีเพื่อชำระเงินให้เสร็จสิ้น

การชำระเงินใน API ของเราจะเป็นการชำระเงิน "ในเซสชัน" โดยค่าเริ่มต้น คุณไม่จำเป็นต้องส่งผ่านพารามิเตอร์เฉพาะเจาะจงใดๆ เพื่อชี้ให้เห็นว่าเป็นการชำระเงินในเซสชัน แต่จะส่งผ่าน พารามิเตอร์ off_session ที่ตั้งค่าเป็น false (ซึ่งเป็นค่าเริ่มต้น) เพื่อความชัดเจนขณะยืนยัน PaymentIntent ก็ได้

เมื่อมีการทำรายการชำระเงิน "นอกเซสชัน" หมายความว่าลูกค้าไม่ได้กำลังใช้งานเว็บไซต์หรือแอปพลิเคชันเพื่อยืนยันการชำระเงินดังกล่าว ตัวอย่างบางส่วนของการชำระเงิน "นอกเซสชัน" มีดังต่อไปนี้

หากจำเป็นต้องมีการดำเนินการใดๆ หลังการยืนยันการชำระเงิน "นอกเซสชัน" คุณก็จะต้องขอให้ลูกค้ากลับเข้ามา "ในเซสชัน" เพื่อเข้าสู่การดำเนินการถัดไป

สำหรับการชำระเงิน "นอกเซสชัน" คุณจะต้องส่งผ่านพารามิเตอร์ off_session ที่ตั้งค่าเป็น true ขณะยืนยัน PaymentIntent โดยระบบจะตั้งค่าตามที่ระบุนี้โดยอัตโนมัติสำหรับการชำระเงินเพื่อต่ออายุที่เกี่ยวข้องกับ Billing

การบ่งชี้ว่าการชำระเงินเป็นแบบนอกเซสชันมีความสำคัญอย่างไร

สำหรับการชำระเงิน "นอกเซสชัน" ลูกค้าไม่ได้เข้ามาในระบบเพื่อยืนยันการชำระเงิน ยกตัวอย่างเช่น ถ้าเป็นการชำระเงินด้วยบัตร ลูกค้าก็จะไม่สามารถเข้าสู่กระบวนการ 3D Secure ได้ ในทำนองเดียวกันนี้ ลูกค้าก็จะเข้าสู่กระบวนการ CAPTCHA หรือทำการยืนยันเพิ่มเติมใดๆ หรือการดำเนินการที่เราต้องให้ลูกค้าทำด้วยตนเองไม่ได้

เมื่อบ่งชี้ว่าการชำระเงินที่คุณเริ่มทำรายการเป็นการชำระเงิน "นอกเซสชัน" ก็เท่ากับเปิดทางให้ Stripe ข้ามขั้นตอนเหล่านั้นไปบางส่วน หรือไม่ก็ขอรับการยกเว้นจากพาร์ทเนอร์ (เครือข่ายบัตร, BNPL ฯลฯ) ยกตัวอย่างเช่น Stripe จะสามารถขอรับการยกเว้นสำหรับธุรกรรมผ่านบัตรได้โดยรายงานว่าเป็นธุรกรรมดังต่อไปนี้

โปรดทราบว่าการตั้งค่า off_session: true อาจเป็นสาเหตุให้เราทำเครื่องหมายธุรกรรมให้เครือข่ายบัตรเห็นว่าเป็นแบบตามแบบแผนล่วงหน้า