Skip to Content

Odoo Payroll Setup for Thailand: SSF, PND1 & Salary Guide

June 3, 2026 by
Elevanta Marketing

If you're running a business in Thailand and still doing payroll in Excel, or worse, manually, you already know the pain. The Odoo payroll setup for Thailand covers SSF deductions, PND1 withholding tax, salary slips, and compliance reporting, all inside one system. No switching tabs. No double entry. Just clean, automated payroll that actually works.

This matters most for HR managers and business owners who are tired of scrambling every month to get numbers right before the Revenue Department deadline. Whether you're running a small factory in Chonburi or a growing distribution company in Bangkok, getting your payroll right isn't optional. Thai compliance is strict, and the penalties for getting it wrong are real.

What Is Odoo Payroll and Why Thai Businesses Use It

Odoo isn't just an ERP. It's a fully connected business platform, and the Odoo HR module Thailand businesses use handles everything from employee contracts to monthly payslips in one place.

Most Thai businesses start with accounting or inventory, then expand into HR and payroll as they grow. And that's where Odoo genuinely shines. Because payroll isn't isolated, it connects directly to attendance, timesheets, leaves, and accounting. When you approve a payslip, the journal entries hit your accounts automatically. No manual upload. No human error.

Why It's Different From Generic Payroll Tools

  • Built-in Thai localization, not bolted on later

  • Connects payroll directly to accounting, HR, and attendance

  • Handles multi-company payroll if you run more than one entity

  • Generates PND1, SSF reports inside the system

  • Scalable from 5 employees to 500+

And unlike standalone Thai payroll software, Odoo grows with your business. You don't outgrow it.

Understanding Thai Payroll Compliance Before You Set Anything Up

Here's what most businesses get wrong. They jump straight into Odoo configuration without understanding the compliance layer first. Then they wonder why numbers don't match government forms.

Don't do that.

What Is SSF Contribution Thailand: And How Much?

The Social Security Fund (SSF), sometimes called SSO, requires both employers and employees to contribute 5% of salary each month, capped at a maximum salary base of THB 15,000. So the maximum monthly contribution per person is THB 750 from the employee and THB 750 from the employer.

The SSF contribution Thailand rules apply to all Thai employees. Foreign employees on work permits have different treatment depending on tax residency. Get that wrong and it shows up in audits.

PND1 Withholding Tax in Odoo: What It Is

PND1 is the monthly personal income tax withholding return. Every employer in Thailand must withhold tax from employee salaries and file PND1 with the Revenue Department by the 7th of the following month, or the 15th if filing online.

PND1 withholding tax Odoo configuration calculates this automatically once your salary structures and tax brackets are set correctly. Thailand uses a progressive tax rate, 0% up to THB 150,000 annually, scaling up to 35% for income above THB 5,000,000.

Thai Withholding Tax in Odoo: Guide to PND3 & PND53 Setup 

Thai Employee Payroll Compliance Basics

Beyond SSF and PND1, Thai employee payroll compliance also includes:

  • Annual PND1K summary filing

  • Workmen's Compensation Fund (WCF) contributions

  • Provident fund contributions if applicable

  • Severance pay calculations based on tenure

Set these up correctly from day one. Retrofitting compliance into a live payroll system is painful, trust the experience.

Step-by-Step Odoo Payroll Setup for Thailand

Right. Let's get into the actual setup. This is where the Odoo payroll setup for Thailand process really begins.

Step 1: Install and Configure the Odoo HR Module

Go to Apps in your Odoo backend. Install Payroll and Employees modules. If you need attendance integration, install Attendances too. Make sure your company profile is complete, legal name, tax ID, address, and SSF registration number.

Step 2: Activate Odoo Localisation Thailand

This is the step most people skip, and it's the most important one. Under Settings > Accounting, select Thailand as your fiscal localization. This loads the Thai chart of accounts, VAT configuration, and the base structure for local tax reporting.

Odoo localization Thailand is what makes PND1 and SSF reports actually work. Without it, you're building payroll on an empty foundation.

Step 3: Set Up Salary Structures

In Payroll > Configuration > Salary Structures, create your salary structure. For most Thai businesses, this includes:

  • Basic salary

  • Housing allowance

  • Transport allowance

  • Overtime

  • SSF employee deduction (5%, max THB 750)

  • PND1 withholding tax deduction

Each line has a computation rule, fixed amount, percentage, or Python code for complex calculations. Keep it simple first. Add complexity only when the base works.

Step 4 — Configure SSF and PND1 Rules

For SSF contribution Thailand, create a salary rule with:

  • Category: Deduction

  • Computation: Percentage of Basic

  • Rate: 5%

  • Upper limit: THB 750

For PND1 withholding tax Odoo, use the progressive tax table built into Thai localization. Odoo calculates annual projected income and applies the correct bracket monthly. Double-check against the Revenue Department's current rates before going live.

Step 5: Add Employees and Run a Test Payslip

Add one employee with a complete profile — contract, salary, SSF number, tax ID. Then run a test payslip for the current month. Check every line. Verify the SSF deduction hits THB 750 if salary is above THB 15,000. Verify PND1 matches manual calculation.

Salary processing Odoo only feels reliable once you've validated it manually at least once. Run the test before processing for your whole team.

How to Generate Payroll Reports and Salary Slips in Odoo

