Dishonour directory · 2,699 words
Complete 72 CTS Cheque Bounce Codes Directory for India
Indian credit files die on return codes that clerks lump as “bounce.” This directory maps the 72-code-class used in CTS cheque, ECS and NACH clearing — with underwriter action, typical bank penalty, and Law-4 separation.
A credit committee in BKC does not ask “were there bounces?” It asks whether the borrower failed to honour a cheque he issued (inward), whether customers bounced on him (outward), whether ECS failed, whether a NACH e-Mandate or UPI Autopay failed, and whether the bank levied a return charge. Those are different credit stories. A single integer in a clerk’s Excel is how good files die and bad files sneak through.
This directory is the underwriter-facing map of the 72-code-class FinAnalyser ships in the public lookup tool: 40 CTS cheque reasons, 12 ECS reasons, 20 NACH/e-Mandate reasons. Codes are standardised labels for Indian clearing — banks may print synonyms in narration (“I/W CHQ RET”, “CHQ RETN”, “ACH RETURN CHARGES”). The job of BSA software is to map synonyms onto this taxonomy without merging instruments.
How to use this directory on a live file
- Extract every return and return-charge line from the PDF (including wrap lines).
- Classify instrument first: inward cheque, outward cheque, ECS, NACH, e-Mandate, Autopay, or charge.
- Map reason code / keywords (Funds Insufficient, Exceeds Arrangement, Signature Differs, Code 88).
- Tag severity: Critical Default vs Operational Error vs legal/willful.
- Sum typical penalties separately from bounce face value.
- Present counts unmerged to the RM.
Severity model for Indian retail and SME
Financial default (funds insufficient, exceeds arrangement, not arranged for) is fatal on most PL/BL scorecards if clustered in 90 days. Legal/willful (stop payment, account closed, court order, frozen) is a fraud/legal alert even once. Operational/technical (signature, stale, image, Code 88, invalid IFSC) can be explained — unless it repeats as a pattern that looks like stalling. Your credit policy wins; this directory only names the codes.
Formulas credit ops actually use
Dishonour metrics
| Metric | Formula | Use |
|---|---|---|
| Inward cheque count | Count of I/W events | Borrower default |
| Outward cheque count | Count of deposit returns | Collection quality |
| Electronic fails | ECS+NACH+e-Mandate+Autopay | EMI / mandate stress |
| Charge total | Sum of return fees | Cost + evidence of events |
| 90-day inward | Inward events in last 90 days | Fresh default |
The 72-code directory
Typical penalty amounts are indicative (often ₹236 operational with GST, ₹350–₹500 financial/NACH). Banks vary. Use the PDF’s charge line when present. Search the interactive lookup at /tools/cts-cheque-bounce-code-lookup for “Code 88”, “Refer to Drawer”, “Funds Insufficient”, “Exceeds Arrangement”, or “Signature Differs.”
CTS · ECS · NACH (72)
| Code | Channel | Meaning | Underwriter action | Typical ₹ |
|---|---|---|---|---|
| CTS-01 | CTS Cheque | Funds Insufficient | Critical Default Risk | 500 |
| CTS-02 | CTS Cheque | Exceeds Arrangement | Critical Default Risk | 500 |
| CTS-03 | CTS Cheque | Effects not cleared, present again | Operational Error | 236 |
| CTS-04 | CTS Cheque | Refer to Drawer | Critical Default Risk | 500 |
| CTS-05 | CTS Cheque | Kindly contact drawer / drawee bank and present again | Operational Error | 236 |
| CTS-06 | CTS Cheque | Image not clear — present again | Operational Error | 236 |
| CTS-07 | CTS Cheque | Payee's name incomplete / incorrect | Operational Error | 236 |
| CTS-10 | CTS Cheque | Drawer's signature incomplete | Operational Error | 236 |
| CTS-11 | CTS Cheque | Drawer's signature required | Operational Error | 236 |
| CTS-12 | CTS Cheque | Drawer's signature differs | Operational Error | 236 |
| CTS-13 | CTS Cheque | Alteration requires drawer authentication | Operational Error | 236 |
| CTS-20 | CTS Cheque | Payment stopped by drawer | Critical Default Risk | 500 |
| CTS-21 | CTS Cheque | Payment stopped under court order | Critical Default Risk | 500 |
| CTS-22 | CTS Cheque | Withdrawal stopped — death of account holder | Critical Default Risk | 500 |
| CTS-23 | CTS Cheque | Withdrawal stopped — lunacy of account holder | Critical Default Risk | 500 |
| CTS-24 | CTS Cheque | Withdrawal stopped — insolvency of account holder | Critical Default Risk | 500 |
| CTS-30 | CTS Cheque | Instrument outdated / stale cheque | Operational Error | 236 |
| CTS-31 | CTS Cheque | Post-dated instrument | Operational Error | 236 |
| CTS-32 | CTS Cheque | Instrument mutilated or torn | Operational Error | 236 |
| CTS-33 | CTS Cheque | Revenue stamp required / insufficient | Operational Error | 236 |
| CTS-34 | CTS Cheque | Date invalid / incomplete / ambiguous | Operational Error | 236 |
| CTS-35 | CTS Cheque | Non-CTS 2010 cheque | Operational Error | 236 |
| CTS-40 | CTS Cheque | Account closed | Critical Default Risk | 500 |
| CTS-41 | CTS Cheque | Account transferred to another branch | Operational Error | 236 |
| CTS-42 | CTS Cheque | No such account | Critical Default Risk | 500 |
| CTS-43 | CTS Cheque | Title of drawer's account defective | Critical Default Risk | 500 |
| CTS-44 | CTS Cheque | Account frozen / lien marked | Critical Default Risk | 500 |
| CTS-45 | CTS Cheque | Operation suspended under legal attachment | Critical Default Risk | 500 |
| CTS-50 | CTS Cheque | Amount in words and figures differs | Operational Error | 236 |
| CTS-51 | CTS Cheque | Overwriting / cuttings on instrument | Operational Error | 236 |
| CTS-52 | CTS Cheque | Payee's endorsement required / irregular | Operational Error | 236 |
| CTS-53 | CTS Cheque | Crossing irregular / crossed to two banks | Operational Error | 236 |
| CTS-60 | CTS Cheque | Clearing house stamp / date missing | Operational Error | 236 |
| CTS-61 | CTS Cheque | Bank's stamp required | Operational Error | 236 |
| CTS-62 | CTS Cheque | Endorsement irregular / required | Operational Error | 236 |
| CTS-70 | CTS Cheque | Presentment error / wrongly delivered | Operational Error | 236 |
| CTS-71 | CTS Cheque | Not drawn on us | Operational Error | 236 |
| CTS-72 | CTS Cheque | Payee deceased | Operational Error | 236 |
| CTS-80 | CTS Cheque | Duplicate presentment | Operational Error | 236 |
| CTS-88 | CTS Cheque | Technical clearing failure | Operational Error | 236 |
| ECS-01 | ECS | Insufficient funds | Critical Default Risk | 350 |
| ECS-02 | ECS | Account closed | Critical Default Risk | 350 |
| ECS-03 | ECS | No such account | Critical Default Risk | 350 |
| ECS-04 | ECS | Account frozen / inactive | Critical Default Risk | 350 |
| ECS-05 | ECS | Not arranged for | Critical Default Risk | 350 |
| ECS-06 | ECS | Payment stopped by drawer | Critical Default Risk | 350 |
| ECS-07 | ECS | Account transferred | Operational Error | 236 |
| ECS-08 | ECS | Mandate expired | Operational Error | 236 |
| ECS-09 | ECS | Amount exceeds ECS limit | Critical Default Risk | 350 |
| ECS-10 | ECS | Account holder deceased | Critical Default Risk | 350 |
| ECS-11 | ECS | Invalid account type | Operational Error | 236 |
| ECS-12 | ECS | Duplicate ECS transaction | Operational Error | 236 |
| NACH-R01 | NACH | Insufficient funds | Critical Default Risk | 350 |
| NACH-R02 | NACH | Account closed | Critical Default Risk | 350 |
| NACH-R03 | NACH | No such account | Critical Default Risk | 350 |
| NACH-R04 | NACH | Account frozen / inactive | Critical Default Risk | 350 |
| NACH-R05 | NACH | Not arranged for | Critical Default Risk | 350 |
| NACH-R06 | NACH | Payment stopped by drawer | Critical Default Risk | 350 |
| NACH-R07 | NACH | Mandate cancelled by customer | Critical Default Risk | 350 |
| NACH-R08 | NACH | Payment stopped under court order | Critical Default Risk | 350 |
| NACH-R09 | NACH | Account holder deceased | Critical Default Risk | 350 |
| NACH-R10 | NACH | Mandate not registered / invalid UMRN | Operational Error | 236 |
| NACH-R11 | NACH | Customer to refer to branch / name discrepancy | Operational Error | 236 |
| NACH-R12 | NACH | Account under litigation | Critical Default Risk | 350 |
| NACH-R13 | NACH | Invalid IFSC | Operational Error | 236 |
| NACH-R14 | NACH | Invalid account number | Operational Error | 236 |
| NACH-R15 | NACH | Amount exceeds mandate limit | Critical Default Risk | 350 |
| NACH-R16 | NACH | Duplicate transaction | Operational Error | 236 |
| NACH-R17 | NACH | Technical / file format reject | Operational Error | 236 |
| NACH-R18 | NACH | Account type mismatch | Operational Error | 236 |
| NACH-R19 | NACH | Name mismatch vs mandate | Operational Error | 236 |
| NACH-R20 | NACH | User account blocked / dormant | Critical Default Risk | 350 |
Narration patterns FinAnalyser maps
- I/W CHQ RETURN-CTS … → inward cheque event
- CHQ DEP RET / RETURNED UNCLEARED → outward cheque
- CHQ RETN on PSU Finacle → usually inward, not NACH
- ACH RETURN CHARGES / NACH RETURN CHARGES → electronic evidence + fee
- AUTOPAYFAIL / EMI RETN / UMRN RETN → Autopay or NACH, not cheque
- REFER TO DRAWER → map CTS-04 / funds class unless bank says otherwise
How to write the bounce paragraph in a credit note
Bad: “Customer has 4 bounces.” Good: “Two inward CTS-01 (funds) in June, one outward deposit return (customer cheque), one NACH-R01 on Bajaj EMI; return charges ₹1,050. No stop-payment. Operational Code 88 once in January, not repeated.” That paragraph is why this directory exists.
Automation vs the lookup tool
The free lookup is for training RMs and borrowers. The BSA engine is for the file: every page, wrap lines included, charges separated, Excel bounce ledgers. If you only look up Code 88 you will miss the CTS-01 on page 20. Drop the PDF.
Training a new RM in 45 minutes
Do not start with all 72 rows. Start with five: CTS-01 funds, CTS-02 exceeds arrangement, CTS-04 refer to drawer, CTS-20 stop payment, CTS-88 technical. Then NACH-R01 vs cheque. Then inward vs outward. Then charge vs event. Open the free lookup, type those phrases, and read the underwriter action aloud. Only then open a live PDF. The directory in this article is the reference; the lookup is the drill; the BSA sheet is the job.
Stop-payment (CTS-20 / NACH-R06) is where juniors freeze. It is not “insufficient funds.” It is willful. Account closed is not “KYC pending.” Frozen/lien is not “temporary.” If you train only funds-insufficient, you will under-react to legal codes and over-react to Code 88. That mis-weighting is how good borrowers get declined and bad ones get explanations.
Example policy maps (illustrative, not your grid)
Many retail grids: any inward funds-code in 30 days is a refer; two in 90 days is a decline; stop-payment is a decline pending legal; technical once is ignore; technical thrice is refer. SME grids weight outward returns as collection quality and inward as proprietor default. Electronic R01 on the proposed lender’s own NACH is particularly ugly — it means they already bounced on the house. None of these maps are FinAnalyser’s to set. The software’s job is to feed the map with unmerged counts.
GST-era cheques and image CTS
CTS image clearing made Code 88 and image-not-clear more common than in MICR-only folklore. Do not tell a borrower “cheques don’t bounce anymore because of UPI.” They do, and inward image returns still print I/W CHQ RETURN-CTS on HDFC and CHQ RETN on PSUs. UPI Autopay failures are a parallel rail — Autopay, not cheque. If your clerk files Autopayfail under “cheque,” your 72-code directory was wasted.
Putting the directory next to the PDF
Split screen: PDF on the left, lookup on the right, BSA bounce sheet below. When the PDF says I/W CHQ RETURN-CTS and the sheet says inward CTS-01, you are done with that line. When they disagree, read the wrap. HDFC often splits names across lines; the code is still in the first line. PSU CHQ RETN without a number still maps to inward funds class more often than to NACH. Do not overfit one bank’s folklore to another bank’s print.
For NACH, UMRN and ACH RETURN CHARGES may be the only ink. Count an electronic event. Do not also invent a cheque event. Double counting is how you look strict and still lose the appeal. Charge rupees go to the fee total, not to bounce face value.
Explaining codes to borrowers without losing the file
Borrowers hear “bounce” as insult. Speak in codes: funds insufficient versus signature versus stop-payment. Stop-payment needs a story today. Funds-insufficient needs a funding plan. Signature needs a mandate card visit. Code 88 needs a re-present, not a character certificate. The directory gives you the vocabulary. The BSA sheet gives you the dates. Together they are how you keep a good customer while still telling the RM the truth.
Presentment cycles, image CTS, and why Code 88 is not a personality test
CTS image clearing moved Indian cheque returns from MICR folklore into a coded, image-backed rail. That is why CTS-88 (technical / image) is more common than a 2009 clerk remembers, and why repeating 88s still belong on the bounce sheet even when they are not funds-insufficient. A presenter whose images keep failing is operationally noisy. A drawer whose images fail three times in a row while UPI Autopay also fails is a different story. The directory’s job is to stop you treating every return as CTS-01. The BSA sheet’s job is to date them. Together they tell the RM whether this is a printer, a mandate, or a default.
Presentment is not instant. A cheque deposited Thursday may return next cycle. Your 30-day lookback must include the return date on the statement, not the deposit date the borrower remembers. ECS legacy returns and NACH R-codes print on different days from the original debit attempt. If you count the attempt and the return as two defaults, you will over-decline. If you count neither because the charge is ₹0, you will under-decline. Event versus charge is the control: the dishonour is the event; the penalty is a fee line. FinAnalyser keeps them unmerged. Your credit note should too.
The bounce paragraph a Chola or Bajaj analyst will actually read
Four lines, not a novel: (1) inward cheque funds-codes with dates and face values; (2) outward cheque returns if this is a collection-quality SME; (3) NACH/ECS/e-Mandate/Autopay failures with UMRN or ACH strings if printed; (4) technical/image codes called out as technical, not as character. Attach the bounce ledger. Do not paste a screenshot of an Excel filter named “bounce.” If the PDF says I/W CHQ RETURN-CTS and your sheet says inward CTS-01, you are done. If they disagree, read the wrap — HDFC names often split across lines while the code stays on line one.
Law-4 separation — six rails, never one integer
| Rail | Typical statement ink | Underwriter bucket | Do not file as |
|---|---|---|---|
| Inward CTS cheque | I/W CHQ RETURN, CHQ RETN, CTS-01/04 | Drawer default | Technical 88 |
| Outward CTS cheque | CHQ DEP RET, outward return | Collection quality | Inward default |
| NACH / ACH | ACH RETURN, UMRN, NACH-R01 | Electronic mandate unpaid | Cheque bounce |
| ECS legacy | ECS RETURN | Electronic, separate count | NACH or cheque |
| e-Mandate / Autopay | AUTOPAYFAIL, e-NACH | UPI/card mandate rail | CTS cheque |
| Charge only | BOUNCE CHG, RET CHG | Fee, not face value | Extra bounce event |
FAQs
What is CTS-01 Funds Insufficient?
The drawing account had no cover. Treat as inward cheque default — Critical Default Risk — not as a technical reject.
Is Refer to Drawer the same as insufficient funds?
Often economically yes (CTS-04). Confirm the code. Do not file it as Operational Error without bank confirmation.
Is NACH R01 a cheque bounce?
No. It is an electronic mandate unpaid for funds. Keep NACH, ECS, inward cheque and outward cheque unmerged (Law 4).
What is Code 88?
CTS-88 is typically a technical clearing failure. Confirm it is not masking funds-insufficient. Repeat 88s still belong on the bounce sheet.
How does FinAnalyser detect these in PDFs?
Narration + wrap merge + 72-code engine. Penalty charge lines stay distinct from the dishonour event. Use the free lookup tool for a single code; use BSA for the whole statement.
Should I count the bounce charge as a second default?
No. The dishonour is the event; the penalty is a fee. Put charges in the fee total. Put face value and code on the bounce ledger. Double counting makes you look strict and still lose the appeal.
How do I treat repeating CTS-88 technical returns?
Call them technical, not funds-insufficient, unless the wrap shows a funds code. Repeat 88s are operational noise and still belong on the sheet. Three 88s plus Autopayfail is a mandate-health story, not a character certificate.
Where should a junior look up a phrase like Refer to Drawer?
The free tool /tools/cts-cheque-bounce-code-lookup prefers exact meaning (CTS-04), not a fuzzy first hit on CTS-01. Then confirm against the PDF wrap. The directory in this guide is the reference; the lookup is the drill; BSA is the job.
Related guides
- Perfios Alternatives for DSAs and Chartered Accountants: Perfios vs ScoreMe vs FinAnalyser
- How DSAs in Tamil Nadu Analyze Indian Bank and Canara Statements
- TCS BaNCS vs Infosys Finacle vs Oracle FLEXCUBE: Why Bank Statement PDF Parsing Needs Balance Continuity
- How to Calculate FOIR and Detect Fake Salary Deposits
Drop your PDF Statement — Free 3-Page Instant Analysis
Upload PDF