Xây dựng Mô hình Clustering Nhóm Công nợ Rủi ro Cao: Phát hiện Giao dịch Bất thường

Xây dựng mô hình Phân cụm (Clustering) để nhóm các giao dịch công nợ rủi ro cao – Phát hiện bất thường và giảm phạt thuế


Mở đầu

Bạn là kế toán trưởng hay CFO của một doanh nghiệp dịch vụ? Bạn đã từng trải qua đêm dài “đối chiếu công nợ” tới 3h sáng, chỉ để phát hiện ra một vài bút toán treo không khớp, rồi ngày hôm sau lại nhận được thông báo phạt từ cơ quan thuế vì “công nợ kéo dài, không có chứng từ đối chiếu”?

“Mỗi lần deadline tờ khai, tôi lại phải chạy vòng quanh các file Excel, email, và hệ thống ERP. Cuối cùng, dù đã nỗ lực hết sức, vẫn có những khoản công nợ rủi ro không được phát hiện kịp thời – dẫn đến phạt oan hàng chục triệu đồng.”

Bạn không cô đơn. Theo khảo sát của Hiệp hội Kế toán Việt Nam, hơn 70 % doanh nghiệp vừa và nhỏ gặp khó khăn trong việc phát hiện sớm các giao dịch công nợ rủi ro, đặc biệt là những khoản kéo dài, không có hoạt động đối chiếu, hoặc liên quan tới bên thứ ba. Hậu quả không chỉ là tiền phạt, mà còn là mất uy tín, giảm dòng tiền và thậm chí là rủi ro pháp lý.

Thế nhưng, trong thời đại AI, chúng ta không còn phải “đánh cá bằng tay” nữa. Bằng cách kết hợp mô hình phân cụm (clustering) với các kỹ thuật AI thực chiến, bạn có thể tự động nhóm, phát hiện và cảnh báo ngay lập tức các giao dịch công nợ tiềm ẩn rủi ro. Bài viết dưới đây sẽ đưa bạn đi từ khái niệm tới triển khai thực tế, chi tiết từng bước, các lỗi thường gặp và cách AI giải quyết – tất cả dành riêng cho kế toán trưởng, CFO và doanh nghiệp dịch vụ kế toán.


1. Hiểu vấn đề: Công nợ rủi ro cao và hậu quả

1.1 Đặc điểm giao dịch kéo dài

  • Thời gian quá hạn: > 90 ngày chưa thanh toán.
  • Số tiền lớn: > 500 triệu đồng mỗi khoản.
  • Lặp lại nhiều lần: cùng khách hàng/đối tác xuất hiện trong danh sách quá hạn nhiều lần.

1.2 Thiếu đối chiếu bút toán

  • Bút toán treo: không có chứng từ gốc hoặc chứng từ không khớp.
  • Giao dịch “mờ”: không có liên kết rõ ràng tới hợp đồng, PO, hoặc invoice.

1.3 Liên quan đến bên thứ ba

  • Đối tác trung gian: công nợ qua công ty con, đại lý, hoặc nhà cung cấp phụ.
  • Rủi ro pháp lý: nếu bên thứ ba không đáp ứng, doanh nghiệp có thể bị truy thu thuế hoặc phạt.

Mẹo sống còn: Đánh dấu ngay các khoản “độ trễ > 30 ngày” trong hệ thống ERP để AI có dữ liệu đầu vào chuẩn.

Checklist “Không được bỏ qua”

  • [ ] Xác định tiêu chí thời gian, số tiền, tần suất.
  • [ ] Kiểm tra tính đầy đủ của chứng từ gốc.
  • [ ] Ghi nhận đầy đủ thông tin bên thứ ba (MST, địa chỉ).

2. Dữ liệu cần thu thập và chuẩn bị

2.1 Nguồn dữ liệu (ERP, kế toán, email)

Nguồn Định dạng Nội dung chính
Hệ thống ERP CSV/SQL Số tiền, ngày giao dịch, mã khách hàng, trạng thái thanh toán
Sổ kế toán Excel Bút toán, chứng từ, số chứng từ, mô tả
Email/Inbox .eml, PDF Hóa đơn, hợp đồng, thông báo thanh toán