Once payroll runs, the reporting side is where Odoo payroll setup for Thailand really saves time.

Salary Slips

Go to Payroll > Payslips. Select the batch, confirm, and print or email slips directly to employees. Odoo generates clean PDF payslips with all deductions itemized. Employees can also access slips through the self-service portal.

PND1 Monthly Report

Under Payroll > Reporting, you'll find the Thailand-specific PND1 report. Export it in the Revenue Department's required format for online filing. Since October 2023, online filing is mandatory, Odoo generates the file ready for upload.

SSF Monthly Report

The SSF contribution report lists each employee's contribution for the month. Export it and use it for your SSF online submission through the SSO portal. Some Odoo ERP partner Thailand implementations include direct API integration with SSO, worth asking about if you have 50+ employees.

How Long Does Odoo Payroll Setup Take in Thailand?

Honest answer? It depends on how prepared your data is.

  • Small business (under 20 employees): 1 to 2 weeks

  • Medium business (20–100 employees): 3 to 5 weeks

  • Large or complex (100+ or multi-company): 6 to 10 weeks

The biggest time killer isn't Odoo, it's messy employee data. Missing tax IDs, incorrect SSF numbers, undocumented allowances. Clean your HR data before you start configuration. That one step alone can cut setup time in half.

Odoo business process consulting engagements typically include a data audit before any configuration begins. It sounds like extra work. It always pays off.

Common Mistakes in Thai Payroll Setup

These come up constantly, even in businesses that have been running for years.

Wrong SSF Calculation Base

Some businesses calculate SSF on total compensation including bonuses. Wrong. SSF applies to regular monthly wages only, capped at THB 15,000 base. Calculate it on gross variable pay and you'll over-deduct, which creates headaches during annual reconciliation.

Missing PND1 Tax Brackets

Thailand updated its personal income tax structure. If your Odoo payroll setup for Thailand is running on outdated brackets, every payslip is wrong. Check the Revenue Department's current rates and update your salary rules accordingly.

Skipping Odoo Localization Thailand

We mentioned this already. But it's worth repeating, skipping Odoo localization Thailand means your reports won't match government formats. You'll end up exporting data and reformatting it manually every month. That defeats the purpose entirely.

Not Testing Before Going Live

Running the first real payroll without a test run is a mistake every consultant has seen at least once. One wrong rule multiplied by 50 employees is a very stressful afternoon.

Odoo vs Other Thai Payroll Software

So how does Odoo stack up against dedicated Thai payroll software like BambooHR, Payroll Hero, or local Thai solutions?

Feature

Odoo

Standalone Payroll Tools

Thai SSF & PND1 built-in

Yes

Yes

Connected to accounting

 Yes

 No

Inventory & manufacturing link

Yes

 No

Customizable salary rules

Fully

 Limited

Cost for 20 users

Mid-range

Low to mid

Scalability

High

Medium

The honest take? If payroll is literally the only thing you need, a standalone tool might be simpler to start. But if you're also managing inventory, sales, manufacturing, or accounting , Odoo wins every time. You stop paying for five separate systems and manage everything in one place.

When to Get Help From an Odoo Consulting Expert

Not every business should set up Odoo payroll alone. Here's when it makes sense to bring in an Odoo ERP partner Thailand:

  • You have more than 30 employees

  • You run multiple entities or legal companies

  • You have complex allowance or commission structures

  • You've had compliance issues in the past

  • Your previous ERP implementation failed

A proper Odoo business process consulting engagement doesn't just configure the software. It maps your actual payroll process first, who approves what, how exceptions are handled, how terminations are processed. Then it builds Odoo around that process. Not the other way around.

That's the difference between a system your HR team actually uses every day, and one they work around.

Conclusion

Getting the Odoo payroll setup for Thailand right isn't complicated, but it does require doing things in the right order. Understand your compliance obligations first. Set up localization properly. Test before going live. And if the complexity is beyond your team's bandwidth, bring in someone who's done it before.

Thai payroll compliance isn't something you want to figure out through trial and error. The Revenue Department and SSO don't accept "we're still setting up our system" as a reason for late filing.

Ready to get your Odoo payroll running correctly in Thailand? Contact us now to talk to an Odoo expert at Elevanta.

FAQs

1. How do I set up SSF contributions in Odoo for Thailand? 

In Payroll > Configuration > Salary Structures, create a deduction rule set to 5% of basic salary with a THB 750 monthly cap. Apply it to both employee and employer contribution lines separately.

2. Does Odoo automatically calculate PND1 withholding tax? 

Yes, once Thai localization is activated and your salary structures are configured correctly, Odoo calculates PND1 automatically using Thailand's progressive income tax brackets.

3. Is Odoo payroll compliant with Thai labor law in 2026? 

Odoo's Thai localization covers SSF, PND1, and standard payroll compliance. You still need to verify your salary rules match current Revenue Department rates, as tax brackets can update annually.

4. What is the SSF contribution rate in Thailand in 2026? 

Both employer and employee contribute 5% of monthly wages, capped at a salary base of THB 15,000. Maximum monthly contribution is THB 750 per side.

5. Do I need an Odoo partner to set up payroll in Thailand? 

Not always, but for businesses with 30+ employees, complex structures, or previous compliance issues, working with an experienced Odoo ERP partner Thailand saves significant time and avoids costly mistakes.

Odoo vs Custom ERP: Which Is Better for Your Business?