Stripe Webhook รวม Event พื้นฐานที่จำเป็น

Stripe Webhook: ทำความเข้าใจและรวม Event ที่ควรใช้

Stripe Webhook คืออะไร?

Webhook คือกลไกที่ Stripe ใช้ในการแจ้งเตือนระบบของคุณเมื่อมีเหตุการณ์บางอย่างเกิดขึ้นในบัญชี Stripe ของคุณ เช่น มีการชำระเงินสำเร็จ, การยกเลิกการสมัครสมาชิก, หรือการคืนเงิน ฯลฯ

Webhook จะช่วยให้ระบบของคุณ ตอบสนองแบบอัตโนมัติ ต่อเหตุการณ์เหล่านี้โดยไม่ต้องเรียก API ตลอดเวลา ทำให้ระบบทันสมัยและมีประสิทธิภาพมากขึ้น


การใช้งาน Stripe Webhook เบื้องต้น

  1. กำหนด Endpoint บนฝั่งเซิร์ฟเวอร์ของคุณ เช่น https://yourdomain.com/webhook
  2. ไปที่ Stripe DashboardDevelopers > Webhooks
  3. เพิ่ม Endpoint แล้วเลือก Event ที่ต้องการให้ Stripe แจ้ง
  4. ตรวจสอบ signature เพื่อความปลอดภัย (Stripe จะส่ง Stripe-Signature header มาให้)

Event ที่ควรตั้งรับใน Stripe Webhook

นี่คือ Event สำคัญที่ควรใช้สำหรับระบบทั่วไป โดยแบ่งตามหมวด:


🔹 การชำระเงิน (Payments)

Eventคำอธิบาย
payment_intent.succeededการชำระเงินสำเร็จ
payment_intent.payment_failedการชำระเงินล้มเหลว
charge.succeededยืนยันการหักเงินจากบัตรสำเร็จ (ใช้กับระบบเก่า)
charge.refundedการคืนเงินเกิดขึ้น

🔹 การสมัครสมาชิก (Subscriptions)

Eventคำอธิบาย
customer.subscription.createdมีการสร้าง subscription ใหม่
customer.subscription.updatedมีการเปลี่ยนแปลง (เปลี่ยน plan, ปรับราคา)
customer.subscription.deletedSubscription ถูกยกเลิก
invoice.payment_succeededลูกค้าจ่ายค่าสมาชิกสำเร็จ
invoice.payment_failedลูกค้าชำระไม่ผ่าน (อาจต้องแจ้งเตือน)

🔹 ลูกค้า (Customer)

Eventคำอธิบาย
customer.createdมีการสร้างบัญชีลูกค้าใหม่
customer.updatedข้อมูลลูกค้าถูกแก้ไข
customer.deletedลูกค้าถูกลบออก

🔹 ใบแจ้งหนี้ (Invoices)

Eventคำอธิบาย
invoice.createdใบแจ้งหนี้ถูกสร้างขึ้น
invoice.finalizedใบแจ้งหนี้ถูกล็อกและพร้อมชำระเงิน
invoice.payment_action_requiredการชำระเงินต้องการการกระทำเพิ่มเติมจากลูกค้า

ข้อควรระวัง

  • ตรวจสอบ Signature ทุกครั้ง เพื่อป้องกัน Webhook ปลอม
  • อย่าเชื่อข้อมูลจาก Webhook โดยตรง ให้ใช้เพื่อ แจ้งเตือนแล้วค่อยดึงข้อมูลจาก API เพื่อความแม่นยำ
  • ทดสอบ Webhook ด้วย Stripe CLI หรือ Dashboard ก่อนใช้งานจริง

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

Leave a Reply