← กลับไปบล็อกภาษาไทย

พื้นฐาน OTP

คู่มือ OTP Verification: รหัสครั้งเดียวผ่าน SMS ทำงานอย่างไร

เข้าใจการทำงานของ SMS OTP เหตุผลที่รหัสหมดอายุ และสาเหตุของรหัสล่าช้าหรือไม่มาถึง

NumFlow blog cover for คู่มือ OTP Verification: รหัสครั้งเดียวผ่าน SMS ทำงานอย่างไร
6 นาทีOTP verificationSMS OTPรหัสครั้งเดียว

SMS OTP ทำงานอย่างไร

OTP คือรหัสผ่านครั้งเดียวสำหรับยืนยันการสมัคร เข้าสู่ระบบ หรือการดำเนินการสำคัญ ผู้ใช้กรอกหมายเลขโทรศัพท์ แอปเป้าหมายส่งรหัสสั้น และต้องกรอกรหัสก่อนหมดอายุ

เพราะ OTP มีเวลาใช้งานจำกัด หน้ารับรหัสควรแสดงเวลาหมดอายุจริงของคำสั่งซื้อ และอัปเดตสถานะรหัสโดยไม่ต้องสร้างหมายเลขใหม่ทุกครั้งที่ตรวจ

ทำไมรหัสหมดอายุหรือไม่สำเร็จ

การหมดอายุจำกัดเวลาที่รหัสสามารถนำกลับมาใช้ได้ การส่งรหัสอาจได้รับผลจากความพร้อมใช้งานของไลน์ชั่วคราว การเลือกประเทศผิด หมายเลขที่เคยใช้กับแอปนั้น หรือความล่าช้าภายในบริการเป้าหมาย

  • ใช้รหัสทันทีเมื่อได้รับ
  • ยืนยันบริการและประเทศ
  • ตรวจคำสั่งซื้อเดิมที่ยังใช้งานอยู่
  • อย่าคิดว่าแอปทุกตัวรับหมายเลขทุกประเภท

ติดตามสถานะ OTP

NumFlow แสดงสถานะคำสั่งซื้อและผลรหัสในขั้นตอนคำสั่งซื้อหลังเข้าสู่ระบบ API client สามารถตรวจคำสั่งซื้อเดิมได้จนถึงเวลาหมดอายุที่ส่งกลับมา และควรใช้ polling แบบควบคุม ไม่ใช่ยิงคำขอถี่เกินไป

จากคู่มือไปยังตัวเลือกที่พร้อมใช้ตอนนี้

เมื่อค้นหา “OTP verification” อย่าตัดสินใจจากคำแนะนำทั่วไปเพียงอย่างเดียว ให้เริ่มที่หน้าบริการ Telegramเพื่อยืนยันแอปเป้าหมาย แล้วเปิดหน้าประเทศฝรั่งเศสเพื่อตรวจรูปแบบหมายเลข บริการที่รองรับ และช่วงราคาปัจจุบัน หน้าบริการตอบว่าใช้กับแอปใด ส่วนหน้าประเทศตอบว่าจะรับ SMS จากประเทศใด

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

ทำ verification ให้ตรวจย้อนหลังได้

ก่อนสั่งซื้อ ให้บันทึกแอป ประเทศ ราคาที่แสดง และเวลาที่เริ่ม หลังได้รับหมายเลข ให้ใช้ country code ตามที่แอปต้องการและติดตามคำสั่งซื้อเดิมจนถึงเวลาหมดอายุที่ระบบส่งกลับมา เมื่อได้รับรหัส ให้ใช้ภายในเวลาของแอปและเก็บเลขอ้างอิงกับสถานะสุดท้ายไว้สำหรับแก้ปัญหา

