Skip to content

e-Way Bill Failures

Applies to: e-Way Bill · Which modules do I have?

Purpose

Diagnose e-Way Bill problems, and separate a fixable fault from a statutory constraint — a distinction that matters more here than anywhere else in the product, because goods may be in transit while the question is being asked.

Audience

Support teams, logistics operations, administrators.

Prerequisites

  • The bill number or document number, and the exact message
  • NIC Error Codes

Steps

The decision tree

  An e-Way Bill problem
        |
        v
  What is the situation?
        |
        +-- Cannot generate ----------> Path A
        |
        +-- Generated, goods stopped -> Path B  (usually Part-B)
        |
        +-- Expired ------------------> Path C
        |
        +-- Extension refused --------> Path D
        |
        +-- Cannot cancel ------------> Path E
        |
        +-- Consolidated or
            multi-vehicle unavailable-> Path F  (usually capability)

Path A — cannot generate

Step Action
Symptoms Generation fails or the option is unavailable
Root cause Missing data, an unregistered source document, provider connectivity, or capability
Checks 1. If generating from a reference number, is the document registered? 2. Are transport details complete? 3. Is the distance sensible? 4. Does the connection test pass? 5. Is the operation supported for this provider?
Resolution Complete the missing data, restore connectivity, or use the alternative for an unsupported operation
Validation A bill is issued with a validity period
Escalate when All checks pass and generation still fails

An unusually short or long validity almost always means the distance is wrong — commonly a wrong postal code.

"We could not confirm whether this e-way bill was issued" (EWB_IN_DOUBT)

Do not generate it again, and do not tell the customer it failed. The request was sent and the answer did not come back (a timeout, a dropped connection, or a provider error that does not say whether NIC acted). The bill may exist.

