Webhook là cơ chế một hệ thống chủ động gửi yêu cầu HTTP, thường là POST có thân JSON, tới địa chỉ do bạn cung cấp ngay khi có sự kiện. Ngược với việc bạn gọi API định kỳ để hỏi "có gì mới không".
Webhook hoạt động thế nào
- Bạn đăng ký một địa chỉ HTTPS, ví dụ
https://shop.example/webhooks/dongtien. - Khi có sự kiện, ví dụ một giao dịch được xác thực, hệ thống gửi yêu cầu tới địa chỉ đó.
- Máy chủ của bạn kiểm chữ ký, xử lý sự kiện và trả mã 2xx.
- Nếu không nhận được 2xx, bên gửi thử lại sau một khoảng thời gian.
Những điều cần làm ở phía nhận
- Kiểm chữ ký để chắc yêu cầu đến từ đúng bên gửi.
- Từ chối yêu cầu quá cũ dựa vào thời điểm gửi.
- Xử lý mỗi sự kiện một lần, vì cùng một sự kiện có thể đến lại khi thử lại; xem idempotency.
- Trả lời nhanh, đẩy việc nặng sang hàng đợi.
Trong Dòng Tiền Pro
Webhook theo Standard Webhooks, với ba header webhook-id, webhook-timestamp và webhook-signature, có nhật ký giao hàng và gửi lại. Xem webhook riêng.
Câu hỏi thường gặp
Webhook khác API thế nào?
API là bạn hỏi, webhook là hệ thống báo. Hai cách thường dùng cùng nhau: webhook để biết ngay, API để đồng bộ lại.
Địa chỉ webhook có cần công khai không?
Cần truy cập được từ Internet qua HTTPS. Chữ ký bảo vệ việc ai gửi, không phải việc ai biết địa chỉ.

