2026-10-23 · TWH AI
Duplicate Invoice Controls for Maintenance Vendors in Thailand
A practical B2B guide for property, finance, and ops teams to prevent duplicate maintenance invoices through acceptance, approval, tax invoice, and reconciliation controls.
Duplicate maintenance invoices are a quiet but expensive problem for commercial buildings, industrial sites, serviced residences, and mixed-use portfolios in Thailand. They rarely happen because of one obvious fraud event. More often, they appear through weak process design: a technician revisits the same job under a new work order, a vendor submits both a quotation-based invoice and a tax invoice for the same task, or finance pays a document because it matches a budget line but not the actual completed scope. For foreign facility managers and expatriate property directors, the challenge is usually not lack of effort. It is lack of visibility across operations, procurement, engineering, and accounting. This article sets out a practical B2B control framework to prevent duplicate maintenance invoices in Thailand, with clear terminology, realistic examples, and process checkpoints aligned with international standards.
Why duplicate invoice risk is high in property maintenance
Maintenance spending has several characteristics that make duplicate billing easier than in ordinary office procurement.
First, maintenance work is repetitive. The same air-conditioning issue, pump leak, lighting fault, or drain blockage may recur in the same area within weeks. If work orders are not coded correctly, one event can be presented as two.
Second, urgent jobs often bypass normal controls. A leaking pipe in a tenant area or a power issue affecting common areas may be approved verbally, completed quickly, and documented later. That creates gaps between what operations remembers and what finance eventually pays.
Third, maintenance documentation in Thailand is often fragmented between English and Thai. Site teams may refer to “service report,” “job completion form,” “delivery note,” “tax invoice,” and “withholding tax certificate” in inconsistent ways. When terminology is unclear, duplicate submission risk increases.
Fourth, many properties use multiple vendors for the same trade. One electrical contractor may handle emergency call-outs, while another manages preventive maintenance. Without a clear vendor and asset history, finance may approve invoices for overlapping scopes. For electrical system planning and service structure, companies often combine routine and emergency support through specialized providers such as electrical maintenance services.
In Thailand, duplicate amounts may not always be large individually. A repeat invoice for THB 3,500 to unblock a drain may seem minor. But across 20 properties and 12 months, repeated small-value errors can become a six-figure annual loss.
Define the four control stages clearly
The most effective way to reduce duplicate invoices is to split the process into four control stages:
- Acceptance control
- Approval control
- Tax invoice control
- Reconciliation control
Each stage answers a different question.
Acceptance control: Did we receive the work?
Acceptance control confirms that the service was actually performed, at the specified location, on the specified date, against a valid request or contract.
This is an operations-led control. It should rely on job completion evidence, not only on trust or email confirmation.
Minimum acceptance evidence should include:
- Work order number
- Site location and asset reference
- Date and time in/out
- Description of work performed
- Photos before and after where relevant
- Name and signature of site representative
- Name and signature of technician or vendor representative
For example, if a plumbing contractor submits an invoice for replacing a 2-inch isolation valve in a condominium riser room, acceptance evidence should show the exact riser room, the removed defective valve, the installed replacement, and the site sign-off. If the same contractor later sends another invoice for “urgent leak repair at riser,” the prior accepted document should help identify whether this is a genuinely new issue or a duplicate narrative for the same repair. Teams managing water systems, leaks, and sanitary works should align this process with their broader plumbing maintenance support.
Approval control: Was the work authorized at the correct value?
Approval control confirms that the service should be paid, at the agreed rate, by the correct cost owner.
This is usually shared between operations, procurement, and finance.
Approval should verify:
- Was there an approved PO, contract, rate card, or emergency authorization?
- Does the invoice amount match the agreed commercial basis?
- Is this a call-out fee, lump-sum repair, monthly service, or variation order?
- Has someone checked whether the same work order has already been billed?
A common failure in Thailand is approving work at one level and paying at another. For instance, the chief engineer may approve a THB 8,000 emergency FCU repair based on a phone call, but the vendor later invoices THB 8,000 as labor and separately invoices THB 4,500 for “urgent attendance,” causing double charging. Approval control should prevent this by requiring a single approved cost basis.
Tax invoice control: Is the vendor billing document unique and compliant?
A tax invoice in Thailand is not just an invoice in the informal English sense. It is a statutory document with legal and accounting implications. Duplicate payment can happen when finance receives multiple versions of the same billing package, such as:
- Quotation followed by invoice
- Invoice followed by tax invoice
- Tax invoice followed by receipt
- Scan by email followed by original hard copy
Without document rules, staff may treat each item as separately payable.
Tax invoice control should verify:
- Unique invoice number
- Unique tax invoice number where separately used
- Vendor legal entity name and tax ID
- Property legal entity name and tax ID
- Date of issue
- Reference to PO, contract, and service period
- Whether VAT has already been recognized for that document
- Whether the original has already been logged in AP
This point is especially important for overseas-managed businesses with local Thai entities. Foreign directors may assume “invoice” means one commercial claim, but local practice may generate several related documents for one claim. Finance teams must decide which exact document triggers payment.
Reconciliation control: Does the invoice match the service history and ledger?
Reconciliation is the final backstop. It compares accepted work, approved value, submitted invoice, and payment history.
A proper reconciliation review should check:
- Work order to invoice match
- Invoice to PO or contract match
- Invoice amount to prior paid amounts by vendor
- Asset history by location
- Monthly recurring invoices against service periods already billed
- Credit notes, reversals, and advance payments
This control is where duplicate patterns become visible. If one vendor invoices “monthly generator maintenance for April” and another vendor also invoices “backup generator PM visit for April” at the same site, reconciliation should flag overlap.
Use standard English terminology across teams
In mixed-language environments, terminology control is a financial control. International companies should issue a simple bilingual glossary for everyone involved in maintenance billing.
Recommended English terms include:
- Work Order: internal request authorizing a job
- Service Report: vendor’s technical report of what was done
- Job Completion Form: client acceptance that work is complete
- Purchase Order (PO): commercial authorization to purchase
- Variation Order: approved change to scope or price
- Invoice: commercial request for payment
- Tax Invoice: VAT-compliant billing document under Thai requirements
- Receipt: evidence of payment received by vendor
- Credit Note: document reducing a previous invoice
- Withholding Tax Certificate: evidence of tax withheld at source where applicable
Why does this matter? Because duplicate payment often starts when one department says, “We only received the service report,” and another says, “Finance already paid the invoice,” while the vendor later submits the tax invoice as if it were still unpaid.
A shared vocabulary reduces ambiguity between local site teams and foreign management. It also supports audit readiness.
Build a practical control workflow
The best workflows are not complicated. They are disciplined.
Step 1: Create one job reference from the start
Every maintenance event should begin with one unique job reference. This reference should appear on:
- Internal maintenance request
- Vendor quotation
- PO or approval email
- Service report
- Completion sign-off
- Invoice
- Tax invoice
Example format:
BKK-PLMB-2026-00458
If a vendor submits a document without the job reference, AP should return it. This one rule alone can significantly reduce duplicates.
Step 2: Separate emergency authorization from final billing approval
Emergency work is normal in property operations. But emergency action should not mean emergency payment.
Recommended control:
- Site team authorizes attendance
- Engineer confirms technical need
- Cost owner confirms budget classification within 24 hours
- Vendor submits service report and quote if beyond threshold
- Final billing approval occurs only after acceptance evidence is complete
Set thresholds that fit your property size. For example:
- Under THB 5,000: supervisor plus engineer sign-off
- THB 5,001–20,000: facility manager approval
- THB 20,001–100,000: property director or finance co-approval
- Above THB 100,000: procurement or capex governance review
Step 3: Require line-item detail for all non-routine jobs
Duplicate billing hides easily inside vague descriptions such as “repair works,” “urgent service,” or “maintenance support.”
Require line items such as:
- Call-out labor: 2 technicians x 3 hours = THB 2,400
- Replacement capacitor 35 microfarad = THB 650
- Refrigerant top-up 1.5 kg = THB 1,800
- Transport = THB 500
When detail exists, the same capacitor replacement cannot later reappear as a separate invoice without raising questions.
For general outsourced building support, this level of transparency should apply across all maintenance services, not only large projects.
Step 4: Log invoices before approval, not after payment
Some teams review invoices by email, approve them informally, and only later enter them into the accounting system. This is risky.
Instead, log every invoice immediately on receipt into an invoice register with:
- Date received
- Vendor name
- Invoice number
- Tax invoice number
- Job reference
- Amount before VAT
- VAT amount
- Total amount
- Service period
- Property/entity
- Approval status
- Payment status
The register should automatically flag duplicate combinations such as:
- Same vendor + same invoice number
- Same vendor + same amount + same service date
- Same job reference + multiple invoices
- Same service period + recurring charge already logged
Step 5: Match monthly service invoices to service periods
Many duplicate payments happen on recurring PM contracts.
For example, a lift maintenance vendor bills:
- “April 2026 preventive maintenance” on 3 April
- Then “Q2 routine service support” on 10 April
- Then “Monthly maintenance contract for April” on 25 April
If all three descriptions relate to the same contract obligation, only one should be payable.
Use a contract calendar showing all expected invoices by month and by site. Finance should know in advance that one contract should generate 12 monthly invoices, or 4 quarterly invoices, not both.
Thai market examples and realistic price ranges
Below are practical examples of common maintenance charges in Thailand. Actual rates vary by building type, location, urgency, and vendor quality, but these ranges are useful for control design.
Example 1: Split-type air-conditioning call-out
Typical market range in Bangkok:
- Diagnostic call-out: THB 800–2,000
- Capacitor replacement: THB 500–1,500
- Fan motor replacement: THB 2,500–6,500
- Refrigerant refill: THB 1,200–3,500
- Deep cleaning: THB 1,500–4,000 per unit
Duplicate risk scenario: A tenant reports poor cooling. Vendor attends and charges THB 1,500 call-out. Two days later, vendor invoices THB 3,200 for capacitor replacement under a new document. One week later, another THB 1,500 call-out appears for the same room because the earlier attendance record was not linked.
Control: Use one job reference for the full incident until closed. Additional visits on the same fault should be attached to the same event.
Example 2: Plumbing leak repair in common area
Typical market range:
- Minor blockage clearing: THB 1,500–3,500
- Pipe leak repair, exposed section: THB 2,500–8,000
- Toilet flush valve replacement: THB 1,800–4,500
- Transfer pump seal replacement: THB 4,000–12,000
Duplicate risk scenario: Vendor submits one invoice for “emergency leak repair, Level 12” at THB 6,800 and a second invoice for “pipe fitting replacement” at THB 4,200. Site photos show both refer to the same work.
Control: Acceptance form must identify whether materials are included in the repair price or billed separately.
Example 3: Electrical emergency response
Typical market range:
- Electrician call-out in Bangkok: THB 1,000–2,500
- MCB replacement: THB 500–2,000 plus labor
- Lighting circuit repair: THB 1,500–6,000
- Small DB troubleshooting: THB 2,500–8,000
Duplicate risk scenario: A contractor raises an invoice for THB 2,000 attendance and another invoice for THB 2,000 “inspection and diagnosis.” If your rate card defines call-out as including first inspection, this is a duplicate charge.
Control: Rate cards must state exactly what the attendance fee includes.
Common duplicate invoice patterns in Thailand
Facility and finance teams should train staff to recognize recurring patterns.
1. Same work, different document type
A vendor sends a pro forma invoice, then a final invoice, then a tax invoice. AP pays the first and the third.
Prevention: Only one document type should be payable under your policy.
2. Same work, different wording
“Drain unclogging at loading bay” becomes “sanitary maintenance support, rear service zone.”
Prevention: Use location codes and asset IDs, not only narrative descriptions.
3. Same month billed twice under recurring contract
The vendor bills monthly PM and separately bills “routine inspection” already covered in contract.
Prevention: Contract summary sheet should list inclusions and exclusions in plain English.
4. Emergency revisit billed as a new incident
A failed first repair leads to a return visit, but vendor bills the second visit as an unrelated new job.
Prevention: Define callback period, for