Webhook Biến Động Số Dư Là Gì? Cách Website Biết Tiền Về Ngay Khi Khách Chuyển Khoản

Webhook biến động số dư là gì - minh họa Pay2S gửi thông báo giao dịch về website của shop ngay khi khách chuyển khoản thành công

Webhook biến động số dư là gì? Đây là cách một nền tảng thanh toán như Pay2S tự động báo tin cho website của shop ngay khi tài khoản ngân hàng có giao dịch mới. Khách vừa chuyển khoản xong, website gần như ngay lập tức nhận được một gói dữ liệu mô tả giao dịch đó: tiền vào hay ra, bao nhiêu, vào tài khoản nào, nội dung ghi gì. Nhờ vậy website tự biết đơn nào đã thanh toán, không cần người ngồi canh.

Hãy so hai cách website biết tin tiền về. Cách cũ giống như cứ vài phút bạn lại mở ứng dụng ngân hàng ra kiểm tra, dân kỹ thuật gọi là polling, tức là hỏi đi hỏi lại liên tục, vừa tốn công vừa chậm. Webhook thì ngược lại: nền tảng thanh toán chủ động gõ cửa báo tin ngay khi có giao dịch.

Bài này giải thích theo cách dành cho chủ shop: webhook chạy thế nào, gói dữ liệu có gì, website xử lý ra sao và khi nào shop cần đến nó. Cần biết trước: Pay2S do FUTE phát triển, tiền của khách đi thẳng vào tài khoản ngân hàng của shop, Pay2S không giữ tiền của người bán mà chỉ ghi nhận giao dịch và báo tin.

Webhook biến động số dư hoạt động như thế nào

Quá trình gồm bốn bước, diễn ra hoàn toàn tự động.

Bước 1: khách chuyển khoản. Khách chuyển tiền vào tài khoản ngân hàng của shop như bình thường, có ghi mã đơn trong nội dung nếu shop yêu cầu.

Bước 2: Pay2S ghi nhận giao dịch. Tài khoản của shop đã liên kết với Pay2S từ trước, nên hệ thống nhận biết ngay khi có giao dịch mới, cả tiền vào lẫn tiền ra.

Bước 3: Pay2S gửi gói dữ liệu về website. Pay2S đóng gói thông tin giao dịch thành dữ liệu JSON rồi gửi bằng yêu cầu POST tới địa chỉ webhook shop đã đăng ký, nôm na là địa chỉ nhận tin của website, kèm mã xác thực dạng Bearer để website biết tin đến từ Pay2S.

Bước 4: website nhận tin và xử lý. Website tiếp nhận gói dữ liệu, đối chiếu với các đơn đang chờ thanh toán rồi tự cập nhật trạng thái.

Địa chỉ webhook được đăng ký qua Partner API của Pay2S: shop khai báo tài khoản ngân hàng cần theo dõi, địa chỉ nhận tin (webhook_url, phải là HTTPS) và loại giao dịch muốn nhận là tiền vào, tiền ra hay cả hai. Đây là khâu cấu hình một lần, thường do đội kỹ thuật thực hiện.

Trong gói dữ liệu webhook có những gì

Mỗi lần gửi, gói dữ liệu chứa một danh sách giao dịch (trường transactions), vì có thể nhiều giao dịch được báo cùng lúc. Mỗi giao dịch gồm các thông tin lõi sau.

Mã giao dịch. Mỗi giao dịch có một mã định danh riêng phía Pay2S (trường id) và một mã kiểm tra đi kèm (trường checksum), giúp website nhận diện giao dịch và tránh xử lý trùng.

Ngân hàng, thời gian, tài khoản nhận. Trường gateway cho biết giao dịch đến từ ngân hàng nào, ví dụ ACB; transactionDate là thời điểm phát sinh; transactionNumber là mã giao dịch ngân hàng cấp; accountNumber là số tài khoản shop nhận tiền; content là nguyên văn nội dung khách ghi khi chuyển khoản, ví dụ THANHTOAN DH10001.

Chiều tiền và số tiền. Trường transferType cho biết đây là tiền vào (IN) hay tiền ra (OUT), còn transferAmount là số tiền của giao dịch.

Mã thanh toán để khớp đơn. Nếu shop cấu hình trích mã thanh toán từ nội dung chuyển khoản và nội dung khách ghi khớp mẫu đã đặt, gói dữ liệu có thêm trường paymentCode chứa đúng mã đó, ví dụ DH10001. Đây là trường quan trọng nhất vì nó cho biết khoản tiền vừa về thuộc về đơn nào.

Một gói dữ liệu mẫu trông như sau:

{
  "transactions": [
    {
      "id": 123456,
      "gateway": "ACB",
      "transactionDate": "2026-11-13 09:41:00",
      "transactionNumber": "FT26000111222",
      "accountNumber": "111222333",
      "content": "THANHTOAN DH10001",
      "transferType": "IN",
      "transferAmount": 350000,
      "paymentCode": "DH10001",
      "checksum": "a1b2c3d4"
    }
  ]
}

Website làm gì khi nhận được webhook

Website kiểm tra mã xác thực để chắc chắn dữ liệu đúng là từ Pay2S, rồi lưu lại giao dịch. Sau đó website đối chiếu mã thanh toán và số tiền với các đơn đang chờ: mã khớp, tiền đúng, vào đúng tài khoản thì đơn chuyển sang trạng thái đã thanh toán. Đây cũng là cơ chế đứng sau việc đối soát đơn hàng tự động qua API.