Step Action
Checks 1. Refresh the e-Way Bill Dashboard: a late answer often shows up there. 2. If goods are already moving, check the e-way bill portal directly: a consignment must not travel without a valid bill. 3. If it is still absent after a few minutes, confirm with NIC through the provider, quoting the document number
Resolution If the bill exists, nothing more is needed. If it does not, generate it again
Why it is not retried automatically A request that never left (no connection at all, or the provider's "busy" or "unavailable") is retried, a few times, with the same content. A request that may have left is not, because a repeat could register a second bill, or be refused as a duplicate and make a document that already has a live bill look failed
Escalate when The bill cannot be confirmed either way, or many documents are in doubt at once (a provider or NIC outage)

The document is recorded as failed, with this code, a Critical event naming the document, and no failure sent to a connected ERP. If the bill was issued but could not be saved (a database fault at that moment), a Critical EWB_PERSIST_FAILED event carries the bill number so it can be recovered; look for it first.

"An e-way bill is already being generated for this document" (EWB_GENERATION_IN_PROGRESS)

Someone, or a bulk job, is generating it now. Nothing was sent and nothing was changed. Wait a few seconds and refresh. A generation stuck for more than five minutes is released automatically; if the message persists after that, escalate.

When generation fails with "EWB Document Validation Failed", the specific reason follows the colon — for example "EWB Document Validation Failed: TransDistance must be between 1 and 4000 km." — in both the error notification and the Job Spool Report for that job. A validation failure can list more than one reason, separated by semicolons; fix all of them.

Path B — generated, but goods were stopped

Step Action
Symptoms A bill exists, but the movement was challenged
Root cause Almost always Part-B is not completed. A bill without vehicle details is not valid for movement
Checks Does the bill have Part-B? Does the vehicle match? Is it still within validity? Is it cancelled or rejected?
Resolution Complete Part-B before the vehicle leaves
Validation Part-B is recorded and the bill is valid for movement
Escalate when Part-B is present and correct and the bill is within validity

This is a process failure, not a software one. Someone must own completing Part-B before the vehicle moves; if nobody owns it, it will recur.

Path C — expired

Step Action
Symptoms Validity has passed while goods are still in transit
Root cause Validity derives from distance; transit exceeded it
Checks When did it expire? Is extension still possible? Was the distance understated?
Resolution Extend if inside the extension window. Otherwise the movement needs a fresh arrangement
Validation Validity is extended, or the alternative is in place
Escalate when Never to Complifly — this is statutory. Route to the logistics and tax leads

Prevention is the real answer: set the expiry alert horizon from actual dispatch and transport lead times, so warnings arrive while action is still possible.

Path D — extension refused

Step Action
Symptoms Extension is unavailable or refused
Root cause Extension is only possible within a window around expiry — not at any time
Checks Is the bill within the extension window? Is a reason supplied? Does the user hold the authority?
Resolution Extend inside the window; outside it, extension is not available
Validation Validity is extended with the reason recorded
Escalate when Inside the window, with authority, and it still fails

Path E — cannot cancel

Step Action
Symptoms Cancellation is unavailable or refused
Root cause The cancellation window has closed, the bill is already cancelled, or the user lacks authority
Checks What is the current status? Is it inside the cancellation window? Does the user hold the authority?
Resolution Cancel inside the window. Outside it, rejection by the other party is the remaining route
Validation The bill shows as cancelled
Escalate when Inside the window, with authority, and it still fails

Path F — consolidated or multi-vehicle unavailable

Step Action
Symptoms The option is absent or refused on capability grounds
Root cause Providers genuinely differ. An operation may be unsupported, or awaiting a vendor endpoint
Checks Check the capability state for the assigned provider
Resolution A temporary state is tracked and will change; a permanent one needs a workaround
Validation The operation completes, or the workaround is agreed
Escalate when The matrix says supported and it still fails

A deliberately disabled operation is not a fault. It is the platform refusing to fabricate a result it cannot obtain, which is preferable to a trip sheet number the government never issued.

What is statutory and cannot be fixed

Constraint Consequence
Validity derives from distance Cannot be set arbitrarily
Part-B is required for movement Not optional
Extension only near expiry Plan around it
Cancellation is time-limited Afterwards, rejection by the other party is the route
Thresholds and intra-state rules Set by statute and by state

Validation

Check Pass condition
The right path was taken Matches the observed symptom
Statutory constraints identified Not escalated to support
Part-B ownership confirmed Somebody owns completing it before dispatch
Alert horizon realistic Set from actual lead times
The fix is verified The bill is valid for movement, or correctly cancelled

Troubleshooting

Symptom Cause Action
Goods stopped despite a valid bill Part-B missing Complete it, and fix the dispatch process so it cannot recur
Validity much shorter than expected Distance understated, usually a wrong postal code Correct the postal codes
"incorrect number of characters/number in PIN code" at NIC A supplier, buyer or ship-to PIN is not exactly 6 digits — often a leading zero dropped by Excel Correct the PIN before generation. Complifly now checks this at load on every channel (val/pincode_format), so a rebuilt/updated deployment catches it first
Bills expiring routinely Alert horizon shorter than real lead times Set it from actual lead times
Extension always refused Attempted outside the window Statutory. Not configurable
Cannot cancel after a customer refusal Cancellation window closed Rejection by the other party is the route
Update or extension fails after a provider switch Old credentials withdrawn too early Restore them while live bills remain
A bill appears from another party They raised it against your registration Review and reject within the window if incorrect
"Ship to details are mandatory for export transactions" — even with a ship-to filled in the Preparer An export ships to a domestic port/CFS whose GSTIN is URP, the same value the overseas buyer carries; the ship-to leg is sent only when the address block is complete (Address 1, Location, PIN, State) Fill every ship-to field in the Bulk E-Way Bill Preparer — a partial address is dropped whole. Leave the ship-to GSTIN as URP. Fixed 2026-09-08 so URP ship-to ≠ URP buyer no longer suppresses the block
"Ship to details are mandatory for export transactions" on a voucher that came from the Complifly Agent The ship-to of an export is the company's export port, not the overseas consignee in Tally, and none was saved. The agent never sends an address from the consignee or the port code Ask Complifly support to save the port (Admin > Compliance Profiles > Export Configuration), then send the voucher again. An export that needs an e-way bill is now held as EXPORT_PORT_NOT_CONFIGURED instead of reaching NIC; one that only needed an IRN was filed with a warning. A document stored before the port was saved keeps its empty ship-to and must be sent again
Consolidated generation unavailable Provider capability Check the matrix; it is not a fault
Nobody acts on expiry alerts Addressed to an individual, or too noisy Use a distribution list; tune the horizon