Shiprocket Node

Create orders, generate AWBs, request pickups, track shipments, manage returns, and check courier rates — all via Shiprocket's API. The essential node for any Indian D2C store automating its logistics pipeline.

Prerequisites

  • A Shiprocket account at shiprocket.in
  • Your Shiprocket login email and password (used for JWT authentication)
  • At least one pickup location (warehouse) set up in Shiprocket
Nodebase automatically manages JWT token renewal for every workflow execution. You only need to provide email and password once.

Credentials

FieldDescriptionWhere to find it
EmailYour Shiprocket account emailThe email you use to log in to shiprocket.in
PasswordYour Shiprocket account passwordThe password you use to log in to shiprocket.in

Operations

Create Order

Create a new forward shipment order in Shiprocket. Returns an order ID, shipment ID, and AWB code.

NameTypeRequiredDefaultDescription
orderIdstringYesYour internal order ID, e.g. SHP-001 or Razorpay payment ID
orderDatestringYesDate in YYYY-MM-DD HH:mm format
pickupLocationstringYesWarehouse name exactly as set up in Shiprocket
billingNamestringYesCustomer full name
billingAddressstringYesStreet address line 1
billingCitystringYesCity name
billingStatestringYesState name
billingPincodestringYes6-digit PIN code
billingEmailstringYesCustomer email
billingPhonestringYesCustomer phone (10 digits)
orderItemsJSON arrayYes[{"name":"T-Shirt","sku":"TS-M","units":1,"selling_price":499,"discount":0,"tax":0,"hsn":""}]
paymentMethodstringYes"prepaid" or "cod"
subTotalnumberYesOrder total in rupees (not paise)
lengthnumberYesPackage length in cm
breadthnumberYesPackage breadth in cm
heightnumberYesPackage height in cm
weightnumberYesPackage weight in kg
shippingIsBillingbooleanNotrueIf false, separate shipping address fields appear
codAmountnumberNoCOD amount in rupees — required if paymentMethod is cod
channelIdstringNoShiprocket channel ID if using multi-channel setup
jsonOutput
{
  "shiprocket": {
    "order_id": 98765432,
    "shipment_id": 12345678,
    "status": "NEW",
    "awb_code": "1234567890123",
    "courier_name": "BlueDart"
  }
}
textExample — triggered by Razorpay payment
Razorpay Trigger (payment.captured)
→ Shiprocket — Create Order
    orderId:        {{razorpayTrigger.payload.payment.entity.id}}
    orderDate:      {{razorpayTrigger.receivedAt}}
    pickupLocation: Mumbai Warehouse
    billingName:    {{razorpayTrigger.payload.payment.entity.notes.name}}
    billingPhone:   {{razorpayTrigger.payload.payment.entity.contact}}
    billingEmail:   {{razorpayTrigger.payload.payment.entity.email}}
    billingPincode: {{razorpayTrigger.payload.payment.entity.notes.pincode}}
    billingCity:    {{razorpayTrigger.payload.payment.entity.notes.city}}
    billingState:   {{razorpayTrigger.payload.payment.entity.notes.state}}
    billingAddress: {{razorpayTrigger.payload.payment.entity.notes.address}}
    paymentMethod:  prepaid
    subTotal:       {{razorpayTrigger.payload.payment.entity.amount}}
    orderItems:     [{"name":"T-Shirt","sku":"TS-M","units":1,"selling_price":499}]
    length:         30
    breadth:        25
    height:         5
    weight:         0.5

Get Order

Fetch full details of a Shiprocket order by its ID.

NameTypeRequiredDefaultDescription
shiprocketOrderIdstringYesShiprocket order ID — use {{shiprocket.order_id}}

Cancel Order

Cancel a Shiprocket order before pickup.

NameTypeRequiredDefaultDescription
shiprocketOrderIdstringYesShiprocket order ID
cancelReasonstringYesReason for cancellation

Generate AWB

Assign a courier and generate an AWB (Air Waybill) number for a shipment. Leave courier ID blank for auto-assignment.

NameTypeRequiredDefaultDescription
shipmentIdstringYesShipment ID from Create Order — {{shiprocket.shipment_id}}
courierIdstringNoLeave blank for Shiprocket to auto-select best courier
jsonOutput
{
  "shiprocket": {
    "awb_code": "1234567890123",
    "courier_name": "Delhivery",
    "shipment_id": 12345678
  }
}

Generate Label

Generate a shipping label PDF for a shipment. Use the returned URL to download or email it.

NameTypeRequiredDefaultDescription
shipmentIdstringYesShipment ID — {{shiprocket.shipment_id}}
jsonOutput
{
  "shiprocket": {
    "label_url": "https://shiprocket.co/labels/abc123.pdf"
  }
}