Sau khi lưu xong, website phải trả lời xác nhận đúng chuẩn: HTTP 200 kèm nội dung {“success”: true}, thiếu một trong hai thì Pay2S không coi là đã nhận tin. Nếu website phản hồi quá thời gian chờ, Pay2S gửi lại thông báo sau khoảng 60 giây.

Cùng một thông báo có thể đến hai lần khi lần gửi trước chưa được xác nhận. Vì vậy website phải kiểm tra mã id và checksum trước khi xử lý: giao dịch đã lưu rồi thì bỏ qua, tránh một khoản tiền bị tính thành hai lần.

Đội kỹ thuật muốn tìm hiểu sâu hơn có thể đọc tiếp bài webhook giao dịch ngân hàng Pay2S viết riêng cho dân kỹ thuật.

Phân biệt webhook biến động số dư với IPN và dashboard

Ba khái niệm này hay bị nhầm với nhau nhưng bản chất khác nhau rõ rệt.

Webhook biến động số dư báo mọi giao dịch phát sinh trên tài khoản ngân hàng của shop, kể cả khoản chuyển khoản trực tiếp không qua cổng thanh toán, ví dụ khách quen chuyển thẳng vào số tài khoản. Miễn tài khoản có liên kết với Pay2S, giao dịch nào cũng được báo về website.

IPN là thông báo kết quả của từng đơn thanh toán cụ thể trên cổng thanh toán. Khi khách trả tiền qua trang thanh toán, IPN cho website biết đơn đó đã thanh toán thành công (mã kết quả 0) hay đã bị hủy (mã kết quả 2). IPN chỉ nói về các đơn đi qua cổng, không bao quát toàn bộ giao dịch của tài khoản.

Dashboard, ứng dụng và Google Sheet là nơi con người vào xem thông tin: chủ shop mở dashboard Pay2S, xem thông báo trên ứng dụng hoặc để dữ liệu tự chảy về bảng tính như cách tích hợp Google Sheet với Pay2S. Khác căn bản ở chỗ các kênh này chỉ hiển thị cho người xem, còn webhook là kênh máy nói chuyện với máy, nhận tin xong website tự hành động.

Ai cần dùng webhook, ai chưa cần

Webhook phát huy tác dụng rõ nhất khi shop có website bán hàng riêng hoặc hệ thống quản lý đơn hàng tự xây. Lúc đó đơn hàng tự chuyển trạng thái ngay khi tiền về, nhân viên không phải ngồi đối chiếu sao kê, khách được xác nhận ngay. Lượng đơn chuyển khoản càng nhiều, giá trị của việc tự động hóa này càng lớn.

Ngược lại, nếu shop bán chủ yếu qua mạng xã hội hoặc sàn thương mại điện tử và việc đối soát bằng dashboard, ứng dụng hoặc Google Sheet đang ổn, thì chưa cần đụng tới webhook. Vì webhook cần người kỹ thuật tích hợp và bảo trì phía website, chỉ nên làm khi shop có hệ thống riêng cần nhận tin tự động.

Một khả năng nâng cao đáng biết: phản hồi website gửi trả Pay2S khi nhận webhook có thể kèm yêu cầu lập hóa đơn điện tử cho giao dịch tiền vào, với điều kiện gói Basic trở lên và đã bật tính năng này. Nhờ vậy chuỗi xử lý đi một mạch từ tiền về, xác nhận đơn đến xuất hóa đơn, đúng cách vận hành trong bài hóa đơn tự động là gì.

Câu hỏi thường gặp

Webhook có báo cả giao dịch tiền ra không?

Có. Khi đăng ký webhook, shop chọn được loại giao dịch muốn nhận là tiền vào, tiền ra hoặc cả hai. Shop bán hàng thường chỉ cần theo dõi tiền vào để xác nhận đơn; doanh nghiệp muốn kiểm soát cả chiều chi thì bật thêm tiền ra.

Website bị lỗi đúng lúc khách chuyển khoản thì có mất thông báo không?

Nhờ cơ chế gửi lại, khả năng mất tin thấp: nếu website phản hồi quá chậm hoặc chưa xác nhận đúng chuẩn, Pay2S gửi lại thông báo sau khoảng 60 giây nếu lần gửi trước quá thời gian chờ. Website cũng cần kiểm tra mã giao dịch để không xử lý trùng khi thông báo đến lần hai.

Chủ shop không biết lập trình thì có dùng webhook được không?

Phần tích hợp webhook vào website cần người có kỹ thuật, thường là đội làm website cho shop. Việc của chủ shop là hiểu cơ chế để yêu cầu và kiểm tra kết quả: tiền về là website biết ngay, đơn tự đổi trạng thái, giao dịch trùng không tính hai lần. Chưa có website riêng thì dashboard hay Google Sheet vẫn đáp ứng tốt nhu cầu theo dõi và đối soát.

Tóm lại, webhook biến động số dư là đường ống báo tin tự động giữa tài khoản ngân hàng và website: tiền vừa về, website biết ngay và tự xử lý đơn, thay cho việc con người phải canh kiểm tra thủ công. Shop có hệ thống riêng và lượng đơn chuyển khoản lớn sẽ thấy đây là mảnh ghép đáng đầu tư.

Hóa Đơn Tự Động là đại lý tư vấn triển khai Pay2S. Nếu shop muốn dùng biến động số dư tự động, từ theo dõi trên Google Sheet đến tích hợp webhook, hãy đăng ký qua liên kết đại lý Pay2S hoặc gọi 0979990560 để được tư vấn theo quy mô của shop. Website là đại lý nên có hoa hồng khi bạn đăng ký qua liên kết này; giá gói và tính năng không đổi so với đăng ký trực tiếp với hãng.

Leave your comment