E-Invoice in Tally Prime: Enable, Generate and Cancel
How to enable e-invoicing in Tally Prime, generate an IRN from a sales voucher, and cancel an e-invoice within the 24-hour window.
E-invoicing in TallyPrime is a three-part job: switch it on once in the company's GST details, let Tally send each qualifying sales voucher to the Invoice Registration Portal (IRP) to get an IRN and signed QR code, and use the same screens to cancel an IRN when an invoice goes wrong. This guide covers how to enable e-invoice in TallyPrime, generating the IRN online or through a JSON file, printing the QR code, how to cancel an e-invoice in TallyPrime inside the 24-hour window, and the errors you are most likely to see.
Before you start: what you need
TallyPrime does not issue e-invoices. The IRP does: it validates the invoice, assigns the Invoice Reference Number (IRN), and signs the invoice and a QR code. Tally builds the request from your voucher, sends it, and stores the reply. That means the rules are the portal's, and the setup has a portal side and a Tally side.
- Your GSTIN must be enabled for e-invoicing. This follows from aggregate annual turnover. The current limit and history are in our note on the e-invoicing threshold. If your GSTIN is covered but not shown as enabled on the portal, sort that out first.
- A login on the e-invoice portal. See e-invoice portal login for registering and signing in.
- API credentials for Tally. On the e-invoice portal, use the API registration option, choose to connect through a provider, select Tally from the list and create an API username and password. Your ordinary portal password will not work in Tally.
- Tally's connected services. Online e-invoicing runs through Tally's own services, so you need a TallyPrime release that supports it, an active subscription, and a Tally.NET login for the user sending the requests.
GST on Tally: the masters e-invoicing reads
Every field in an e-invoice comes from GST settings you should already have in Tally. If the GST setup is loose, e-invoicing exposes it at once, because the IRP checks what Tally's own validation does not.
| Master | What must be right |
|---|---|
| Company GST details | Your GSTIN, state, registration type, address and pin code |
| Party ledgers | Buyer GSTIN, registration type (regular, SEZ, unregistered and so on), state, address and pin code |
| Stock items and service ledgers | HSN or SAC code, unit of measure and GST rate |
| Voucher type | A clean, unique numbering series per financial year |
Rates deserve a fresh look. Since 22 September 2025 most goods and services sit at 5% or 18%, with a 40% rate for a short list of luxury and sin goods; an item master still carrying 12% or 28% is probably out of date. The full structure is in our guide to GST rate slabs. Units matter too, because the IRP accepts only the standard unit quantity codes.
How to enable e-invoice in TallyPrime
Tally's menus have moved between releases, so the labels below may differ slightly on your version, but the path is the same in substance:
- From the Gateway of Tally press F11 (Company Features) and make sure GST is enabled.
- Open the GST registration details for the GSTIN you invoice from. In older releases this is the GST Details screen; in newer ones each registration has its own details screen.
- Set e-Invoicing applicable to Yes and enter the date it applies from.
- If you also generate e-way bills, enable the option to send e-way bill details with the e-invoice, so one request returns the IRN and the e-way bill number together.
- Save. If the company has several GSTINs, repeat for each registration that is covered.
Once that is saved, Tally treats B2B sales, exports, SEZ supplies and credit and debit notes as e-invoice documents and offers to send them when you save the voucher. Sales to unregistered buyers are not e-invoiced. The e-way bill side of the setup is covered in e-way bill in TallyPrime.
Generating the IRN from a sales voucher
Record the sales voucher as usual. When you save it, Tally offers to send the e-invoice. Confirm, log in with your Tally.NET ID if the session is not live, and enter the e-invoice API credentials the first time in a session. Tally sends the invoice, and on success writes back:
- the IRN, a 64-character hash;
- the acknowledgement number and date;
- the signed QR code; and
- the e-way bill number, if you supplied transport details and enabled the combined option.
You do not have to send each voucher as you save it. The e-invoice report in Tally lists vouchers waiting to be sent, rejected, or already registered, and you can select a batch and send them together. Keep an eye on dates: taxpayers with aggregate turnover of ₹10 crore or more cannot report an invoice more than 30 days after its date, so a batch left in the pending list too long can become impossible to register. See the 30-day reporting limit.
The offline JSON route for bulk upload
If the Tally machine cannot connect to the internet, or you prefer not to let it, use the offline route:
- From the e-invoice report, select the pending vouchers and export them as a JSON file.
- Log in to the e-invoice portal and use its bulk generation option to upload the file.
- Download the response file containing the IRNs, acknowledgement details and signed QR codes.
- Back in Tally, import the response so each voucher is updated with its IRN and QR code.
The last step is the one people skip. If you print from Tally without importing the response, the invoice goes out without its QR code and your books do not show which vouchers were registered.
Printing the invoice with the QR code
Once a voucher has an IRN, printing it from Tally puts the signed QR code and the IRN on the invoice automatically. The QR code carries key invoice details signed by the IRP, so anyone can check a printed invoice against the portal's record; see e-invoice QR code verification. If the QR code is missing from a print, the voucher was usually never registered, the import step was skipped, or a customised invoice format leaves no space for the code.
How to cancel an e-invoice in TallyPrime
The IRP lets you cancel an IRN within 24 hours of generation, in full and not partly. In TallyPrime:
- If an e-way bill was generated on the IRN and is still active, cancel the e-way bill first. The IRP will not cancel the IRN while it exists.
- Open the voucher, or find it in the e-invoice report, and choose the option to cancel the IRN.
- Pick a reason: duplicate, data entry mistake, order cancelled or other. Add short remarks.
- Send. Tally submits the cancellation to the IRP and marks the IRN cancelled on the voucher.
- Then cancel the voucher in your books, keeping its number marked as cancelled in the register.
After cancelling, do not reuse the invoice number. The IRN is derived from your GSTIN, the financial year, the document type and the document number, so the same number produces the same IRN and the IRP rejects it as a duplicate. Issue the corrected invoice under a new number.
After 24 hours, cancellation is not available. Correct the invoice with a credit note, recorded in Tally as a credit note voucher and e-invoiced in its own right, then issue a fresh invoice if needed. The full rules are in how to cancel an e-invoice and debit and credit notes.
Common errors and what they mean
Tally usually shows the portal's error code and message. The ones that come up most often:
| Error | Usual cause | Fix |
|---|---|---|
| Duplicate IRN (commonly 2150) | The invoice was already registered, or a cancelled invoice's number is being reused | Fetch the existing IRN into the voucher; for a new invoice, use a new number |
| Invalid or inactive buyer GSTIN | Mistyped GSTIN, or the buyer's registration is cancelled or suspended | Verify the GSTIN and correct the party ledger before sending again |
| State or pin code mismatch | The ledger's pin code does not belong to its state | Correct the address details in the party or company master |
| Invalid HSN code | HSN missing, or not a valid code | Add the right HSN to the stock item; see searching HSN codes |
| Value mismatch | Line totals, tax and rounding do not add up to the invoice value | Check rounding ledgers and item-level tax rates |
| Invalid credentials or session | The ordinary portal password was used, or the session expired | Use the API credentials created for Tally; log in again |
The buyer GSTIN is the one to catch before the invoice is made, not after the rejection. A GSTIN can pass Tally's format check and still belong to a cancelled registration, and a legal name in your ledger that does not match the registration causes trouble for the buyer's input tax credit. The gstinapi.com GSTIN verification API returns the status and legal name for a GSTIN in one call, and GST verification in Tally shows how to run that check against your party masters.
Frequently asked questions
A note on accuracy. GST rules change often. This article reflects our understanding as of 1 October 2026 and is general information, not tax or legal advice. For the authoritative position, check gst.gov.in and cbic-gst.gov.in, or speak to a qualified tax professional about your specific situation.
Check a GSTIN right now, free
Five lookups a day, no account required. Status, filing history, e-invoicing and jurisdiction.
Free GST search toolBuild it into your product
One REST call, JSON back. Get an API key and 20 free verification credits in under a minute.
Start freeMore on gst rules & compliance
Browse every guide in the GST API blog.