Webhook Endpoints
ตั้งค่า URL เพื่อให้ ZynexPay ส่ง Event แจ้งเตือนแบบ Real-time เมื่อมีรายการธุรกรรมเกิดขึ้น
Your Endpoints
0 endpoints
No Endpoints Yet
กด "Add Endpoint" เพื่อเพิ่ม URL รับแจ้งเตือน
Events ที่รองรับ
payment.success
Common
เมื่อลูกค้าชำระเงินสำเร็จ
payment.failed
Important
เมื่อการชำระเงินล้มเหลวหรือถูกปฏิเสธ
payment.refund
Finance
เมื่อมีการคืนเงินให้ลูกค้า
payout.completed
Finance
เมื่อถอนเงินเข้าบัญชีธนาคารสำเร็จ
payout.failed
Finance
เมื่อการถอนเงินล้มเหลว
charge.dispute
Risk
เมื่อลูกค้าเปิดข้อพิพาท (Chargeback)
Webhook Payload Example
POST https://yoursite.com/webhook
{
"id": "evt_ZNX8f3k2m1a9b7c4",
"type": "payment.success",
"created": "2026-03-03T11:50:00Z",
"data": {
"payment_id": "pay_a1b2c3d4e5f6",
"amount": 1500.00,
"currency": "THB",
"status": "succeeded",
"description": "Order #1234",
"customer_email": "customer@example.com",
"metadata": {
"order_id": "ORD-1234"
}
},
"signature": "whsec_sha256_..."
}
Verify Webhook Signature
ตรวจสอบ signature ทุกครั้งเพื่อป้องกันการปลอมแปลง
Node.js — Verification
const crypto = require('crypto');
function verifyWebhook(payload, signature, secret) {
const expected = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from('whsec_sha256_' + expected)
);
}