In a tax computation workshop there was a model company with 1 million baht of trade receivables more than 90 days overdue, out of 39 million total. The accounting team did exactly what the textbook says: recognise an allowance for doubtful debts, and take the 1 million baht as an expense in that period.
That is correct. Under accounting prudence, once you have a signal that the money may not arrive, you recognise the damage now rather than waiting for it to be certain and leaving readers of the statements in the dark.
Then the tax computation comes around, and the entire 1 million baht has to be added back, because tax sees it as an estimate. The debt has not actually gone bad, so it cannot be an expense.
Same money, same number, two opposite answers, and both are right.
Part 1Two numbers built for different jobs
People tend to assume taxable profit is book profit with small tweaks. In reality they are two different figures, constructed for different purposes from the start.
| Dimension | Book profit | Taxable net profit |
|---|---|---|
| What it is for | Showing readers of the statements how the business actually performed | Determining the tax owed, nothing else |
| Rules it follows | Financial reporting standards | The Revenue Code |
| Stance on uncertainty | Prudent: a signal of loss is enough to recognise it | No estimates: it must have happened and be provable |
| Where it lives | In the ledgers and the financial statements | In a working paper and the PND50 return |
The doubtful debt case above is fully explained by this table. Accounting is prudent, so it takes the allowance. Tax does not accept estimates, so it adds the amount back. Neither side did anything wrong.
To make that debt genuinely deductible you have to follow Ministerial Regulation No. 374, which scales its conditions to the size of the debt. Below 200,000 baht you need two documented collection attempts plus a reason that suing would not be worth it. From 200,000 to 2 million the court must have accepted a filing. Above 2 million you need enforcement or a formal settlement. The law is not asking whether you collected the money, it is asking how far you went trying.
Part 2The equation that is not in the statements
The path from the profit in your statements to the tax base looks like this.
book profit + taxable income + non-deductible expenses − exempt income − extra-deductible expenses = taxable net profit
Those four middle terms are the whole reason the two figures differ, and each one exists for a different reason.
- Taxable income the books did not record as revenue but the law counts anyway, such as selling goods or lending below market value without reasonable cause, or taking company inventory for personal use.
- Non-deductible expenses the books already took but Section 65 ter disallows. To pass, a cost must clear four tests: related to the business, reasonable in amount, provable with evidence, and not specifically prohibited.
- Exempt income the books recognised but tax waives, such as qualifying dividends. A company generally gets half exempt, and gets the whole amount exempt if it holds at least 25% of the payer, provided it held for three months both before and after the declaration date.
- Extra-deductible expenses where the government wants to encourage something and lets you deduct more than you spent, say 1.5 or 2 times. These are temporary policies with an expiry date.
That last one has arithmetic worth finishing before you use it. Spend 100 baht, deduct at 2 times, and at a 20% rate you save 40 baht of tax. Net cash out is therefore 60 baht. If the thing you bought brings the business no real benefit, you spent 60 baht of cash to save 40 baht of tax. Paying the tax outright would have cost less.
Depreciation is another common trap. The Revenue Department sets a five year minimum. If your books depreciate over a longer life there is no problem, but if they depreciate faster, say over three years, the difference has to be added back, because you took the deduction sooner than the law allows.
Part 3725,000 baht of income that is in no ledger at all
The case that shows most clearly how a tax figure lives outside the books is a director loan.
A model company lent a director 10 million baht long term from the start of the year, charging no interest at all, while the company itself carried 80 million baht of long-term bank debt at 7.25%.
Section 65 bis (4) says a loan must carry interest at no less than a market rate, even where no money actually changes hands. Which market rate applies depends on whether the company has debt of its own: with no debt you use the fixed deposit rate, with borrowings you use the lending rate. So this case uses 7.25%.
10,000,000 × 7.25% × 1 year = 725,000 baht to be added as taxable income.
The interesting part is the caution attached to this case. Do not debit that 725,000 as accrued interest receivable in the accounting system. The contract never agreed to charge interest, so booking it would interfere with the auditor's work. Compute it in a working paper only.
Read that again. The law is saying this figure must exist for tax purposes and must not exist in the ledger, at the same time.
Part 4What this means if you build systems or use AI
I care about this because I build accounting software, and the cases above are why the real work is harder than it looks.
If you think of an accounting system as a machine that adds up the ledger, taxable profit will never appear on its own no matter how well it adds, because the figure you need is not in the data you hold. It comes from rules in the Revenue Code, not from the transactions on file. That 725,000 baht of interest has no document behind it, no transfer, no line in any ledger. There is only a loan contract that agreed no interest, and a law that says charge it anyway.
This connects directly to what I wrote in professional skepticism, the review skill AI cannot replace. There the point was that a tool answers the questions you ask very fast but does not know what you forgot to ask. This case is a level sharper: the answer was never in the data to begin with, so no amount of asking well will find it unless someone brings the rules to it.
So when you put AI on tax work, what it does well is gathering the items that plausibly need adjusting, comparing balances across periods, and flagging which entries lack evidence. What it cannot do is decide which section of the code an item falls under, because that judgement has to come from a person who has read the rules.
Where to start
If you own a company or you are the one signing the return, try these three on the accounting year you are about to close.
- Ask for the working paper reconciling book profit to taxable profit, not just the tax figure. If that paper does not exist, nobody can yet explain where the number came from.
- Go through every allowance and estimate: doubtful debts, inventory obsolescence, provisions. Tax accepts none of them, so all of them get added back.
- Check whether any loan to a director or shareholder is outstanding. If one is, and no interest is being charged, compute the market-rate interest in a working paper yourself rather than waiting for the Revenue Department to do it for you.
None of the three requires knowing the whole code, and they are where the gap between the two numbers usually hides.
What changed how I see this is dropping the idea that tax is a step appended to the close. Taxable profit is not produced by finishing book profit and then adjusting it. It is a separate figure assembled from rules, running alongside the statements. Understand that first and you design both the process and the system differently.
Related reading: the certificate in lieu of a receipt, one tier of the evidence hierarchy that keeps a cost from becoming non-deductible. The other destination for the same set of statements is filing financial statements with the DBD, Thailand's Department of Business Development.
- The four-part adjustment equation, SME rates, the non-deductibility tests, the evidence hierarchy, depreciation treatment, and the extra-deduction break-even formula come from a Thai CPD (continuing professional development) course on corporate income tax (PND50) that I took and compiled into my own knowledge base (Jun 2026).
- The 1 million baht doubtful-debt case and the 10 million baht director-loan case are workshop simulations from that same course, not any real entity's data.
- Section 65 bis (4) and Section 65 ter, Thai Revenue Code, The Revenue Department rd.go.th
- Ministerial Regulation No. 374 on writing off bad debts, The Revenue Department rd.go.th
- Thai Financial Reporting Standards, Federation of Accounting Professions tfac.or.th