A Form 26AS Statement is the record in xMatix that holds one downloaded Form 26AS tax-credit statement for a financial year, so you can compare the TDS your customers deducted from your payments with the TDS receivable in your own books. It sits at the end of the deductee-side TDS process: customers deduct TDS on your invoices and report it, the credit appears in your Form 26AS, and you check that what was reported agrees with what you recorded.
xMatix contains two different TDS comparisons, and this page covers both:
- Deductee-side Form 26AS reconciliation compares the tax your customers withheld from your invoices, as reported in your company's Form 26AS, with the TDS receivable in your books for the same financial year.
- Deductor-side TDS reconciliation compares the tax your company deducted with Filed quarterly-return lines and Deposited or Verified challans.
They answer different questions and use different logic. Do not use one comparison's status or screen actions as evidence for the other.
Overview
The Form 26AS side is made of three records:
| Record | What it holds |
|---|---|
| Form 26AS Statement | One header per statement: financial year, the company it belongs to, file name, row counts, reconciliation counts and status. |
| Form 26AS Line | One row of the statement: PAN, deductor TAN and name, section, quarter, transaction date, amount paid, TDS amount and booking status. |
| Form 26AS Reconciliation Entry | One result row per PAN, TAN, section and financial year: the totals on each side, the outcome, the books rows behind it and the action taken on it. |
You work with them in the Form 26AS Reconciliation Console. You pick a Company, a financial year (FY) and a Version (one uploaded statement). The console uploads statements, runs the reconciliation, and shows the result by quarter, deductor and outcome. From each exception's Actions menu you can create a follow-up task for the customer, correct your books, or post the missing TDS on an invoice.
A Form 26AS is issued for one PAN per financial year, and it keeps changing as deductors file their quarterly returns (due 31 July, 31 October, 31 January and 31 May) and correct them. Download it again after each due date and before you file your income-tax return, and upload each download as a new statement. The newest statement of a year is the active one.
How xMatix handles it
- The books side is your TDS receivable. The reconciliation reads the company's non-reversed TDS rows posted from its sales invoices, dated inside the financial year by their deduction date. Those rows are posted at invoice posting or at receipt, depending on the withholding-tax timing setting. TDS you deducted from vendors or employees is not read: it belongs in their Form 26AS, not yours.
- The statement belongs to one company. The reconciliation ties the statement to the company (partner account) whose PAN its lines carry, and records it in the statement's Partner Account.
- TDS decides the result. Groups are compared on TDS within ₹1. A difference in Amount Paid with agreeing TDS is written as a remark and is not a mismatch; it is often GST shown on one side only.
- Results are updated in place. Reconciling the same statement again keeps each group's entry and rewrites its figures, so the action taken on a row stays with it. A newer upload for the year takes over the latest action recorded for each group.
- Row actions do real work. Customer follow-up creates a task, Books correction sets a TAN, posts TDS on an invoice or drafts a journal, and Add in books posts TDS on an invoice. After each one, the console reconciles again.
Several parts are not automated:
- No file parser. A statement's lines come from an Excel or CSV import; the console's Upload 26AS uses the standard import flow. Attaching or naming the downloaded file reads nothing.
- No line validation. Nothing checks an imported line or sets its Validation Status. Your import sets it. Values are stored exactly as imported: the section is not checked against the TDS section list, and the quarter is not worked out from the date.
- Nothing is sent to the customer. Customer follow-up creates a task for your team; it does not email the deductor.
- Not final has no action. Those rows wait for a later download, once TRACES books the credit Final.
- TCS is not reconciled. TCS rows (section 206C) are marked Out of scope, because the books do not record TCS that suppliers collect from you.
Prerequisites
- An administrator has placed the Form 26AS Reconciliation Console on a page your finance team uses and picked the row actions for each tab (see Configuration).
- Your company (partner account) has its PAN filled in, and each customer who deducts TDS from you has their TAN filled in on their account.
- The TDS customers withhold is recorded in your books: the invoice lines carry a TDS section, so posting creates the TDS receivable.
- For the books actions: the company has GL accounts with the control types TDS Receivable and Accounts Receivable, and each section that appears on your Form 26AS is set up as a TDS section.
- The Form 26AS is downloaded and checked: the financial year, the number of rows and the TDS total.
- You can create records on Form 26AS Statement and Form 26AS Line. Seeded profiles grant full access to both.
- Your profile is granted the console's actions (see Permissions).
Procedure
Step 1 — Upload the statement
- Open the Form 26AS Reconciliation Console. It opens on your own company (the Default Partner Account on your resource record); pick another under Company if needed. The upload is filed under the company selected here. On a tenant with only one company, the Company picker is hidden.
- Select Upload 26AS. The Upload Form 26AS dialog opens.
- Choose the Financial year from the list (for example FY 2025-26). The list offers every year that already has a statement, plus the current and the previous year.
- Optionally type a Label. If you leave it blank, the statement is labelled
Form 26AS 2025-26. - If the year already has a statement, a warning says the new one becomes the active statement and the earlier one Superseded, and that your decisions carry over. Select Continue. The statement is created with Status
Uploaded. - Import the TRACES export (Excel or CSV) in the import step that opens. Every imported row becomes a Form 26AS Line linked to the new statement. Map the file's columns to:
- PAN, TAN and Section. The reconciliation matches on these, ignoring case and surrounding spaces. Every line must carry the same PAN: your company's.
- Amount Paid and TDS Amount.
- Financial Year, only if the file has it. Leave it unmapped otherwise: a blank year takes the statement's. If you map it, the value must be written exactly as the statement's year (
2025-26). - Deductor Name, Quarter, Transaction Date and Booking Status where the file has them. Booking Status must be the single letter
F,U,PorO(see Business rules). - Validation Status:
Valid,InvalidorPending. OnlyInvalidleaves a line out.
- When the import finishes, the console opens the new statement and reconciles it.
If you select Cancel before any row is imported, the empty statement is deleted.
You can also create the statement and import its lines separately (see Import data). Link every line to the statement through Form 26AS Statement; unlinked lines are ignored.
Step 2 — Reconcile
The console reconciles a statement automatically the first time you open it, so a fresh upload needs no extra step. A statement that has already been reconciled is only read when you open it. To refresh the result, for example after you set a customer's TAN or corrected a line, select Reconcile again in the console header. On the statement's record page, the Reconcile button does the same.
To look at an earlier download, pick it under Version. Latest always shows the year's newest statement that has lines; each other entry shows its label, upload date, row count and whether it is Active or Superseded.
The reconciliation:
- refuses, with a message, a statement that:
- is still marked
Parsing; - has no valid financial year;
- has no imported lines, or only Invalid ones; or
- has lines whose PAN no company holds, lines with more than one PAN, or a PAN two companies share;
- is still marked
- sets the statement's Partner Account to the company. If you set it yourself beforehand, the lines' PAN must be that company's;
- groups both sides by PAN + TAN + section + financial year;
- updates the statement's Form 26AS Reconciliation Entry for each group it already has, adds one for each new group, and removes the entries of groups that no longer occur;
- fills in Total Rows, Valid Rows, Error Rows, Matched Count, Mismatch Count, Missing Count, Extra Count and Reconciled At, and sets Status to
Reconciled.
A refused reconciliation shows its message above the console, beside whatever the statement already holds.
Step 3 — Review the result
The console shows a quarter rail, three summary cards (statement, books, reconciliation) and these tabs:
- Quarters, Deductors and All lines give the overview. Matching runs on the whole financial year; the quarters only group the lines by date.
- One tab per outcome: Matched, Mismatched, Missing in books, Missing in 26AS and Not final. Each row shows two lines: Form 26AS on top, books beneath.
- Ignored appears only when rows were ignored on an earlier version of the console. Those rows are kept out of every open count.
| Outcome | Meaning |
|---|---|
| Matched | The group is on both sides, TDS agrees within ₹1 and every 26AS line is booked Final. |
| Mismatched | The group is on both sides but TDS differs by more than ₹1. It also holds TAN missing groups (see below). |
| Missing in books | The 26AS has the group; your books do not. |
| Missing in 26AS | Your books have the group; the 26AS does not. |
| Not final | TDS agrees, but a 26AS line is booked U, P or O in TRACES, so the credit is not claimable yet. |
A TAN missing group comes from a customer whose account has no TAN. Its deductions were paired with the 26AS row of the same section and TDS, and the remark names the TAN to set.
Select the deductor name on a row to open its details. The drawer is read-only and shows:
- the TDS on each side and the difference;
- the remark;
- the books rows behind the group: document, deduction date, amount and TDS;
- the 26AS lines;
- the action taken on the row, if any.
The row's actions are at the bottom of the drawer.
Step 4 — Act on an exception
- On the row, select Actions, or open the row's details and use the buttons at the bottom. The menu lists the actions your administrator picked for that tab. The usual set is:
| Tab | Actions |
|---|---|
| Mismatched | Customer follow-up, Books correction |
| Missing in books | Add in books |
| Missing in 26AS | Customer follow-up |
| Matched, Not final | None |
- Choose the action:
- Customer follow-up creates an open task for the customer, due on the follow-up date, linked to the row. If your administrator set it up to ask, a dialog asks for Follow up by and notes; select Apply. Otherwise the task falls due seven days from today. Running it again on the same row moves the open task to the new date rather than creating a second one.
- Books correction fixes your books in the way the row needs:
- On a TAN missing row, it sets the TAN shown on Form 26AS on the customer's account.
- When Form 26AS shows more TDS than your books, it asks you to pick a posted invoice of the customer. It then gives every invoice line without a TDS section the row's section, and posts the invoice's TDS receivable.
- When your books show more TDS than Form 26AS, it drafts a journal that moves the excess back to the customer: debit Accounts Receivable, credit TDS Receivable, with the customer as the party on both lines. The journal is left in Draft for an accountant to review and post.
- Add in books asks you to pick a posted invoice of the customer, gives its lines without a TDS section the row's section, and posts the invoice's TDS receivable. The invoice list shows the company's posted invoices dated in the financial year, narrowed to the customer when the row's TAN is on a customer account.
- Read the message. It says what was done, or why nothing was done, and what is left: for example, how far Form 26AS still differs after the TDS was posted.
- The console reconciles again, so the row shows its new outcome straight away.
To act on several rows at once, tick them and use the tab's buttons above the table. Each ticked row is processed separately, and the message lists how many were applied and how many were not.
A row with an action taken on it is in progress (or settled) rather than open:
- It moves below the open rows and is dimmed.
- Under its status it says what was done: "Follow-up · due 15-Nov-2026" (red and "overdue" once the date has passed, "Follow-up done" once the task is completed), "Correction drafted · …", "Corrected · … posted" or "Books corrected".
- Its Actions menu adds Open task for the follow-up task and Open journal for the correction journal.
- A tab with such rows gets an All / Open / In progress switch, and the cards, quarter rail, Quarters and Deductors count only open rows as needing attention ("1 open · 2 in progress").
After Add in books, the row stays open until the reconciliation shows the group agreeing.
Step 5 — Correct and re-check
Correct your books only when they are wrong. If a customer reported incorrectly:
- Run Customer follow-up and ask the customer for a correction statement.
- Download the revised Form 26AS and upload it as a new statement for the same year.
- The new statement's rows take over the action recorded on each group. Groups that now agree move to Matched and lose their action; the rest keep it.
Step 6 — Check or correct an imported line
Each row of the statement is a Form 26AS Line record. You see a group's lines in the row's details under Form 26AS, with their transaction date, quarter, amount paid and TDS. To change a line itself:
- Open the line's record page. Form 26AS Line is in no seeded app, so an administrator adds it to your finance app first (see Configuration), or you find it in the All Form 26AS Line list.
- The page header shows the line's PAN, Financial Year, Section and TDS Amount, and a 26AS Insights card shows TDS Amount, Amount Paid and Reconciliation Status. The Details tab groups the fields under Identification, Transaction & TDS and Reconciliation & Validation.
- Correct the value in place: select the field, change it and save. The header has no buttons of its own.
- Return to the console and select Reconcile again. A line's change counts only once the statement is reconciled again.
To leave a row out, set its Validation Status to Invalid and reconcile again. To correct many rows, it is usually quicker to fix the file and upload it as a new statement.
Fields
Form 26AS Statement
| Field | What it means | Notes |
|---|---|---|
| File Name | The name of the downloaded Form 26AS file. | Text only. Shown in the page header. |
| Financial Year | The year the statement covers, for example 2025-26. | Must be YYYY-YY or YYYY-YYYY with consecutive years. |
| Partner Account | The company the statement was issued for. | Set by the reconciliation from the lines' PAN. If set beforehand, the lines' PAN must be this company's. |
| Fiscal Period | The GST fiscal period the statement belongs to. | Optional and not used by the reconciliation. Once a statement points at a period, that period's Month, Year and Type can no longer be changed and it cannot be deleted. |
| File Asset | An identifier for a stored copy of the file. | A plain text box. Nothing reads it. |
| Status | Where the statement is in its process. | Uploaded, Parsing, Validated, Reconciling, Reconciled or Failed. The reconciliation refuses Parsing and sets Reconciled. |
| Label | A short name for the statement. | Shown in the console's statement picker. |
| Total Rows, Valid Rows, Error Rows | The statement's lines, those used, and those marked Invalid. | Written by the reconciliation. |
| Matched Count | Groups that matched. | Written by the reconciliation. |
| Mismatch Count | Mismatched groups, including TAN missing. | Written by the reconciliation. Not final groups are in none of the four counts. |
| Missing Count | Groups in the books but not in the statement. | Written by the reconciliation. |
| Extra Count | Groups in the statement but not in the books. | Written by the reconciliation. |
| Reconciled At | When the reconciliation last ran. | Written by the reconciliation. |
| Remarks | Free notes. |
Form 26AS Line
The fields are listed in the order of the line's form.
| Field | What it means | Notes |
|---|---|---|
| PAN | The deductee PAN on the row: your company's. | Ties the statement to the company. A blank PAN is treated as the company's, but at least one line must carry it. |
| Deductor Name | The name of the deductor. | Shown in the console. Not used for matching. |
| TAN | The deductor's TAN. | Part of the match key, compared with the TAN on the customer's account. A blank TAN adds the remark "The 26AS line has no TAN or section code; correct the import." |
| Financial Year | The year of the row. | If blank, the statement's year is used. If filled, it must be written exactly as the statement's year: 2025-2026 on a 2025-26 statement never matches. |
| Quarter | The quarter as printed, Q1 to Q4. | Display only, and used only when no line of the group has a transaction date. Not worked out from the date. |
| Section | The TDS section code. | Part of the match key, compared as text. Not checked against the TDS section list. Sections starting 206C (TCS) are out of scope. |
| Transaction Date | When the payment or credit was made. | Places the result in a quarter in the console. Matching runs on the whole year. |
| Amount Paid | The amount paid or credited. | Added up per group; a difference is only a remark. |
| TDS Amount | The TDS deducted. | Added up per group; decides the outcome. A blank counts as zero. |
| Form 26AS Statement | The statement this row belongs to. | Filled in by the console's upload. Required in practice: unlinked rows are ignored. |
| Booking Status | TRACES booking status: F, U, P or O. | Blank counts as F. Any other value, including the word Final, makes an agreeing group Not final. |
| Label | A short text for the row. | Optional. Not used by the reconciliation. |
| Reconciliation Status | The outcome from the last run. | Match, NotFinal, Unmatched, TanMissing, MissingInBooks or OutOfScope. Written by the reconciliation; a line is never MissingIn26AS. |
| Validation Status | Whether the row should be used. | Set by your import. Only Invalid, in any capitalisation, excludes the row. |
| Validation Message | Why a row is invalid. | Set by your import. Nothing reads it. |
| Reconciliation Entry | The result this line was grouped into. | Written by the reconciliation. Several lines share one entry when they have the same match key. Empty for Out of scope lines. Not on the line's form. |
Each line is numbered on save from the Form 26AS Line Name Setting (series 26ASL).
Form 26AS Reconciliation Entry
Entries are written only by the reconciliation and the console's actions; you read them in the console. The entry's own record page groups its fields under Identification, Source & Links and Amounts & Comparison, beside a Reconciliation Insights card. That page has no buttons and no field editing, and it does not show the action taken.
| Field | What it means | Notes |
|---|---|---|
| Name | The entry number. | From the Form 26AS Reconciliation Entry Name Setting (series 26ASR). Not the match key. |
| PAN, TAN, Section, Financial Year | The group's match key. | Trimmed and upper-cased. TAN is the one printed on Form 26AS. |
| Status Code | The outcome. | Match, NotFinal, Unmatched (shown as Mismatched), TanMissing, MissingInBooks or MissingIn26AS. |
| Label | A short text for the entry. | Replaced by the entry number on save. |
| Form 26AS Line | The single 26AS line behind the group. | Set only when exactly one line has the key. |
| Form 26AS Statement | The statement the entry belongs to. | |
| Source Entity, Source Record | The books record behind the group. | Source Record is set only when exactly one books row fed the group. |
| 26AS Amount, Ledger Amount | Amount Paid on each side, summed. | Empty on the side the group is missing from. |
| 26AS TDS, Ledger TDS | TDS on each side, summed. | Empty on the side the group is missing from. |
| Difference | Books TDS minus Form 26AS TDS. | A missing side counts as zero. Negative means Form 26AS shows more. |
| Matched Date | When the group was first found on both sides. | Kept on later runs while the group stays on both sides. |
| Remarks | Why the group is open. | An amount gap, a booking status, a missing TAN or section, or rows aggregated. |
Each entry also keeps the books rows behind the group (document number, deduction date, quarter, amount and TDS) and the action taken on it: the action, the follow-up date, notes and when it was recorded. The console shows these in the row's details.
Business rules
- Match key. PAN + TAN + section + financial year, after trimming spaces and ignoring case. PAN is your company's; TAN is the customer's.
- TDS decides. Grouped TDS must agree within ₹1, because TDS is rounded to the rupee and the two sides may round at different points. Amount Paid never decides the result.
- Booking status. A line booked F (Final) is claimable. Lines booked U (unmatched challan), P (provisional) or O (overbooked) are not, so a group whose TDS agrees but has any such line is Not final. A blank booking status counts as Final. Not final usually turns Final on a later download.
- Only Invalid is excluded. Lines whose Validation Status is
Invalid, in any capitalisation, are counted as Error Rows and left out.Pending,Validor empty lines are included. An excluded line is not touched by the run, so it keeps the Reconciliation Status of its previous run. - The line year must match the statement's. Books rows are keyed with the statement's year exactly as it is written. A line whose own Financial Year is written differently (
2025-2026on a2025-26statement), or belongs to another year, forms a group the books never meet. - Line stamping. Every run clears and rewrites each included line's Reconciliation Status and Reconciliation Entry. All lines of a group get the group's outcome, so an
Fline in a group with aUline is also Not final. - TCS is out of scope. Lines with a 206C section are marked Out of scope and produce no result.
- Missing TAN. Books rows of a customer whose account has no TAN are paired with the one remaining 26AS group of the same section whose TDS agrees, and reported as TAN missing. If no single group fits, they are Missing in 26AS with a "no TAN on file" remark.
- Updated in place. Reconciling a statement again keeps each existing group's entry, with its number and the action taken on it, and rewrites its figures. New groups get new entries; entries of groups that no longer occur are removed.
- Actions follow the group. A group that now matches loses its action. An existing entry keeps its own action across runs. A new entry, such as one on a newer upload of the year, takes the latest action recorded for the same key on any statement of the same company and year.
- Where each action applies. Customer follow-up: Mismatched (including TAN missing) and Missing in 26AS. Books correction: Mismatched. Add in books: Missing in books. Any action on a Matched row is refused, and an action that does not fit the row says so and changes nothing.
- One correction journal per group. While a correction journal for the group is in Draft or Posted, Books correction drafts no second one and names the existing journal. Reverse it before drafting another.
- A posted correction journal moves the GL only. The books side of the reconciliation reads the TDS receivable rows, not the journal, so the group stays Mismatched, shown as settled ("Corrected · … posted"). To make the group agree, reverse or correct the TDS on the invoice as well.
- Posting TDS on an invoice uses the invoice's own lines. Add in books and the "Form 26AS higher" Books correction give every line of the invoice that has no TDS section the row's section, then post TDS at that section's rules. The TDS posted can therefore differ from the Form 26AS figure; the message tells you by how much.
- TDS at receipt. When the company books customer TDS at receipt, posting TDS on an invoice is refused; post the receipt that settles the invoice net instead.
- Year boundary.
2025-26and2025-2026both mean 1 April 2025 to 31 March 2026. A deduction posted at any time on 31 March is inside the year. - Fiscal period lock. A GST period referenced by a statement cannot be deleted, and its Month, Year and Type cannot be changed.
Example
Your company (PAN AABCX1234F) uploads its Form 26AS for 2025-26 in October. It has three rows:
- Kestrel Auto (TAN MUMK04512C, section 194C): ₹9,700 TDS.
- Orion Fleet (TAN BLRO22310F, section 194C): ₹6,200 TDS.
- Bluefin Motors (TAN DELB11234E, section 194Q): ₹8,000 TDS, booked U.
- In your books, the Kestrel invoices carry ₹9,700 TDS, the three Orion invoices ₹7,040, and the Bluefin invoice ₹8,000.
- The console reconciles the new statement: Kestrel Matched, Orion Mismatched with a ₹840 difference, and Bluefin Not final.
- You open Orion's details. Its books rows show that one invoice (₹840 TDS) has no matching 26AS row. The customer confirms they missed it, so you select Actions → Customer follow-up, set the date to 15 November and add a note. A task for Orion Fleet is created, and the row reads "Follow-up · due 15-Nov-2026".
- In January you upload the new download. Orion has filed a correction and Bluefin's line is now booked F. The new statement reconciles both groups as Matched, and Orion's follow-up drops off the row. You complete the task.
Training
Practice exercise
In a sandbox:
- Give your company a PAN and a customer a TAN.
- Post two invoices to that customer with a TDS section, totalling ₹10,000 TDS.
- Post a third invoice to the same customer with no TDS section on its lines.
- Upload a statement for the year with two lines under that TAN and section totalling ₹10,000, and one line under the same TAN for another section (₹2,000 TDS). Make sure that other section is set up as a TDS section.
Expected result: the first group is Matched, and the second is Missing in books. Then:
- Change one line of the first group by ₹5 of TDS and select Reconcile again: the group moves to Mismatched.
- Run Customer follow-up on it: a task is created, and the row is in progress with its due date.
- Select Reconcile again: the row keeps its follow-up.
- On the Missing in books row, run Add in books and pick the third invoice: its lines get the section, TDS is posted on it, and the message states the amount and any remaining difference. If your company books customer TDS at receipt, the action is refused instead.
Quick reference
- One statement per download; upload each revised Form 26AS as a new statement.
- Financial Year must be
YYYY-YY(orYYYY-YYYY). - Company PAN and customer TANs must be on their accounts.
- TDS decides, within ₹1. Amount Paid differences are remarks.
- Not final means TDS agrees but TRACES has not booked it F; there is no action for it.
- Mismatched: Customer follow-up or Books correction. Missing in books: Add in books. Missing in 26AS: Customer follow-up.
- Books correction drafts at most one journal per group; review and post it from Journals.
- Actions stay on their row through every Reconcile again and carry to a newer upload until the group matches.
Permissions
- Seeded access. The seeded System Admin, Standard User and Sales Executive profiles have full access to Form 26AS Statement, Form 26AS Line and Form 26AS Reconciliation Entry (view, create, edit and delete) and a grant for their Clone actions. A profile without access to Form 26AS Statement does not see the statement records at all.
- Open the console. The console loads everything through one hidden action on Form 26AS Statement, Form 26AS Reconciliation View (
GetForm26ASReconciliationView), which also runs the automatic and Reconcile again reconciliations. A profile without a grant for it cannot open the console at all. - Reconcile. Two actions labelled Reconcile run the same reconciliation on one statement:
Reconcile, which the statement's record page header shows, andPerformForm26ASReconciliation. - These actions, and their grants to the Standard User and System Admin profiles, are added by a platform update rather than the base tenant template. Check under Setup → Design Studio → Entities → Form 26AS Statement → Actions that they exist, and grant them on the Actions tab of any other profile that works the reconciliation.
- Row actions. Customer follow-up, Books correction and Add in books are server actions on Form 26AS Statement named
CustomerFollowUp,BooksCorrectionandAddInBooks. They run against the statement the rows belong to, so a user needs a grant for each action they use. They are not in the base tenant template (see Configuration). - Lines. Importing and correcting lines needs create and edit access to Form 26AS Line.
See Security profiles.
Configuration
- Place the console. In Setup → Design Studio → App Pages, open or create a page, add Form 26AS Reconciliation Console and save. It can also replace the older Form 26AS Reconciliation widget on the statement's View layout; on a statement record page it binds to the open statement, shows no pickers and offers no Upload 26AS.
- Console properties. Pinned financial year and Pinned statement id fix the year or statement and hide the matching picker. Allow upload shows Upload 26AS. Allow actions off makes the console read-only.
- Pick the actions for each tab. Nothing is built in. For each tab (Matched, Mismatched, Missing in books, Missing in 26AS, Not final and Ignored), … tab: row actions lists the Form 26AS Statement actions in the row's Actions menu, in order. … tab: bulk actions lists the buttons shown above the table for ticked rows. An empty list means no Actions column, or no buttons and no tick boxes, on that tab. The usual set:
- Mismatched tab: row actions:
CustomerFollowUp,BooksCorrection; bulk actions:CustomerFollowUp. - Missing in books tab: row actions:
AddInBooks. - Missing in 26AS tab: row actions and bulk actions:
CustomerFollowUp.
- Mismatched tab: row actions:
- Add the row actions if they are missing. The base tenant template does not include them. In Setup → Design Studio → Entities → Form 26AS Statement → Actions, add each as a server action with Server Action Name exactly
CustomerFollowUp,BooksCorrectionorAddInBooks, and grant it on the profiles that work the reconciliation. The action's Label is the text shown in the menu, so this is also where you rename one. An inactive action is not offered. - What the console asks first. If an action is set to show a confirmation, the console asks before running it. It asks for a follow-up date and notes only when the action's UI properties carry
consoleInputswithfollowUpDateandnotes. Without that, Customer follow-up sets the due date seven days from today, with no notes. The invoice picker for Add in books and Books correction always appears when the server needs an invoice. - Default company per user. Set Default Partner Account on each user's resource record so the console opens on their company.
- Put the records in an app. Form 26AS Statement, Form 26AS Line and Form 26AS Reconciliation Entry are in no seeded app. Go to Setup → Design Studio → Apps, open the app your finance team uses, and add Form 26AS Statement, and Form 26AS Line if users correct lines, with Manage Items (see Create an entity).
- Reconcile actions. The console's view action and the two Reconcile actions come with a platform update (see Permissions). Without the view action the console cannot load; without the Reconcile actions the statement record page has no Reconcile button. The statement's header also names Edit, Print and Delete, which do not appear until you add matching actions on Form 26AS Statement. The line's and the entry's record page headers name buttons that are not actions of those entities, so they show none.
- Company PAN and customer TANs. Fill in the PAN on each company account and the TAN on each customer that deducts TDS. Make the TAN part of your customer onboarding.
- Books actions. Books correction needs GL accounts with the control types TDS Receivable and Accounts Receivable for the company. Add in books and Books correction need each Form 26AS section set up as an active TDS section.
- Numbering. Statement numbers come from the Form 26AS Statement Name Setting (series
26AS, six digits). Lines use26ASLand reconciliation entries use26ASR. Change them under Setup → Feature Hub → Platform → Document Settings (see Email templates and document numbering).
Common problems
"No company has PAN …" or "More than one company has PAN …"
The lines' PAN must match the PAN of exactly one company account. Fill in or correct the company's PAN and reconcile again.
"The 26AS lines carry more than one PAN"
A statement belongs to one company. Split the rows into one statement per PAN.
"The 26AS lines carry no PAN, so the statement cannot be tied to a company."
No included line has a PAN: the PAN column was not mapped in the import. Fill in the PAN on at least one line, or upload the file again with the PAN column mapped.
"The 26AS lines are for PAN …, but the company on this statement has PAN …"
The statement's Partner Account was set to a different company, usually because another company was selected in the console when you uploaded. Correct the Partner Account, or upload the file again with the right company selected.
"The company on this statement has no PAN on file, and the 26AS lines are for PAN …"
The statement was filed under a company whose account has no PAN. Set the PAN on that company's account, then reconcile again.
The same customer is Missing in books and Missing in 26AS for the same section
The two sides did not meet on the match key. Check the 26AS lines: a Financial Year written differently from the statement's (2025-2026 on a 2025-26 statement), or a TAN or section with a typing difference, puts the lines in a group of their own. Clear or correct the field on the lines and select Reconcile again. Receipts that record withheld tax without a TDS section produce the same picture, because their books rows carry no section.
Every agreeing group is Not final
The Booking Status column holds something other than the letters F, U, P or O, such as the word Final. Only F or a blank counts as final. Correct the lines, or import the file again with the single letters.
A line marked Invalid still shows Match
Excluded lines are not touched by the run, so they keep the status of their last run. The line is left out of the counts and the result; ignore its Reconciliation Status.
"This statement has no imported 26AS lines to reconcile" or "Every imported 26AS line failed validation"
Import the lines and link them to the statement, or correct the rows marked Invalid.
"The statement is still being imported"
The statement's Status is Parsing. Nothing parses files, so change Status to Uploaded or Validated and reconcile again.
Every group is Missing in books
Your books have no TDS receivable for that company and year. Either the invoice lines carry no TDS section, or the receivable was posted under another company.
A group is TAN missing, or Missing in 26AS with a "no TAN on file" remark
The customer's account has no TAN. On a TAN missing row, run Books correction to set the TAN shown on Form 26AS. Otherwise fill it in from the remark and reconcile again.
A tab has no Actions column
No actions are picked for that tab in the console's properties, or the named actions do not exist on Form 26AS Statement. See Configuration.
An action says it is not found or not allowed
The row actions have not been added on your tenant, or your profile has no grant for them (see Permissions).
"Customer follow-up applies to Mismatched and Missing in 26AS keys."
The action was run on a Missing in books or Not final row, usually because the console's properties offer it on that tab. Customer follow-up only applies to Mismatched and Missing in 26AS rows; remove it from the other tabs' action lists.
"A matched key needs no action."
The row matched since the console was last loaded. Select Reconcile again to refresh the console.
"Some rows are no longer part of this statement's reconciliation. Reload the console and try again."
The statement was reconciled again in the meantime, and a group disappeared. Refresh the console and pick the rows again.
"Posting TDS applies when 26AS credits more TDS than the books hold for the key."
Add in books and the invoice route of Books correction post TDS, so they apply only when Form 26AS shows more than your books.
"A correction journal (…) is already drafted for this key. Review and post it, or reverse it before drafting another."
Books correction drafts one journal per group. Open it with Actions → Open journal, then post or reverse it.
"No TDS Receivable control account is configured for this company." or "No Accounts Receivable control account …"
Give the company GL accounts with those control types, then run Books correction again.
"No TDS section … is set up. Add it under TDS Sections first."
The row's section is not an active TDS section. Add or activate it, then run the action again.
"Invoice '…': this company recognises TDS receivable at receipt …"
The company books customer TDS when the receipt is posted, so TDS cannot be posted on the invoice. Post the customer receipt that settles the invoice net of TDS instead, then reconcile again.
"Invoice '…' is not posted." or "Invoice '…' is cancelled; TDS cannot be posted on it."
Pick a posted, live invoice. If the invoice picker says "No posted invoice of this customer in the financial year", the customer has no posted invoice dated in that year.
"Invoice '…' belongs to another company." or "… is not an invoice of …, the deductor behind this key."
The invoice must be the company's and the row's customer's. Pick another invoice.
"'…' already has TAN …, but 26AS shows …" or "TAN … is already on account '…'"
Books correction never overwrites a TAN or gives one TAN to two accounts. Check which TAN is right, correct the accounts by hand, and reconcile again.
"The books rows behind this key belong to more than one customer …"
Books correction cannot tell which customer to set the TAN on. Set it on the right account by hand.
"Month, Year and Type cannot be changed on GST period '…': 1 Form 26AS statement(s) already reference it."
A statement points at that GST period. Deleting the period is refused the same way. Clear the statement's Fiscal Period first, or leave the period as it is.
Common questions
Why is a group Not final when the TDS agrees?
TRACES has not booked at least one of its lines Final. The deductor's challan may be unmatched (U), the booking provisional (P), or the challan overbooked (O). The credit is not claimable until it turns F, which usually happens on a later download once the deductor corrects their filing.
Why was a Pending line included?
Only lines marked Invalid are left out. Pending, Valid and empty lines all count, so set Validation Status deliberately in your import.
Why does a corrected row still show Mismatched?
A Books correction journal changes the GL, but the reconciliation compares Form 26AS with your TDS receivable rows, which the journal does not change. Once the journal is posted, the row reads "Corrected · … posted" and no longer counts as open. To make the group agree, reverse or correct the TDS on the invoice as well, then reconcile again.
Can I undo an action on a row?
The console has no button that clears an action, and the entry's record page cannot be edited. The action clears itself once the group matches. You can complete a follow-up task like any other task, and the row then reads "Follow-up done". Reversing a correction journal lets Books correction draft a new one. Neither removes the action from the row.
Why does the older Form 26AS Reconciliation screen show different results?
It is a separate calculation in the browser. It groups by TAN only, reads every TDS row, and does not read the saved results. Use the console.
Does a quarter's difference mean an exception?
No. Matching runs on the whole financial year. A deduction a customer reports in a different quarter of the same year still matches.
Should I correct a 26AS line or upload the statement again?
Upload again whenever TRACES has a newer Form 26AS: each download is its own statement, the newest is the active one, and your actions carry over. Correct a line only when the import itself went wrong, for example a year written in the wrong form, a stray space in a TAN or a booking status spelt out as a word. Edit the field on the line's record page and select Reconcile again. A corrected line never changes what TRACES holds, so do not use it to make a real difference with a customer disappear; run Customer follow-up instead.
Deductor-side books, returns and challans
The TDS Reconciliation widget uses the server's deductor-side engine. For one partner account, financial-year start and Nature (TDS or TCS), it compares:
- non-reversed, positive withholding transactions in the financial year;
- deductee lines from Filed quarterly returns; and
- Deposited or Verified challans and the amounts Filed returns utilized.
It reports quarter totals, deductions not reported, Filed return lines whose live books row is absent, carried deductions and deposited-versus-utilized challan differences. Its remediation paths call server services. Examples are challan allocation and deposit, adding an eligible deduction to an open return, creating a correction route, or moving a deposited unreported row to a later open return. Each action still enforces its own state and required inputs. If an action is refused, resolve it from the reason the server returns.
Run this comparison after deposits and return filing states are current. Read each two-line row carefully: return evidence and books evidence stay separate even when the quarter's grand totals happen to agree.