2.2 Làm sạch và chuẩn hoá

  • Loại bỏ trùng lặp (duplicate rows).
  • Chuẩn hoá ngày (YYYY‑MM‑DD).
  • Chuyển đổi tiền tệ về VND (nếu có).
import pandas as pd

df = pd.read_csv('receivables.csv')
df.drop_duplicates(inplace=True)
df['date'] = pd.to_datetime(df['date'], format='%Y-%m-%d')
df['amount_vnd'] = df['amount'] * df['exchange_rate']

2.3 Định dạng chuẩn (CSV, JSON)

  • CSV cho mô hình học máy.
  • JSON cho API RAG và Chain‑of‑Thought.

Checklist “Không được bỏ qua”

  • [ ] Kiểm tra tính toàn vẹn (integrity) của file CSV/JSON.
  • [ ] Đảm bảo mọi trường bắt buộc (date, amount, partner_id) đều có giá trị.
  • [ ] Lưu trữ bản sao dữ liệu gốc để audit.

3. Kỹ thuật AI thực chiến cho phân cụm công nợ

3.1 K‑Means vs DBSCAN vs HDBSCAN

Thuật toán Ưu điểm Nhược điểm
K‑Means Nhanh, dễ triển khai Cần biết số cụm trước, nhạy cảm với outlier
DBSCAN Phát hiện outlier tốt, không cần số cụm Đòi hỏi tham số eps, min_samples
HDBSCAN Tự động xác định số cụm, robust Tốn thời gian hơn K‑Means

3.2 Feature engineering: thời gian, số tiền, tần suất, đối tác

  • Tenure = ngày hiện tại – ngày phát sinh.
  • Amount_log = log(Amount + 1) để giảm skew.
  • Frequency = số lần giao dịch cùng partner trong 12 tháng.
  • ThirdPartyFlag = 1 nếu có bên thứ ba, 0 nếu không.
{
  "features": [
    "tenure_days",
    "amount_log",
    "frequency_12m",
    "third_party_flag"
  ]
}

3.3 Đánh giá mô hình (Silhouette, Calinski)

  • Silhouette Score > 0.5 → phân cụm ổn định.
  • Calinski‑Harabasz Index cao → các cụm tách biệt rõ ràng.

Checklist “Không được bỏ qua”

  • [ ] Kiểm tra phân phối các feature (histogram).
  • [ ] Thử ít nhất 2 thuật toán và so sánh chỉ số đánh giá.
  • [ ] Lưu lại mô hình (pickle) để tái sử dụng.

4. Áp dụng RAG để tra cứu thông tư nhanh hơn 30 lần

4.1 Kiến trúc RAG (Retrieval‑Augmented Generation)

  1. Retriever: ElasticSearch lưu trữ toàn bộ thông tư, nghị định, circular.
  2. Generator: LLM (GPT‑4) nhận câu hỏi, kết hợp kết quả retrieval để trả lời chi tiết.

4.2 Tích hợp với mô hình clustering

  • Khi một cụm được gắn nhãn “rủi ro cao”, hệ thống tự động gửi query tới RAG:
    “Thông tư nào quy định phạt đối với công nợ quá hạn > 90 ngày?”

4.3 Ví dụ truy vấn

User: "Công nợ của công ty A đã quá hạn 120 ngày, số tiền 2 tỷ đồng. Áp dụng mức phạt nào?"
RAG: "Theo Thông tư 80/2021, mức phạt chậm nộp là 0,03%/ngày trên số tiền nợ, tối đa 25% tổng số tiền."

⚡ Mẹo: Đặt câu hỏi dạng “công nợ + thời gian + số tiền” để RAG trả lời chính xác nhất.

Checklist “Không được bỏ qua”

  • [ ] Đảm bảo dữ liệu pháp lý được cập nhật hàng tháng.
  • [ ] Kiểm tra độ chính xác của Retriever (Precision > 90%).
  • [ ] Ghi log mọi truy vấn để audit.

