E-invoicing & e-way bills (IRN)
Whether you need it, connecting your own NIC credentials, and what changes on your invoices.
5 min readUpdated 14 Sep 2026
In this guide
Do you actually need this?
The limit is currently ₹5 crore of yearly turnover, and it has been lowered several times since e-invoicing began. Confirm today’s number with your CA rather than with anything written here or anywhere else on the internet — it is the one figure in GST that keeps moving.
How it works once it is on
- You raise an invoiceExactly as you do today
- It goes to the portalThrough the bulk upload file, or your own API credentials
- IRN + signed QR returnWithin a second or two
- Both print on the invoiceThat is what makes it valid
Without API credentials — the portal's bulk upload
Direct API access to the e-invoice portal is only issued to very large taxpayers and GST service providers, so most businesses use the portal's own bulk upload instead — and that works from here with nothing to connect. First fill your pincode, city and yearly turnover band in Invoice Settings → Business Details (the portal rejects a bill without the seller's pincode, and the band decides whether e-invoicing applies to you — ₹5 crore and above in any year since 2017-18 — and whether the 30-day reporting limit applies, which starts at ₹10 crore; leave it on Not sure and every B2B bill is treated as reportable). Then on Books & Tax → E-Invoice Setup:
Download the portal file
Pick a date range and press Check what will be included — it lists every B2B bill that still needs an IRN and, for any it cannot include, exactly what to fix (a missing HSN code, a missing buyer pincode). Download portal file then gives you the JSON the portal's Bulk Upload page accepts, built with the portal's own arithmetic rules and Indian-clock dates. The portal's text rules are applied too: business and buyer names and the city need at least 3 characters, a phone is sent only when it is 6–12 digits and an e-mail only when it is a real address, and a bill number may not start with 0, / or - — anything that would be refused is listed as a fix, never guessed.
Upload it on einvoice1.gst.gov.in
Bulk Upload → choose the file → generate. The portal returns a response file with the IRN, acknowledgement number and date, and the signed QR for each bill.
Paste the response back
Paste that response JSON into Record IRNs — each bill is matched by its number and the IRN, acknowledgement and QR are stored. A single bill can also be recorded from its own page (Record IRN). From then on the IRN, Ack No, Ack Date and the QR print on the invoice and on the copy your customer opens.
Cancelling a bill that already carries an IRN within its tax month marks the IRN as needing cancellation on the portal (allowed within 24 hours of the acknowledgement); once that month is over a credit note reverses the bill instead and the IRN stays on record. E-way bills work the same way from the order page: Download the portal's bulk file, upload it on ewaybillgst.gov.in, and enter the 12-digit number that comes back.
Connecting your credentials (API access)
Get API credentials from the portal
On the government e-invoice portal (einvoice1.gst.gov.in), create API credentials for your GSTIN. You will come away with five things — Client ID, Client Secret, Username, Password and a public key file (a .pem you download from the portal). Your CA will have done this before; it is a standard step, not a special integration.
Open E-Invoice Setup
Books & Tax → E-Invoice Setup → Configure NIC Credentials. Until you do, the page plainly says none are configured.
Start in Sandbox, not Live
The first choice on the form is Sandbox (testing) or Production (live). Always start in sandbox — the portal gives separate credentials for it — and press Test Connection. A green result means the portal accepted you. Only then come back, switch to production and paste your live credentials.
Choose what to switch on
Two switches: E-Invoice and E-Way Bill. Turn on only what you need — the button that asks the portal for an e-way bill appears on an order only once its switch is on (the bulk-file route below works either way).
Decide about auto-generate
Generate IRN automatically on every B2B invoice does exactly that, in the background: your invoice is created immediately and never waits for the portal, and a failed attempt is retried three times before it gives up. Invoices to customers without a GSTIN are skipped, because they need no IRN. Leave it off and you press Generate IRN on the invoice yourself.
Raise one real invoice and look at it
Do a single real B2B invoice and check the IRN and QR appear on the printed copy before you rely on it for a month of billing.
Credentials are stored encrypted and used only to talk to the portal on your behalf. They are yours — the invoice is registered under your GSTIN, not ours. Saved secrets are never shown back to you; re-entering them replaces them.
E-way bills
Goods worth more than ₹50,000 moving between states need an e-way bill. You generate it from the order itself, not from a separate screen — the invoice data is already there, so it is a confirmation rather than re-typing. A service-only sale never needs one, and an order under the limit tells you so instead of pretending.
The Generate E-Way Bill panel shows up on an order once it has an invoice and is ₹50,000 or more — and on every order once you have connected credentials with the E-Way Bill switch on. Inside it, Download the portal's bulk file and the box for the 12-digit number the portal gives back are always there, with no credentials at all; the Generate E-Way Bill button that talks to the portal for you appears only once your credentials are connected.
You add four things: how it is travelling (road, rail, air or ship), the distance in km (0 to 4,000 — in the portal file, 0 lets the portal work it out from the two pincodes), for road the vehicle number, and for rail, air or ship the transport document number and date — plus the transporter’s 15-character ID if a transporter is carrying it. Have them ready; the portal rejects the request without them, and the file download tells you which one is missing.
When it goes wrong
Do this
- Check the buyer's GSTIN is valid before invoicing — the portal rejects a wrong one outright
- Keep the state code right; place of supply drives the whole tax split
- Cancel a wrong IRN on the government portal itself, inside the window it allows
- Ask your CA before changing anything structural mid-year
Not this
- Retry a rejected invoice repeatedly without reading the error
- Edit an invoice after its IRN is generated — issue a credit note instead
- Share your NIC credentials over WhatsApp
Common questions
Do my B2C invoices need an IRN?
No. E-invoicing applies to business-to-business supplies. Your consumer invoices carry the usual dynamic QR requirements where applicable.
What happens if the portal is down?
The invoice is still created and your sale is recorded. Register it when the portal returns — nothing is lost, and no order is blocked because a government service is unavailable.
Can I turn this off?
Yes, remove the credentials and invoicing goes back to normal GST invoices. Whether you are legally allowed to is your CA’s call, not a settings question.
Where do I see my GST returns?
GST invoices & reports — GSTR-1 and 3B figures come from the same invoices.
More in Payments, GST & books
Did this answer your question?
It takes one tap and it genuinely changes what we write next.