How to Generate an E-Way Bill in TallyPrime
Setting up e-way bill in TallyPrime, generating from a voucher, and clearing the validation errors Tally reports back from the portal.
To generate an e-way bill in TallyPrime you enable the feature once in F11, register Tally as your GSP on the e-way bill portal to get API credentials, and then generate the bill straight from the sales voucher as you save it. Tally sends the invoice to the e-way bill system, writes the e-way bill number and validity back into the voucher, and shows you a plain-language error if the portal rejects it. There is also an offline route — export a JSON file and upload it on the portal — for anyone who cannot or will not let the accounting machine talk to the internet.
What TallyPrime actually does for you
It helps to be clear about where the boundary sits. The e-way bill is issued by the National Informatics Centre's e-way bill system at ewaybillgst.gov.in. TallyPrime is a client of that system: it assembles the payload from your voucher and masters, sends it, and stores what comes back. Nothing about the underlying rules changes because you are using Tally — the threshold, the validity clock, the Part A and Part B split and the cancellation window are all identical to what you would face keying it in by hand on the portal.
What you gain is that the data is entered once. The consignment value, GSTINs, HSN codes, place of supply and item lines all come from the voucher you were going to record anyway, which removes the single largest cause of e-way bill mismatches: someone retyping an invoice into the portal and getting a digit wrong. If you are new to the rules themselves rather than to Tally, start with when an e-way bill is required and the value limits, then come back here for the mechanics.
Enabling e-way bill in F11 features
E-way bill lives inside the GST feature set, so GST has to be enabled on the company first. From the Gateway of Tally press F11 for Company Features, set Enable Goods and Services Tax (GST) to Yes, and open the GST Details screen. Inside it you will find the e-way bill block:
- e-Way Bill applicable — set to Yes. Everything else in the block is hidden until you do.
- Applicable from — the date from which Tally should start prompting. Backdating this to a date before your oldest open voucher is usually what you want, so historic invoices appear in the pending report.
- Threshold limit — the invoice value above which Tally raises the prompt. The commonly applied central figure is a consignment value above ₹50,000.
- Threshold limit includes — whether the threshold is measured on taxable goods only, or taxable and exempt goods together. This affects mixed invoices, so pick deliberately rather than accepting the default.
- Applicable for intrastate — a separate switch with its own threshold, because a number of states set a higher limit for movement wholly inside the state. Get this wrong and Tally will either nag you on every local delivery or stay silent when it should not.
One more setting matters even though it is not in the e-way bill block: your company's own GSTIN, state and pin code in the company GST details, and the same three fields on every party ledger. The portal validates all of them. A party ledger carrying a state of Maharashtra and a Gujarat pin code will pass Tally's own checks and fail at the portal every single time.
Registering Tally as your GSP on the portal
Online generation does not use your ordinary e-way bill portal username. You have to create a dedicated API user and tell the portal which GSP is allowed to act on your behalf. On ewaybillgst.gov.in, log in with your normal credentials, find the registration option for GSP or API access, choose Tally from the list of registered GSPs, and create a username and password for that connection. Note them somewhere sensible — Tally will ask for them the first time you send a request in a session, and again whenever the session lapses.
Two practical points. First, the API user is per GSTIN, so a multi-branch business with several registrations needs to repeat the exercise for each one. Second, if you later move off Tally or add a second software, you can have more than one GSP mapped; adding Tally does not lock you out of anything else. If the login fails with an invalid-credentials message, it is almost always because someone is typing the main portal password rather than the API password.
Generating from the invoice voucher
With the feature on and credentials in hand, the day-to-day flow is short. Record the sales voucher as you normally would. When you accept it, and the invoice value crosses the threshold you configured, Tally presents the e-way bill details screen. Fill in:
- Document type and sub-type — supply, export, job work, and so on. This drives which fields the portal expects.
- Distance — the approximate road distance in kilometres between dispatch and delivery pin codes. This is what determines how long the bill stays valid; see how validity is calculated from distance if you are not sure what to enter.
- Mode of transport — road, rail, air or ship.
- Transporter ID or transporter name — needed when the goods move by a third-party transporter and you do not yet have a vehicle number.
- Vehicle number and vehicle type — regular or over-dimensional cargo. Leave these blank if the vehicle is not assigned yet; you can add them later as a Part B update.
Then choose to send the details. Tally opens a connection, prompts for the API login if the session is not live, and posts the request. On success it writes the e-way bill number, the generation date and the validity back onto the voucher, so a reprint of the invoice can carry the e-way bill number on the face of it. On failure it holds the transaction in the e-way bill report with the portal's message attached.
You do not have to do this one voucher at a time. The e-way bill report lists everything pending, and you can select a batch and send them together — which is how most businesses actually work, generating in a run at the end of the dispatch cycle rather than interrupting invoice entry.
If you want to run that check against your Tally party masters programmatically rather than by hand, the request is a single call per GSTIN:
curl -H "x-api-key: YOUR_API_KEY" \
https://gstinapi.com/api/get-taxpayer-info/27AAACR5055K1Z7
The offline JSON export route
Plenty of Tally installations sit on machines with no internet access, or in businesses whose policy is that the accounting server does not make outbound calls. For those, the offline route does the same job in two hops.
From the e-way bill report, select the transactions you want and export them. Choose the e-way bill JSON format rather than Excel or PDF — the portal only accepts the JSON schema. Tally writes a file to your export folder. Move it to a machine with internet access, log in to the e-way bill portal, and use the bulk generation option to upload it. The portal processes the file and gives you back the generated e-way bill numbers, plus a list of any rows it refused.
The step people skip is the third one: bringing the numbers back. Download the portal's response file and import it into Tally through the e-way bill import option, and Tally matches each row to its voucher by document number and stamps the e-way bill number and validity onto it. Skip this and your books have no record of which invoice carries which e-way bill, which makes any later reconciliation or audit query painful.
| Aspect | Online from voucher | Offline JSON |
|---|---|---|
| Setup needed | API credentials with Tally registered as GSP | None beyond enabling the feature |
| Where the number comes from | Returned into the voucher automatically | Imported back from the portal response file |
| Error feedback | Immediate, per transaction, inside Tally | After upload, in the portal's response file |
| Suits | Regular dispatch volume, connected machine | Air-gapped accounting machines, occasional batches |
| Cancellation | Can be done from within Tally | Done on the portal |
The rejection messages Tally surfaces
When a request fails, Tally does not invent an error — it shows you what the e-way bill system said. The report separates transactions that Tally itself could not build a valid payload for (missing HSN, no pin code, incomplete party details) from those the portal actively refused. The first group you fix in the masters or the voucher; the second usually means a data mismatch with what the government already holds.
| What you see | Usual cause | Where to fix it |
|---|---|---|
| Invalid or inactive GSTIN | Buyer or transporter registration is cancelled, suspended, or the number was mistyped | Party ledger — verify the GSTIN before correcting |
| Pin code does not belong to the state | Address state and pin code disagree on the party or company master | Party ledger or company GST details |
| Invalid or missing HSN code | Stock item has no HSN, or one with the wrong number of digits | Stock item or GST rate setup |
| Total value does not match | Invoice total is not equal to assessable value plus tax plus other charges, often due to a rounding-off ledger | Voucher — check the rounding and additional-charge ledgers |
| Invalid vehicle number format | Spaces, hyphens or a non-standard registration pattern | Transport details on the voucher |
| e-way bill already generated for this document | The invoice number was already sent, possibly from the portal directly | Fetch the existing number and link it rather than regenerating |
| Invalid username or password | Main portal credentials used instead of the API user | Re-enter the API credentials created under GSP registration |
The GSTIN-related failures are worth treating as a data quality problem rather than a one-off. A party whose registration was cancelled six months ago will keep failing until someone updates the master, and the same stale record is probably also costing you input tax credit on the purchase side — the mechanism is set out in our note on what a suspended GST status actually means.
Cancelling and updating from Tally
An e-way bill can be cancelled within 24 hours of generation, provided the consignment has not already been verified in transit by an officer. TallyPrime exposes this: open the e-way bill report, find the generated bill, choose the cancel option, and supply a reason such as order cancelled, data entry mistake or goods not moved. Tally sends the cancellation to the portal and updates the voucher, so your books and the portal stay in step.
Two related actions live in the same place. Part B updates let you attach a vehicle number to a bill you generated without one, or record a vehicle change mid-journey — necessary because Part B is what makes the bill valid for movement. Extending validity is available in a narrow window around expiry when a consignment is genuinely delayed in transit; it is not a way to rescue a bill you forgot about last week.
If the 24 hours have gone, cancellation is off the table. The commercial fix is a credit note against the original invoice, which flows through your GSTR-1 in the normal way — see the GSTR-1 filing guide for how amendments and credit notes are reported. Note that the recipient also has a separate right to reject an e-way bill raised against their GSTIN within a limited period, which is a different mechanism from cancellation by the generator.
The combined e-invoice and e-way bill flow
If your turnover puts you inside e-invoicing, the sequence changes in a useful way. The Invoice Registration Portal can generate the e-way bill at the same time as the IRN. In TallyPrime, when e-invoicing is enabled alongside e-way bill, the transport details screen appears as part of the e-invoice submission, and if you complete it the response carries the IRN, the signed QR code and the e-way bill number together. One request, one round trip, no second visit to the e-way bill portal.
The practical caveats:
- You only get the e-way bill back if transport details were supplied. If you had no vehicle at invoicing time, you get Part A only and still have to do a Part B update before the goods move.
- Cancelling an IRN and cancelling an e-way bill are separate acts with different windows. If an e-way bill exists against an IRN, the e-way bill generally has to be dealt with first.
- Whether e-invoicing applies to you at all depends on aggregate turnover, and the threshold has moved several times — check the current position in our note on the e-invoicing turnover threshold rather than assuming.
For businesses below the e-invoicing threshold, none of this applies and the plain e-way bill flow described above is the whole story. For those above it, enabling both features and letting the single combined request do the work is measurably less error-prone than generating an e-invoice in one system and an e-way bill in another, because there is no opportunity for the two documents to disagree about the invoice value.
Frequently asked questions
A note on accuracy. GST rules change often. This article reflects our understanding as of 4 September 2026 and is general information, not tax or legal advice. For the authoritative position, check gst.gov.in and cbic-gst.gov.in, or speak to a qualified tax professional about your specific situation.
Check a GSTIN right now, free
Five lookups a day, no account required. Status, filing history, e-invoicing and jurisdiction.
Free GST search toolBuild it into your product
One REST call, JSON back. Get an API key and 20 free verification credits in under a minute.
Start free