Skip to main content
NACH / ECS · 9 min read

NACH Reconciliation: Managing Batch Return Matching at Scale

NACH debit batches for EMI collections, subscription billing, and insurance premiums generate return files with mandate-level outcomes and reason codes. Reconciliation means mapping those outcomes back to individual borrower accounts, updating repayment records, and triggering the right follow-up workflow for each return code. This guide explains the process, the data structure, and where it breaks at scale.

Terra Insight
Terra Insight Reconciliation Infrastructure

Content authored by practitioners with experience at Amazon India, Intuit QuickBooks, and the Tata Group. Meet the team →

Published 5 March 2026
Domain expertise
TDS Reconciliation GST Input Credit Platform Settlements NACH Batch Matching Bank Reconciliation Form 26AS Matching ERP Integrations Enterprise Finance Ops

What NACH Is and Why Reconciliation Is Non-Trivial

NACH (National Automated Clearing House) is the NPCI-managed system that replaced the legacy ECS (Electronic Clearing Service) for bulk debit and credit transactions. It is the infrastructure behind most EMI collections, insurance premium debits, mutual fund SIP mandates, and recurring subscription payments in India. When a NBFC, bank, or subscription business debits a customer's bank account for a recurring payment, the debit runs through NACH.

NACH reconciliation is not just about confirming that money arrived. It is about confirming that the right amount arrived for the right customer on the right due date — and for every mandate that did not succeed, understanding why, updating the borrower's account accordingly, and determining the correct next action. These are three operationally distinct activities that a reconciliation process must handle together.

At 500 mandates per batch, this is manageable manually. At 50,000 mandates per batch — which is common for mid-size NBFCs — it requires a structured, automated process. The difference is not just speed: manual reconciliation at this scale produces errors that accumulate across batches, eventually creating a misaligned loan ledger that is expensive and time-consuming to correct.

The NACH Data Structure: What the Return File Contains

A NACH debit transaction starts when the presenting bank submits a batch file to NPCI on the sponsor bank's behalf. NPCI routes each debit to the destination bank and receives an accept or return response. The return file — provided to the presenting bank and then to the originating organisation — contains the outcome for every mandate in the batch.

Each record in the NACH return file includes: the Unique Mandate Reference Number (UMRN), the account number and IFSC of the destination account, the transaction amount, the presentation date, the settlement date, the transaction status (Accepted / Returned), and where returned, the return reason code. The UMRN is the link between the NACH return file and your internal loan or subscription management system — it maps each mandate outcome to a specific borrower and EMI record.

Why UMRN matching is harder than it appears

UMRN matching is exact: a UMRN in the return file must match a UMRN in your system. The problem arises when UMRN management is inconsistent: old mandates reused after loan restructuring, UMRN not captured at the time of mandate registration, or multiple active mandates for the same borrower without a clear primary designation. These data quality issues surface during reconciliation as unmatched returns — entries in the return file with no corresponding system record — and must be resolved through manual investigation.

Common NACH Return Codes and Required Actions

Code Description Category Follow-Up Action
01 Funds Insufficient Retriable Retry within policy window; mark as 30 DPD if retry fails
05 No Account / Unable to Locate Non-retriable Trigger collections workflow; verify account details
20 Account Closed Non-retriable Update loan record; collect new mandate or bank account
25 Mandate Cancelled by Account Holder Non-retriable Escalate to relationship manager; stop future submissions
27 Stop Payment Dispute Treat as disputed EMI; contact borrower immediately
09 Technically Impaired Retry Resubmit mandate file; confirm format compliance with bank

TransactIG maps NACH return codes to structured variance classifications with configurable retry and escalation logic. See NACH batch matching pattern →

Where NACH Reconciliation Breaks at Scale

Return file received after business day cut-off

NACH return files from NPCI are received within 24 to 48 hours of batch submission, but the exact timing varies. If the return file arrives after the lending system's end-of-day processing run, the mandate status updates for that day are delayed by 24 hours. For portfolios with a high bounce rate, this delay means that DPD (Days Past Due) calculations are incorrect for at least one day per batch cycle — which, multiplied across 50,000 mandates, produces material errors in portfolio NPA reporting.

Partial settlement in multi-instalment batches

Some NACH configurations allow partial debit — where the destination bank debits whatever funds are available, not the full mandate amount. This creates a partial settlement entry in the return file: status is "Accepted" but the settled amount is less than the presented amount. In a spreadsheet-based reconciliation process, partial settlements frequently fall through the cracks because the matching condition (status = Accepted) is met, but the amount mismatch is not checked. The result is a borrower whose EMI is recorded as paid in full when only a portion was collected.

Mandate amendments not reflected in batch

