9 min read

Warehouses & Product Shipping Setup

Add pickup addresses, understand multi-warehouse and vendor setups, and set accurate product weight and dimensions.

Before you can ship anything, the platform needs to know where it is shipping from, and how big and heavy each parcel will be.

Adding a warehouse

Go to Shipment → Warehouses and click + Add Warehouse.

FieldWhat to enter
NameA label you'll recognise — e.g. "Mumbai Hub", "Main Office", "Delhi Warehouse"
Address line 1Street address (door number, building name, street)
Address line 2Area or locality (optional but helpful for couriers)
CityCity name
StateSelect from the dropdown
PincodeSix-digit postal code — critical for rate calculations
Contact nameThe person the courier agent will ask for at pickup
Contact phoneMobile number — the courier calls this if they have trouble locating you
Contact emailFor pickup confirmation emails from the courier

Click Save. The warehouse appears in your list immediately and is available to assign to products.

“No active shipping provider configured” error on Save

A warehouse can't be added at all until at least one shipping provider is connected — the backend rejects the save with this exact message. The error banner in the Add Warehouse dialog shows a Connect a provider action alongside it, which takes you straight to the Shiprocket plugin page. Connect a provider first, then come back and save the warehouse.

This name already exists

Shiprocket's pickup-location names must be unique on your carrier account, not just inside BillionBiz. Saving a name that already exists there goes one of two ways:

  • The existing pickup is still active on Shiprocket (common if you deleted the warehouse here before, then re-added it under the same name) — BillionBiz automatically links to it instead of failing, updates its details to match what you entered, and shows a distinct toast naming the warehouse and confirming it was linked and updated. No error, no extra step; the warehouse is usable immediately.
  • The existing pickup is inactive/deleted on Shiprocket's side — saving fails with a name-conflict error showing the carrier's exact message. Either log in to shiprocket.in and reactivate/rename that address, or pick a different, more specific name here (e.g. "Mumbai Hub 2" instead of "Mumbai Hub").

Why the pincode matters

The warehouse pincode is used to calculate shipping rates. When a customer sees "₹86.10 shipping", that rate was calculated as the distance between your warehouse pincode and the customer's delivery pincode. An incorrect pincode means wrong rates — you either overcharge customers (hurting conversions) or undercharge and absorb the difference yourself.

Multiple warehouses

You can have as many warehouses as you need — one in Mumbai, one in Delhi, one in Bangalore. Each is an independent pickup address with its own contact details. When you assign products to specific warehouses, the platform uses the correct origin when calculating shipping rates and booking pickups.

If you're a marketplace operator, each vendor manages their own warehouses from their Vendor Dashboard — see Multi-vendor shipping.

Registering with your shipping provider

Newly added warehouses need to be known to your shipping provider as valid pickup locations. BillionBiz handles this automatically — the first time a shipment is booked from a new warehouse, it's registered with Shiprocket behind the scenes, no manual step needed.

If you want to register a warehouse manually (for example, to confirm it before booking the first shipment), click Register with Shiprocket on the warehouse card. If it succeeds and Shiprocket confirms the pickup is live, you'll see a success confirmation. If it doesn't, the toast now shows the carrier's real reason instead of a generic failure message — for example "Registration failed: Address name already exists and is inactive" — so you know exactly what to fix without having to open the warehouse card first.

Reading the warehouse status chip

Every warehouse card shows a status chip that tells you whether it's actually usable for booking:

ChipWhat it means
ActiveRegistered with the carrier and confirmed present in the carrier's own live pickup-location list — bookings from this warehouse will succeed. BillionBiz checks the carrier's live list before stamping a warehouse Active, not just the registration call's own success response, so a warehouse never shows Active based on a false positive from the carrier.
PendingOne of two things: registration is still in progress or Shiprocket is waiting on an OTP/IVR call to your contact phone to confirm the address (Shiprocket requires this for new addresses) — no action needed yet; or the carrier accepted the registration call but the pickup isn't yet confirmed in Shiprocket's live list (shown with a note like "Pickup registered but not yet confirmed in carrier pickup list"). The second case does not get auto-retried — only a genuinely failed registration is retried automatically (see below). If a warehouse sits on Pending for longer than the OTP/IVR step should reasonably take, click Register with Shiprocket again to re-check it against the live list.
Registration failedThe carrier rejected this pickup location. The card shows the carrier's exact error message underneath the chip, plus a line explaining that bookings will keep failing until it's fixed. Read the error text first — it almost always tells you exactly what's wrong (see Troubleshooting & FAQ for the common causes, retry cadence, and when to retry manually).
Not registeredNo registration attempt has happened yet for this pickup location — this is expected for a brand-new warehouse before its first booking attempt.

A warehouse with no chip at all means your store hasn't been migrated to carrier-status tracking yet — this doesn't affect booking, it's purely a display detail on older stores.

Default warehouse — the one that actually gets used

Only the default warehouse is used for booking

If you have more than one warehouse, shipments are only ever booked from the default one — not "whichever warehouse looks Active" and not the warehouse assigned on the product. Adding a second, healthy warehouse does nothing for your bookings until you explicitly make it the default. This is the single most common cause of "I fixed my warehouse but shipments are still failing."

The warehouse currently used for booking shows a green Default badge next to its name. Every other warehouse shows a Set as default button. Click it to promote that warehouse — the switch takes effect immediately (the list refreshes to confirm which warehouse is now marked Default), and all future bookings use it as the pickup origin.

There is always exactly one default at the store level. If you're troubleshooting a warehouse that shows Active but bookings are still failing (or still show the old address on the label), check first whether it's actually the Default — a healthy, non-default warehouse is invisible to booking.

Setting up products for shipping

Accurate product information leads to accurate shipping rates. Two things matter most: weight and dimensions.

Weight

When you create or edit a product, open the Fulfillment & Shipping section. Enter the packed weight in the Weight (grams) field — the weight of the product plus its packaging, ready to ship. If you leave it empty, the platform uses your store-level default packaging weight from the Shiprocket preferences (typically 500g).

Dimensions (length, width, height)

Below the weight field are three fields — Length, Width, Height — all in centimetres, representing the outer dimensions of the packed box.

Why dimensions matter. Couriers charge based on whichever is greater: the actual weight or the volumetric weight (length × width × height ÷ 5000). A lightweight but bulky product — like a decorative lamp or a large soft toy — can cost more to ship than its actual weight suggests. Accurate dimensions ensure you're quoted the correct rate at checkout and avoid surprises on your shipping bill.

Dimension fallback order

  • Per-variant dimensions (set on the specific variant being ordered)
  • Product-level dimensions (if no variant-specific dimensions are set)
  • Store-level default packaging dimensions from Shiprocket preferences

Set your store defaults under Extensions → Plugins → Shiprocket → Shipping Preferences so every product has a meaningful fallback even if individual dimensions aren't filled in.

Multi-variant products

Each variant (e.g. different T-shirt sizes or packaging sizes) can have its own dimensions. A 500ml bottle ships differently than a 5L jug — setting per-variant dimensions for products like these prevents systematic overcharging or undercharging.

Assigning a product to a warehouse

Open the product, go to Fulfillment & Shipping, and find the Warehouse dropdown. Select the warehouse where this product is stocked. If the product has variants (e.g. sizes S/M/L/XL), you can assign a different warehouse to each variant — useful when different sizes or colours are stocked at different locations.

Common mistake

If you add a new warehouse and then book a shipment, but the booking still shows the old warehouse as origin — check that the product's warehouse assignment has been updated. The shipment uses the warehouse set on the product, not the most recently created warehouse.

Fulfillment provider

Choose how each product is fulfilled:

  • Fulfilled by yourself — you pack and ship from your own warehouse. Default for most merchants.
  • Fulfilled by Shiprocket SmartShip — Shiprocket stores your inventory in their fulfillment centres and handles packing, shipping, and returns. Ideal if you want to outsource the entire logistics operation.

Next steps