Cancelling an e-way bill
Under the e-way bill system’s validations, an e-way bill can be cancelled by the generator of the e-way bill only, and within 24 hours of its generation.
After that the system answers error 728. In live use its message words the limit as 24 hours “from Part B entry”, while the documented rule says generation, so do not count on a late cancellation working. If you create e-way bills while testing, cancel them in the same session.
Sources: E-way bill system API: Cancel e-way bill, validations
Cancelling an e-invoice (IRN)
- The IRN can be cancelled within 24 hours of its generation.
- It cannot be cancelled if a valid, active e-way bill exists for the same invoice.
- The cancellation can be done by active or suspended taxpayers.
The reason codes do not match
Both cancellations take a one-digit reason code, but the meanings of 2 and 3 are swapped:
| Code | E-way bill cancellation | E-invoice (IRN) cancellation |
|---|---|---|
| 1 | Duplicate | Duplicate |
| 2 | Order Cancelled | Data entry mistake |
| 3 | Data Entry mistake | Order Cancelled |
| 4 | Others | Others |
The IRN cancellation also takes a remark of up to 100 characters. A lookup table shared between the two will mislabel half of the cancellations, and nothing will report an error.
Sources: E-way bill system: master codes list (cancellation reason codes) · E-invoice system API: Cancel IRN, request schema
Which one to cancel first
Because an IRN cannot be cancelled while a valid e-way bill exists for the invoice, an invoice that has both is cancelled in two steps: the e-way bill first, then the IRN.
Each window runs from its own start, so the practical deadline is the end of the IRN’s 24 hours. The e-way bill has to be cancelled, and then the IRN, before that.
If the e-way bill is already past its 24 hours and still valid, the two rules together mean the IRN cannot be cancelled either. This is a combination of the two documented rules, not a case the system’s pages discuss. As far as we know the invoice is then corrected another way, such as a credit note, which is an accounting step rather than an API call.
Through the API
POST /v1/ewaybill/cancel takes ewaybill_no, cancel_reason_code and cancel_remark, with the e-way bill API username and password. POST /v1/einvoice/cancel takes irn, cancel_reason and cancel_remark, with the e-invoice API username and password.
The two portals have separate API users, even for the same GSTIN. Each call costs 3 credits on success. A refused request costs nothing, and "test_mode": true returns a sample response for free.
Frequently asked questions
How long do I have to cancel an e-way bill?
24 hours from its generation, and only the generator can do it.
Can I cancel an e-invoice after 24 hours?
No. The IRN can be cancelled only within 24 hours of its generation. After that the invoice has to be corrected another way, as far as we know with a credit note, which is an accounting step.
Why is my IRN cancellation refused?
The two documented causes are that the 24 hours have passed, or that a valid e-way bill still exists for the invoice. If the e-way bill is still within its own window, cancel it first.
Are the cancel reason codes the same for both?
No. 1 (Duplicate) and 4 (Others) match, but 2 and 3 are swapped between the e-way bill and the e-invoice code lists.
Who can cancel?
An e-way bill can be cancelled by its generator only. An IRN can be cancelled by an active or suspended taxpayer.
More from the blog
Try it on a real GSTIN
Up to 75 free lookups: 10 on signup and 65 more across three setup steps. No card, and they never expire.
Create a free account