ข้ามไปยังเนื้อหาหลัก
เวอร์ชัน: ล่าสุด

เหตุการณ์ API

เหตุการณ์ API ให้การเข้าถึงบันทึกกิจกรรมและประวัติเหตุการณ์ Webhook ในบัญชี Omise ของคุณ เหตุการณ์แสดงถึงการดำเนินการที่เกิดขึ้นในบัญชีของคุณ เช่น การเรียกเก็บเงินที่สำเร็จ การชำระเงินที่ล้มเหลว การสร้างข้อพิพาท และอื่นๆ

ภาพรวม

เหตุการณ์จะถูกสร้างขึ้นทุกครั้งที่มีเหตุการณ์สำคัญเกิดขึ้นในบัญชีของคุณ พวกเขาให้:

  • ประวัติกิจกรรมที่สมบูรณ์ - ติดตามการดำเนินการทั้งหมดในบัญชีของคุณ
  • การดีบัก Webhook - ดูข้อมูลที่ส่งไปยัง webhook ของคุณอย่างแม่นยำ
  • บันทึกการตรวจสอบ - ตรวจสอบกิจกรรมบัญชีเพื่อการปฏิบัติตามข้อกำหนด
  • การทดสอบการผสานรวม - ตรวจสอบตรรกะการจัดการ webhook ของคุณ
  • การตรวจสอบแบบเรียลไทม์ - ติดตามกระบวนการชำระเงินและเหตุการณ์ของระบบ

เหตุการณ์ทำงานอย่างไร

  1. การสร้างเหตุการณ์ - Omise สร้างเหตุการณ์เมื่อมีการดำเนินการเกิดขึ้น (เช่น การเรียกเก็บเงินสำเร็จ)
  2. การจัดเก็บเหตุการณ์ - เหตุการณ์ถูกจัดเก็บและพร้อมใช้งานผ่าน เหตุการณ์ API
  3. การส่ง Webhook - เหตุการณ์ถูกส่งไปยัง endpoint ของ webhook ที่กำหนดค่าไว้ของคุณ
  4. การดึงข้อมูลเหตุการณ์ - คุณสามารถดึงข้อมูลเหตุการณ์ผ่าน API เพื่อการดีบักและการตรวจสอบ

โครงสร้างเหตุการณ์

แต่ละเหตุการณ์ประกอบด้วย:

  • ประเภทเหตุการณ์ - สิ่งที่เกิดขึ้น (เช่น charge.create, charge.complete)
  • ข้อมูลเหตุการณ์ - วัตถุที่เปลี่ยนแปลงอย่างสมบูรณ์ (การเรียกเก็บเงิน การคืนเงิน ข้อพิพาท ฯลฯ)
  • ประทับเวลา - เมื่อเหตุการณ์เกิดขึ้น
  • สถานะ Webhook - ว่า webhook ถูกส่งสำเร็จหรือไม่

ประเภทเหตุการณ์ทั่วไป

เหตุการณ์การเรียกเก็บเงิน

  • charge.create - การเรียกเก็บเงินใหม่ถูกสร้าง
  • charge.complete - การเรียกเก็บเงินเสร็จสมบูรณ์
  • charge.update - การเรียกเก็บเงินถูกอัปเดต (เช่น การจับยอด)

เหตุการณ์การคืนเงิน

  • refund.create - การคืนเงินถูกประมวลผล

เหตุการณ์ลูกค้า

  • customer.create - ลูกค้าใหม่ถูกสร้าง
  • customer.update - ข้อมูลลูกค้าถูกอัปเดต
  • customer.destroy - ลูกค้าถูกลบ

เหตุการณ์การโอน

  • transfer.create - การโอนเริ่มต้น
  • transfer.update - การโอนถูกอัปเดต
  • transfer.destroy - การโอนล้มเหลวหรือถูกยกเลิก

เหตุการณ์ข้อพิพาท

  • charge.dispute.create - ข้อพิพาทถูกยื่นต่อการเรียกเก็บเงิน
  • charge.dispute.update - สถานะข้อพิพาทเปลี่ยนแปลง
  • charge.dispute.close - ข้อพิพาทได้รับการแก้ไข (ชนะหรือแพ้)

เหตุการณ์ Source

  • source.create - แหล่งชำระเงินถูกสร้าง (PromptPay, TrueMoney ฯลฯ)
  • source.update - สถานะแหล่งถูกอัปเดต (เช่น pending → successful)
  • source.failed - การชำระเงินจากแหล่งล้มเหลว
  • source.successful - การชำระเงินจากแหล่งสำเร็จ