Request Pickup

Schedule a courier pickup for a shipment.

NameTypeRequiredDefaultDescription
shipmentIdstringYesShipment ID — {{shiprocket.shipment_id}}
jsonOutput
{
  "shiprocket": {
    "pickup_scheduled_date": "2026-04-02",
    "status": "Pickup Scheduled"
  }
}

Track Shipment

Get live tracking status and activity history for a shipment using its AWB code.

NameTypeRequiredDefaultDescription
awbCodestringYesAWB code — {{shiprocket.awb_code}}
jsonOutput
{
  "shiprocket": {
    "tracking_data": { "etd": "2026-04-04", "courier": "Delhivery" },
    "current_status": "In Transit",
    "shipment_track": [
      { "date": "2026-04-01 14:00", "activity": "Shipment picked up" },
      { "date": "2026-04-02 08:00", "activity": "In transit - Delhi Hub" }
    ]
  }
}

Get Order Tracking

Fetch tracking data using a Shiprocket order ID.

NameTypeRequiredDefaultDescription
shiprocketOrderIdstringYesShiprocket order ID — {{shiprocket.order_id}}

Check Serviceability

Check if a delivery PIN code is serviceable from a pickup PIN code.

NameTypeRequiredDefaultDescription
pickupPostcodestringYesWarehouse PIN code
deliveryPostcodestringYesCustomer PIN code
jsonOutput
{
  "shiprocket": {
    "serviceable": true,
    "data": {
      "available_courier_companies": [
        { "courier_name": "Delhivery", "rate": 45, "etd": "3 Days" }
      ]
    }
  }
}

Get Rate

Compare shipping rates and ETD across all available couriers for a shipment.

NameTypeRequiredDefaultDescription
pickupPostcodestringYesWarehouse PIN code
deliveryPostcodestringYesCustomer PIN code
weightnumberYesPackage weight in kg
codbooleanNofalseSet to true for COD shipments

Create Return

Create a return shipment for an existing order.

NameTypeRequiredDefaultDescription
shiprocketOrderIdstringYesOriginal Shiprocket order ID
orderItemsJSON arrayYesItems being returned
billingNamestringYesCustomer name
billingPhonestringYesCustomer phone
billingAddressstringYesPickup address for return
billingPincodestringYesCustomer PIN code

Get Pickup Locations

List all warehouse / pickup locations configured in your Shiprocket account.

jsonOutput
{
  "shiprocket": {
    "shipping_address": [
      { "pickup_location": "Mumbai Warehouse", "pin_code": "400001" }
    ]
  }
}

Complete Workflow Examples

Full Post-Payment Fulfilment Pipeline

Use case: After Razorpay payment, create order in Shiprocket, generate AWB, request pickup, and notify customer.

textWorkflow
Razorpay Trigger (payment.captured)
→ Shiprocket — Create Order
    orderId:      {{razorpayTrigger.payload.payment.entity.id}}
    billingPhone: {{razorpayTrigger.payload.payment.entity.contact}}
    paymentMethod: prepaid
    ...
→ Shiprocket — Generate AWB
    shipmentId: {{shiprocket.shipment_id}}
→ Shiprocket — Request Pickup
    shipmentId: {{shiprocket.shipment_id}}
→ WhatsApp — Send Message
    to:      {{razorpayTrigger.payload.payment.entity.contact}}
    message: "Order confirmed! Tracking ID: {{shiprocket.awb_code}}
              Expected delivery: 3-5 business days."

WhatsApp Tracking Bot

Use case: Customer sends an AWB number on WhatsApp and gets live tracking status.

textWorkflow
WhatsApp Trigger (messageTypes: text)
→ Shiprocket — Track Shipment
    awbCode: {{whatsappTrigger.text}}
→ WhatsApp — Send Message
    to:      {{whatsappTrigger.from}}
    message: "Status: {{shiprocket.current_status}}
              Last event: {{shiprocket.shipment_track[0].activity}}"

Common Issues & Solutions

IssueCauseSolution
Pickup location not foundWarehouse name typo or not set upUse Get Pickup Locations to see exact warehouse names
AWB generation failsNo courier available for the PIN codeUse Check Serviceability first to verify coverage
Order creation fails with 422Missing required fields or invalid dimensionsEnsure all required fields are filled — especially weight, dimensions, and pincode
Authentication errorWrong email/password in credentialRe-enter credentials — Shiprocket uses JWT that Nodebase auto-renews
  • Razorpay Trigger — trigger fulfilment on payment captured
  • WhatsApp — send AWB code and delivery updates to customer
  • MSG91 — send SMS with tracking link
  • Gmail — email shipping label to warehouse staff