Audience: Delivery/Warehouse Ops team, Integration/CS team.
Related incident: Pickup failure
caused by pickup address mapped to the wrong warehouse code on the Delhivery/eShipz side
(Pyrops thread).
1. Why this matters:
Delhivery identifies where a shipment should be picked up using a warehouse code, not the raw
pickup address text. If the pickup address sent in the API request is correct, but the warehouse code
behind that pickup location is mismatched or missing, Delhivery will not be able to schedule the
pickup correctly — even though the address itself is valid.
This was exactly the root cause in the recent Pyrops case:
• The pickup address passed in the API request was correct.
• But the pickup location on the Delivery (Delhivery) platform was mapped to a different
warehouse code than the one eShipz had stored for that same pickup location.
• Result: pickup failure, even though nothing was wrong with the address string itself.
To prevent this from recurring, everyone creating or maintaining pickup locations needs to
understand how eShipz maps pickup addresses to Delhivery warehouse codes.
2. Where this is configured:
eShipz Dashboard → Carrier Settings → Delhivery
On this page there is a field:
Warehouse ID — the Delhivery warehouse code for a given pickup address. This field is what ties a pickup address in eShipz to the correct warehouse record on Delhivery's
system.
Two ways to populate it, depending on the situation:
Option A — Delhivery has already issued a Warehouse ID for this
pickup address
If the Delhivery team has already created and shared a warehouse code for a specific pickup
address:
- Go to Carrier Settings → Delhivery.
- Locate (or add) the pickup address.
- Enter the exact Warehouse ID given by Delhivery in the Warehouse ID field.
- Save.
This ensures eShipz sends shipments under the same warehouse code Delhivery already has on file
— avoiding the "mapped to a different warehouse code" mismatch seen in the incident above.
Option B — No Warehouse ID has been issued yet / new pickup
addresses will be added regularly
If Delhivery has not given a warehouse code yet, or if the business regularly adds new pickup
addresses (new stores, new warehouses, new franchise locations, etc.)
- Go to Carrier Settings → Delhivery.
- Enable the "Allow Multiple Pickup Location" toggle.
- With this enabled, whenever a new pickup address is passed in a shipment request that
eShipz hasn't seen before, eShipz will automatically create a new warehouse for that
address and register the same warehouse on Delhivery's system.
- This new warehouse code is then stored against that pickup address for all future shipments
from that location.
3. Decision guide
Situation 1: What to do
Delhivery has issued a specific Warehouse ID
for a pickup address
Steps to do: Manually enter it in Carrier Settings →
Delhivery → Warehouse ID.
Situation 2: No Warehouse ID issued yet, or new pickup
addresses get added frequently
Steps to do:Enable "Allow Multiple Pickup Location" so
eShipz auto-creates and maps the warehouse
Situation 3: A pickup address already has a Warehouse ID
mapped, but pickups are failing
Steps to do: Do not re-create the address — verify the
mapped Warehouse ID matches what Delhivery
has on file (this was the exact issue in the
Pyrops case).
4. SOP for adding a new pickup / warehouse location (to
prevent recurrence)
- Whenever a new warehouse/pickup location is being set up, the Delivery team should follow this
sequence before live shipment processing begins:
- Confirm with Delhivery whether a Warehouse ID has been assigned for the new address.
- If yes → manually configure it in eShipz Carrier Settings (Option A above). Do not rely on
auto-creation for addresses that already have an assigned code — this causes the mismatch
we just saw.
- If no → ensure "Allow Multiple Pickup Location" is enabled so eShipz can auto-create
and sync the new warehouse on first shipment.
- Create a test order using the new pickup address.
- Verify in the eShipz dashboard that:
• The correct pickup address is reflected on the shipment.
• The Warehouse ID attached to that shipment matches what Delhivery expects.
- Only after this test order is confirmed successful should regular shipment processing begin
from that pickup location.
5. Quick troubleshooting checklist (pickup failures)
- Is the pickup address in the API request correct? (Usually yes — this is rarely the actual
cause)
- Does the pickup address have a Warehouse ID configured in Carrier Settings →
Delhivery?
- Does that Warehouse ID match the one Delhivery has on record for this address?
(mismatches here are the most common root cause)
- If this is a brand-new address, is "Allow Multiple Pickup Location" enabled, or was a
Warehouse ID manually entered?
- Was a test order run and confirmed successful after any warehouse mapping change?
6. Key takeaway
The pickup address text itself is rarely the problem. Pickup failures almost always trace back to
the warehouse code mapping behind that address being wrong, missing, or mismatched between
eShipz and Delhivery. Always verify the Warehouse ID mapping first when troubleshooting a
pickup issue.