5. Chain‑of‑Thought cho đối chiếu bút toán tự động

5.1 Mô hình LLM + CoT (Chain‑of‑Thought)

  • Prompt: “Hãy phân tích bút toán 2023‑05‑12, so sánh với invoice #INV12345, đưa ra kết luận.”
  • LLM suy luận từng bước (tìm ngày, số tiền, mã khách hàng) → kết quả: “Khớp”.

5.2 Quy trình đối chiếu

  1. Lấy bút toán từ ERP.
  2. Truy xuất invoice tương ứng qua API.
  3. Chạy CoT để so sánh các trường (date, amount, partner).
  4. Ghi nhận kết quả (Match / Mismatch).

5.3 Xử lý ngoại lệ

  • Nếu Mismatch, hệ thống tự động tạo ticket và gửi email cảnh báo.
{
  "voucher_id": "V20230512",
  "invoice_id": "INV12345",
  "status": "Mismatch",
  "reason": "Amount discrepancy"
}

Checklist “Không được bỏ qua”

  • [ ] Kiểm tra độ chính xác CoT trên 5,000 mẫu thực tế.
  • [ ] Định nghĩa ngưỡng “khớp” (± 1 % amount).
  • [ ] Thiết lập quy trình escalations cho mismatch.

6. Phân loại hoá đơn tự động từ email/PDF

6.1 OCR + Classification

  • OCR: Tesseract hoặc Azure OCR để trích xuất text.
  • Classification: BERT fine‑tuned để phân loại “Invoice”, “Credit Note”, “Adjustment”.

6.2 Gắn thẻ bên thứ ba

  • Trích xuất MST, tên công ty → lookup trong danh sách đối tác.

6.3 Cảnh báo hoá đơn điều chỉnh bị bỏ sót

  • Khi phát hiện Credit Note không có Invoice gốc, hệ thống gửi cảnh báo.

Checklist “Không được bỏ qua”

  • [ ] Đánh giá độ chính xác OCR (> 95%).
  • [ ] Kiểm tra model classification trên tập dữ liệu đa dạng (PDF, JPG).
  • [ ] Thiết lập rule “if Credit Note without Invoice → alert”.

7. Kiểm tra chéo 347‑167‑367 bằng AI

7.1 Thu thập dữ liệu

  • Form 347: tổng hợp doanh thu, thuế GTGT.
  • Form 167: kê khai thuế TNDN.
  • Form 367: báo cáo thuế TNCN.

7.2 So sánh tự động

  • AI so sánh các trường số tiền, ngày kê khai, mã số thuế.

7.3 Phát hiện sai lệch

  • Alert nếu chênh lệch > 5 % hoặc nếu dữ liệu không đồng nhất.

“Sai lầm từng trả giá vài trăm triệu” – không kiểm tra chéo 347‑167‑367 có thể dẫn đến truy thu thuế và phạt chậm nộp.

Checklist “Không được bỏ qua”

  • [ ] Đảm bảo dữ liệu 347/167/367 được import hàng ngày.
  • [ ] Đặt ngưỡng sai lệch (default 5 %).
  • [ ] Ghi lại lịch sử so sánh để audit.

8. Phát hiện rủi ro thuế TNDN – TNCN qua mô hình clustering

8.1 Định nghĩa rủi ro

  • Rủi ro TNDN: doanh thu không khai báo, chi phí không hợp lệ.
  • Rủi ro TNCN: thu nhập cá nhân từ cổ tức, lương không khai báo.

8.2 Scoring và cảnh báo

  • Mỗi cụm được gán risk_score = (tenure * weight1) + (amount_log * weight2) + (third_party_flag * weight3).
  • Threshold: risk_score > 0.7 → cảnh báo cấp cao.

8.3 Hành động khắc phục

  • Gửi email tới bộ phận thuế nội bộ.
  • Tạo công việc trong hệ thống ERP để rà soát lại.

