Cách xây dựng hệ thống đối soát ngân hàng tự động (không cần API)
Trong quá trình mình làm doanh nghiệp và hỗ trợ một số doanh nghiệp xử lý phần thanh toán với ngân hàng thì phần kết nối với bank rất rắc rối. Trong bài viết này mình sẽ chia sẻ lại kinh nghiệm mình đang làm để xử lý phần liên kết với ngân hàng. Để bạn có thể tự xử lý được nhanh chóng, đơn giản mà không cần phải xin API hay trả phí cho bên thứ 3.
Với góc độ một người làm sản phẩm thì mình sẽ chia sẻ theo góc độ hướng làm và kinh nghiệm thực tế mình đã làm.
Cách lấy biến động số dư tài khoản của bạn.
Theo cá nhân mình biết và cũng làm thử với các bên rồi, thì chúng ta có một số cách như sau
- Ngân hàng cấp API cho bạn rồi bạn tự xử lý (mất phí, và quy trình cực kỳ không thuận tiện, và mình có cảm giác họ chỉ muốn nối với các đơn vị riêng hoặc công ty lớn mà thôi). Chỉ áp dụng với tài khoản doanh nghiệp
- Kết nối với 1 ứng dụng bên thứ 3 (nơi mà họ đã đấu nối với ngân hàng) và bạn sẽ trả phí khoảng 69.000đ và chỉ áp dụng với tài khoản doanh nghiệp.
- Sử dụng APP trên điện thoại để lắng nghe biến động số dư qua điện thoại. Thường các đơn vị sẽ xây dựng theo hướng này.
- Giả lập 1 máy tính và đăng nhập sẵn vào tài khoản ngân hàng để lấy biến động số dư.
- Sử dụng Email để lấy biến động số dư.
Đối với cách 3, 4, 5 thì có thể áp dụng với mọi tài khoản (bao gồm cá nhân, hộ kinh doanh và doanh nghiệp).
Bản thân mình thì không đánh giá cao cách số 4 bởi phiên làm việc và giao diện của một số ngân hàng thường thay đổi thường xuyên, và cách này có rủi ro cao về bảo mật. Bản thân mình cũng đã thử với Techcombank và chạy nhưng tính ổn định thì kém.
Trong bài này mình sẽ tập trung vào 2 cách để các bạn lựa chọn là cách số 3 và số 5.
Dùng App trên Android để lấy biến động số dư.
Đây là cách nhanh, gần như không có độ trễ và chúng ta cũng có thể dùng cách này để làm được rất nhiều việc khác chỉ với chiếc app như vậy.

Hiện tại thì mình cũng đang cung cấp cho một số khách hàng và ưu điểm của cách này
Ưu điểm:
- Tốc độ phải nói là thời gian thực, tiền nhận được từ ngân hàng APP sẽ lắng nghe và báo lên hệ thống ngay lập tức
- Do là app nên bạn có thể lắng nghe qua SMS hoặc thông báo (notification). Phần lớn bank đã ngừng cung cấp báo số dư qua SMS và nó tốn phí không cần thiết, nên lắng nghe thông báo tốt hơn.
- Hỗ trợ tất cả các ngân hàng và bank nào cũng sẽ có thông báo
- Hỗ trợ mọi tài khoản cá nhân và doanh nghiệp
- Không mất phí, cũng không lo bảo mật bởi không ai can thiệp được.
Nhược điểm
- Bạn cần 1 máy điện thoại android và phải cài app để hoạt động. Vô tình máy hết pin, máy lỗi thì hệ thống nó sẽ ngừng hoạt động.
Cách làm thì cũng khá là đơn giản, bạn có thể liên hệ với các đơn vị phát triển ứng dụng điện thoại là có thể làm được. Hoặc bạn cũng có liên hệ với Sudo để sử dụng APP Sudo SMS này với 1 khoản phí nhỏ hàng tháng (50.000đ) - không giới hạn số lượng, thiết bị, có hệ thống quản lý tin, có API để bạn kết nối nhanh chóng, nhận số dư qua Zalo, Slack, Telegram, Whatsapp…
Nhận biến động số dư qua Email.
Nhận biến động số dư qua Email cũng là một cách mà mình cũng dùng. Lợi thế lớn nhất của cách này là không cần phải có một thiết bị chạy android và cài đặt app nữa. Dành cho một số bạn không thích cài app hoặc đơn giản là không có máy android nào cả.
Ưu điểm
- Hỗ trợ tất cả các nhân hàng
- Tài khoản cá nhân và doanh nghiệp đều có thể sử dụng được
- Không cần chi phí đầu tư thiết bị như máy android, không cần cài app, không cần bạn khai báo tài khoản.
Nhược điểm:
- Độ trễ sẽ lớn hơn nếu như App Android gần như lập tức thì qua Email sẽ mất khoảng 1 phút.
Cách làm thì cực kỳ đơn giản. Mỗi ngân hàng hiện này đều cho phép nhận thông báo tài khoản biến động số dư qua Email, bạn chỉ cần tạo ra 1 địa chỉ email độc lập (Ví dụ: tucaodienahsydf@gmail.com).
Sau khi biến động số dư của ngân hàng gửi vào, chúng ta sẽ làm 1 con bot để đọc số dư thay đổi và xử lý tương tự như app ngân hàng hay API mà chúng ta đã mua mà thôi.

Tuy nhiên làm theo cách này mình muốn lưu ý với các bạn chúng ta cần tư duy thêm về bảo mật.
- Địa chỉ email nhận số dư phải là ngẫu nhiên để không ai có thể đoán ra được.
- Khi đọc email biến động số dư thì phải xác nhận email đó có phải chính chủ hay không thông qua SPF và DKIM của hộp thư.
- Kiểm tra địa chỉ người gửi vì mỗi bank thì họ luôn có 1 email gửi cố định tới người dùng.
- Xử lý xong Email có thể xóa để đảm bảo thêm an toàn.
Như vậy mình nghĩ có thể an toàn chấp nhận được. Tất nhiên vì đây không phải API trực tiếp từ ngân hàng, nên mình nghĩ nó sẽ là các cách làm cực kỳ phù hợp, nhanh chóng, tiết kiệm và quan trọng nhất là đơn giản doanh nghiệp vừa và nhỏ.
Cách này thì bạn cũng tốn 1 cái hosting nhỏ nếu chưa có, hoặc nếu có rồi thì có thể chạy kèm để không phát sinh.
Bạn biết còn những cách nào khác hay có bổ sung thêm gì bảo mật không? Hãy cho Tú biết ở phần bình luận bên dưới.
Bạn thấy bài viết này hữu ích?
Hãy chia sẻ để giúp bạn bè của bạn cũng chọn được sản phẩm phù hợp nhé!