How to change the vehicle number in an e-way bill

Part B holds the vehicle. Who may change it, when the change is refused, what the reason codes mean and the API call that does it.

By gstinapi.in team · Published 29 October 2026 · Last reviewed 29 October 2026

What Part B is, and who can update it

An e-way bill has two parts. Part A carries the details of the goods and the parties, and Part B carries the vehicle. The e-way bill system’s API documentation calls the vehicle change “Update Part B” and names its action VEHEWB.

Under the system’s validations, Part B can be updated by the generator of the e-way bill if no transporter is assigned, or by the assigned transporter. It can be updated only while the e-way bill is active, meaning not cancelled, and within its validity period.

Sources: E-way bill system API: Update Part B (vehicle number update), validations

Road, rail, air or ship, and the vehicle number formats

For road transport the vehicle number must be passed and the transport document number is optional. For rail, air or ship the transport document number is required.

The system checks the format of the vehicle number. Its master code list gives these valid formats:

  • Standard registrations such as AB121234, AB12A1234, AB12AB1234, ABC1234, AB123A1234 and AB12ABC1234, where the first two characters are the state code.
  • Defence vehicles: DF followed by further characters.
  • Temporary registrations: TM followed by further characters, at least 7 characters in all.
  • Bhutan (BP) and Nepal (NP) vehicles: at least 7 characters in all.

Sources: E-way bill system: master codes list (valid vehicle number formats)

The four reason codes

A reason code is required with every vehicle update. These are the e-way bill system’s own codes:

CodeMeaning in the master listIn plain words
1Due to Break DownThe vehicle failed on the way
2Due to TransshipmentThe goods were moved to another vehicle on the way
3Others (please specify)Anything else; say what in the remark
4First TimeThe first vehicle entry for this e-way bill

The same four codes are used when a consolidated e-way bill is regenerated.

Sources: E-way bill system: master codes list (reason codes for vehicle update)

Doing it through the API

POST /v1/ewaybill/update-vehicle takes the e-way bill number, the new vehicle_no, from_place, from_state and reason_code, and optionally reason_remark, trans_mode and the transport document fields. The API username and password for the GSTIN are sent with the request and are not stored.

It costs 3 credits on a successful update. A refused request, such as an unknown e-way bill number, costs nothing, and "test_mode": true returns a sample response for free.

When the update is refused

  • The e-way bill is cancelled or expired. Part B can only be updated on an active e-way bill within its validity. Extending the validity is a separate request with its own window.
  • You are not the generator or the assigned transporter. Once a transporter is assigned, the generator can no longer update Part B.
  • The vehicle number is not in a valid format.
  • The e-way bill number is not visible to your GSTIN. In live use an unknown number answers “Invalid eway bill number” (code 301) and a number you cannot read answers “Could not retrieve data” (code 325).

Frequently asked questions

Who can change the vehicle on an e-way bill?

The generator of the e-way bill if no transporter is assigned, or the assigned transporter.

Can I change the vehicle number after the e-way bill has expired?

No. Part B can be updated only while the e-way bill is within its validity period. If the goods are still moving, extend the validity first: that is a separate request with its own window around the expiry time.

Does changing the vehicle extend the validity?

Not by itself. Extending the validity is a separate request with its own rules. The vehicle update returns the update time and the e-way bill’s valid-until date.

Which reason code should I use?

Pick from the system’s four codes: 1 Break Down, 2 Transshipment, 3 Others (add a remark) or 4 First Time.

What does it cost on gstinapi.in?

3 credits on a successful update. A refused request costs nothing, and test_mode is always free.

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