
Integration between Ongoing WMS and nShift DeliveryHub
nShift DeliveryHub is a shipping platform. Their products were previously known as:
- Consignor Shipment Server
- Consignor On-premises
- Consignor Ticket
Ongoing WMS provides an integration with these products.
Features
Make transport bookings directly from Ongoing WMS
The information about a shipment can be entered into Ongoing WMS, and then transferred to nShift DeliveryHub at the click of a button. Afterwards, a transport label can be printed.
Make tracking information visible in Ongoing WMS
If the transport booking for an order was made using the nShift DeliveryHub integration, Ongoing WMS instantly receives and can make use of the following information:
- Tracking link
- Tracking number
Choose service point
There is a posibility for customers to decide at which service point they prefer to pickup their packages.
Generate customs declaration
With an integration between nShift DeliveryHub and Ongoing WMS, electronic customs declarations can be generated.
Preparations
The following data is required to set up an integration with nShift DeliveryHub:
- API key
- A list of actor IDs
After you have gathered this information, please see this guide on how to set up an integration between Ongoing WMS and nShift DeliveryHub.
Mapping
nShift DeliveryHub Shipment - Ongoing WMS Order
Consignor | Ongoing WMS | |
---|---|---|
ActorCSID |
if Financial⇒TransportPaymentType == TransportPaymentType⇒Collect, then OrderInfo⇒GoodsOwnerEdiCode⇒Value, else Financial⇒PriceListCode⇒Value |
|
Addresses | new List<ModelClasses⇒Address>() | |
Amounts | new List<ModelClasses⇒Amount>() | |
DangerousGoods | new List<ModelClasses⇒DangerousGoods>() | |
Kind | ModelClasses⇒ShipmentKind⇒eSkNormal | |
Lines |
new List<ModelClasses⇒Line>() for each GoodsItem, add new ModelClasses⇒Line |
|
GoodsTypeKey1 | GoodsItem⇒PackageTypeCode | |
Height | (int)(GoodsItem⇒Height * 1000) | |
Length | (int)(GoodsItem⇒Length * 1000) | |
LineVol | (long)(GoodsItem⇒Volume * 1000000000) | |
LineWeight | (int)(GoodsItem⇒Weight * 1000) | |
Loadmeter | (int)GoodsItem⇒LoadMeters | |
Pkgs |
new List<ModelClasses⇒Package>() for int i = 1:GoodsItem⇒NumberOfPackages, Add(new ModelClasses⇒Package()) |
|
ItemNo | i | |
References | new List<ModelClasses⇒Reference>() | |
References | new List<ModelClasses⇒Reference>()⇒Add(new ModelClasses⇒Reference()) | |
Kind | ModelClasses⇒ReferenceKind⇒eSrkContents | |
Value | GoodsItem⇒GoodsCategory | |
Width | (int)(GoodsItem⇒Width * 1000) | |
Messages | new List<ModelClasses⇒Message>()⇒Add(new ModelClasses⇒Message()) | |
Kind | ModelClasses⇒ShipmentMessageKind⇒eSmkDriver if not string⇒IsNullOrWhiteSpace(OrderInfo⇒DeliveryInstruction) | |
Text | OrderInfo⇒DeliveryInstruction if not string⇒IsNullOrWhiteSpace(OrderInfo⇒DeliveryInstruction) | |
OrderNo |
$"{prefix}-{suffix}", where prefix = if string⇒IsNullOrWhiteSpace(GoodsOwnerInfo⇒GoodsOwnerReference) then GoodsOwnerInfo⇒Name else GoodsOwnerInfo⇒GoodsOwnerReference, suffix = if string⇒IsNullOrWhiteSpace(OrderInfo⇒GoodsOwnerOrderNumber) then OrderInfo⇒OrderId⇒ToString() else OrderInfo⇒GoodsOwnerOrderNumber |
|
References | new List<ModelClasses⇒Reference>()⇒Add(new ModelClasses⇒Reference()) | |
Kind |
ModelClasses⇒ReferenceKind⇒eSrkAttention if not string⇒IsNullOrWhiteSpace(OrderInfo⇒SalesCode), ModelClasses⇒ReferenceKind⇒eSrkDeliveryInstructions if not string⇒IsNullOrWhiteSpace(OrderInfo⇒DeliveryInstruction), ModelClasses⇒ReferenceKind⇒eSrkSenderReference if not string⇒IsNullOrWhiteSpace(OrderInfo⇒ReferenceNumber), |
|
Value |
(Consignee⇒Name if string⇒IsNullOrEmpty(OrderInfo⇒SalesCode) else OrderInfo⇒SalesCode) if not string⇒IsNullOrWhiteSpace(OrderInfo⇒SalesCode), OrderInfo⇒DeliveryInstruction if not string⇒IsNullOrWhiteSpace(OrderInfo⇒DeliveryInstruction), OrderInfo⇒ReferenceNumber if not string⇒IsNullOrWhiteSpace(OrderInfo⇒ReferenceNumber), |
None* = those fields are not in the default set up, but it is easy to set them to any field in Ongoing WMS.