ThuTra
Tóm tắt
Người lao động Việt Nam có thu nhập từ nhiều nguồn (lương + freelance + đầu tư) đối mặt với quy trình quyết toán thuế thu nhập cá nhân phức tạp trên eTax Mobile (9+ bước, giao diện phức tạp) — dẫn đến phạt 2-5 triệu VNĐ và nợ thuế vì sai sót không được phát hiện trước khi nộp. ThuTra cung cấp wizard quyết toán 3 bước kết hợp engine phát hiện sai tự động cho người lao động cá nhân: nhập thu nhập đa nguồn → xác định người phụ thuộc và cơ quan thuế → phát hiện sai sót trước khi nộp. Mô hình freemium: 3 lần quyết toán miễn phí, sau đó subscription 99.000 VNĐ/năm.
Định nghĩa vấn đề
Phát biểu vấn đề
Mùa quyết toán thuế thu nhập cá nhân (TNCN) hàng năm (tháng 3-4) đặt ra thách thức lớn cho hàng triệu người lao động Việt Nam — đặc biệt những người có thu nhập từ nhiều nguồn (chuyển việc giữa năm, làm freelance, đầu tư cổ tức, cho thuê tài sản). eTax Mobile — công cụ chính thức của Tổng cục Thuế — yêu cầu 9+ bước thao tác, giao diện phức tạp, và không có cơ chế phát hiện sai tự động. Người lao động phải tự phát hiện sai sót của mình — một nhiệm vụ đòi hỏi kiến thức thuế chuyên môn.
Định lượng thiệt hại
- Phạt sai sót quyết toán TNCN: 2-5 triệu VNĐ/người/lần vi phạm (theo Luật Quản lý thuế 2019) nguồn.
- Nợ thuế chậm nộp: Lãi chậm nộp 0.05%/ngày tính trên số thuế thiếu nguồn.
- Số người lao động chịu ảnh hưởng: Ước tính 8-12 triệu người có thu nhập ngoài lương tại Việt Nam cần quyết toán TNCN mỗi năm (ước tính)
- Thời gian lãng phí cho quyết toán sai: 4-8 giờ/người để tự nghiên cứu và thực hiện quyết toán trên eTax Mobile (ước tính)
- Số sai sót phổ biến: Thiếu người phụ thuộc (35%), phân chia thu nhập sai khi chuyển việc (25%), deadline nhầm (20%), khai thu nhập từ đầu tư thiếu (20%) (ước tính)
Phạm vi
- Trong phạm vi: Quyết toán TNCN cho cá nhân có thu nhập từ lương + freelance + đầu tư + cho thuê, phát hiện sai tự động, cảnh báo deadline
- Ngoài phạm vi: Hỗ trợ hộ kinh doanh (đã có TaxVoice (ACIL-2026-012)), kê khai thuế VAT, tư vấn thuế doanh nghiệp
Mô hình vấn đề
Mô hình tính thuế TNCN và phát hiện sai cho người lao động đa nguồn thu nhập:
Các biến:
- — tổng thuế TNCN phải nộp (VNĐ)
- — thu nhập từ nguồn (lương, freelance, đầu tư, cho thuê)
- — giảm trừ gia cảnh cho bản thân (11 triệu VNĐ/tháng theo quy định 2024)
- — giảm trừ cho người phụ thuộc (4.4 triệu VNĐ/người/tháng)
- — thuế suất theo biểu lũy tiến từng phần (5%–35%)
- — số nguồn thu nhập
Các ràng buộc:
Mục tiêu:
Trong đó là xác suất sai sót khi quyết toán mà không có engine phát hiện.
Giải pháp đề xuất
ThuTra là công cụ quyết toán thuế TNCN đơn giản hóa cho người lao động cá nhân, với cơ chế phát hiện sai tự động giúp giảm phạt và nợ thuế.
Tính năng 1: Nhập thu nhập đa nguồn
- Form đơn giản: Nhập thu nhập từ từng nguồn (lương chính, lương phụ, freelance, cổ tức, cho thuê nhà, lãi bank) với form cấu trúc
- Import từ email: Quét email từ công ty (Payslip, giấy chứng nhận thu nhập) qua OCR hoặc copy-paste số liệu
- Tự động tính tổng thu nhập: Hệ thống tự động cộng dồn theo năm và phân loại theo loại thu nhập để xác định thuế suất đúng
Tính năng 2: Wizard quyết toán 3 bước
- Bước 1 — Xác định người phụ thuộc: Chọn/số lượng người phụ thuộc (con chưa đủ 18 tuổi, cha mẹ không có thu nhập) → hệ thống tự động cập nhật giảm trừ
- Bước 2 — Phân chia thu nhập theo thời gian: Xác định khoảng thời gian làm việc tại mỗi công ty → hệ thống tính số tháng làm việc cho từng nguồn (quan trọng khi chuyển việc giữa năm)
- Bước 3 — Chọn cơ quan thuế và nộp: Chọn cơ quan thuế quản lý (nơi đăng ký thuế hoặc nơi làm việc) → hệ thống điền sẵn thông tin vào mẫu quyết toán
Tính năng 3: Engine phát hiện sai tự động
- Rule-based engine với 15 rules phổ biến: Kiểm tra các sai sót phổ biến dựa trên quy định TNCN hiện hành 2024-2026
- Phát hiện thiếu người phụ thuộc: Khi thu nhập cao nhưng chưa khai người phụ thuộc → cảnh báo "Bạn có thể được giảm thuế thêm X VNĐ nếu khai người phụ thuộc"
- Phát hiện phân chia thu nhập sai: Khi người dùng nhập sai khoảng thời gian làm việc → cảnh báo "Bạn đã làm việc ở công ty Y từ tháng 3 đến tháng 9, nhưng bạn đang khai từ tháng 1. Thuế có thể sai."
- Phát hiện deadline nhầm: Khi người dùng chọn ủy quyền nhưng deadline 31/3 đã qua → cảnh báo "Bạn đã qua deadline ủy quyền, bạn cần tự quyết toán trước 30/4"
Tính năng 4: Cảnh báo deadline cá nhân hóa
- Notification tự động: Gửi notification 7 ngày trước deadline, 3 ngày trước deadline, và ngày deadline
- Deadline cá nhân: Tùy thuộc vào loại quyết toán (ủy quyền: 31/3, tự quyết toán: 30/4)
Các quyết định thiết kế chính
- Quyết định 1 — Phát hiện sai, không thay thế eTax: ThuTra không cố gắng thay thế eTax Mobile (khó vì tích hợp sâu với hệ thống Tổng cục Thuế), mà tập trung vào việc phát hiện sai SỚM trước khi nộp — cái eTax không làm. Người dùng vẫn nộp qua eTax sau khi ThuTra xác nhận không còn sai.
- Quyết định 2 — Freemium là mô hình phù hợp: 3 lần quyết toán miễn phí để trải nghiệm giá trị cốt lõi (phát hiện sai) → sau đó subscription 99K/năm cho người dùng thường xuyên (làm freelance, đầu tư).
Tiêu chí thành công
| Tiêu chí | Mục tiêu | Phương pháp đo lường |
|---|---|---|
| User sử dụng wizard | 200.000 user sau 12 tháng | Số lượt hoàn thành wizard |
| Giảm phạt cho user | Giảm 70% phạt so với nhóm không dùng ThuTra | Khảo sát user sau mùa quyết toán |
| Tỷ lệ chuyển đổi subscription | 20% user free → trả phí | Số subscription/năm |
| Độ chính xác phát hiện sai | Trên 90% (15 rules) | Validation trên dataset quyết toán thực tế |
Luồng hệ thống
Luồng này demonstrates quy trình từ nhập dữ liệu → phát hiện sai → sửa → nộp qua eTax, với engine phát hiện sai hoạt động như lớp kiểm tra trước khi nộp thực sự.
Thuật toán cốt lõi
Mô tả thuật toán
Thuật toán gồm 2 thành phần chính: import engine và rule engine.
Import Engine:
- Người dùng cung cấp dữ liệu: scan email payslip, paste số liệu, hoặc nhập tay
- Hệ thống trích xuất thông tin: ngày tháng, số tiền, loại thu nhập (lương/freelance/cổ tức/cho thuê)
- Hệ thống phân loại theo nguồn và thời gian, cập nhật vào database
Rule Engine (15 rules):
- Duyệt từng rule trong danh sách 15 rules
- Kiểm tra điều kiện rule trên dữ liệu quyết toán hiện tại
- Nếu điều kiện thỏa → đánh dấu sai sót + mức độ nghiêm trọng (HIGH/MEDIUM/LOW)
- Tổng hợp tất cả sai sót và trả về kèm hướng sửa
Công thức toán học
Thuế TNCN phải nộp (biểu lũy tiến từng phần):
Trong đó VNĐ (giảm trừ bản thân theo quy định 2024).
Điểm rủi ro tổng hợp:
Tham số:
- — trọng số nghiêm trọng của rule (HIGH = 3, MEDIUM = 2, LOW = 1)
- — binary (1 = vi phạm, 0 = không vi phạm)
- — giảm trừ gia cảnh bản thân (11 triệu/tháng × 12 = 132 triệu/năm theo quy định 2024)
Độ phức tạp
| Chỉ số | Giá trị |
|---|---|
| Độ phức tạp thời gian | cho import engine; = cho rule engine |
| Độ phức tạp không gian | cho lưu trữ dữ liệu thu nhập ( = số bản ghi payslip) |
Kiến trúc hệ thống
+------------------------------------------+
| Lớp Giao diện Người dùng |
| +--------------------------------------+ |
| | React Web App (Single Page) | |
| | - Wizard 3 bước | |
| | - Bảng điều khiển kết quả | |
| | - Notification center | |
| +--------------------------------------+ |
+------------------------------------------+
|
v
+------------------------------------------+
| API Gateway (Node.js/Express) |
+------------------------------------------+
| | |
v v v
+----------+ +----------+ +----------+
| Auth Svc | | Tax Calc | | Rule |
| | | Engine | | Engine |
+----------+ +----------+ +----------+
| | |
v v v
+------------------------------------------------+
| Supabase (PostgreSQL) |
| - /users (profile + subscription) |
| - /incomes (danh sách thu nhập theo nguồn) |
| - /quyet_toan (lịch sử quyết toán) |
| - /rules (15 rules phát hiện sai) |
+------------------------------------------------+
Mô tả các thành phần:
- React Web App: Giao diện wizard 3 bước — form nhập thông tin, bảng điều khiển kết quả quyết toán, notification center
- Auth Service: Xác thực người dùng (email + OTP), quản lý subscription freemium
- Tax Calc Engine: Tính thuế TNCN theo biểu lũy tiến từng phần, tổng hợp thu nhập đa nguồn
- Rule Engine: Kiểm tra 15 rules phát hiện sai, trả về danh sách sai sót kèm hướng sửa
- Supabase: Database PostgreSQL cho lưu trữ profile, thu nhập, lịch sử quyết toán, rules
Trường hợp sử dụng
Trường hợp sử dụng 1: Người lao động có thu nhập freelance quyết toán đúng hạn
Các tác viên: Người lao động có lương chính + freelance Tiên điều kiện: Người dùng đã đăng ký tài khoản ThuTra, đã nhận notification deadline 30/4 Kích hoạt: Người dùng mở ThuTra để quyết toán thuế TNCN năm 2025 Các bước:
- Nhập thông tin cá nhân + 1 người phụ thuộc (con 8 tuổi)
- Import payslip từ công ty chính (lương 25 triệu/tháng × 12 tháng = 300 triệu) + thu nhập freelance (100 triệu)
- Xác nhận thời gian làm việc: công ty chính cả năm, freelance từ tháng 4 đến tháng 12
- Chọn cơ quan thuế quản lý (TP.HCM) + tự quyết toán
- Rule engine phát hiện: "Người phụ thuộc đã khai đúng — bạn được giảm 52.8 triệu giảm trừ"
- Kết quả: Tổng thuế phải nộp = 18.5 triệu VNĐ (thay vì 32 triệu nếu không khai người phụ thuộc)
- Mở eTax Mobile, điền thông tin đã xác nhận từ ThuTra và nộp Sau điều kiện: Hồ sơ quyết toán được lưu, sẵn sàng cho mùa quyết toán tiếp theo Kết quả mong đợi: Người dùng nộp đúng hạn, không bị phạt, tiết kiệm 13.5 triệu VNĐ so với quyết toán sai