Skip to content

ShipOrder

Use this api to initiate logistics including arrange pickup, dropoff or shipment for non-integrated logistic channels. Should call getShippingParameter to fetch all required param first. It's recommended to initiate logistics one hour after the orders were placed since there is one-hour window buyer can cancel any order without request to seller. After a successful request, request the getShippingResult endpoint to get the shipping result.

POST /openapi/order/v3/batchShipping

Request Parameters

Parameter Type Required Description
orderShips Array(OrderShipItemDTO) true Array of object, please refer to OrderShipItemDTO for details

OrderShipItemDTO

Parameter Type Required Description
orderId String true Ginee order Id
shipmentProvider String false Logistics provider
shippingProviderId String false Logistics provider Id
shipmentProviderType String false logistics provider type
deliveryType string ture The logistics delivery type to which the order belongs, see Logistics Delivery Type
trackingNo String false Tracking no
invoiceNumber string false Invoice number
pickupTimeId String false Pickup time Id
pickupStartTime Long false Pickup start time,Unit:second,For example 1683784800
pickupEndTime Long false Pickup end time,Unit:second,For example 1683784800
address String false Pick-up address
addressId String false AddressId,parameters can be obtained from the GetShippingParameter endpoint
insuredType String false Insured type,akulaku market needs, values:NO_INSURANCE,ORIGINAL_PRICE_INSURANCE,PROPORTIONAL_INSURANCE
insuredRatio Math false Insured ratio,akulaku market needs, Must be passed when insuredType is equal to PROPORTIONAL_INSURANCE

In addition to the mandatory fields, different channel markets require additional non-required fields to be passed, which are described in more detail below

SHOPEE
When deliveryType = PICK_UP, shippingProvider, pickupTimeId, timeText, addressId, address are required
when deliveryType = DROP_OFF, shippingProvider is required
When deliveryType = MANUAL_SHIP, shippingProvider, trackingNo are required

TOKOPEDIA
When deliveryType = PICK_UP, shippingProvider ,trackingNo is required
When deliveryType = DROP_OFF, shippingProvider is required
When deliveryType = MANUAL_SHIP, shippingProvider, trackingNo is required

LAZADA
Turn off shipment restriction in OMS,Orders -> Order Settings -> Shipping Settings -> Shipment Restriction
When deliveryType = PICK_UP, shippingProvider,address,addressId,timeText,pickupTimeId are required
When deliveryType = DROP_OFF shippingProvider,invoiceNumber is required

TIKTOK
When deliveryType = PICK_UP, shippingProvider , trackingNo, pickupTimeId, timeText, pickupStartTime, pickupEndTime are required
When deliveryType = DROP_OFF shippingProvider is required

BUKALAPAK
when deliveryType = PICK_UP,shippingProvider is required
When deliveryType = DROP_OFF, the shippingProvider is required
When deliveryType = MANUAL_SHIP, the shippingProvider ,trackingNo is required

BLIBLI
When deliveryType = PICK_UP, shippingProvider is required
When deliveryType = DROP_OFF, shippingProvider, trackingNo is required

ZALORA
When deliveryType = DROP_OFF, trackingNo, invoiceNumber are required

SHOPIFY
When deliveryType = MANUAL_SHIP, shippingProvider, trackingNo are required

AKULAKU
When deliveryType = PICK_UP, shippingProvider, shippingProviderId, addressId, address are required
When deliveryType = DROP_OFF, shippingProvider, shippingProviderId, addressId, address are required
When deliveryType = MANUAL_SHIP,shippingProvider,shippingProviderId,trackingNo are required
When insuredType = PROPORTIONAL_INSURANCE,insuredRatio is required

MANUAL
When deliveryType = PICK_UP, shippingProvider, pickupStartTime, pickupEndTime, addressId, address are required
When deliveryType = DROP_OFF, shippingProvider, addressId are required
When deliveryTyp e= MANUAL_SHIP, shippingProvider, trackingNo is required

Additional parameters can be obtained via the GetShippingParameter endpoint

Response Parameters

Name Type Required Description
data String true Task id, parameter for getShippingResult endpoint, query for shipment results

Request Example

Example

curl -X POST  \
-H "X-Advai-Country: ID" \
-H "Authorization: {Your Access Key} + ':' + signature" \
-H "Content-Type: application/json" \
-d '{
"orderShips": [
    {
        "orderId": "SO6462F901CFF47E000131EDAB",
        "channelId": "MANUAL_ID",
        "shipmentProvider": "J&T Express_ID",
        "deliveryType": "PICK_UP",
        "pickupStartTime":"1684141066",
        "pickupEndTime":"1684573068",
        "addressId": "251",
        "address":"6701 INTERSTATE 30"
    }
]}' 
"{Ginee Host}/openapi/order/v3/batchShipping

Success

   {
       "code":"SUCCESS",
       "message":"OK",
       "data": "F609DC052FAFF000134FC62",
       "extra":null,
       "transactionId":"f49f370af5805764"
   }

Failure

{
    "code": "BUSINESS_ERROR",
    "message": "This order operation channel does not support",
    "data": "F609DC052FAFF000134FC62",
    "extra": null,
    "pricingStrategy": "FREE"
}

Note

You need to check the code to see if the operation was successful. If failed, see message for detail reason.