
เมื่อธุรกิจมีรายการชำระเงินเข้ามาพร้อมกันจำนวนมาก การส่งสลิปไปตรวจแล้วรอผลตอบกลับทีละรายการอาจไม่เหมาะกับทุกระบบ โดยเฉพาะระบบที่ต้องรับงานต่อเนื่องหรือไม่ต้องการเปิด Request ค้างไว้เพื่อรอผลตรวจ
EasySlip API v2 จึงมี Async Verify สำหรับส่งงานตรวจสอบสลิปเข้าสู่ Queue ก่อน แล้วให้ระบบประมวลผลเบื้องหลัง เมื่อได้ผลลัพธ์ EasySlip จะส่งผลกลับไปยังระบบของธุรกิจผ่าน Webhook Callback โดยอัตโนมัติ
แนวทางนี้ช่วยแยก “การส่งงาน” ออกจาก “การรอผลตรวจ” ทำให้ระบบสามารถรองรับงานหลายรายการได้ยืดหยุ่นขึ้น โดยไม่ต้องรอผลการตรวจสอบอยู่ใน Request เดิม
1. Async Verify คืออะไร และต่างจากการตรวจแบบปกติอย่างไร
การตรวจสลิปแบบปกติ หรือ Sync Verify จะส่งข้อมูลสลิปไปยัง API และรอผลการตรวจสอบกลับมาใน Request เดิม ส่วน Async Verify จะทำงานต่างออกไป คือระบบของคุณส่ง QR Payload เข้ามาก่อน EasySlip จะตรวจสอบความถูกต้องของ Request และเมื่อรับงานเข้าสู่ Queue สำเร็จ จะตอบกลับด้วย 202 Accepted พร้อม jobId โดยยังไม่ได้หมายความว่าสลิปตรวจผ่าน
หลังจากนั้น EasySlip จะตรวจสอบสลิปในเบื้องหลัง และเมื่อได้ผลแล้วจึงส่งผลกลับผ่าน Webhook พูดง่าย ๆ คือ ส่งงาน → รับ Job → ตรวจสอบเบื้องหลัง → รับผลผ่าน Webhook จุดสำคัญคือ Request ต้องผ่าน Validation ก่อนจึงจะถูกนำเข้าสู่ Queue หากข้อมูลไม่ถูกต้อง หรือ Request ถูกปฏิเสธก่อนเข้า Queue จะไม่มี Job และไม่มี Result Webhook ตามมา
2. ฟีเจอร์หลักของ Async Verify
Batch Processing — ส่งหลายสลิปใน Request เดียว
หากต้องตรวจหลายรายการ สามารถใช้ Batch Verify เพื่อส่งสลิปได้ตั้งแต่ 1 ถึง 100 รายการใน Request เดียว เมื่อ Batch ผ่าน Validation ระบบจะคืน batchId พร้อม jobId แยกสำหรับสลิปแต่ละรายการ จากนั้นแต่ละสลิปจะถูกประมวลผลเป็น Job ของตัวเอง และมี Webhook Callback แยกกัน
ดังนั้น 1 Batch ไม่ได้หมายถึง 1 Webhook แต่หากส่ง 100 สลิป ก็อาจได้รับผลกลับเป็น 100 Webhook ตามจำนวน Job สำหรับ Batch จะตรวจสอบข้อมูลทั้งชุดก่อนเข้า Queue หากมีสลิปใดสลิปหนึ่ง Payload ไม่ถูกต้อง หรือจำนวนรายการเกิน 100 ระบบจะปฏิเสธทั้ง Batch และไม่มีรายการใดถูกนำเข้าสู่ Queue
Automatic Retry — ข้อมูลยังไม่พร้อม ระบบตรวจซ้ำให้อัตโนมัติ
บางกรณีข้อมูลธุรกรรมจากธนาคารอาจยังไม่พร้อมในครั้งแรก เช่น ผลเป็น not_found หรือข้อมูลจาก Bangkok Bank ยังอยู่ในสถานะ Pending
Async Verify จะช่วยตรวจซ้ำเบื้องหลังโดยอัตโนมัติ สูงสุดอีก 4 ครั้ง หลังจากการตรวจครั้งแรก โดยเว้นช่วงประมาณ 30, 60, 120 และ 240 วินาที หากพบข้อมูลก่อนครบจำนวนครั้ง Job จะจบทันที แต่หากตรวจครบแล้วยังไม่พบ ผลจะเป็น not_found ไม่ใช่ failed
Webhook Callback — ตรวจเสร็จแล้วส่งผลกลับให้ระบบอัตโนมัติ
เมื่อ Job ตรวจสอบเสร็จ EasySlip จะส่งผลลัพธ์ไปยัง callbackUrl ของระบบผ่าน HTTP POST โดยแต่ละสลิปจะมี Callback ของตัวเอง ผลลัพธ์หลักมีทั้ง success, not_found และ failed ทำให้ระบบปลายทางสามารถนำสถานะไปทำงานต่อได้ เช่น อัปเดตสถานะออเดอร์ บันทึกประวัติ หรือแจ้งผลให้ผู้ใช้งาน
หากระบบปลายทางรับ Webhook ไม่สำเร็จ เช่น ตอบกลับไม่ใช่ 2xx, Timeout หรือ Network Error ระบบจะลองส่ง Webhook ซ้ำอีกสูงสุด 3 ครั้ง โดยเว้นประมาณ 10, 30 และ 120 วินาที เนื่องจาก Webhook เดิมอาจถูกส่งซ้ำ ระบบฝั่งลูกค้าควรใช้ jobId สำหรับป้องกันการประมวลผลรายการเดิมซ้ำ และควรตอบ HTTP 2xx เมื่อรับข้อมูลสำเร็จ

