Thuế khấu trừ không đánh trên khoản chi ấy, mà trên cả năm dương lịch
August 24, 2026 · Taro — Nhà sáng lập KAZENA
Thuế khấu trừ không phải là thuế của riêng khoản chi đó. Nó chỉ là phần nộp trước giữa chừng cho số thuế của cả năm dương lịch. Tôi tưởng mình đã hiểu điều ấy, nhưng mã của chúng tôi lại không được viết như vậy. Mỗi khoản chi được xử lý như một phép tính khép kín trong chính nó. Hậu quả là khi trả cho cùng một người 2 lần, số khấu trừ ở lần thứ hai bị thiếu.
Người phát hiện ra là V. Chị là kế toán ở Jakarta, người thử KAZENA Books bằng chính dữ liệu thật của mình, và đến nay đã hơn 20 lần lập hồ sơ nộp vào hệ thống Coretax thật rồi gửi lại cho chúng tôi từng chỗ không qua được. Thứ đến với tôi chỉ là một dòng: số khấu trừ của khoản chi thứ hai giống hệt khoản đầu tiên.
Xin viết ra các con số. Một khoản thù lao trả cho cá nhân không phải người lao động: 150.000.000 rupiah cho cùng một người, 2 lần, vào tháng 2 và tháng 8. Với nhóm này, phần chịu thuế bằng một nửa tổng số, tức 75.000.000 rupiah mỗi lần. Thuế suất là biểu lũy tiến theo Pasal 17 — 5% cho đến 60.000.000 rupiah, rồi 15% cho đến 250.000.000.
Cách tính đúng là tính theo lũy kế. Lần chi đầu tiên là thuế trên cơ sở lũy kế 75.000.000 rupiah, tức 5.250.000 rupiah. Lần thứ hai là thuế trên cơ sở lũy kế 150.000.000 rupiah — bằng 16.500.000 rupiah — trừ đi 5.250.000 rupiah đã khấu trừ, còn lại 11.250.000 rupiah. Vậy mà phần mềm của chúng tôi lại đưa ra 5.250.000 rupiah cho cả lần thứ hai. Khoảng chênh là 6.000.000 rupiah.
Chuyện xảy ra là bậc 5% bị dùng 2 lần. Mỗi người chỉ có 1 bậc 60.000.000 rupiah trong một năm dương lịch. Nếu tính riêng rẽ từng khoản chi thì bậc thuế thấp nhất lại được cấp phát một lần cho mỗi khoản chi. Càng nhiều lần chi, phần thiếu càng lớn.
Ai trả phần thiếu ấy. Khấu trừ là nghĩa vụ của bên chi trả, nên nếu thiếu thì chính bên chi trả phải nộp bù về sau, kèm tiền phạt. Người nhận quả thật đã cầm về nhiều hơn, nhưng đòi lại khoảng chênh đó sau nhiều tháng thì gần như bất khả thi trong thực tế. Vậy nên đây không phải sai lệch hiển thị. Đây là một lỗi làm tiền chảy ra ngoài.
Vì sao nó lọt qua các bài kiểm thử của chúng tôi. Trong dữ liệu thử, mỗi người chỉ có 1 khoản chi. Thêm người thì dễ hơn thêm lịch sử, nên chúng tôi dựng dữ liệu theo kiểu mỗi người một khoản chi. Việc trả cho cùng một người 2 lần — chuyện hết sức bình thường trong công việc thật — chưa một lần nào xuất hiện trong đó.
Gốc rễ là chúng tôi đã nhầm đơn vị tính. Chúng tôi lấy khoản chi làm đơn vị. Đơn vị mà luật nhìn vào là con người nhân với năm dương lịch. Khi 2 thứ đó lệch nhau, mọi con số đều trông đúng chừng nào ta còn chỉ nhìn 1 khoản chi. Đúng khi đứng riêng, sai khi cộng lại — dạng khó phát hiện nhất.
Bắt tay vào sửa thì nảy ra câu hỏi kế tiếp: ngày nào quyết định một khoản có rơi vào năm đó hay không. Không phải ngày ghi sổ, mà là ngày chi trả. Rồi ranh giới đổi ngày thì theo đồng hồ của ai. Đọc theo giờ máy chủ, một khoản chi vào sáng ngày 1 tháng 1 ở Jakarta sẽ rơi về ngày 31 tháng 12 của năm trước. Chỉ 1 khoản chi vắt qua giao thừa cũng làm xê dịch điểm khởi đầu của toàn bộ lũy kế. Chỗ này nay được xác định theo giờ địa phương của từng nước.
Chúng tôi cũng phải quyết định số phận của những chứng từ đã phát hành. Tính lại theo lũy kế có thể khiến chứng từ khấu trừ phát hành trước đó không còn khớp với con số mới. Lặng lẽ ghi đè lên chúng, với tôi, là điều tuyệt đối không được làm. Thứ chúng tôi hiển thị bây giờ là tổng đã khấu trừ, tổng lẽ ra phải khấu trừ, và khoảng chênh giữa hai con số, xếp cạnh nhau. Còn quyết định sửa thế nào là việc của con người, không phải của phần mềm.
Lũy kế của chúng tôi cũng có giới hạn: nó chỉ là lũy kế của những khoản chi được ghi trong KAZENA, không hơn. Nếu cùng một người còn nhận thù lao từ các công ty khác, lũy kế cả năm thật sự sẽ lớn hơn. Khi phần mềm im lặng, người ta đọc con số trên màn hình như thể đó là tất cả. Nay bên cạnh con số ấy chúng tôi in thêm 1 dòng nói rõ những gì không nằm trong đó.
Màn hình cũng đổi. Trước kia chỉ hiện số tiền thực nhận sau khấu trừ. Bây giờ nó hiện lần lượt: cơ sở chịu thuế của khoản chi này, lũy kế cơ sở từ đầu năm đến giờ, thuế trên phần lũy kế đó, số đã khấu trừ, và số đang khấu trừ lần này. Màn hình có rậm hơn trước, nhưng một con số mà V không kiểm lại được thì chính chúng tôi cũng không kiểm lại được.
Xin nói thẳng rằng tôi không phải chuyên gia thuế. Những thuế suất và nhóm đối tượng viết ở đây là cách hiểu của chúng tôi trong phạm vi đã cài đặt, còn phán đoán cuối cùng xin hãy xác nhận với người có chuyên môn. Điều chúng tôi làm được chỉ là để lộ ra từng bước của phép tính. Nếu phần mềm bạn đang dùng đưa ra số khấu trừ ở khoản chi thứ hai cho cùng một người bằng đúng khoản đầu tiên, hãy thử kiểm lại bằng tay một lần.
Hãy cho chúng tôi biết bạn nghĩ gì
Cảm giác khi dùng các ứng dụng KAZENA, điều gì chúng tôi nên sửa, những tính năng bạn ước có — nếu bạn đang điều hành một doanh nghiệp nhỏ hoặc vừa, hay làm nghề tự do ở Indonesia hoặc Philippines, tiếng nói của bạn chính là điều chúng tôi mong được nghe nhất. Những tin nhắn bằng tiếng Indonesia hoặc tiếng Anh sẽ được trả lời bởi các đồng đội hiểu thị trường của bạn từ bên trong. KAZENA Books đã được ấn định ra mắt tại Philippines và Indonesia — và nếu công ty của bạn muốn đưa nó đến các quốc gia khác với tư cách đối tác, hoặc quan tâm đến việc mua lại hệ thống, chúng tôi cũng rất mong nhận được liên hệ từ bạn. Chúng tôi cũng nhận phát triển hệ thống mới. Chúng tôi là một đội nhỏ, nên không phải lúc nào cũng có thể bắt tay ngay — nhưng những gì chúng tôi xây dựng đều mang chất lượng made-in-Japan và luôn bám sát cách công việc kinh doanh thực sự vận hành ở đây, từng dự án một.
Liên hệ với chúng tôi