Legal Suvidha is a registered trademark. Unauthorized use of our brand name or logo is strictly prohibited. All rights to this trademark are protected under Indian intellectual property laws.
Legal Suvidha
Goods & Service Tax (GST)

Methods of Registering Invoices with IRP

Methods of registering invoices with the IRP in India include direct API integration suited to large enterprises with strong in-house IT, ASP-GSP led integration which most Indian businesses use because the partner handles schema changes and audit trails, the GSTN bulk upload utility for low-volume taxpayers, and manual entry on the IRP web portal for exceptions. All four methods produce the same outcome β€” a signed JSON with IRN and QR code β€” but differ in scalability, control and operational risk.

Mayank WadheraMayank Wadhera
Published: 23 Jun 2023
Updated: 23 May 2026
13 min read
Methods of Registering Invoices with IRP
1
2
3
4
5
6
7
8
9
10
11
12

Compare API, ASP-GSP, bulk upload and portal methods for registering invoices with the IRP under India's GST e-invoicing regime in 2026.

Methods of Registering Invoices with IRP

Under Rule 48(4) of the CGST Rules 2017, every notified taxpayer must generate a valid Invoice Reference Number (IRN) before issuing a B2B invoice to the buyer. In FY 2026-27, that obligation covers all suppliers with aggregate annual turnover above Rs. 5 crore. The Invoice Registration Portal (IRP) is the single point of validation for every such invoice. There are four recognised methods to reach the IRP β€” direct API, ASP-GSP integration, GSTN bulk upload, and manual web entry β€” and picking the wrong one creates operational drag, audit exposure, and, in the worst case, denied Input Tax Credit for your buyers.


What Is the IRP and Why Does IRN Generation Matter in FY 2026-27?

The IRP is the government-designated portal that validates invoice data, generates a unique 64-character hash (the IRN), digitally signs the invoice JSON, and embeds a QR code. GSTN has accredited multiple IRPs alongside the NIC-managed portal (accessible at the official GST e-invoice portal). All accredited IRPs share a common schema and produce interoperable output β€” the signed JSON, IRN, and QR code β€” which must be printed on or embedded in every B2B tax invoice.

An invoice issued without a valid IRN is treated as an invalid invoice under the law. That has two direct consequences:

  1. For the supplier: Exposure to penalty under Section 122 of the CGST Act 2017 β€” Rs. 10,000 per invoice or the amount of tax involved, whichever is higher.
  2. For the buyer: The invoice cannot support an Input Tax Credit (ITC) claim under Section 16, because the fundamental condition of a "valid tax invoice" is not met.

Neither consequence is theoretical. GST department scrutiny notices routinely cite IRP non-compliance in assessments, and a single month of lapsed IRN generation can produce a significant ITC reversal demand on your buyer β€” damaging a commercial relationship fast.


The Four Methods: A Side-by-Side View

Before diving into each method, here is a quick orientation. Every path below produces the same end-state: a signed JSON + IRN + QR code. What differs is who owns the integration, how fast it runs, and what happens when something breaks.

MethodWho submits to IRPSuitable volumeReal-time?IT effort
Direct APIYour ERP/systemHigh (1,000+ /day)YesHigh
ASP-GSPThird-party partnerMedium–HighYesLow–Medium
Bulk UploadFinance team manuallyLow–MediumNoVery low
Web PortalFinance team manuallyVery lowNoNone

Method 1: Direct API Integration with the IRP

How It Works

Your ERP or billing system constructs the e-invoice JSON in the prescribed schema (currently schema version as notified by NIC/GSTN on the official IRP developer portal), then calls the IRP's REST API directly. The IRP validates, signs, and returns the IRN and QR code β€” typically within two to four seconds. Your system stores the signed JSON and prints the QR code on the invoice PDF before sending it to the buyer.

The Technical Requirements

To go live on direct API, you need:

  1. GSTN API credentials β€” obtained by registering as a taxpayer on the IRP and generating an API key.
  2. Authentication token management β€” the IRP uses session tokens with a defined expiry; your system must auto-refresh tokens before each batch.
  3. Schema compliance β€” the e-invoice JSON schema has mandatory, conditional, and optional fields. A single mandatory field mismatch returns an error and no IRN is generated.
  4. Retry and exception logic β€” IRP APIs can time out during peak periods (particularly month-end). Your system needs retry queues so invoices are not lost in transit.
  5. Signed JSON storage β€” you must retain the original signed JSON for the full document retention period (currently eight years as per Rule 36 of CGST Rules read with Section 2(33) of the Act).

Who Should Use This Method

