Shipping Integration with Eshopbox

Shipping Integration with Eshopbox

Eshopbox Shipping Integration is used when the seller manages their own website, inventory, order processing, and packing, but wants to use Eshopbox for shipping-related capabilities.

In this integration, Eshopbox is responsible only for:

  • shipment creation
  • courier allocation
  • shipping label generation
  • tracking updates
  • shipment cancellation
  • return shipment creation

The seller’s platform remains responsible for:

  • catalogue management
  • inventory management
  • order creation
  • order processing
  • packing
  • customer communication

This integration should be used when the seller does not want Eshopbox to process the order inside the warehouse, but only wants Eshopbox to generate shipping labels and provide shipment tracking.

Integration Prerequisites

Before starting the integration, connect with your Eshopbox POC and request a testing workspace. The testing workspace is used to test the complete shipping flow before moving to production.

The testing workspace will include test credits. If required, you can recharge a small wallet amount, for example, INR 1000, for testing shipment creation.

During testing, if charges are deducted for test shipments, you can cancel the test orders so that the eligible deducted charges are credited back to the wallet.

Required Credentials

To integrate with Eshopbox Shipping APIs, you need the following credentials from your Eshopbox workspace.

Credential
Description
Client ID
Used to identify the integration client
Client Secret
Used along with Client ID to generate access token
Refresh Token
Used to generate a fresh access token
External Channel ID
Used to identify the sales channel for which shipment is being created

How to access integration credentials:

  • Apps → Manual App
  • From the Manual App, collect: Client ID, Client Secret, and Refresh token
  • The External Channel ID is available in the second tab named Sales Channel.

Authentication Flow

Before calling any Shipping Wrapper API, the seller system must generate an access token using the credentials available in the Manual App.

Authentication Flow

Seller System
|
| Uses Client ID + Client Secret + Refresh Token
v
Generate Access Token
|
| Access token generated successfully
v
Call Eshopbox Shipping APIs
|
| Pass access token in Authorization header
v
Eshopbox validates request and processes shipment

Authorization Header

For all API calls, pass the access token in the request header.

Header
Value
Authorization
Bearer access_token
Content-Type
application/json


Step 1: Generate Access Token

The first step is authentication.

The seller system must generate an access token using the credentials collected from the Manual App.

This access token will be used in all further API calls.

The access token should be passed in the Authorization header.

Authorization: Bearer access_token

If the access token expires, generate a new token using the refresh token.

Step 2: Create Shipment and Generate Label

In Shipping Integration, orders are created directly in RTS because the seller has already processed and packed the order outside Eshopbox. Eshopbox does not perform picking, packing, or inventory deduction in this flow. Once the order is ready to ship on the seller’s platform, the seller system must call the Shipping Wrapper Order API.

This API is used to create the shipment in Eshopbox.

When the API is called:

  • Eshopbox creates the order in RTS status
  • Eshopbox allocates a courier partner
  • Eshopbox generates the tracking ID
  • Eshopbox generates the shipping label
  • Eshopbox returns shipment details in the API response

Step 3: Register Webhook for Tracking Updates

To receive shipment tracking updates in real time, the seller must register a webhook URL with Eshopbox. The webhook URL is the endpoint on the seller’s platform where Eshopbox will send tracking events.

Once registered, Eshopbox will start pushing shipment status updates to the seller’s system.


The seller system should consume these webhook events and update the shipment status on the brand website.

Step 4: Fetch Tracking Details via Polling (Fallback Mechanism)

While webhook-based tracking updates are the recommended approach for real-time status updates, there can be scenarios where:

  • A webhook event is missed due to network issues
  • The seller system fails to process a webhook
  • The seller wants to fetch the latest status of a specific shipment on demand

In such cases, the seller can use the Tracking Polling API to fetch shipment status using the tracking ID.

Step 5: Cancel Tracking for Cancelled Orders

If the order is cancelled on the seller’s platform after shipment creation, the seller's system must cancel the tracking in Eshopbox. This is required because the shipment has already been created in Eshopbox, and the courier assignment needs to be cancelled. Cancel Tracking API

When this API is called:

  • the tracking ID is cancelled in Eshopbox
  • the shipment is stopped from further logistics processing
  • the cancelled shipment should no longer move ahead in the courier flow

Step 6: Create Return Shipment

If the customer requests a return on the seller’s platform, the seller must create a return shipment in Eshopbox. Since return initiation happens on the seller’s platform, the seller system must call the Return API to create the return in Eshopbox.

When this API is called:

  • Eshopbox creates a return shipment
  • Eshopbox assigns a courier partner for reverse pickup
  • Eshopbox generates return tracking details
  • Eshopbox returns the courier details in the API response

The seller can use this response to show return pickup details to the customer.

After return shipment creation, Eshopbox will send real-time return journey updates to the registered webhook URL.

Return Tracking Events


Complete Technical Flow

Seller Website / OMS
|
| 1. Generate access token using Manual App credentials
v
Eshopbox Authentication
|
| 2. Create shipment using Shipping Wrapper Order API
v
Eshopbox Shipping System
|
| 3. Eshopbox returns tracking ID, courier details, and label
v
Seller prints label and hands shipment to courier
|
| 4. Seller registers webhook URL
v
Eshopbox sends tracking updates to seller platform
|
| 5. If order is cancelled, seller calls Cancel Tracking API
|
| 6. If return is initiated, seller calls Return API
v
Eshopbox sends forward and return shipment updates via webhook

API Summary

Flow
API Required
Purpose
Authentication
Generate access token
To authenticate API requests
Shipment creation
Shipping Wrapper Order API
To create shipment and generate label
Tracking updates
Register Webhook API
To receive real-time shipment tracking updates
Cancellation
Cancel Tracking API
To cancel tracking when order is cancelled
Return
Return API
To create return shipment and assign courier

Important Notes

  • Shipping Integration is not a fulfillment integration.
  • Do not use this integration if the seller wants Eshopbox to manage inventory, warehouse processing, picking, packing, or return QC.
  • In this integration, Eshopbox only manages the shipping layer.
  • The seller system must manage order and inventory logic independently.