The code for expanded withholding is 5 characters of letters and digits. It opens with a W, the next character says what kind of payee, and the last 3 point at the kind of payment. I only understood that ordering in July. Until then I took it for a filing symbol and nothing more.
We are a withholding agent. When we pay the rent on the office, when we pay a professional a fee, we take the tax out before we pay and remit it ourselves. Every quarter we file a list of who was paid, how much, and how much was withheld. KAZENA Books assembles that list.
Inside the software, the code hung off the kind of payment. This code for rent, that code for a professional fee. I took it for one more field next to the account, a day's work at the outside. The field is called a tax code, so surely it names a kind of tax.
Our accountant looks the quarterly list over before we file. Ahead of the July filing they pointed at 2 rows and asked whether those payees were not corporations. One was the owner of the building our office is in, the other a firm we lease equipment from. Both are corporations, and both sat under a code meant for individuals.
Not 1 peso was wrong. Expanded withholding on rent is 5%, and it is 5% whether the payee is an individual or a corporation. With the same rate, the amount deducted, the amount remitted and the totals in the books were all correct. The only thing wrong was which heading it had been put under.
The second character of the code is not a finer description of the payment. It says whether the payee is an individual or a corporation. That makes it not a category but a claim we are making to the authority about somebody else. When the amount agrees and the claim does not, the list is not accepted.
The heavy part is the half that had already left our hands. A payee we withhold from receives a certificate, and uses it to take the credit on their own return. The code is printed on that certificate too. A certificate carrying the wrong code files the payee's credit under the wrong heading. A field I filled in, taking shape on somebody else's return.
Going back 2 quarters, 31 of 214 entries, 61,400 pesos of withheld tax, sat under the wrong code. 9 certificates had already gone out. This was not something we could quietly correct on our side; we had to write to the people holding them and ask to replace them.
There was validation. It checked that the code existed in the table, and that the rate tied to the code matched the rate we had actually deducted. Both passed every time. The rate and the code were the pair that had been in agreement from the start. What was missing was the payee's classification, and that field was not an input to the calculation anywhere.
The repair was to derive the code from the kind of payment and the payee's classification together. I wrote the classification test as whether the payee's registered name carried a trade name. That was wrong. A sole proprietor has a trade name and is still an individual. 4 of 46 test entries now fell the other way. I noticed because 1 of those 4 was a payee I happen to know is a person. You cannot read a classification off the shape of a name.
The rule we settled on is that the classification is not guessed. It is whatever the payee's own registration paper says, entered once by a person. With no entry there is no code, and the row does not go into the list. A blank stops the work. A wrong guess lets the work continue. We chose the one that stops.
I sent the whole account to the engineer on the KAZENA side, and heard back that they have a form of the same shape: a rate that does not depend on the payee, and a treatment on the return that does. Whatever the country, a form asks not only what was paid but who it was paid to. Collapse those 2 into a single field in software and it breaks the same way on either side.
I estimated 1 day and it took 9. Re-deriving the code took half a day to write. The rest was counting 2 quarters over again, replacing 9 certificates, and explaining it to the people who had received them. At the office now, when we add a field that appears on a form, the first question is whether it is saying something about the payment or something about the other party.
One last note. I am not a tax practitioner. What is written here is a record of our own work, and any withholding decision should be confirmed with a professional.