Direct API integration makes sense when:

  • You generate more than 500 B2B invoices per day and need sub-minute IRN turnaround.
  • You have a dedicated ERP team (SAP, Oracle, Microsoft Dynamics) with bandwidth to maintain the integration.
  • Your order-to-cash cycle requires the IRN to be embedded in the invoice before the goods leave the warehouse β€” which is the case for e-way-bill-linked dispatches.

The Real Trade-Off

Direct API is the most capable method but also the most brittle when maintained poorly. GSTN issues schema version updates, field-level validations change, and API authentication mechanisms are revised. Without a named internal owner who tracks IRP developer portal notifications, your integration can silently break β€” generating errors rather than IRNs β€” and you may not notice until a buyer raises a complaint or month-end reconciliation shows gaps.


Method 2: Routing Through an ASP-GSP Partner

How the ASP-GSP Layer Works

A GST Suvidha Provider (GSP) is an entity authorised by GSTN to access GST APIs on behalf of taxpayers. An Application Service Provider (ASP) builds software (ERP connectors, dashboards, reconciliation tools) on top of the GSP's API access. In practice, most businesses interact only with the ASP β€” which presents a clean interface β€” while the GSP handles the credentialed connection to the IRP in the background.

The data flow looks like this:

`` Your ERP / billing system ↓ (invoice data, usually via API or SFTP) ASP layer ↓ (transforms to IRP-compliant JSON) GSP layer ↓ (authenticated IRP API call) IRP ↓ (signed JSON + IRN + QR code) ASP layer stores and returns to you ↓ Your ERP updates invoice record ``

What to Look for When Choosing an ASP-GSP

Not all ASP-GSP partners are equal. When evaluating, ask specifically about:

  • Schema version update SLA β€” how quickly does the partner push schema changes after GSTN notification? The best partners do this within 48–72 hours of any official change; slower partners leave you running a non-compliant schema.
  • Uptime SLA and fallback β€” what is the contractual uptime commitment, and what happens during IRP downtime? Can the partner queue invoices and auto-retry?
  • Security certifications β€” look for ISO 27001 certification and GSTN-authorised GSP status. Confirm by checking the live list of authorised GSPs published on the GSTN website.
  • Reconciliation reports β€” the best platforms produce a daily reconciliation file showing invoices submitted, IRNs received, errors, and cancellations. This is your primary audit evidence.
  • Support response time β€” for a method your order-to-cash depends on, a 24-hour email-only support window is inadequate. Negotiate phone/chat support during business hours.

The Real Trade-Off

The ASP-GSP model transfers schema maintenance, retry logic, and IRP monitoring to a specialist. That is its core value. The trade-off is a dependency: if your ASP-GSP has an outage, every invoice in the queue waits. Review the partner's incident history before signing, and always document a fallback to bulk upload for planned or unplanned outages lasting more than two hours.


Method 3: GSTN's Offline Bulk Upload Utility

How It Works, Step by Step

GSTN provides an offline Excel-based tool (available on the official GST e-invoice portal under the "Bulk Upload" section) that lets you generate IRNs without any API integration. Here is the process:

  1. Download the template from the IRP bulk-upload section. The template contains columns that map directly to the e-invoice JSON schema fields.
  2. Populate the template β€” one row per invoice. Mandatory fields include GSTIN of supplier and buyer, invoice number, invoice date, invoice type (B2B, export, etc.), HSN/SAC codes, taxable value, tax rates, and total amounts.
  3. Validate locally β€” the offline tool has a built-in validator. Run it before uploading to catch schema errors such as missing PINs, invalid GSTINs, or HSN-tax rate mismatches.
  4. Upload the Excel file to the IRP portal under your taxpayer login.
  5. Download the IRN file β€” typically available within a few minutes for small batches (under 500 invoices). The output is an Excel/JSON file containing the IRN and QR code for each invoice.
  6. Update your records β€” manually copy IRN and QR data back to your invoice register or print on invoice copies.

When Bulk Upload Is Appropriate

  • Turnover just above the Rs. 5 crore threshold with low B2B invoice volumes (fewer than 50 invoices per day).
  • A business in the early stages of ERP implementation that has not yet built API capability.
  • Emergency backup: when the ASP-GSP or direct API path is down and invoices must be processed within the day.

The Hard Limitation

Bulk upload is a batch process. There is no real-time IRN β€” you upload a file and collect the output later. This creates a window where the physical invoice has already been dispatched without a valid IRN, which is a compliance breach. Use bulk upload only for same-day batch processing completed before goods or services are delivered and invoiced to the buyer.


Method 4: Manual Entry on the IRP Web Portal

What It Is

Any registered taxpayer can log in to the IRP web portal and enter invoice details field by field, generating one IRN at a time. No software integration is required.

When It Is Legitimate

Manual entry is defensible in exactly two scenarios:

  • True one-off transactions β€” a business that issues fewer than five B2B invoices per month and has no ERP.
  • Emergency exception β€” a single invoice that failed in the primary method and must be processed urgently while the root cause is investigated.

