Professional Documents
Culture Documents
Glossary
Client side
i) Data elements to be posted by the Client to the url
ii) Data elements posted back to the client after shipment processing.
Client Side
Client would have an order management panel at their end. They would have a ZC Ship button
wrt each order. User would click on the button and user would be redirected to ZC plugin with all
the order and shipment data in a new tab.
Once Shipment is processed, ZC plugin would post back to the client with shipment status and
all info related to the same. Client would store this information in its DB and also show the
Tracking number, current tracking status, courier name and Label download information to the
user besides the order itself.
Note: User shouldn’t be required to reload the orders page to see the data to be processed.
Note: UTF-8 encoded character of "\n" should be "%0A" which is the equivalent encoding of the
newline character. Some encoders available online donot recognize "\n" as a newline
character.The HmacSHA1 of the StringToSign should be created using for signing.
Finally, Base64 encode this HmacSHA1 and add it in the Authorization header.
The String "SHIPIT" is part of the Authorization header and identifies this header as the custom
authorization header.
Sample Request(Example) :
RequestURL - http://api.couriers.vello.in/initiateShipmentRequest
3) Hash - 547805eea4f594a22ecdb9c3056f33c5574cdc8c
4) Base 64 - NTQ3ODA1ZWVhNGY1OTRhMjJlY2RiOWMzMDU2ZjMzYzU1NzRjZGM4Yw==
Authorization: SHIPIT
06bd027a79eeeff5b66cbf6961f84e2:NTQ3ODA1ZWVhNGY1OTRhMjJlY2RiOWMzMDU2ZjMzY
zU1NzRjZGM4Yw==
content-type: application/json
1)Initiate Shipment
2)Callback
FAQ Technical :
http://api.couriers.vello.in/initiateShipmentRequest
Request :
{
"pickup_pincode": "400080",
"delivery_pincode": "395009",
"order_number": "BOX123ABC",
"payment_mode": "online",
"insurance": false,
"number_of_package": 1,
"package_details": {
"details": {
"weight": 10,
"length": 15,
"height": 14.5,
"width": 100.5,
"invoice": 620,
"packagedescription": "Dummy"
}
},
"delivery_address": {
"company_name": "Zepo",
"address": "Ambaji Dham mandir, Mulund west",
"city": "Bombay",
"state": "Maharashtra",
"pincode": "400080",
"country": "IN",
"contact_no": "9988776655",
"email": "Sumeet@zepo.in"
},
"success_callback_url":"xyz.success.com",
"failure_callback_url":"xyz.failure.com",
"client_source":"Magento"
}
Response:
In case of success-
{
"code": 200
"redirectUrl":
"http://couriers.zepo.in/#/schedule-new-shipment?srId=56682ea8-7ab1-4607-b7e4-1c
6a1e7fba95"
"success": true
}
In case of bad request(i.e if any value is missing, any parameter is missing, wrong data
type data posted, Invalid JSON format)-
{
"success": false
"code": 200
"message": "Invalid request"
}
{
"message": "Schedule pickup is successful.",
"shipment_id": 62197,
"insurance": false,
"courier_id": 1,
"service_id": 3,
"courier_name": "Fedex",
"service_display_name": "Economy",
"checksum":
"MzI2OTI2OsdsM1MTBkNmIyMzY4OGVlZTasdfYTA2MWY2ZDk0MTU0ZWJhZg==",
"order_number": "123456",
"pickup": {
"success": true,
"pickup_number": "STVA1077",
"pickup_date": 1476959400000
},
"shipmentPackages": [
{
"forward_label":
"http://cdntest.zepo.in/users/1718/labels/COURIERS-784404842257-20-10-2016.pd
f",
"cod_return_label":
"http://cdntest.zepo.in/users/1718/return_labels/COURIERS-cod-return-784404842
257-20-10-2016.pdf",
"package_detail": {
"no_of_items": 1,
"package_content": "test1",
"invoice_value": 100,
"package_dimension": {
"weight": 1.0,
"length": 10.0,
"width": 10.0,
"height": 10.0
},
"volumetric_weight": 0.37037
},
"tracking_number": "784404842257",
"status_id": 0
}
]
}
a) Status message - Indicate Success or Payment failed or Order failed. It would be user
friendly message which can be displayed by the client to the user.
i) Success message - “Schedule Pickup is successful”
ii) Abandon Message - “It seems your payment failed. Please try again”
iii) Failed Message - “There was some issue with processing your request. Please
contact Zepo support @ 9699224488”
b) Shipment Id - Numeric data indicating shipment unique id in the Courier DB
c) Insurance - Either True or False
d) Courier Id - Numeric value indicating courier company id
e) Service Id - Numeric value indicating Service type id
f) Courier Name - Courier Company used for this shipment
g) Service Display Name - Service type for this shipment
h) Checksum- Used to validate and authenticate request.
Checksum can be get by following steps
1) Concat following response parameters and make string
order_number+courier_id+service_id+shipment_id+tracking_number
This order of concatenation must be the same.