Đối soát nạp tiền thủ công là nút thắt cổ chai khi lượng giao dịch tăng. Tự động hóa qua webhook giúp cộng tiền tức thì nhưng đòi hỏi xử lý cẩn thận để không bị cộng trùng hay bị giả mạo.

Xác thực chữ ký webhook

Mọi webhook nhận về phải được xác thực chữ ký (signature) bằng khóa bí mật chia sẻ với gateway. Bỏ qua bước này là lỗ hổng nghiêm trọng cho phép cộng tiền giả.

Chống xử lý trùng (idempotency)

  • Lưu mã giao dịch của gateway và đánh dấu đã xử lý.
  • Dùng khóa idempotency để bỏ qua webhook lặp lại.
  • Ghi log đầy đủ payload để đối chiếu khi có khiếu nại.
Nguyên tắc vàng: webhook có thể đến nhiều lần — hệ thống phải cho ra cùng một kết quả.