In all other scenarios, manual entry is operationally unsustainable and audit-unfriendly. There is no system-generated log of who entered what and when, error rates are high (wrong invoice dates, transposed GSTINs), and the process does not integrate with your ERP β€” meaning the IRN exists in the portal but not in your books unless you manually update records.

Auditors performing revenue assurance checks now specifically look for evidence that IRN generation is a system-controlled process. Heavy reliance on manual entry raises a control deficiency flag in internal audit reports.


How to Choose the Right Method for Your Business

Run through this decision sequence:

  1. Count your monthly B2B invoice volume. More than 300 per month means bulk upload will create unacceptable operational overhead. Go to step 2.
  2. Assess your ERP capability. Does your ERP have a native GST e-invoicing connector or open API? If yes, evaluate direct API. If not, you need an ASP-GSP.
  3. Assess internal IT bandwidth. Direct API requires a permanent owner. If you cannot assign one, ASP-GSP is the right answer regardless of ERP capability.
  4. Define your latency requirement. If the IRN must be on the invoice before dispatch (e-way bill scenarios, customer contracts), you need a real-time method β€” either direct API or ASP-GSP.
  5. Design your fallback. Every primary method needs a documented fallback. ASP-GSP β†’ bulk upload. Direct API β†’ ASP-GSP or bulk upload.

Most Indian mid-market businesses (Rs. 5–100 crore turnover) settle on ASP-GSP as primary, bulk upload as documented fallback β€” and this is the setup that tends to satisfy both operational teams and statutory auditors.


Worked Example: A Mid-Market Manufacturer's Integration Decision

Consider an auto-components manufacturer with FY 2025-26 aggregate turnover of Rs. 47 crore and approximately 620 B2B invoices per month. The business uses Tally Prime as its primary accounting software.

Volume check: 620 invoices/month, or roughly 28 per working day. Too high for daily bulk upload; suitable for real-time integration.

ERP check: Tally Prime has ASP-GSP connector plugins available from multiple vendors. No custom API development needed.

IT bandwidth: One-person accounts team, no dedicated IT resource. Direct API is ruled out.

Decision: ASP-GSP integration via a GSTN-authorised GSP partner with a Tally-native connector.

Implementation timeline:

  • Week 1: GSP partner onboarding, GSTIN linkage, sandbox testing with 10 sample invoices.
  • Week 2: Parallel run β€” invoices generated in production, IRNs verified against manual cross-checks.
  • Week 3: Go-live, with bulk upload credentials pre-configured as fallback.

Cost impact: A typical ASP-GSP subscription for this volume range costs Rs. 8,000–20,000 per year (market rates vary; confirm with vendors). Set against the alternative penalty exposure β€” a single month of invalid invoices at 620 invoices Γ— Rs. 10,000 minimum penalty = Rs. 62,00,000 in maximum exposure β€” the subscription cost is trivial.

ITC risk quantification: If those 620 invoices carry an average GST value of Rs. 18,000 each, the total ITC at risk for the buyer pool in one month is Rs. 1,11,60,000. No commercial relationship survives that level of disruption.


Common Mistakes and Pitfalls to Avoid

1. Treating IRN generation as a post-dispatch formality. The IRN must exist before the invoice is issued. Generating IRNs retrospectively β€” even by minutes β€” is a compliance breach. Build IRN generation into the invoice-creation workflow, not as a separate step.

2. Not storing the signed JSON. The QR code and IRN number alone are not sufficient. The IRP's signed JSON is the original document of record. Store it against each invoice number in a document management system or ERP attachment, not just in the IRP portal (where access is time-limited).

3. Ignoring schema version notifications. GSTN updates the e-invoice JSON schema periodically. Companies on direct API that do not track GSTN developer portal notifications often discover schema mismatches only when IRN generation starts failing β€” typically at month-end when volume is highest.

4. No SLA review of the ASP-GSP partner. Signing a contract and forgetting it is a mistake. Schedule a quarterly SLA review covering uptime, error rates, schema update response times, and support incident resolution. Negotiate credits for SLA breaches.

5. Using different IRN methods for different invoice types without documenting it. Some businesses use ASP-GSP for sales invoices and manual entry for credit notes or debit notes. This is operationally acceptable if documented in an SOP, but undocumented inconsistency creates reconciliation chaos and audit questions.

6. Failing to reconcile IRNs with GSTR-1. Every IRN-registered invoice flows to GSTR-1 (auto-populated from IRP data). If your books show an invoice that is absent from the IRP data β€” or vice versa β€” it surfaces as a GSTR-1 discrepancy and triggers notices. Run a monthly three-way match: ERP invoice register vs. IRP IRN log vs. GSTR-1 auto-populated data.

