- Home
- Apps
- SaaS Tools
- India Payroll (PF, ESI, PT, TDS)
Illustrative previewBuild-to-order Odoo India payroll:
PF, ESI, Professional Tax & TDS automation with Form-16, challan and ECR exports.
What is India Payroll (PF, ESI, PT, TDS)?
Build-to-order Odoo India payroll: PF, ESI, Professional Tax & TDS automation with Form-16, challan and ECR exports. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Key Features
Built to order, done for you
No DIY setup — a working app, built, installed and supported by ECOSIRE.
- 1
You order
Start with a one-time build price. We scope it with you at kickoff.
- 2
We build & install
ECOSIRE builds, configures and installs it on your Odoo.
- 3
Go live + support
You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.
Technical Specifications
- Odoo Compatibility
- Odoo 17, Odoo 18, Odoo 19
- Editions
- Enterprise & Community
- License
- Licence confirmation required
- Python Requirement
- Python 3.10+
- Database
- PostgreSQL 12+
About this Product
This is a build-to-order Odoo module: ECOSIRE designs, builds, installs and supports a complete Indian payroll localization tailored to your company, statutory registrations and pay structures. It is not an instant apps.odoo.com download — after purchase our Odoo engineers scope your PF, ESI, Professional Tax and TDS setup, develop the module, and deploy it to your Odoo 17, 18 or 19 instance within a typical one working week lead time.
Indian payroll compliance is unforgiving: Provident Fund capped at ₹15,000 of basic (or actual, per your policy), ESI wage-threshold eligibility, Professional Tax that changes slab by slab across states, and monthly TDS that must reconcile to Form-16 at year end. Odoo's core Payroll app gives you the salary-rule engine and payslip framework, but it ships no India statutory logic out of the box. We build that layer for you — as clean, upgrade-safe Odoo code, not brittle spreadsheets bolted onto the side.
Under the hood, the module extends hr.payroll with India-specific salary rules and rule categories, adds compute fields driven by @api.depends on contract wage and worked days, and stores statutory configuration (PF/ESI/PT/TDS parameters) in dedicated models governed by ir.model.access.csv and record rules so only payroll roles can touch them. Statutory outputs — Form-16, PF ECR text files, ESI contribution files, and bank/PT challans — are generated through QWeb reports and structured exports. Automated actions can flag threshold crossings (an employee becoming ESI-ineligible after a raise, for example) so nothing slips through a monthly run.
Everything is configured to your actual establishment: your PF and ESI registration numbers, the states you operate in and their current PT slabs, your CTC structure and allowance heads, and your TDS declaration workflow. You get a production-ready localization plus the documentation, training and support window to run payroll month after month with confidence — across Community or Enterprise, on the Odoo version you run today.
What you get
- The complete, installable Odoo module (source code with __manifest__.py declaring dependencies and version support for Odoo 17, 18 and 19) delivered to a Git repository you own
- Full statutory configuration in your instance: PF/ESI registration numbers, ESI wage threshold, Professional Tax slabs for every state you operate in, and your TDS regime and declaration workflow
- Your CTC / salary structure mapped into India salary rules and rule categories, with employer/employee shares wired to the correct payslip lines
- Configured QWeb reports and export files — Form-16, PF ECR, ESI contribution file, PT and bank challans — validated against sample data
- Written documentation: an admin runbook for the monthly payroll cycle, a configuration guide for maintaining PT slabs and statutory rates, and end-of-year Form-16 steps
- A live training session for your HR/payroll team (recorded), covering running payslips, generating statutory exports and updating rates
- Security setup: ir.model.access.csv rules and record rules mapped to your payroll manager, HR officer and read-only roles
- A post-go-live support window with a defined SLA for fixes, statutory-rate updates and questions after deployment
Who this is for
HR / Payroll Manager at an Indian SME
Owns the monthly payroll run and every statutory filing. Needs PF, ESI, PT and TDS to compute correctly the first time, Form-16 to reconcile at year end, and ECR/challan files ready to upload — without maintaining fragile spreadsheets outside Odoo.
Finance Controller at a multi-state enterprise
Runs payroll for employees across several states with different Professional Tax slabs and multiple PF/ESI registrations. Wants one Odoo system that applies the right state rules automatically and produces auditable, filing-ready statutory outputs.
Odoo administrator / ERP lead
Manages the company's Odoo 17/18/19 instance and must keep it upgrade-safe. Prefers a clean, well-structured module with proper security rules and QWeb reports over ad-hoc customizations, and needs a partner who supports statutory changes over time.
Business owner / founder scaling headcount
Bringing payroll in-house as the team grows and wants statutory compliance handled inside the ERP they already run, with a fixed scope, a clear delivery timeline and someone accountable for updates when rates change.
How India Payroll (PF, ESI, PT, TDS) Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Indian statutory logic (PF cap, ESI threshold, state PT, TDS) built in | Included | Partial support | Partial support | Not included |
| Tailored to your registrations, states and CTC structure | Included | Included | Not included | Not included |
| Form-16, PF ECR, ESI and PT/bank challan exports ready to file | Included | Partial support | Partial support | Not included |
| Clean, upgrade-safe Odoo code with proper security rules | Included | Partial support | Partial support | Included |
| Supports Odoo 17, 18 and 19 on Community or Enterprise | Included | Partial support | Partial support | Included |
| Statutory-rate updates when slabs or thresholds change | Included | Not included | Partial support | Not included |
| Post-go-live support window with a defined SLA | Included | Not included | Partial support | Not included |
| Predictable fixed scope, timeline and single point of accountability | Included | Not included | Partial support | Partial support |
Frequently Asked Questions about India Payroll
How long does delivery take, and what happens after I buy?
This is a build-to-order module, not an instant download. After purchase, an ECOSIRE Odoo engineer scopes your PF/ESI registrations, the states you operate in, your salary structure and TDS workflow, then builds and installs the module on your Odoo instance. Typical lead time is one working week depending on the number of states, salary heads and integrations. You get a written scope and milestone plan before development begins.
What support and updates do I get after go-live?
Every build includes a post-go-live support window with a defined SLA covering bug fixes, questions and statutory-rate updates (for example, a Professional Tax slab change or an ESI threshold revision). We deliver the module to a Git repository you own, so it stays maintainable. Extended annual support and rate-maintenance retainers are available if you want us to keep the statutory tables current for you long-term.
Does this work on Odoo Community or only Enterprise, and which versions?
The module supports Odoo 17, 18 and 19 and is built to run on both Community and Enterprise editions. The __manifest__.py declares the appropriate dependencies (the core Payroll/HR modules). We confirm your exact edition and version during scoping and target your live instance, so what we deliver installs cleanly on the setup you actually run.
How is PF calculated — does it respect the ₹15,000 cap?
Yes. Provident Fund is computed via India-specific salary rules with the statutory ₹15,000 basic-wage cap applied by default, or on actual basic if your policy contributes above the cap. Employer and employee shares, the EPS split, and EDLI/admin charges are configurable per establishment, and the values flow into itemized payslip lines and the PF ECR/challan exports.
Can it handle employees across multiple states with different Professional Tax slabs?
Yes. Professional Tax is driven by per-state slab tables you can maintain, and PT is applied to each payslip based on the employee's work state and the applicable frequency. Multi-state operations with separate PF/ESI registrations are supported, and automated actions flag mismatches such as a missing work state or a wage that changes ESI eligibility mid-cycle.
Will it generate Form-16 and the filing files I need?
Yes. The module produces Form-16 Part B as a QWeb report with the full salary, exemption, deduction and tax-deducted breakdown, plus export files for PF ECR, the ESI contribution return, and PT/bank challans. These are formatted to match the portal upload formats so your team can file directly. We validate every report against sample data before handover.
Can it integrate with our existing HR portal or attendance system?
Yes. Odoo exposes payroll and statutory data over XML-RPC and JSON-RPC, so external HR portals, attendance devices or BI tools can read worked days and post or fetch payroll data securely. Access is governed by the module's security rules. We scope any specific integration during discovery and include it in the delivery plan.
Related Modules