หาก SMS ไม่มา ให้แยกว่าแอปยังไม่ส่ง กรอกหมายเลขผิด คำสั่งซื้อยังรอ หรือหมดอายุแล้ว อย่าเปิดหลายคำสั่งซื้อก่อนรายการเดิมยกเลิกได้หรือสิ้นสุด หมายเลขชั่วคราวเหมาะกับงานระยะสั้น แต่บัญชีระยะยาวควรมีวิธีกู้คืนที่ผู้ใช้ควบคุมได้ต่อเนื่อง

เช็กลิสต์ก่อนใช้งาน

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

  • ยืนยันแอปเป้าหมายและประเทศก่อนสั่งซื้อ
  • หนึ่งงาน verification ควรมีคำสั่งซื้อที่ active เพียงหนึ่งรายการ
  • ใช้เวลาหมดอายุที่ NumFlow ส่งกลับมา ไม่เดาเวลารอเอง
  • สำหรับ API ให้เก็บ key ฝั่งเซิร์ฟเวอร์และส่ง idempotency key ที่ไม่ซ้ำต่อ business request

ข้อผิดพลาดที่ควรหลีกเลี่ยง

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

workflow ที่แนะนำ

เริ่มจาก intent ที่แคบ: หนึ่งบริการเป้าหมาย หนึ่งประเทศ และหนึ่งงานบัญชี ตรวจหน้าบริการก่อนสั่งซื้อ แล้วสร้างคำสั่งซื้อเมื่อราคาและความพร้อมใช้งานยอมรับได้ หลังได้รับหมายเลข ให้กรอกตามที่แสดง รวม country code เมื่อแอปต้องการ จากนั้นเปิดหน้าคำสั่งซื้อไว้ หรือ poll คำสั่งซื้อเดิมผ่าน API จนถึงเวลาหมดอายุที่ระบบส่งกลับมา หากได้รับรหัส ให้เก็บ reference ของคำสั่งซื้อไว้สำหรับ audit หากไม่มีรหัส ให้ทำตามสถานะ cancel หรือ timeout แทนการเดาเอง

วิธีอ่านผลลัพธ์ของคำสั่งซื้อ

สำหรับงาน พื้นฐาน OTP ให้ยึดสถานะคำสั่งซื้อปัจจุบัน ตรวจบริการ ประเทศ ช่วงเวลารับ SMS และดูว่าคำสั่งซื้อกำลังรอ เสร็จแล้ว ยกเลิกได้ หรือหมดอายุ ภาพเก่าหรือสายที่เคยสำเร็จไม่ได้ยืนยันว่าตอนนี้ยังพร้อมใช้

ข้อมูลที่ควรเก็บไว้อ้างอิง

เก็บ reference คำสั่งซื้อ บริการ ประเทศ เวลาที่ขอ และสถานะสุดท้าย สำหรับหัวข้อ “OTP verification” ข้อมูลเหล่านี้ช่วยแยก SMS ล่าช้า การเลือกผิด และคำสั่งซื้อหมดอายุ อย่าเก็บหรือแชร์รหัส verification หลังงานเสร็จ

คำตอบสั้น

รับประกันว่าจะได้รหัสไหม?

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

ควรสร้างหลายคำสั่งซื้อพร้อมกันไหม?

ไม่ควร ใช้หนึ่ง active order ต่อหนึ่งงาน เพื่ออ่านสถานะ เวลาหมดอายุ การยกเลิก และ billing ได้ถูกต้อง

ผู้ใช้ API ควรพึ่งอะไร?

พึ่ง response fields ที่เสถียร error codes ในเอกสาร idempotency keys และ expiry ที่คำสั่งซื้อส่งกลับมา

บทความนี้เชื่อมกับ NumFlow อย่างไร

ใช้ลิงก์ด้านล่างเพื่อตรวจบริการปัจจุบัน เปรียบเทียบประเทศและราคา อ่านข้อมูล API หรือแก้ปัญหาต่อ หน้า NumFlow สาธารณะจะคงภาษาปัจจุบันไว้