7. No tested fallback procedure. Most teams know they should have a fallback but have never actually used it. Run a quarterly drill β€” simulate an ASP-GSP outage and process five invoices via bulk upload. Confirm the process works before you need it at 4 pm on the last day of the month.


Reconciliation, Audit Trail, and Monthly GSTR-1 Alignment

Regardless of the method you use, the monthly reconciliation process should follow this sequence:

  1. Extract the IRN log from your ASP-GSP dashboard, direct API logs, or bulk upload download history. The log should show: invoice number, GSTIN of buyer, IRN, IRN date and time, and any cancellation records.
  2. Match against your ERP sales register. Every B2B invoice in the ERP should have a corresponding IRN. Identify and investigate gaps immediately β€” they represent invoices issued without valid IRN.
  3. Match against GSTR-1 auto-population. Log in to the GST portal and verify that IRP-registered invoices appear in your GSTR-1 auto-populated data (under the "B2B Invoices" section). Discrepancies here suggest either a schema rejection that was not caught at submission time, or a GSTN data sync issue.
  4. Retain the full signed JSON for each IRN alongside the invoice copy. For cancellations, retain both the original IRN evidence and the cancellation acknowledgement β€” cancellation is available only within 24 hours of IRN generation and only if the linked e-way bill has not been utilised.

Different methods leave different audit trails. ASP-GSP and direct API integrations generate timestamped event logs β€” submission, response, error, retry β€” that are exactly what an auditor or GST department officer wants to see. Bulk upload produces only the downloaded output file and the upload receipt. Manual entry leaves the lightest trail of all. This asymmetry is reason enough to treat API-based methods as the default and manual entry as the narrow exception it is designed to be.

As CBIC continues to tighten e-invoice validation and expand IRP capabilities in FY 2026-27 β€” including richer API error feedback, tighter e-way bill integration, and enhanced buyer-side ITC matching β€” your IRN generation method becomes a part of your permanent compliance infrastructure, not a temporary workaround. Build it properly once and maintain it continuously.


Key Takeaways

  • IRN is a pre-condition, not an afterthought. The signed JSON + IRN + QR code must exist before the invoice is issued; retrospective generation is a breach under Rule 48(4) of CGST Rules 2017.
  • Most mid-market businesses should use ASP-GSP as the primary method, with a GSTN-authorised, ISO 27001-certified partner offering sub-48-hour schema update turnaround and documented uptime SLAs.
  • Direct API integration is justified only when daily volume exceeds ~500 invoices and you have dedicated IT capacity to own schema updates, token management, and retry logic permanently.
  • Bulk upload is a fallback, not a primary method. Operationalise it, test it quarterly, but never rely on it as your default for volumes above 50 invoices per day.
  • Manual portal entry should be restricted to fewer than five invoices per month in documented exception scenarios β€” anything more is a control deficiency.
  • The financial stakes are real. One month of invalid invoices at a Rs. 47 crore business can expose Rs. 62 lakh or more in penalties and Rs. 1 crore+ in buyer ITC risk β€” against ASP-GSP subscription costs of Rs. 8,000–20,000 per year.
  • Monthly three-way reconciliation β€” ERP register vs. IRP IRN log vs. GSTR-1 auto-population β€” is the minimum control that should be documented, owned, and evidenced every month without exception.

Frequently Asked Questions

What are the main methods of registering invoices with the IRP?
There are four: direct API integration with the IRP, integration through an ASP-GSP partner, GSTN's offline bulk upload utility, and manual entry on the IRP web portal. The choice depends on invoice volume, ERP capability and tolerance for manual workflows in exception scenarios.
Which method suits most Indian mid-market businesses?
ASP-GSP-led integration is the default choice. The partner manages schema versions, retries, dashboards and audit trails, while the business focuses on data quality and exception handling. Direct API integration suits large enterprises with dedicated IT teams and bulk upload suits low-volume taxpayers.
Is bulk upload a viable primary method?
For very low invoice volumes, yes. For larger businesses bulk upload breaks the real-time order-to-cash control objective and creates reconciliation overhead. Most internal control frameworks expect at least an API-based pathway as the primary method, with bulk upload reserved as a fall-back option.
What fall-back path should I design?
Define a documented continuity procedure for IRP outages: a queue mechanism in the ERP for retries, a manual bulk upload path, an SLA on resumption and clear roles for finance, tax and IT. Test the fall-back at least annually so the team executes confidently when an actual outage occurs.
Mayank Wadhera
Content Reviewed By

CA | CS | CMA | Lawyer | Insolvency Professional | IBBI Valuator

"I help founders increase real business value and achieve stronger valuations | Turning messy workflows into scalable, time-saving systems"

Share this article:

Related Posts

View All