Phần mềm

Tích hợp hóa đơn điện tử và cổng thanh toán vào phần mềm bán hàng

Luồng tích hợp thanh toán, đối chiếu, xuất hóa đơn điện tử qua API và ghi nhận kế toán; các điểm kỹ thuật dễ sai như xuất trùng, webhook trùng.

22/10/20267 phút đọcDTCSoft
Tích hợp hóa đơn điện tử và thanh toán vào phần mềm bán hàng: đơn hàng, thanh toán, hóa đơn, kế toán

Sau mỗi giao dịch, kế toán ở nhiều doanh nghiệp vẫn phải kiểm tra sao kê ngân hàng, xuất hóa đơn trên phần mềm của nhà cung cấp hóa đơn, rồi nhập lại doanh thu vào phần mềm kế toán. Tích hợp hóa đơn điện tử và cổng thanh toán vào phần mềm bán hàng giúp các bước này chạy tự động: khách thanh toán, hệ thống đối chiếu với đơn hàng, xuất hóa đơn và ghi nhận kế toán. Bài viết giải thích luồng tích hợp, các điểm kỹ thuật dễ sai và cách triển khai an toàn.

Vì sao nên tích hợp thay vì làm tay

  • Nhập liệu nhiều lần: cùng một đơn hàng được nhập ở phần mềm bán hàng, phần mềm hóa đơn và phần mềm kế toán.
  • Đối chiếu thanh toán thủ công: tìm từng giao dịch trên sao kê, khớp với đơn theo nội dung chuyển khoản, dễ sót khi khách ghi sai nội dung.
  • Xuất hóa đơn chậm hoặc sai thông tin do gõ lại tên, mã số thuế, địa chỉ người mua.
  • Khó truy vết: khi có chênh lệch, không biết lỗi nằm ở khâu nào.

Luồng tích hợp hóa đơn điện tử và thanh toán

Luồng tích hợp: đơn hàng, thanh toán, webhook, đối chiếu, xuất hóa đơn điện tử qua API, ghi nhận kế toán
Mỗi bước có trạng thái và nhật ký, chạy lại được an toàn.
  1. Tạo đơn hàng trên phần mềm bán hàng, website hoặc app, kèm thông tin xuất hóa đơn của người mua.
  2. Khách thanh toán qua cổng thanh toán, ví điện tử hoặc chuyển khoản mã QR có mã tham chiếu đơn hàng.
  3. Nhận xác nhận thanh toán qua webhook từ cổng thanh toán hoặc dịch vụ thông báo biến động số dư của ngân hàng.
  4. Đối chiếu tự động: khớp giao dịch với đơn hàng theo mã tham chiếu và số tiền. Giao dịch không khớp được đưa vào danh sách cần xử lý.
  5. Xuất hóa đơn điện tử bằng cách gọi API của nhà cung cấp hóa đơn, nhận lại số hóa đơn, mã tra cứu và gửi cho khách.
  6. Ghi nhận sang phần mềm kế toán doanh thu, công nợ, thuế qua API hoặc file nhập.

Thứ tự có thể khác tùy mô hình kinh doanh. Ví dụ với bán hàng công nợ, hóa đơn được xuất khi giao hàng, còn thanh toán được đối chiếu vào công nợ sau.

Những điểm cần nắm về hóa đơn điện tử

Hóa đơn điện tử tại Việt Nam được quy định tại Nghị định 123/2020/NĐ-CP (đã được sửa đổi, bổ sung bởi Nghị định 70/2025/NĐ-CP) và các thông tư hướng dẫn. Khi tích hợp, phần mềm cần xử lý đúng:

  • Loại hóa đơn doanh nghiệp đang dùng: hóa đơn có mã của cơ quan thuế, không có mã, hoặc hóa đơn khởi tạo từ máy tính tiền. Mỗi loại có luồng cấp mã và thời điểm gửi dữ liệu khác nhau.
  • Thời điểm lập hóa đơn theo loại hàng hóa, dịch vụ, không phải lúc nào cũng là thời điểm thu tiền.
  • Thông tin người mua: với khách hàng doanh nghiệp cần tên, mã số thuế, địa chỉ chính xác. Nên kiểm tra mã số thuế ngay khi khách nhập.
  • Xử lý hóa đơn có sai sót: điều chỉnh hoặc thay thế theo quy định, không xóa hay xuất lại tùy ý. Phần mềm bán hàng cần lưu liên kết giữa đơn hàng, hóa đơn gốc và hóa đơn điều chỉnh.

Quy định có thể thay đổi, doanh nghiệp nên làm việc với kế toán và nhà cung cấp hóa đơn điện tử để chốt luồng nghiệp vụ trước khi lập trình.

Các điểm kỹ thuật dễ sai khi tích hợp

1. Xuất trùng hóa đơn

So sánh gọi lại ngay khi API hết thời gian chờ và dùng khóa chống trùng, kiểm tra trạng thái để không xuất trùng hóa đơn
Khóa chống trùng giúp mỗi đơn hàng chỉ có một hóa đơn.

Đây là lỗi nghiêm trọng nhất. Khi gọi API xuất hóa đơn bị hết thời gian chờ, hệ thống không biết hóa đơn đã được tạo hay chưa. Nếu gọi lại ngay, có thể xuất hai hóa đơn cho một đơn hàng. Cách xử lý:

  • Mỗi yêu cầu xuất hóa đơn có một khóa chống trùng (idempotency key) gắn với đơn hàng.
  • Trước khi gọi lại, kiểm tra trạng thái phía nhà cung cấp hóa đơn theo khóa đó.
  • Lưu trạng thái từng bước của đơn hàng: đã thanh toán, đang xuất hóa đơn, đã có hóa đơn, đã ghi nhận kế toán.