เหตุการณ์ลิงก์

  • link.create - ลิงก์การชำระเงินถูกสร้าง
  • link.payment.create - การชำระเงินทำผ่านลิงก์
  • link.payment.complete - การชำระเงินผ่านลิงก์เสร็จสมบูรณ์

เหตุการณ์ผู้รับ

  • recipient.create - ผู้รับถูกสร้าง
  • recipient.update - รายละเอียดผู้รับถูกอัปเดต (การยืนยัน บัญชีธนาคาร)
  • recipient.verify - ผู้รับได้รับการยืนยันและพร้อมรับการโอน
  • recipient.destroy - ผู้รับถูกลบ

เหตุการณ์กำหนดการ

  • schedule.create - กำหนดการที่เกิดซ้ำถูกสร้าง
  • schedule.suspend - กำหนดการถูกหยุดชั่วคราว
  • schedule.activate - กำหนดการถูกเริ่มใหม่
  • schedule.destroy - กำหนดการถูกลบ

เหตุการณ์การเกิด (การดำเนินการตามกำหนดการ)

  • schedule.occurrence.scheduled - การเกิดถูกจัดคิวเพื่อดำเนินการ
  • schedule.occurrence.successful - การดำเนินการที่กำหนดไว้สำเร็จ
  • schedule.occurrence.failed - การดำเนินการที่กำหนดไว้ล้มเหลว

เหตุการณ์การส่ง Webhook

  • webhooks.deliver - มีการพยายามส่ง Webhook
  • webhooks.retry - การส่ง Webhook ถูกลองใหม่

กรณีการใช้งานหลัก

การดีบัก Webhook

ดึงข้อมูลเหตุการณ์เพื่อดูข้อมูลที่ส่งไปยัง webhook ของคุณอย่างแม่นยำและแก้ไขปัญหาการส่ง

การตรวจสอบกิจกรรม

แสดงรายการเหตุการณ์ล่าสุดเพื่อตรวจสอบกิจกรรมบัญชีและตรวจจับรูปแบบที่ผิดปกติ

การทดสอบการผสานรวม

ตรวจสอบว่าแอปพลิเคชันของคุณจัดการประเภทเหตุการณ์ต่างๆ อย่างถูกต้องก่อนที่จะเปิดใช้งาน

บันทึกการตรวจสอบ

รักษาบันทึกการตรวจสอบที่สมบูรณ์ของธุรกรรมและการเปลี่ยนแปลงบัญชีทั้งหมด

Endpoints ที่มีให้บริการ

การเก็บรักษาเหตุการณ์

  • เหตุการณ์ถูกเก็บรักษาไว้เป็นเวลา 90 วัน
  • เหตุการณ์เก่าจะถูกลบโดยอัตโนมัติ
  • ส่งออกเหตุการณ์เป็นประจำหากคุณต้องการระยะเวลาการเก็บรักษานานขึ้น

แนวทางปฏิบัติที่ดีที่สุด

✅ แนะนำ

  • ใช้ Webhook - ใช้ webhook สำหรับการประมวลผลเหตุการณ์แบบเรียลไทม์แทนการโพล
  • ตรวจสอบลายเซ็น Webhook - ตรวจสอบว่าเหตุการณ์มาจาก Omise
  • จัดการเหตุการณ์ที่ซ้ำกัน - webhook อาจถูกส่งหลายครั้ง
  • บันทึก ID เหตุการณ์ - ติดตามเหตุการณ์ที่คุณประมวลผลแล้ว
  • ใช้ idempotency - ตาม ID เหตุการณ์
  • ตรวจสอบความล้มเหลวของ Webhook - ผ่าน เหตุการณ์ API

❌ หลีกเลี่ยง

  • อย่าโพลเหตุการณ์บ่อยๆ - ใช้ webhook แทน
  • อย่าสันนิษฐานลำดับเหตุการณ์ - เหตุการณ์อาจมาถึงไม่เป็นลำดับ
  • อย่าข้ามการตรวจสอบลายเซ็น - ตรวจสอบความถูกต้องของ webhook เสมอ
  • อย่าประมวลผลเหตุการณ์สองครั้ง - ตรวจสอบ ID เหตุการณ์ก่อนการประมวลผล

ทรัพยากรที่เกี่ยวข้อง


ต้องการความช่วยเหลือ? ตรวจสอบ คู่มือ Webhooks ของเรา หรือติดต่อ support@omise.co