For businesses covered by GST e-invoicing, every B2B invoice has to be reported to a government Invoice Registration Portal (IRP) before it is valid. Doing that manually, by uploading files or keying invoices into a portal, works for a handful of invoices a day. It breaks down quickly when volumes grow, when the dispatch team is waiting for an IRN to print the invoice and when a single rejected invoice holds up a truck.
E-invoicing automation inside an ERP removes those hand-offs. The invoice is created once, validated, sent to the IRP, and returned with its Invoice Reference Number (IRN) and signed QR code, all from the same screen. This article explains the flow, the integration options, how errors should be handled, and what to look for when you evaluate an ERP for e-invoicing.
How the e-invoicing flow works
E-invoicing doesn't mean the government generates your invoice. You still create the invoice in your own system. What changes is that the invoice data must be registered with an IRP, which validates it, assigns a unique reference and digitally signs it.
- Invoice created in the ERP. A B2B tax invoice, credit note or debit note is raised as usual, with supplier and buyer GSTINs, place of supply, line items with HSN codes, values and tax.
- Converted to the prescribed JSON schema. The ERP maps the document to the e-invoice schema notified by GSTN, which defines mandatory and optional fields, formats and code lists (such as state codes and units of measure).
- Sent to the IRP. The JSON is submitted through an API, either directly (for eligible taxpayers who have API access) or through a GST Suvidha Provider (GSP) or other intermediary. Several IRPs have been notified, and taxpayers can generally choose which to use.
- IRP validates and registers. The IRP checks the schema, GSTINs, duplicate document numbers and other rules. If valid, it generates the IRN, a unique hash based on the supplier GSTIN, document type, document number and financial year.
- Signed data returned. The IRP returns the IRN, an acknowledgement number and date, the digitally signed invoice JSON and a signed QR code.
- Invoice printed with IRN and QR code. The ERP stores the response against the invoice and prints the IRN and QR code on the invoice copy sent to the buyer.
- Data flows onward. The IRP shares the registered invoice data with the GST system (where it auto-populates the supplier's GSTR-1) and, where details are supplied, with the e-way bill system.
Because the IRN is derived from the document number, the same invoice number can't be registered twice in a financial year. This makes clean, controlled numbering series in the ERP essential.
Credit notes, debit notes and cancellations
Credit and debit notes issued to registered buyers go through the same process and get their own IRNs, with a reference to the original invoice.
Cancellation is where many manual processes go wrong. At the time of writing, an IRN can be cancelled on the IRP only within a short window after generation (24 hours has been the rule), and only in full, not partially. After that window, corrections have to be made through a credit note or debit note, which must itself be e-invoiced. Cancelling an IRN doesn't free up the invoice number for reuse.
For the ERP, this means:
- A cancel action on the invoice that calls the IRP cancellation API with a reason code, and records the result
- Blocking cancellation in the ERP once the permitted window has passed, and guiding users to raise a credit note instead
- Linking any associated e-way bill, which has its own cancellation rules
- Preventing an invoice from being cancelled in the ERP while its IRN remains active on the IRP, so books and portal don't diverge
E-way bill generation from the IRN
When goods move, an e-way bill is often required alongside the e-invoice. An e-way bill has Part A (document, supplier, recipient, goods and value details) and Part B (transport details such as vehicle number).
With e-invoicing, Part A can be filled from the invoice data already registered on the IRP. If transporter or vehicle details are included in the e-invoice request, the e-way bill can be generated in the same step. If they aren't known at invoicing time, the ERP can generate the e-way bill later using the IRN, or update Part B when the vehicle is assigned.
Good ERP integration stores the e-way bill number and validity against the invoice and delivery, prints them on dispatch documents, and supports vehicle updates and extensions from the logistics screen. For a wider view of how this fits with returns and ITC, see our guide to ERP and GST compliance.
Manual vs ERP-automated e-invoicing
| Step | Manual or semi-manual process | ERP-automated process |
|---|---|---|
| Create invoice | In accounting or billing software | In the ERP, from sales order or delivery |
| Prepare e-invoice data | Export to Excel or offline utility, fix formats | Mapped automatically to the schema on save |
| Validate | Discover errors only when the portal rejects the file | Pre-validation in the ERP before submission |
| Submit to IRP | Upload file or key into portal | API call on approval, or in bulk |
| Receive IRN and QR code | Download, copy into invoice, reprint | Stored against the invoice and printed automatically |
| Generate e-way bill | Separate portal login and data entry | From the IRN, from the same screen |
| Cancel or correct | Portal action, then manual update in books | Single action with window checks and audit trail |
| Reconcile with GSTR-1 | Compare portal data with sales register in Excel | Status tracked per invoice; exceptions reported |
Validation and error handling
Most IRP rejections are avoidable. The ERP should catch them before submission rather than leaving users to decode error codes from the portal.
Common causes of rejection include:
- Invalid or inactive buyer GSTIN, or a GSTIN whose state code doesn't match the address
- Missing or invalid HSN codes, or HSN codes that don't match the item type (goods vs services)
- Tax amounts that don't agree with rate and taxable value within the permitted tolerance
- Place of supply inconsistent with the tax type (IGST on an intra-state supply, or the reverse)
- Duplicate document number already registered for that financial year
- Missing mandatory fields for exports or SEZ supplies, such as port code or shipping bill details, where required
- Pin code and state combinations that fail validation
Once submitted, the ERP should track a clear status for each document, such as pending, submitted, registered, failed and cancelled, and show the IRP's error message in plain language next to the invoice. A queue of failed documents with retry after correction is far more manageable than hunting through a log file. It also helps to separate business errors, which need a user to fix data, from technical errors such as a timeout or an expired authentication token, which the system should retry automatically.
Integration architecture options
There are three common ways to connect an ERP to the IRP. The right choice depends on invoice volumes, in-house technical capability and whether the ERP already has a supported connector.
| Option | How it works | Suits | Considerations |
|---|---|---|---|
| Direct API to IRP | ERP calls the IRP's APIs using taxpayer API credentials | Larger taxpayers with IT teams, where direct access is permitted | Handle authentication, encryption, session tokens and schema changes yourself |
| Via GSP or ASP | ERP sends invoice data to a GST Suvidha Provider, which relays to the IRP | Most SMEs and mid-market firms | Simpler API, extra services (GSTIN validation, bulk), but a subscription and a third party in the data path |
| Built-in ERP connector | ERP vendor's module handles e-invoicing through a partner GSP or directly | Businesses using an ERP with a mature India localisation | Least effort; check flexibility for custom fields, print formats and error handling |
Whichever route you choose, a few design principles apply:
- Asynchronous with status. Submit, then update status; don't freeze the invoice screen while waiting for the IRP.
- Idempotency. If a request times out, check whether the IRN was generated before resubmitting, to avoid duplicate-number errors.
- Secure credential storage. API credentials and tokens belong in encrypted configuration, not in scripts or spreadsheets.
- Full request and response logging. Store the payload sent and the signed response received, for audit and troubleshooting.
- Configurable mapping. Schema versions change; keep the field mapping in configuration so updates don't require rewriting the invoicing module.
Our ERP integration services page covers how Aptivix approaches these connections, and why ERP integration matters explains the wider case for connected systems.
A simplified look at the payload
To make the mapping concrete, here is a heavily trimmed example of the kind of data an ERP sends. This is a simplified illustration, not the official schema: field names, structure, mandatory fields and code values must be taken from the current schema published by GSTN. All values are hypothetical.
{
"Version": "1.1",
"TranDtls": { "TaxSch": "GST", "SupTyp": "B2B" },
"DocDtls": { "Typ": "INV", "No": "GGN/25-26/0142", "Dt": "15/07/2026" },
"SellerDtls": { "Gstin": "06XXXXXXXXXXXZX", "Stcd": "06" },
"BuyerDtls": { "Gstin": "09XXXXXXXXXXXZX", "Pos": "09", "Stcd": "09" },
"ItemList": [
{
"SlNo": "1",
"HsnCd": "7306",
"Qty": 100,
"Unit": "NOS",
"AssAmt": 50000,
"GstRt": 18,
"IgstAmt": 9000,
"TotItemVal": 59000
}
],
"ValDtls": { "AssVal": 50000, "IgstVal": 9000, "TotInvVal": 59000 }
}In this hypothetical example, a Haryana (state code 06) supplier bills a buyer in Uttar Pradesh (09), so the place of supply differs from the supplier's state and IGST applies. The ERP derives every one of these values from masters and the transaction, which is why master data quality matters so much.
What to look for in an ERP for e-invoicing
- IRN generation from the invoice screen, individually and in bulk
- Pre-submission validation with clear, field-level error messages
- Status tracking and a failed-documents queue with retry
- Cancellation with window checks, plus credit and debit note e-invoicing
- E-way bill generation from the IRN, Part B updates and extensions
- Configurable print formats with IRN, acknowledgement details and QR code
- Support for multiple GSTINs and their credentials in one system
- Stored request and response logs for audit
- A way to reconcile ERP invoices with what appears in GSTR-1
Getting started
If your team currently prepares e-invoices outside the ERP, start by listing where the time goes: data re-entry, rejections, reprints, or e-way bills. Then fix master data quality, choose an integration route that suits your volumes, and test with real documents in a sandbox before switching over. If you would like help assessing your current setup, you can request a consultation with the Aptivix team.
Frequently asked questions
No. You still create invoices in your own ERP or billing software. The invoice data is then reported to an Invoice Registration Portal, which validates it, generates an Invoice Reference Number and returns a digitally signed invoice and QR code. The IRN and QR code are printed on your invoice. Only a registered invoice is treated as valid for covered businesses.
At the time of writing, an IRN can be cancelled on the IRP only in full and only within a short window after generation, which has been 24 hours. After that, corrections are made through a credit note or debit note, which is itself e-invoiced. The same invoice number can't be reused after cancellation. Check the current rules before relying on this.
Not always. Eligible taxpayers can use direct API access to the IRP, but they must then manage authentication, encryption, token handling and schema changes themselves. Many SMEs and mid-sized businesses find a GST Suvidha Provider simpler, as it offers a stable API and extra services. Some ERPs include a ready connector that uses one of these routes.
Yes. If transporter or vehicle details are included in the e-invoice request, the e-way bill can be generated in the same step using the invoice data. If transport details aren't known at invoicing time, the ERP can generate the e-way bill later from the IRN, or update Part B when a vehicle is assigned.
Most rejections trace back to master data: invalid or inactive buyer GSTINs, state codes and pin codes that don't match, missing or incorrect HSN codes, tax amounts that don't reconcile with the rate, and duplicate document numbers. Validating customer and item masters in the ERP before invoices are raised prevents most of these errors from recurring.
Written by
Aptivix Technologies
The ERP team at Aptivix Technologies implements, customizes, integrates and builds ERP systems for growing businesses across India.



