VWTVWT
← All insights

Reading a Thai Freight Invoice Line by Line

Published August 9, 2026 · 11 min read

The invoice arrives at 25,000 baht with six lines on it. Accounts payable checks the total against the rate card, withholds 1%, files it and pays.

Nothing about that looks wrong. Three separate things may be, and each of them costs you rather than the carrier: you may be withholding at the wrong rate, you may be paying tax you cannot recover, and you may be missing the one document the law actually regulates.

None of these is exotic. All three turn on a distinction Thai tax law makes that a freight invoice does not display: carriage is a different thing from every other service a transportation company sells you, and mixing them on paper changes the tax on both.

The bill is not the document the law cares about

Three pieces of paper get confused with each other here, and only one of them is regulated in any detail.

The invoice (ใบแจ้งหนี้) is a demand for money. No section of the Revenue Code tells anyone what it has to say.

The tax invoice (ใบกำกับภาษี) is the document that carries VAT and lets a registered buyer reclaim it. Domestic transport is exempt from VAT under Section 81(1)(ณ) of the Revenue Code, so for the carriage itself there is no tax invoice and there is nothing to reclaim.

The receipt (ใบรับ) is the one with rules. Section 105 requires the person receiving money to issue one immediately, every time, whether or not anybody asks for it, once the amount passes a threshold the Director-General sets. For a business exempt from VAT under Section 81, which is what a domestic road freight operator is, that threshold is 100 baht.

So in practice every payment you make for road freight in Thailand comes with a legal obligation on the carrier to hand you a receipt, unprompted.

Section 105 bis says what has to be on it, in Thai script with Thai or Arabic numerals: the issuer's taxpayer identification number, the issuer's name or trade name, the book and receipt serial numbers, the date, and the amount received. The issuer keeps the stub or a copy for at least five years, and if there is no stub or copy, the law presumes no receipt was ever issued. Failing to issue one, or issuing one for less than was actually received, carries a fine of up to 500 baht, up to a month's imprisonment, or both, under Section 127 bis.

Five hundred baht is not the reason to care. The reason to care sits in Section 65 ter (18): expenditure whose recipient the payer cannot prove is not deductible in computing net profit. A payment with no receipt behind it is a payment you may end up unable to deduct, on a cost line that for most shippers runs to millions of baht a year.

One line can change the tax on another line

This is the part that is genuinely hard to spot, because the bill looks fine.

Carriage and other services are taxed differently. Freight is exempt from VAT and withheld at 1% under clause 12/4 of Revenue Departmental Order Tor Por 4/2528. Customs clearance, warehousing, handling and packing are ordinary services: 7% VAT, withheld at 3%.

The Revenue Department has ruled on what happens when a transportation company sells you both. If the freight and the other service are added together into a single figure, the whole amount becomes that other service. All of it takes 7% VAT, and all of it is withheld at 3%, including the part that was carriage. Show the two clearly and separately and each keeps its own treatment.

Take a job of 20,000 baht of carriage plus 5,000 baht of customs clearance:

Billed as one figure Billed as two lines
What the bill says Service charge 25,000 Freight 20,000, clearance 5,000
VAT at 7% 1,750, on the whole 350, on the 5,000 only
Invoice total 26,750 25,350
Withheld 750 at 3% 200 at 1% plus 150 at 3%
Paid to the carrier 26,000 25,000
Cost if you can reclaim the VAT 25,000 25,000
Cost if you cannot 26,750 25,350

A VAT-registered buyer who reclaims the input tax ends up in the same place either way, which is why this passes unnoticed for years. Two things are still moving.

The first is the buyer who cannot reclaim, who pays 1,400 baht more for identical work, entirely because of how the line was typed.

The second is the one that grows. If the bill combines the two but your team withholds as though the freight were still freight, you have withheld 350 baht where 750 was due. The 400 baht shortfall does not sit with the carrier. It comes back to the payer. Two hundred loads a year and that is 80,000 baht of somebody else's tax landing on your accounts.

There is a second branch to that ruling, and it is the one people miss. Where the biller is not habitually and mainly in the transport business, splitting the lines does not help. A customs broker who also arranges a truck is selling clearance, and the whole amount is treated as clearance whether the freight is on its own line or not.

The same line means different things depending on who issued it

Now the mirror image, which is the more common error and runs in the opposite direction.

Your goods supplier delivers and adds a delivery charge to the same tax invoice, on its own line. Because that supplier is not habitually a transport operator, the freight forms part of the value of the sale under Sections 65 and 79 of the Revenue Code. The whole amount is the tax base of a sale of goods.

Freight billed by a transport operator The same freight billed by your goods supplier
Goods — 100,000
Freight line 3,000 3,000
VAT none on the freight 7,210, calculated on 103,000
Withholding on the freight line 30, at 1% none

Withholding 1% from a supplier's delivery line is a common habit, and it is wrong. The line says freight, but the transaction is a sale.

The test that resolves both directions is not the wording of the line. It is: who issued this, and what is that person's habitual business? The licence type and the invoice wording between two carriers is worth settling before the first load rather than after the two hundredth.

