A TDS Return is the record for one quarterly withholding statement of one company: the non-salary TDS return, the TCS return or the salary TDS return for a financial-year quarter. It sits at the end of the withholding cycle described in TDS & TCS. Bills, invoices, payments and payroll record the deductions, deposit challans pay them, and the TDS Return gathers the quarter's deductions and challans into the statement you upload on the government portal. After filing, the same record produces the deductee certificates.
Overview
xMatix does not calculate tax on the return. Compute Return copies what the withholding register already recorded for the quarter into two sets of child rows: one challan row per paid deposit challan and one deductee row per deduction, each linked to the challan that paid it. Validate Return runs a pre-file checklist over those rows. Export e-Return File turns the computed return into the caret-delimited statement text that the government's return-preparation and validation utilities accept. You file on the portal, then Mark Filed records the acknowledgment number and filing date and locks the return against recomputing. Generate Certificates then builds the certificate register from the filed return.
Every return moves through the same statuses: Draft → Computed → Validated → Filed.
When to use it
- Once a quarter, for each company that deducts or collects tax, after the quarter's deposit challans are paid and their CIN details are recorded.
- When a filed statement has to be corrected — through Create Correction, never by editing the filed return.
- At year end, the Q4 salary return also carries the per-employee annual salary computation that the salary certificate is built from.
How xMatix handles it
Which form, which data. The Form Code decides where the return reads from:
| Form Code | Statement | Reads from | Certificate it produces |
|---|---|---|---|
| 140 | Resident non-salary TDS | TDS rows in the withholding register | One non-salary TDS certificate (Form 131) per deductee |
| 143 | TCS | TCS rows in the withholding register | One TCS certificate (Form 27D) per collectee |
| 138 | Salary TDS | Posted payroll runs with a TDS deduction, and the paid TDS payroll statutory challans | Form 16 register rows, from the Q4 return only |
| 144 | Non-resident | — | Can be selected, but Compute Return refuses it |
Which deductions belong to the quarter. Quarter 1 is April–June, 2 is July–September, 3 is October–December and 4 is January–March of the financial year that starts in Fy Start Year (2026 means FY 2026-27). A non-salary or TCS return takes the company's withholding rows of that nature dated inside the quarter, leaves out reversed rows and rows with no tax (except nil-deduction certificate rows, which are reported), and includes any deduction that was moved into this quarter from an already-filed one. A salary return takes posted payroll rows with TDS whose payroll period ends inside the quarter.
Which challans count. Only challans with the status Deposited or Verified become challan rows. A deduction allocated to a challan that is still Draft, or not allocated at all, becomes a deductee row with no challan — validation reports it as undeposited.
Due date. A new return gets the statutory due date for its quarter: 31 July (Q1), 31 October (Q2), 31 January (Q3) and 31 May (Q4), the last two in the following calendar year. A due date you type yourself is kept as long as it falls on or after the end of the quarter, so an official extension survives recomputing.
Prerequisites
- The company account carries its TAN. Without it the scheduled job does not treat the company as a deductor, and validation fails the return.
- The quarter's deductions are posted on bills, invoices, payments or payroll — see TDS & TCS.
- The quarter's deposit challans are posted (status Deposited or Verified) and carry the BSR code, deposit date and challan serial. For the salary return, the payroll TDS challans are marked Paid.
- Deductee PANs are recorded on the vendor, customer or employee records, and ideally verified (see Step 3).
- Your security profile allows the TDS Return actions you need (see Permissions).
Procedure
Step 1 — Find or create the quarter's return
- Open the Finance Setup app and, under Withholding Tax (TDS), open TDS Returns. The All TDS Returns view lists every return; Open Returns lists those not yet Filed.
- If the monthly compliance job runs in your organisation, the Draft returns for Forms 140, 143 and 138 already exist for each company with a TAN. They are labelled like Form 140 · FY 2026-27 Q2.
- To create one yourself, select New and fill Name, Form Code, Fy Start Year and Quarter. Return Type defaults to Regular and Status to Draft; leave them. Save.
- Open the saved return and check that the company is set (Partner Account Id on the Filing & Validation tab). Compute Return cannot run without it.
The record page opens on the Overview tab, which shows readiness, deposit coverage and filing tiles, the checklist findings and the deductees grouped by challan. Return, Totals, Filing & Validation, Related and Attachment tabs hold the rest.
Step 2 — Compute the return
- On the return, select Compute Return and confirm.
- xMatix removes any earlier challan and deductee rows and rebuilds them from the register, then fills Deductee Count, Challan Count, Total Tax Deducted, Total Tax Deposited and Computed On. If Tan is empty it is copied from the company account.
- The status becomes Computed and any earlier validation result is cleared.
You can compute as often as you like until the return is Filed. Recompute after posting a late bill, depositing a challan or correcting a PAN.
Step 3 — Bring PAN verification results in (optional)
Import PAN Verification reads the bulk PAN verification result file downloaded from the department's portal. For each line that carries a PAN and a verdict, it stamps every vendor, customer and employee record with that PAN as Verified, Invalid or Name Mismatch. Lines it cannot read are counted and skipped. The action has no file dialog of its own on the shipped page: it expects the file's content to be supplied with the action, so it is normally run by an integration or automation. Run without a file, it stops with a message that the file content is needed.
Step 4 — Validate the return
- Select Validate Return. It runs only on a Computed or Validated return.
- Read the result on the Overview tab checklist, or in Validation Status and Validation Results.
- Validation Status is Pass (no findings), Warnings (only warnings) or Fail (at least one error). The status becomes Validated only when there is no error; with errors it stays Computed.
- Fix each finding at its source — the party record, the challan, the payroll run — then compute and validate again. The checks are listed under Business rules.
Step 5 — Export the e-return file
- Select Export e-Return File. It works on a Computed, Validated or Filed return.
- xMatix renders the statement — a file header line, a batch header line, then the challan and deductee records (and, on a Q4 salary return, the annual salary detail records). Amounts are plain decimals and dates are written day-month-year.
- Where file storage is available, the file is also saved on the return's Attachment tab. Exporting again adds a new version of the same file rather than a duplicate.
- Run the file through the government's validation utility and upload it on the portal. xMatix does not upload it for you.
Step 6 — Record the filing
- After the portal accepts the statement, select Mark Filed.
- In the dialog, enter Ack Number (required) and Filed On. If you leave Filed On empty, today's date is used.
- Confirm. xMatix stamps the acknowledgment and date, computes Late Fee if the filing date is after Due Date, and sets the status to Filed.
Mark Filed accepts a Computed return as well as a Validated one, so it does not force a passing validation. Make validating part of your own filing routine.
Step 7 — Generate and issue certificates
- On the Filed return, select Generate Certificates and confirm.
- xMatix creates one certificate per deductee and writes the certificate number back onto each underlying deduction, so the register, the certificate and the deduction all cite the same number.
- For a salary return, run it on the Q4 return of the year: the salary certificate is annual and xMatix refuses to generate it from Q1–Q3.
- You can regenerate while the certificates are Draft — the Draft set is replaced. Once any certificate is marked Issued, the register for that return is locked.
Step 8 — Correct a filed return
- On the Filed return, select Create Correction and confirm.
- xMatix creates a new Draft return with Return Type Correction, Original Return Id pointing to the filed one, the same form, company, quarter, TAN and due date, and a name ending in -C1 (then -C2, …). The original stays Filed and unchanged.
- Fix the source data, then compute, validate, export and mark the correction filed exactly as in Steps 2–6.
Fields
| Field | What it means | Notes |
|---|---|---|
| Name | The return's identifier | Required. The compliance job names returns by form, financial year, quarter and company. |
| Form Code | Which quarterly statement this is | 138, 140, 143 or 144. Decides the source data and the certificate kind. Any other value is refused on save. |
| Fy Start Year | The calendar year in which the financial year starts | 2026 means FY 2026-27. |
| Quarter | Quarter of the financial year | 1 (Apr–Jun) to 4 (Jan–Mar). Other values are refused on save. |
| Tan | The deducting company's TAN | Copied from the company account by the compliance job or by Compute Return when empty. Must be four letters, five digits and a letter. |
| Return Type | Regular or correction statement | Regular (default) or Correction. A Correction must have Original Return Id. |
| Original Return Id | The filed return a correction amends | Set by Create Correction. |
| Status | Where the return is in its life | Draft, Computed, Validated, Filed. Set by the actions — do not change it by hand. |
| Deductee Count | Number of deductee rows | Set by Compute Return. |
| Challan Count | Number of challan rows | Set by Compute Return. |
| Total Tax Deducted | Tax on all deductee rows | Set by Compute Return. Also the cap for the late fee. |
| Total Tax Deposited | Part of that tax covered by paid challans | Set by Compute Return. Lower than Total Tax Deducted means something is undeposited. |
| Late Fee | Late-filing fee | Set by Mark Filed: ₹200 per day after the due date, capped at Total Tax Deducted. Zero when filed on or before the due date. |
| Due Date | Statutory filing due date | Defaulted from the quarter; a later date you enter is kept. |
| Computed On | When the return was last computed | Set by Compute Return. |
| Filed On | Date the return was filed on the portal | Entered in Mark Filed. |
| Ack Number | The portal's acknowledgment for the filing | Required by Mark Filed. |
| Validation Status | Outcome of the last validation | Pass, Warnings or Fail. Cleared by Compute Return. |
| Validation Results | The individual findings of the last validation | Each finding has a code, severity, message and count. |
| Partner Account Id | The deducting company | Required by Compute Return. Shown on the Filing & Validation tab. |
| Label | Display name | Defaults to Name when left empty. |
Business rules
Save checks. Form Code must be 138, 140, 143 or 144; Quarter must be 1–4; Return Type must be Regular or Correction, and a Correction must reference its original; Tan, when filled, must be four letters, five digits and a letter; Status must be one of the four statuses.
Action guards.
- Compute Return is refused on a Filed return ("create a Correction statement instead"), on Form 144, and when the company, financial year or quarter is missing.
- Validate Return needs a Computed or Validated return.
- Export e-Return File needs a Computed, Validated or Filed return.
- Mark Filed needs a Computed or Validated return and an acknowledgment number.
- Create Correction and Generate Certificates need a Filed return.
The pre-file checklist. Validate Return reports each rule with the number of rows affected:
| Check | Severity | What it means |
|---|---|---|
| TAN missing or malformed | Error | Set the TAN on the company account. |
| Missing or invalid PAN structure | Error | A deductee row has no PAN or a PAN not shaped like five letters, four digits and a letter. |
| PAN marked Invalid or name-mismatched | Error | The imported verification result rejected the PAN. A Verified stamp on any record with the same PAN clears it. |
| PAN never verified | Warning | A well-formed PAN with no verification result. |
| PAN coverage below 85% | Error | Fewer than 85% of deductee rows carry a valid PAN. |
| Deduction not deposited | Error | A deductee row with tax has no paid challan. Post the challan, then recompute. |
| Challan over-used | Error | Deposits mapped to a challan row exceed its tax amount. |
| CIN incomplete | Error | A challan row lacks the BSR code, tender date or challan serial. |
| Short deposit | Warning | A deductee row was deposited for less than the tax deducted. |
| Negative amounts | Error | A row with a negative amount paid or tax. |
| Lower-deduction certificate number missing | Warning | A row deducted under a lower or nil deduction certificate has no certificate number. |
| Annual salary detail missing (Q4 salary only) | Error | The Q4 salary return has deductee rows but no per-employee annual rows. |
| Annual salary detail not computed (Q4 salary only) | Warning | An employee's annual row has no tax computation, usually because the year's tax slab rules are not set up. |
| Short deduction (Q4 salary only) | Warning | An employee's TDS for the year is below the computed liability. |
Late fee. ₹200 for every day from the day after the due date up to and including the filing date, never more than the return's total tax deducted.
What a Filed return protects. Recomputing is refused, and certificate generation and the year-end books-versus-returns reconciliation read only Filed returns. The save checks do not lock a Filed return's other fields, and the record can still be edited or deleted by a user whose profile allows it. Keep edit and delete rights narrow (see Permissions).
Salary returns. The Q4 salary return also builds one annual row per employee paid in the year, with gross salary, exemptions, deductions, taxable income, tax, rebate, surcharge, cess, TDS deducted and deposited, and the shortfall or excess, computed under the employee's chosen tax regime.
Example
A company deducts TDS on contractor and rent bills. For Q2 of FY 2026-27 (July–September):
- On 1 October the compliance job creates the Draft return Form 140 · FY 2026-27 Q2, with due date 31 October 2026.
- The September challans are posted with their CIN details on 7 October. On 10 October the accountant selects Compute Return: 42 deductee rows, 6 challan rows, Total Tax Deducted ₹3,18,400, Total Tax Deposited ₹3,18,400.
- Validate Return gives Warnings: three PANs have never been verified. The accountant runs the bulk PAN verification on the portal, the result is imported, and a second validation gives Pass. Status: Validated.
- Export e-Return File produces the statement text, which passes the government's validation utility and is uploaded on 24 October.
- Mark Filed with the acknowledgment number and Filed On 24 October: Late Fee ₹0, status Filed.
- Generate Certificates creates 18 certificates — one per deductee — which are issued to the vendors.
Had the return been filed on 3 November, Mark Filed would have recorded a late fee of ₹600 (three days).
Training
Practice exercise
In a sandbox company that has a TAN, one posted bill with TDS dated in the current quarter, and that bill's deduction on a posted deposit challan with full CIN details:
- Create a TDS Return for Form 140 and the current financial year and quarter, and check the company on the Filing & Validation tab.
- Compute it. Expected: status Computed, Deductee Count at least 1, Total Tax Deposited equal to Total Tax Deducted.
- Validate it. Expected: Pass or Warnings, status Validated.
- Post a second bill with TDS in the same quarter but do not deposit it, then compute and validate again. Expected: Fail with the undeposited-deduction error; status stays Computed, and Total Tax Deposited is below Total Tax Deducted.
- Export the e-return file. Expected: the statement text, and a file on the Attachment tab where storage is available.
Quick reference
- One return per company, form and quarter — the job creates the Draft ones.
- Post challans and record their CIN before computing.
- Compute freely until Filed; it always rebuilds from the register.
- Computing clears the last validation — validate again afterwards.
- Errors keep the return Computed; warnings still let it reach Validated.
- Mark Filed needs the acknowledgment number and computes the late fee.
- Certificates come from a Filed return; salary certificates only from Q4.
- Fix a filed return with Create Correction, never by editing it.
Permissions
Each button is a server action that a security profile grants separately: Compute Return, Validate Return, Export e-Return File, Mark Filed, Create Correction, Generate Certificates and Import PAN Verification, plus New, Edit and Delete for the record itself. The shipped standard-user and system-administrator profiles include all of them. A user whose profile lacks an action cannot run it; a user without access to the Finance Setup app or the TDS Return list does not reach the returns at all. If a button is missing for someone, start with why a user can't see something.
Because a Filed return is not locked against generic editing or deletion, give Edit and Delete only to the people who own TDS compliance. See security profiles.
Configuration
- Company TAN. Set on each company account. It is what makes a company a deductor for the compliance job and what every return quotes.
- Deductee PAN and type. Set on vendors, customers and employees. Missing or invalid PANs fail validation.
- Monthly compliance job. The Provision TDS/TCS compliance job (Finance category) drafts the month's deposit challans and creates the Draft Form 140, 143 and 138 returns for every company with a TAN for the quarter that month belongs to. It runs for the previous calendar month unless a month and year are given, can be started manually, and never creates a second Regular return for the same company, form and quarter. It runs on a schedule only when your organisation has a schedule set up for it.
- Due dates. Statutory dates are defaulted. To record an official extension, enter the extended date in Due Date before marking the return filed.
- Record page. The shipped view puts the TDS Overview widget on the first tab. On a copied or custom layout, add it from the Studio toolbox under Entity Components → TDS Overview; it works only on TDS Return and TDS Challan layouts. See design a form layout.
- Salary returns depend on payroll: posted payroll runs, TDS payroll statutory challans marked Paid, and, for the Q4 annual rows, the year's tax regime and slab rules — see Income tax in payroll.
- Reconciliation. Year-end books-versus-returns checks and their fixes, including moving a deposited but unreported deduction into the next open return, run from the TDS Reconciliation page — see TDS reconciliation.
Common problems
"A Filed return cannot be recomputed"
The return is Filed. Use Create Correction and compute the correction instead.
"Return needs a company"
The return has no company. Open it, set Partner Account Id on the Filing & Validation tab, save and compute again.
Compute Return refuses a Form 144 return
The non-resident form can be stored but not computed. Use Form 140, 143 or 138.
"Compute the return before validating it" or "before exporting the e-return file"
The return is still Draft. Run Compute Return first.
"Only a Computed/Validated return can be marked Filed"
The return is Draft or already Filed. Compute it first; a Filed return cannot be filed again.
"Recording a filing needs the portal acknowledgment number"
Enter Ack Number in the Mark Filed dialog.
Validation says deductions are not deposited, but I paid the challan
Only Deposited or Verified challans count. Post the challan with its deposit date, make sure the deduction is allocated to it, then recompute and validate.
"Certificates are generated from a Filed return" or "Form 16 is an annual certificate"
Mark the return Filed first. For salary, generate certificates from the Q4 return of the year.
"Certificates for this return have already been issued"
At least one certificate is Issued, so the register is locked and cannot be regenerated.
The Q4 salary return has annual rows with no tax computed
The year's tax regime and slab rules are missing for those employees. Set them up and recompute.
Common questions
Does xMatix file the TDS return on the portal?
No. xMatix computes the statement, checks it and exports the e-return file. You validate that file with the government's utility and upload it on the portal yourself. Afterwards, Mark Filed records the acknowledgment number and filing date on the return and computes any late fee. From that point the return is locked against recomputing, and certificates can be generated from it.
Why is Total Tax Deposited lower than Total Tax Deducted?
Some deductions are not linked to a paid challan. Either the deduction was never allocated to a challan, or its challan is still Draft. Only Deposited and Verified challans are reported. Prepare and post the missing challans, record their CIN, then compute again. Validation lists the affected rows as undeposited deductions until this is fixed.
Can I change figures on the return directly?
Don't. The return reports what the withholding register and challans recorded, and every compute rebuilds the rows from them, so manual changes are overwritten. Correct the bill, payment, party PAN or challan instead, then recompute. For a filed return, use Create Correction.
What happens to deductions posted after the return was filed?
Recomputing a Filed return is refused, so the filed statement does not change. Report a late deduction through a correction statement, or use the reconciliation page's move-to-next-return fix to report it in the next open quarter.
Related topics
- TDS & TCS — the full withholding cycle, challans and setup.
- TDS reconciliation — Form 26AS and the books-versus-returns check.
- Tax Center troubleshooting
- Income tax in payroll
- TDS Return — entity reference