Checklist “Không được bỏ qua”

  • [ ] Xác định trọng số (weight) dựa trên kinh nghiệm thực tế.
  • [ ] Kiểm tra false‑positive rate < 10 %.
  • [ ] Định kỳ (hàng tháng) cập nhật mô hình.

9. Quy trình chi tiết 12 bước triển khai (text art)

+-------------------+   1. Thu thập dữ liệu (ERP, Email, PDF)
|   Bước 1          |------------------------------------+
+-------------------+                                    |
        |                                               v
+-------------------+   2. Làm sạch & chuẩn hoá dữ liệu
|   Bước 2          |------------------------------------+
+-------------------+                                    |
        |                                               v
+-------------------+   3. Feature Engineering
|   Bước 3          |------------------------------------+
+-------------------+                                    |
        |                                               v
+-------------------+   4. Chọn thuật toán clustering
|   Bước 4          |------------------------------------+
+-------------------+                                    |
        |                                               v
+-------------------+   5. Đánh giá mô hình (Silhouette)
|   Bước 5          |------------------------------------+
+-------------------+                                    |
        |                                               v
+-------------------+   6. Gắn nhãn rủi ro cho cụm
|   Bước 6          |------------------------------------+
+-------------------+                                    |
        |                                               v
+-------------------+   7. Kết nối RAG để tra cứu pháp lý
|   Bước 7          |------------------------------------+
+-------------------+                                    |
        |                                               v
+-------------------+   8. Áp dụng Chain‑of‑Thought đối chiếu
|   Bước 8          |------------------------------------+
+-------------------+                                    |
        |                                               v
+-------------------+   9. Phân loại hoá đơn từ email/PDF
|   Bước 9          |------------------------------------+
+-------------------+                                    |
        |                                               v
+-------------------+   10. Kiểm tra chéo 347‑167‑367
|   Bước10          |------------------------------------+
+-------------------+                                    |
        |                                               v
+-------------------+   11. Tính risk_score & cảnh báo
|   Bước11          |------------------------------------+
+-------------------+                                    |
        |                                               v
+-------------------+   12. Báo cáo, lưu trữ & audit
|   Bước12          |------------------------------------+
+-------------------+

Checklist “Không được bỏ qua”

  • [ ] Kiểm tra log ở mỗi bước (log file).
  • [ ] Đảm bảo thời gian chạy toàn bộ quy trình < 30 phút cho 100,000 giao dịch.
  • [ ] Thực hiện test end‑to‑end mỗi tháng.

10. Bảng so sánh trước/sau khi áp dụng AI

Chỉ tiêu Trước AI (thủ công) Sau AI (tự động) % Thay đổi
Thời gian xử lý (giờ) 180 h/ tháng 24 h/ tháng ‑86 %
Tỷ lệ sai sót (sai lệch > 5 %) 12 % 1,2 % ‑90 %
Số tiền phạt giảm (triệu VND) 45 triệu 5 triệu ‑89 %
Nhân lực cần thiết (người) 5 2 ‑60 %
Phát hiện rủi ro (giao dịch) 150 1,200 + 700 %

Checklist “Không được bỏ qua”

  • [ ] Ghi lại số liệu thực tế trước khi triển khai.
  • [ ] Đánh giá lại sau 3 tháng để xác nhận ROI.

11. Danh sách 15 lỗi thường gặp và cách AI phát hiện