The 1,000 baht test applies to the contract, not to the payment

Withholding only bites once the amount reaches 1,000 baht, and there is a persistent belief that small runs fall outside it.

Clause 12/7 of the same departmental order, as amended in 2016, closes that: the test is the amount under one contract, and it applies even where the contract is paid out in instalments each of which is under 1,000 baht. A monthly haulage agreement settled as forty separate 850 baht runs is withholdable in full. The Revenue Department confirmed the same point for road carriage in 2008, adding that the 1% rate applies where the arrangement is carriage under Section 608 of the Civil and Commercial Code with no other service attached, which is the same fork as above seen from the other side.

Then there is the certificate. Section 50 bis requires the person doing the withholding to issue a withholding tax certificate in two identical copies, and for deductions ordered under Section 3 Tredecim, which covers freight, immediately every time tax is withheld. Not monthly, not at year end. That obligation is yours, not the carrier's, and a carrier chasing certificates six months later is chasing something you were required to hand over at the time.

The extra lines: what a carrier may add, and what needs its own agreement

Below the freight sit the other charges. Waiting, a second drop, tolls, an overnight stand, a fuel adjustment.

Thai law already has a name for these. Section 611 of the Civil and Commercial Code defines the accessories to the freight as expenses of any kind, according to custom, reasonably incurred by the carrier during the carriage. Three tests, and a line has to pass all three: customary in the trade, reasonable in amount, and incurred during the carriage rather than before or after it.

Tolls and ferry crossings pass easily. So does a fuel adjustment, provided it is built on something published rather than asserted, which is a subject of its own: what a fuel clause has to name to be checkable is the difference between a formula and a number.

A charge for something that happened before the vehicle was loaded, or after the goods were handed over, or that nobody in the trade charges, is not an accessory to the freight. That does not make it unenforceable. It makes it a term you have to have agreed, in your contract, at a stated rate.

The distinction is worth more than an argument, because of what rides on it. Section 630 lets the carrier hold the goods to secure payment of the freight and its accessories. A charge that qualifies can be enforced against your cargo. A charge that does not has to be pursued as an ordinary debt, which is a much slower and weaker position. That is exactly why free time and the hourly rate after it belong in the contract in writing rather than appearing for the first time as a line on the bill.

The freight figure exists on a second document, if you ask for it

Two transport documents sit behind the invoice, and neither is compulsory. Each exists only because the other side asked for it.

Section 612 covers the cargo note (ใบกำกับของ): if the carrier asks, the consignor must make one, showing the condition and weight or size of the goods, the condition, number and marks of the packages, the destination, and the consignee's name and address, signed by the consignor.

Section 613 covers the consignment note (ใบตราส่ง): if the consignor asks, the carrier must make one. It repeats the goods particulars, adds the consignor's name, the place and date of issue, and, importantly for anyone checking an invoice, the amount of the freight. The carrier signs it.

That puts the price on the transport document, contemporaneous with the movement, rather than only on a bill written weeks later. It is the cheapest reconciliation control available to a shipper, and it costs one request.

Two consequences follow once a consignment note exists. Under Section 615 the goods are released only against surrender of it, or against proper security from the consignee. And under Section 625 any clause excluding or limiting the carrier's liability, printed on a receipt, a consignment note or a similar document the carrier issues, is void unless the consignor expressly agreed to it. The small print on the back of the sheet the driver hands over does not bind you simply because somebody signed for the goods. That principle decides more than paperwork: the same documents settle who is allowed to make a carrier pay.

If there is a 7% line on a domestic road freight bill

Occasionally one appears. It should stop the payment run.

Domestic transport is exempt, so a road freight operator has no right to charge VAT on the carriage. Section 86/13 makes a person who issues a tax invoice without the right to do so liable for the VAT shown on it as though they were registered, and Section 89(6) adds a penalty of twice that amount. On your side, Section 82/5(5) blocks the deduction of input tax on a tax invoice issued by someone with no right to issue one, and Section 82/5(2) blocks it where the invoice is missing particulars that Section 86/4 requires.

So the 7% is money you hand over and cannot recover.

The legitimate version looks similar and is not the same thing: a mixed bill where the VAT sits only on the non-transport lines. What matters is not whether the paper is headed "tax invoice". It is which lines are being taxed.

The check, before the payment run

Seven things, none of which needs an accountant to look up twice:

  • A receipt for every payment, not just an invoice, and every receipt carrying the particulars Section 105 bis requires
  • Freight shown on its own line, never merged into a service total
  • The withholding rate matching what the line actually is: 1% for carriage, 3% for services, and 3% on the whole if the two were merged
  • Nothing withheld from a goods supplier's delivery line
  • The 1,000 baht test applied to the contract, not to each payment
  • A withholding tax certificate issued at the time of payment, in two copies
  • Any 7% line examined for what exactly it is being charged on

The bill that causes trouble is almost never the one with a number you dispute. It is the one where every number is right and the lines are in the wrong boxes.