Inactive Sessions Timeout
A build-to-order Odoo module that automatically expires inactive user sessions after configurable idle delays, per user group and access context. ECOSIRE designs, builds, installs, and supports it for your Odoo 17, 18, or 19 environment.

India GST E-Invoicing & E-Way Bill (IRN/NIC)
Generate GST IRN e-invoices and e-way bills straight from Odoo via NIC/GSP — signed QR, auto-cancel, GSTIN and HSN validation.

Instagram & Messenger Integration for Odoo Discuss
A build-to-order Odoo integration that routes Instagram Direct and Messenger conversations into the Discuss app so your team answers social messages from one threaded inbox. ECOSIRE builds, installs, and supports it on Odoo 17, 18, or 19 after a scoping call.
India Payroll
Build-to-order Odoo India payroll: PF, ESI, Professional Tax & TDS automation with Form-16, challan and ECR exports.
- Provident Fund computation with the ₹15,000 basic wage cap or actual-basic option, employer and employee shares, EPS split and EDLI/admin charges configurable per establishment
- ESI contribution calculation with automatic eligibility on the gross-wage threshold, employee and employer percentage shares, and mid-cycle eligibility handling when a raise or LOP changes the wage
- Professional Tax by state, with per-state slab tables you can maintain, applied to the correct payslip based on the employee's work state and applicable half-yearly or monthly frequency
- TDS (income tax) computation on projected annual income, honoring old vs new regime selection, Chapter VI-A declarations, standard deduction and monthly proration across the financial year
