Blog/GST & ITC
Wrong voucher type is a lie in the books

A credit note in the photocopy pile is not a purchase invoice.

It arrives in the same PDF as the tax invoice. It has a GSTIN and amounts. If you import it as a purchase, Tally thinks you bought more. You did the opposite. We do not ship a credit-note classifier. Review has to catch it.

Your supplier sent two pages by WhatsApp on Tuesday. One is a tax invoice for ₹1,00,000. The other is a credit note for ₹20,000 because some goods came back. You import the tax invoice into Tally as a purchase. Then you import the credit note into Tally as a purchase. Now Tally thinks you owe ₹1,20,000 for goods you returned. The books are wrong. 2B will not match. The CA will spend an afternoon reversing it.

GST lets a supplier issue a credit note when quantity, rate, or tax was wrong, or goods came back. The document can look like an invoice: GSTIN, HSN, lines, totals. The title is the tell: credit note, CRN, sometimes a negative total. But the title is small text under a logo. OCR is not reading the title. It is reading the GSTIN and the numbers. If those look like a purchase, the row slides into the export queue.

Rules for when a credit note must be issued, and how it shows in returns, live on the GST portal and in the Act. Read those. A blog is not the notification. The AP failure is simpler: wrong Tally voucher type.

What page classing actually returns

classify_page votes invoice, duplicate, challan, lorry, or other from keywords on already-extracted text. There is no credit_note label. A credit note may look like an invoice (GSTIN plus "invoice" somewhere) and slip toward purchase export. That is a known hole. Bake-off it. Do not pretend we closed it.

How to see it on paper

Title line. Document number series different from INV. Reference to the original invoice. Amounts that reduce, not increase, what you owe. Sometimes red ink. Sometimes nothing but "CREDIT NOTE" in 8pt under a logo. OCR will still read a GSTIN. Arithmetic may close. None of that makes it a purchase.

Train the clerk on three words, not a model score: credit note, debit note, tax invoice. If the title is credit note, it does not matter that the GSTIN checksums. Stop. Different voucher. If the title is missing and the total is negative, stop anyway.

Same dump, different voucherpageclass.py
Tax invoice

Purchase voucher

If validators pass, this is the export path.

Credit note

Not that path

Tally credit-note voucher, or review. We do not auto-pick the type today.

Challans and lorry receipts are a different miss. Those labels we do vote. Credit notes we do not.

What the books do if you get this wrong

You posted a purchase of ₹1,00,000. The supplier issues a ₹20,000 credit note because 20% came back. If that note imports as a second purchase, books show ₹1,20,000 of inward supply. Reality is ₹80,000. 2B will show the original (or the original net of the note, depending what they filed). Your CA will spend an evening matching three documents that should have been two voucher types. Interest and ITC conversations follow if you claimed credit on goods you no longer have. I will not invent a section 50 worksheet. The point is the voucher type.

Tally already knows credit notes. The clerk already posts them when the paper arrives on a desk. Capture should not undo that skill by stuffing every GSTIN-bearing page into purchase import. Gateway of Tally, then the voucher type they already use. Help pages for your release. We do not sell a credit-note XML today. Saying so once is better than a roadmap slide.

Keywords we do not vote on (yet)

pageclass.py looks for tax invoice, IRN, challan, lorry receipt, duplicate/office copy. It does not look for "credit note", "crn", "debit note." If you grep the file and add those needles, that is a product change with tests, not a blog promise. Until then, treat any page whose title is a note as review even if the class came back invoice.

Original invoice number on the note is how you join. Extract it if it is printed. If not, the clerk types it. Duplicate detection will not treat a credit note number as the same as INV-447 unless the numbers actually match. Do not expect the uniqueness key to "know" they are related.

2B after a real credit note

When the supplier furnishes the note, 2B ITC available can fall. If your books never reduced the inward supply, you are high vs 2B. If your books posted the note as an extra purchase, you are high in a different way. Either way the sheet looks like "we bought more than they filed." The CA then audits quantity. Start The twin moves the other way: a supplier debit note raises what you owe, and misfiled ones invent purchases. from voucher type, not from a new OCR vendor.

Returns rules for credit notes (time, tax period, how they appear) are on the portal and in the Act. I will not freeze a due date. The operational rule is: same dump as invoices does not mean same Tally type.

Office copies of a tax invoice are duplicate in pageclass when the duplicate hints fire. That is "do not pay twice," not "this is a credit." Mixing duplicate copies with credit notes in one training class is how both bugs get worse. Score them separately in the 500.

Meter: if we rasterize the credit-note page, it is a page. ₹1.40 does not care that you will not export it. That is honest billing, not a reason to skip the page in the bundle. Split, classify, review.

Sources
  • GST portal
    gst.gov.in

    Returns and credit notes as the portal describes them.

  • Tally Help
    help.tallysolutions.com

    Voucher types. Credit note is not purchase.

  • EntryLedger
    extraction/pageclass.py

    Labels: invoice, duplicate, challan, lorry, other. Last checked with this post: 5 Sep 2026.

Frequently asked questions
Do you detect credit notes?+

No named class. They may look like invoices. Review or a later classifier. Do not import them as purchases.

Will 2B pick this up?+

Supplier credit notes affect 2B. A fake purchase in Tally makes recon worse. Fix the voucher type at entry.

Do you export Tally credit-note XML?+

Not as a sold SKU today. Review, then post in Tally the way you already do.

Put credit notes in the bake-off set

If they auto-export as purchases, that is a miss. Score it honestly.