When a borrower changes their bank account or increases their EMI amount, a new or amended mandate must be registered before the next batch. If the amendment processing is delayed, the old mandate may be debited — potentially returning as "Account Closed" — while the new mandate is not yet active. Reconciliation must identify these cases and prevent both a double-debit attempt and a missed collection.

The NACH Reconciliation Process: From Return File to Ledger Update

Step 1 — Ingest return file and validate format

Receive the NACH return file from your presenting bank or NPCI portal. Validate the file format (NACH debit return files follow the NACH debit transaction format with the status field populated by the destination bank's response). Count the records and confirm they match the count in the submitted batch file. A count mismatch at this stage indicates a transmission error that must be resolved before reconciliation proceeds.

Step 2 — Match UMRN to loan system records

Match each return file record to the corresponding loan account or subscription record using the UMRN as the primary key. For accepted transactions, verify that the settled amount equals the expected EMI or instalment amount. For returned transactions, extract the return reason code and classify accordingly. Unmatched records — where the UMRN is not found in the system — are flagged for immediate investigation.

Step 3 — Update loan ledger and trigger workflows

For accepted transactions, post the collection to the loan account and update the next due date. For returns, update the account status based on the return code: codes 01 and 03 may be flagged for retry within the configured window, codes 20, 25, and 27 require escalation to relationship management or collections. For all returns, update the DPD counter from the due date, not from the return receipt date.

The NACH batch reconciliation pattern in TransactIG is pre-configured for Indian NACH debit return file formats, with UMRN-based matching, partial settlement detection, and configurable retry and escalation logic. See how NBFCs and lending organisations use this pattern to manage EMI collection reconciliation at scale.

For the broader context of how NACH sits within an enterprise reconciliation framework, see the reconciliation software guide covering all five major reconciliation types — bank, TDS, GSTR-2B, platform settlement, and NACH — in a single unified framework.

The NPCI NACH product overview provides the technical specifications for NACH debit and credit transactions, including the return reason code list and file format requirements.

Frequently Asked Questions

What is NACH reconciliation?
NACH (National Automated Clearing House) reconciliation is the process of matching the status of each mandate in a NACH debit batch — successful, returned, or pending — against the corresponding loan or subscription record in your internal system. The NACH return file from NPCI contains the outcome for every mandate in the batch, including return reason codes (insufficient funds, account closed, mandate cancelled, etc.). Reconciliation maps these outcomes to individual customer accounts, updates EMI or billing records, and triggers follow-up workflows for returns.
What are the common NACH return reason codes?
Common NACH return reason codes include: 01 (Funds Insufficient), 02 (Exceeds Arrangement), 03 (Effects Not Cleared — Refer to Drawer), 05 (No Account / Unable to Locate Account), 09 (Technically Impaired), 20 (Beneficiary Bank Account Closed), 21 (Account Blocked), 25 (Mandate Cancelled by Account Holder), and 27 (Stop Payment). Each code represents a different borrower or system state and requires a different operational response — ranging from retry on the next batch to manual follow-up for mandate cancellation.
How many batches does NPCI process per day for NACH debits?
NPCI processes NACH debit batches in multiple windows throughout the day. As of 2025, NACH supports both scheduled batch settlement (traditional ECS replacement) and on-demand NACH transactions. Settlement files are typically returned within 24 to 48 hours of batch submission. Organisations that submit batches daily must reconcile each batch's return file before submitting the next batch to ensure that mandate updates are current.
Can failed NACH mandates be retried automatically?
NACH mandates can be retried within the validity period of the mandate, subject to the account holder's consent terms and the lending or subscription policy. Return code 01 (Funds Insufficient) is typically retriable; return code 25 (Mandate Cancelled) is not. Most lenders have a configurable retry policy: for example, retry up to 2 times within a 7-day window for return code 01 before escalating to the collections team. This retry logic must be mapped to the NACH reconciliation output so that retries are triggered only for appropriate return codes.
How does NACH reconciliation differ from bank reconciliation?
Bank reconciliation matches internal ledger entries against bank statement entries — it confirms that money moved as expected. NACH reconciliation operates at the mandate level: it confirms which mandates succeeded, which failed, and why, then updates the borrower's repayment schedule accordingly. A NACH return that is correctly identified and reconciled but not acted on — by updating the loan ledger and triggering a follow-up — is an incomplete reconciliation. The operational effectiveness of NACH reconciliation depends on the integration between the reconciliation output and the loan management or subscription system.

Automate NACH batch reconciliation for your lending portfolio

TransactIG matches NACH return files to loan accounts with UMRN-based matching, return code classification, and configurable retry and escalation logic. Handles 50,000+ mandates per batch.