2. Webhook đến trùng, đến muộn hoặc không đến

Cổng thanh toán có thể gửi cùng một thông báo nhiều lần, hoặc gửi trễ. Hệ thống phải xác thực chữ ký của webhook, bỏ qua thông báo đã xử lý, và có tác vụ định kỳ đối soát lại với cổng thanh toán để bắt các giao dịch bị lỡ.

3. Bên thứ ba gián đoạn

API của nhà cung cấp hóa đơn hay phần mềm kế toán có lúc bảo trì hoặc chậm. Nên đưa tác vụ vào hàng đợi, thử lại với độ trễ tăng dần, cảnh báo khi vượt số lần thử, thay vì bắt người dùng chờ.

4. Thanh toán không khớp

Khách chuyển thiếu, chuyển thừa, ghi sai nội dung, thanh toán một lần cho nhiều đơn. Các trường hợp này cần màn hình xử lý ngoại lệ để kế toán khớp thủ công, có ghi lý do.

5. Bảo mật khóa API và dữ liệu tài chính

Khóa API của cổng thanh toán và nhà cung cấp hóa đơn phải được lưu trong kho bí mật, không nằm trong mã nguồn. Phân quyền rõ ai được xuất, điều chỉnh hóa đơn; mọi thao tác được ghi nhật ký.

6. Truy vết từ đầu đến cuối

Mỗi đơn hàng cần xem được toàn bộ lịch sử: giao dịch thanh toán nào, hóa đơn số mấy, bút toán kế toán nào, lỗi gì đã xảy ra và được xử lý ra sao.

Cách triển khai an toàn

  1. Vẽ luồng nghiệp vụ hiện tại cùng kế toán: khi nào xuất hóa đơn, xử lý sai sót thế nào, trường hợp đặc biệt nào hay gặp.
  2. Chọn nhà cung cấp có API tốt: tài liệu rõ ràng, có môi trường thử nghiệm, hỗ trợ kỹ thuật.
  3. Kiểm thử trên môi trường thử của cổng thanh toán và nhà cung cấp hóa đơn, gồm cả các tình huống lỗi, hết thời gian chờ, webhook trùng.
  4. Chạy song song với đối chiếu thủ công trong giai đoạn đầu, so sánh kết quả hằng ngày.
  5. Theo dõi sau khi vận hành: màn hình giám sát số giao dịch chờ xử lý, lỗi, cảnh báo cho người phụ trách.

Bạn có thể xem một ví dụ lớp tích hợp nhận sự kiện thanh toán, đối chiếu đơn hàng, xuất hóa đơn điện tử qua API và ghi nhận sang kế toán tại dự án tham khảo Tích hợp thanh toán và hóa đơn điện tử. Khi số hệ thống cần kết nối nhiều hơn, xem thêm giải pháp tích hợp hệ thống doanh nghiệp.

Với hóa đơn đầu vào từ nhà cung cấp, việc đọc file XML và chứng từ để hạch toán được trình bày trong bài Document AI: tự động đọc hóa đơn, chứng từ kế toán.

DTCSoft xây dựng các lớp tích hợp giữa phần mềm bán hàng, cổng thanh toán, hóa đơn điện tử và kế toán, có nhật ký và cơ chế chạy lại an toàn. Tìm hiểu thêm về dịch vụ tích hợp hệ thống và cloud.

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

Phần mềm bán hàng đang dùng có tích hợp hóa đơn điện tử được không?

Phụ thuộc phần mềm có API hoặc cho phép mở rộng không. Nếu không, có thể xây một lớp tích hợp trung gian đọc dữ liệu đơn hàng qua cơ sở dữ liệu, file xuất hoặc webhook.

Có nên tự động xuất hóa đơn ngay khi khách thanh toán?

Với bán lẻ thanh toán ngay, thường là có. Với bán hàng công nợ, giao hàng nhiều đợt hoặc dịch vụ theo kỳ, thời điểm xuất hóa đơn cần thống nhất với kế toán theo quy định.

Làm sao tránh xuất trùng hóa đơn?

Dùng khóa chống trùng cho mỗi yêu cầu, kiểm tra trạng thái phía nhà cung cấp trước khi gọi lại, và lưu trạng thái từng bước của đơn hàng.

Đổi nhà cung cấp hóa đơn điện tử có phải làm lại tích hợp không?

Nếu lớp tích hợp được thiết kế tách riêng phần kết nối với từng nhà cung cấp, chỉ cần viết thêm bộ kết nối mới, phần đối chiếu và luồng nghiệp vụ giữ nguyên.

Hóa đơn xuất sai thì phần mềm xử lý thế nào?

Kế toán lập hóa đơn điều chỉnh hoặc thay thế theo quy định ngay trên hệ thống. Phần mềm lưu liên kết giữa đơn hàng, hóa đơn gốc và hóa đơn điều chỉnh để tra cứu và báo cáo đúng.

Liên quan

Giải pháp liên quan

Đọc tiếp

Bài viết khác

Có một bài toán cần giải quyết?

Mô tả ngắn gọn nhu cầu — chuyên gia giải pháp của DTCSoft phản hồi trong 24 giờ làm việc.

Trao đổi dự án0973 393 165Chat ZaloFacebook