Shiprocket integration: order push, AWB, tracking and NDR
A Shiprocket integration sends each order from your store or ERP to Shiprocket, gets back a courier and an AWB number, books the pickup, and then keeps your order status current from tracking webhooks. The part that saves money is handling non-delivery reports inside Shiprocket's response window. This guide is written from Shiprocket's API documentation as read on 2 October 2026.
What the integration does
Shiprocket is a shipping aggregator: one account gives access to many courier companies, with one panel for labels, pickups, tracking and cash-on-delivery remittance. Its API exposes most of what the panel does.
An integration removes the copying. Without one, someone exports orders from the store, uploads them to Shiprocket, books pickups, and pastes tracking numbers back. With one, a paid order in your system becomes a shipment by itself, and the customer and your team see where it is without anyone opening the Shiprocket panel.
Data that flows each way
| Event or object | Direction | What your system does with it |
|---|---|---|
Login (POST /auth/login) |
Your server to Shiprocket | Caches the returned token and reuses it |
| Serviceability check (pickup and delivery pincode, weight, COD flag) | Your server to Shiprocket | Shows delivery options or blocks COD for a pincode at checkout |
Order (POST /orders/create/adhoc) |
Your server to Shiprocket | Stores Shiprocket's order_id and shipment_id beside your own order number |
AWB assignment (POST /courier/assign/awb) |
Your server to Shiprocket | Stores the awb_code and courier; shows tracking to the customer |
| Pickup, label, invoice, manifest | Your server to Shiprocket | Saves the documents for the packing team |
Tracking event (awb, current_status, etd, scans) |
Shiprocket to your server (webhook) | Updates order status; triggers customer messages |
NDR list and NDR event (awb, current_status, attempts, reason) |
Shiprocket to your server | Opens a task: call the customer, fix the address, re-attempt or return |
NDR action (POST /ndr/{awb}/action) |
Your server to Shiprocket | Sends the decision back with a re-delivery date |
Return order (POST /orders/create/return) |
Your server to Shiprocket | Books the reverse pickup from the buyer |
The main flow, step by step
- Create an API user in the Shiprocket panel under Settings, then API. It needs an email address different from the account's main login.
- Log in by API to get a bearer token, and send it in the
Authorizationheader on every call. - Check serviceability for the delivery pincode. This step is optional in Shiprocket's lifecycle but is what lets checkout refuse an address no courier serves.
- Create the order with the buyer's address, items, payment method, and package dimensions and weight. Your own order number goes in as
order_id; the response returns Shiprocket's ownorder_idand ashipment_id. They are different numbers. - Assign a courier and generate the AWB for the shipment.
- Generate the pickup, then the label, invoice and manifest.
- Track. Tracking events arrive by webhook; the same data can be fetched by AWB.
- Act on exceptions: NDRs, returns and cancellations.
Limits and rules Shiprocket documents
| Rule | What the documentation says |
|---|---|
| Base URL | https://apiv2.shiprocket.in/v1/external; v1 is the current stable version and v2 is in preview |
| Token life | 240 hours (10 days). There is no refresh call; you log in again. The docs suggest caching the token and renewing on a 401 response |
| Live data | Requests with valid credentials change the real data in your account |
| Webhook setup | Done in the panel (Settings, API, Webhooks); the API has no endpoint for managing webhooks |
| Webhook URL | Must not contain the words shiprocket, kartrocket, sr or kr |
| Webhook security | An optional security token, sent as an x-api-key header |
| Webhook response | Your endpoint should return only HTTP 200 |
| NDR re-attempt date | Must be after today, inside the NDR window, and not a Sunday |
| NDR address change | Phone and address lines can be updated; the pincode cannot |
| NDR response window | The window shown in the dashboard, typically 24 to 48 hours; after it the shipment returns to origin automatically |
| Rate limits | No figure is published in the guides read for this page |
Two points follow from that table. The webhook is protected by a shared token, not a signature computed over the message, so the token has to be long, secret and checked on every request. And because the guides do not describe retries for a webhook your server missed, a scheduled tracking check is part of a sound build, not an extra.
Shiprocket's documentation also notes that its earlier Postman-hosted reference stays available until 30 November 2026. An integration written against old examples should be checked against the current guides.
Common failure modes
- Wrong weight or dimensions. Both are required when the order is created, and courier rates are quoted against them. Guessed values lead to disputes later; they should come from product data.
- Expired token. Everything works for ten days after launch, then every call fails. Token renewal has to be automatic.
- Mixed-up identifiers. Your order number, Shiprocket's order id, the shipment id and the AWB are four different values. Storing only one makes later calls impossible.
- An order pushed twice. A timeout followed by a retry can create a duplicate unless your code first checks whether the order already has a shipment id.
- COD offered where no courier serves it. The serviceability check was skipped at checkout.
- NDRs seen too late. Nobody looked at the panel over a weekend and the parcels came back. NDRs need to reach a person, with the customer's number, on the day they are raised.
- Status that never updates. The webhook URL contained a blocked word, or returned something other than 200.
Fees
As of October 2026, Shiprocket's pricing page lists four plans:
| Plan | Monthly fee | Average shipment cost quoted |
|---|---|---|
| Lite | Free | ₹45 |
| Business | ₹199 | ₹41 |
| Advanced | ₹499 | ₹39 |
| Pro | ₹799 | ₹36 |
The shipment cost is an average that Shiprocket quotes for each plan; the charge for a real parcel is calculated per shipment. The page also describes plan-fee refunds at set monthly shipment counts. Read the page for the current terms before budgeting.
What WavX builds around it
For a client who needs shipping connected to a custom store, an ERP or an order system, WavX builds:
- Automatic order push once an order is paid or confirmed, with a guard against sending the same order twice.
- A serviceability check at checkout, including whether cash on delivery is available.
- Courier choice by your rules, using the couriers, ratings and rates the serviceability call returns.
- Storage of every identifier, label and manifest against the order.
- A tracking receiver plus a scheduled check, feeding the customer's order page and messages through WhatsApp, SMS or email.
- An NDR queue for your support team, with the action sent back to Shiprocket in time.
- Return booking from your admin panel, and a view of shipped, delivered and returned orders for reconciling COD remittance.
This sits inside e-commerce development. If the store is on Shopify, start with Shopify and Shiprocket. For the business side of failed deliveries, read how to reduce COD returns.
Pricing is quoted after scoping. The software cost estimator carries third-party integrations as a ₹60,000 feature line on top of a base build, as a planning figure.
When Shiprocket's own integration is enough
Shiprocket's features page describes ready channel integrations, more than twelve of them, covering Shopify, WooCommerce and marketplaces such as Amazon, which fetch orders and sync inventory automatically. If you sell on one of those and ship every order the same way, connect the channel in the Shiprocket panel and do not commission anything.
Custom integration is for the cases that leaves out: a custom-built store, an ERP that must hold the shipping record, courier rules of your own, or support staff who should handle NDRs without learning another panel.
Frequently asked questions
My store is on Shopify. Do I need a custom Shiprocket integration?
Probably not. Shiprocket has ready channel integrations for Shopify, WooCommerce and marketplaces that fetch orders automatically. Custom work is for a store or system Shiprocket does not connect to, or for rules its channel integration does not offer, such as choosing couriers by your own logic or writing shipping status into an ERP.
Is there a Shiprocket sandbox for testing?
The documentation we read does not describe one. Its usage guidelines say requests made with valid API credentials affect the real-time data in your Shiprocket account, so we plan testing around real test orders that are cancelled before pickup.
What is an NDR and why does it matter?
A non-delivery report is raised when the courier attempts delivery and fails: nobody home, a wrong address, a refusal. Shiprocket's documentation says to respond within the window shown in the dashboard, typically 24 to 48 hours, after which the shipment returns to origin automatically. Each return costs shipping both ways, so acting inside the window is where an integration pays for itself.
How are tracking updates received?
By webhook. You register a URL in the Shiprocket panel and Shiprocket posts a JSON message whenever there is a new tracking event, with the AWB, current status, expected delivery date and the scan history. We also poll the tracking API on a schedule, because the documentation does not describe retries for missed webhook deliveries.
What does it cost?
Shiprocket's plan and courier charges are on its pricing page. Our work is quoted after scoping; for planning, the software cost estimator carries third-party integrations as a ₹60,000 feature line on top of a base build, as a planning figure.
Sources
- Shiprocket support: API document helpsheet · read 2 October 2026
- Shiprocket API docs: Getting started (API user) · read 2 October 2026
- Shiprocket API docs: Authentication · read 2 October 2026
- Shiprocket API docs: Document and API usage guidelines · read 2 October 2026
- Shiprocket API docs: Forward order lifecycle · read 2 October 2026
- Shiprocket API docs: Webhooks · read 2 October 2026
- Shiprocket API docs: NDR workflow · read 2 October 2026
- Shiprocket API docs: Returns workflow · read 2 October 2026
- Shiprocket API docs: Versioning · read 2 October 2026
- Shiprocket pricing · read 2 October 2026
- Shiprocket features: channel integrations · read 2 October 2026
Related
Build your own software — your way, your pricing.
WavX Solutions is here to create your own software in a fully custom way, built exactly how you work — with a pricing model that fits your business. Connect now and let's build it.