3. ถ้าพลาด Webhook ก็ยังตรวจสอบผลได้
Webhook เป็นช่องทางหลักสำหรับรับผลจาก Async Verify แต่ไม่ใช่ช่องทางเดียว หากระบบไม่ได้รับ Callback หรือปลายทางมีปัญหา สามารถใช้ jobId ที่ได้รับตอนส่งงานไปเรียก Job API เพื่อตรวจสอบสถานะและผลลัพธ์ได้ โดยข้อมูล Job สามารถดึงได้ประมาณ 7 วัน จึงเหมาะสำหรับใช้เป็น Fallback หรือใช้กระทบยอดรายการที่อาจพลาด Webhook
4. ก่อนใช้งาน Async Verify ต้องเตรียมอะไรบ้าง
Async Verify สำหรับสลิปธนาคารรับ QR Payload เท่านั้น ไม่รองรับการส่งรูปภาพ, Base64 หรือ URL แบบ Sync Verify และไม่รองรับ TrueWallet ระบบที่เชื่อมต่อควรมี API Key สำหรับเรียกใช้งาน และมี callbackUrl แบบ HTTPS หรือกำหนด Default Webhook URL ไว้ที่ Branch
นอกจากนี้ควรเก็บ jobId ของแต่ละรายการไว้ เพื่อใช้จับคู่ผลลัพธ์ ตรวจสอบสถานะย้อนหลัง และรองรับกรณีที่ต้องใช้ Job API เป็นช่องทางสำรอง สำหรับระบบที่รับ Webhook ควรออกแบบให้รองรับ Callback ซ้ำได้ และตรวจสอบ Webhook Signature ก่อนนำข้อมูลไปใช้งาน
5. Async Verify เหมาะกับระบบแบบไหน
Async Verify เหมาะกับระบบที่มีรายการตรวจสอบสลิปจำนวนมาก ระบบที่รับรายการเข้ามาต่อเนื่อง หรือระบบที่ไม่ต้องการรอผลตรวจภายใน Request เดิม
ตัวอย่างเช่น ระบบ E-Commerce, ระบบจองหรือรับมัดจำ, ระบบหลังบ้านที่มี Queue ของตัวเอง หรือระบบที่ต้องรองรับกรณีข้อมูลธุรกรรมจากธนาคารมาช้า
สรุป Async Verify ทำอะไรได้ และช่วยอะไรกับระบบของธุรกิจ
Async Verify ช่วยให้ระบบส่งงานตรวจสอบสลิปเข้าสู่ Queue ก่อน แล้วรับผลภายหลังผ่าน Webhook โดยไม่ต้องรอผลใน Request เดิม พร้อมรองรับการส่งหลายสลิปสูงสุด 100 รายการต่อ Batch และมี Automatic Retry สำหรับกรณีที่ข้อมูลธุรกรรมยังไม่พร้อม
ประโยชน์คือช่วยให้ระบบจัดการงานตรวจสอบสลิปจำนวนมากได้เป็นระเบียบขึ้น ลดการรอผลทีละรายการ และทำให้สามารถนำผลตรวจไปเชื่อมต่อกับ Workflow ของธุรกิจต่อได้อัตโนมัติ เช่น อัปเดตสถานะออเดอร์ ยืนยันการจอง หรือบันทึกข้อมูลในระบบหลังบ้าน
เริ่มต้นเชื่อมต่อ Async Verify
ดูรายละเอียดและเริ่มต้นเชื่อมต่อ Async Verify ได้ที่ EasySlip Developer Docs
หมวดหมู่: ข่าวสาร
บทความที่เกี่ยวข้อง
สลิปโอนเงินตรวจสอบย้อนหลังได้กี่วัน? เปรียบเทียบข้อมูลจาก SCB และ K PLUS พร้อมวิธีตรวจสอบสลิปย้อนหลังด้วย EasySlip API และข้อควรรู้สำหรับร้านค้าออนไลน์
สลิปเก่าตรวจสอบไม่ได้เกิดจากอะไร? รวมสาเหตุที่ตรวจสอบสลิปไม่ผ่าน วิธีรับมือเมื่อข้อมูลธุรกรรมไม่พบ และการใช้ตรวจสอบสลิป API ด้วย EasySlip
EasySlip API ขึ้น Error 429 ต้องทำอย่างไร? ทำความเข้าใจ Too Many Requests, Rate Limit พร้อมวิธีแก้ด้วย Retry, Backoff และ Queue อย่างถูกต้อง