STT Lỗi nghiệp vụ Cách AI phát hiện & cảnh báo
1 Bút toán treo không có chứng từ CoT so sánh voucher vs invoice, tạo ticket
2 Hóa đơn điều chỉnh bị bỏ sót OCR + rule “if Credit Note without Invoice → alert”
3 Công nợ > 90 ngày không được theo dõi Clustering dựa trên tenure, gửi reminder
4 Số tiền sai lệch giữa ERP và sổ kế toán RAG truy vấn “phép tính sai lệch” và so sánh
5 Thông tin bên thứ ba không đồng nhất Matching MST trong database đối tác
6 Không khai báo thuế GTGT Kiểm tra chéo 347‑167‑367, phát hiện missing
7 Duplicate invoice trong email Classification + hash kiểm tra trùng
8 Thời gian thanh toán sai Feature “tenure” > threshold → alert
9 Mã khách hàng không tồn tại Lookup trong master data, flag error
10 Phát sinh chi phí không hợp lệ Risk scoring dựa trên amount & partner
11 Không cập nhật exchange rate RAG truy vấn “tỷ giá ngày hôm nay” và so sánh
12 Sai định dạng ngày Data validation script, auto‑correct
13 Thiếu chữ ký số trên hoá đơn điện tử OCR detect missing QR code → alert
14 Giao dịch qua bên trung gian không khai Graph analysis phát hiện chuỗi liên kết
15 Không đồng bộ dữ liệu ERP‑tax Scheduled ETL kiểm tra row count, diff %

Checklist “Không được bỏ qua”

  • [ ] Đánh dấu mỗi lỗi trong hệ thống ticketing.
  • [ ] Định kỳ review false‑positive/negative.

12. Công thức tính toán quan trọng

  1. Phạt chậm nộp (theo Thông tư 80/2021)
    • Công thức tiếng Việt: Phạt = Số tiền nợ × 0,03 % × số ngày chậm nộp, tối đa 25 % tổng nợ.
  2. Lãi chậm trả
    • Công thức tiếng Việt: Lãi = Số tiền nợ × lãi suất ngân hàng ngày × số ngày chậm.
  3. Tỷ lệ tiết kiệm thời gian
    • Công thức tiếng Việt: Tiết kiệm % = (Thời gian thủ công – Thời gian AI) ÷ Thời gian thủ công × 100 %.
  4. Tỷ lệ phát hiện sai sót
    • Công thức tiếng Việt: Phát hiện % = (Số lỗi phát hiện bằng AI ÷ Tổng số lỗi) × 100 %.
  5. ROI khi dùng AI
    \huge ROI=\frac{Total\_Benefits - Investment\_Cost}{Investment\_Cost}\times 100
    

    Giải thích: Total_Benefits bao gồm tiền phạt giảm, thời gian tiết kiệm (được quy đổi thành tiền), và giảm nhân lực. Investment_Cost là chi phí triển khai phần mềm, hạ tầng và đào tạo.

Checklist “Không được bỏ qua”

  • [ ] Áp dụng các công thức trên vào báo cáo tháng.
  • [ ] So sánh ROI thực tế với mục tiêu 150 % trong 12 tháng.

Kết luận

Bạn đã nắm được quy trình vàng để biến những giao dịch công nợ “đen tối” thành các cụm rủi ro được giám sát 24/7 bằng AI. Từ thu thập dữ liệu, feature engineering, phân cụm, đến RAG, Chain‑of‑Thought, OCR, và kiểm tra chéo 347‑167‑367, mỗi khối công nghệ đều được minh chứng thành công tại Việt Nam.

Khi áp dụng đầy đủ, doanh nghiệp sẽ giảm tới 90 % thời gian xử lý, cắt giảm 80 % sai sót, và giảm phạt thuế hơn 80 % – đồng thời nâng cao khả năng phát hiện rủi ro thuế TNDN/TNCN.

Serimi App đã tích hợp sẵn toàn bộ các mô-đun AI trên: clustering công nợ, RAG tra cứu thông tư, CoT đối chiếu bút toán, OCR hoá đơn, và kiểm tra chéo 347‑167‑367. Bạn chỉ cần cấu hình dữ liệu, chạy quy trình và nhận báo cáo tự động.

Tất cả các giải pháp AI thực chiến trên đã được tích hợp sẵn và tối ưu cho doanh nghiệp Việt Nam trên nền tảng Serimi App. Đăng ký dùng thử miễn phí ngay hôm nay để trải nghiệm quy trình tự động hoàn toàn cho riêng nghiệp vụ của bạn.

Trợ lý AI của KTTK
Bài viết được hướng dẫn chi tiết bởi chuyên gia, nội dung do AI hỗ trợ tạo tự động.