We rebuilt the ground under the same zero 3 times without changing a line
October 3, 2026 · Taro — Founder, KAZENA
Last week I checked one single zero 3 times. It is the withheld tax printed on the annual proof. All 3 times the conclusion was the same, and not one line of the file we export changed. What changed was the grade of the evidence that let me say that zero was correct.
The question came from V. She is an accountant in Jakarta who tests KAZENA Books against the real data of her own practice. On 29 September she wrote that two of her employees had 0 as their withheld tax for the year, because their annual income never crossed the taxable threshold. When she exported the annual proof for those two, the tax column showed 0. Was it acceptable to file that with the tax office.
I replied the same day that 0 was fine. My ground was a note we had written ourselves about the specification of the form. I made it 2 months earlier while reading the definition, and for that field it says: required, use 0 when there is nothing to report. Elsewhere in the same note it says the field may be left empty. It contradicted itself in 1 place.
I noticed the contradiction after the reply had gone out. Worse, I cannot tell which of the 2 lines is the newer one. Both are sentences I wrote, and neither carries a date. So what I did that day was pick whichever of my own 2 contradictory sentences fitted the question, and answer from it.
I climbed to the second rung. We hold a file that is distributed as an official sample, and in it the tax amount reads 64.000.000, which looks like a figure taken from a real filing. But as I found out earlier, that file is a specimen a machine generated from the definition of the form. The name of the software that produced it is still inside the file, and the taxpayer number field is nothing but 16 x characters in a row.
A specimen shows the shape. It is not a record of what is permitted. That 64.000.000 is not an amount anyone ever filed; it is a number a machine put there to fill the digits. On the question of whether 0 is accepted, the file says nothing at all. The second rung collapsed once I was standing on it.
The third rung is the live system. On 1 October, V sent a file containing those two people, built from her own practice data, into the real Coretax. The records were accepted. The proof that came back prints 0 in the tax column, and the annual totals reconciled. Only then could we say that 0 is fine.
To say it again: across all 3 rungs, not one line of the output changed. The file exported on 29 September and the file submitted on 1 October are the same file. It was right from the start. The only thing that moved was what the rightness rested on, climbing from my own note, to a specimen a machine wrote, to an accountant's confirmation on the live system.
I am writing this down because for those 2 days I answered V in the voice of someone who had checked. I had not checked. If 0 had been a value the office rejects, she would have filed on the strength of my reply. Being right was luck, not the result of work.
We changed the mechanism as well. The file that holds the rules for each form now carries 1 line of provenance beside every rule. We distinguish 3 kinds: confirmed on the live system, with the date; confirmed by a person; and inferred by reading the definition. The inferred ones say so. The point is that whoever reads it later can see where the checked part ends.
A note, since this touches tax. I am not a tax accountant. The zero in this piece is only our data and 1 case that went through on V's real practice data. For how the rules apply, and for your own filings, please confirm with a professional.
There is one thing we learned as a product team. That a value is correct, and that we can say it is correct, are different things. Ship only the first and nobody can tell, when the rules change, what has to be checked again. Carry the ground along with the value, and you can at least separate whether it was the ground that moved or the value. Climbing 3 times without changing the output was not wasted work; it is the work that makes the next change possible.
Tell us what you think
How the KAZENA apps feel to use, what we should fix, features you wish existed — if you run a small or medium business or work freelance in Indonesia or the Philippines, your voice is exactly what we want to hear. Messages in Bahasa Indonesia or English are answered by teammates who know your market from the inside. KAZENA Books is already set to launch in the Philippines and Indonesia — and if your company would like to bring it to other countries as a partner, or is interested in acquiring the system, we would love to hear from you too. We also take on new system development. We are a small team, so we cannot always start right away — but what we build carries made-in-Japan quality and stays close to how business really works here, one project at a time.
Get in touchMore from the blog
Cash went up but the month was in the red — why that happens
October 23, 2026 · Taro — Founder, KAZENA
Was last month profitable? Find out with 1 subtraction a month
October 18, 2026 · Taro — Founder, KAZENA
Keep the shop's money somewhere other than your own wallet
October 15, 2026 · Taro — Founder, KAZENA
