The problem
Dynamics 365 Finance & Operations gives you a solid HR spine — Workers, Positions, Compensation, Fixed and Variable plans, Benefits, and the Human resources workspaces — but it does not calculate Indian payroll. The moment you run an Indian legal entity, the statutory layer starts living outside the ERP: provident fund on one spreadsheet, ESI eligibility on another, professional tax slabs per state on a third, TDS projections in a payroll bureau's portal, and Form 16 Part B assembled by hand every June. Finance then re-keys a summarised journal into General ledger, so the ledger tells you what payroll cost but never why, and nobody can answer a PF inspection query from inside F&O.
That split has real costs. Professional tax slabs differ by state and change without much notice. ESI eligibility flips mid-year when a wage revision crosses the wage ceiling, and the rule about continuing contributions to the end of the contribution period is exactly the kind of thing a spreadsheet forgets. TDS under the old and new regimes requires per-employee declarations, proof-of-investment cut-offs, and a projection that recalculates every month as earnings change. Each of these is deterministic and rule-driven — precisely the work an ERP should be doing.
What ECOSIRE builds
ECOSIRE builds an India payroll and statutory compliance extension for Dynamics 365 Finance & Operations, delivered as X++ extension models with no overlayering. Everything is additive: new tables, new forms, extension classes, event handlers, and Chain of Command augmentations on standard HR objects. Your base application stays upgradeable.
Statutory engine
A rule-driven calculation engine covers provident fund (employee and employer share, EPS split, EDLI and administration charges), ESI (employee and employer contribution, wage-ceiling eligibility with contribution-period continuation), professional tax (per-state slab tables with effective-dated versions), labour welfare fund, and gratuity accrual. Every rate, ceiling, and slab is stored in configuration tables with date-effective versioning — not compiled into code — so a budget change is a data change your team can make, not a redeployment.
Income tax and TDS
A per-employee annual projection engine computes taxable income across both the old and new regimes, applies standard deduction, chapter VI-A limits, house rent allowance exemption with metro and non-metro logic, and perquisite valuation. Employees submit declarations and later proofs through a self-service form; the projection recalculates on each payroll run and spreads the residual liability across remaining periods so there is no March shock. The engine produces per-quarter TDS data ready for return preparation and generates Form 16 Part A and Part B outputs per employee.
Payroll processing
Earning codes, deduction codes, and payroll calendars are configured per legal entity. The payroll run executes on the F&O batch framework so a multi-thousand-employee run is chunked across batch tasks rather than blocking a client session. Results post to General ledger through configurable posting profiles that map every earning, deduction, and employer contribution to main accounts and ledger dimensions — department, cost centre, project, or any financial dimension you already use — so payroll cost lands in the right dimension combination without a re-keyed journal.
Data, integration, and reporting
All master and transactional entities are exposed as data entities, which means the Data management framework handles bulk import of opening balances, prior-year TDS, and employee declarations, and OData exposes the same entities to Power BI, Power Automate, or an external attendance system. Statutory return files are generated in the layouts the portals expect — ECR text for PF, the ESI return format, state-wise professional tax returns, and quarterly TDS data — written through the document handling framework so every generated file is retained against the run that produced it. Payslips render as SSRS reports and can be emailed per employee.
Controls
Payroll release is gated by the F&O workflow framework, so a run must be submitted, reviewed, and approved before it posts. Salary and statutory data are protected with dedicated security roles, duties, and privileges, and table permission framework entries keep sensitive fields out of general HR roles. Every calculated line retains its inputs, so an auditor can trace a single employee's PF contribution back to the wage components and the rate version that produced it.
Who it is for
Organisations running one or more Indian legal entities on Dynamics 365 Finance & Operations that currently outsource payroll or run it in a disconnected system; shared-service centres processing payroll for several Indian entities on one F&O instance; and manufacturing, retail, and services businesses with a mix of salaried staff, wage workers, and contractors where ESI and professional tax rules vary by location.
How delivery works
This is a build-to-order engagement. Nothing here is a shrink-wrapped download.
1. Scoping call. We walk through your legal entities, states of operation, headcount bands, existing earning and deduction structures, current payroll provider, and the exact statutory outputs you must file. We look at your F&O version, deployment topology, and existing customisations. 2. Fixed quote. You receive a written scope with the configuration model, the entity and state coverage, the integration points, and a fixed price and timeline. Typical build time is one working week depending on state coverage and integration scope. 3. Build. ECOSIRE develops the extension models against a build environment matching your platform and application version, with unit and end-to-end payroll runs against representative data. 4. Install in test. We deliver a deployable package, you upload it to LCS and apply it to a sandbox, and we run parallel payroll against a period you have already processed so results are compared line by line before anyone trusts them. 5. Production. After sign-off, the same package is promoted through your LCS pipeline to production. We support the first live payroll run alongside your team. 6. Support. A defined support window follows go-live, covering defects, configuration questions, and assistance with the first statutory filings produced by the system.
Rate and slab changes published after go-live are configuration updates you apply yourself; where a statutory format changes, we quote the format update separately so you always know what you are paying for.