diff --git a/ds-wms-service/DS.WMS.Core/Op/Dtos/Cargoo/CargooShipmentDto.cs b/ds-wms-service/DS.WMS.Core/Op/Dtos/Cargoo/CargooShipmentDto.cs
new file mode 100644
index 00000000..51a38e99
--- /dev/null
+++ b/ds-wms-service/DS.WMS.Core/Op/Dtos/Cargoo/CargooShipmentDto.cs
@@ -0,0 +1,537 @@
+using NPOI.SS.Formula.Functions;
+using SharpCompress.Common;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace DS.WMS.Core.Op.Dtos
+{
+ ///
+ ///
+ ///
+ public class CargooShipmentDto
+ {
+ ///
+ /// Shipment Booking number once confirmed
+ ///
+ public string bookingNumber { get; set; }
+
+ ///
+ /// Internal Cargoo refence number – Mandatory for Update if no Booking Number provided
+ ///
+ public string cargooReference { get; set; }
+
+ ///
+ /// Bill of Lading Number once shipped
+ ///
+ public string blNumber { get; set; }
+
+ ///
+ /// Incoterm of the shipment (i.e. FOB)
+ ///
+ public string incoterm { get; set; }
+
+ ///
+ /// FCL_FLC, LCL_FCL
+ ///
+ public string movementType { get; set; }
+
+ ///
+ /// Port of receipt where the commodity will be first received
+ ///
+ public CargooShipmentPortDto por { get; set; }
+
+ ///
+ /// Port of Loading. Starting port of the main shipment.
+ ///
+ public CargooShipmentPortDto pol { get; set; }
+
+ ///
+ /// Port of discharge. Last port in the main shipment
+ ///
+ public CargooShipmentPortDto pod { get; set; }
+
+ ///
+ /// Final destination of the shipment
+ ///
+ public CargooShipmentPortDto fnd { get; set; }
+
+ ///
+ /// The earliest date the shipment can depart
+ ///
+ public string departureFrom { get; set; }
+
+ ///
+ /// The latest date the shipment can depart
+ ///
+ public string departureTo { get; set; }
+
+ ///
+ /// Usually equal to departureFrom until the shipment gets confirmed.
+ ///
+ public string etd { get; set; }
+
+ ///
+ /// Planned arrival date of the shipment
+ ///
+ public string eta { get; set; }
+
+ ///
+ /// Set only when the shipment is shipped and is set to the actual departure date of the first leg of the shipment. Each transport leg has its own ATD
+ ///
+ public string atd { get; set; }
+
+ ///
+ /// Set only when the shipment has arrived and is set to the actual arrival date of the last leg of the shipment. Each transport leg has its own ATA
+ ///
+ public string ata { get; set; }
+
+ ///
+ /// Carrier code
+ ///
+ public string carrierCode { get; set; }
+
+ ///
+ /// List of actual shipped container
+ ///
+ public List containers { get; set;}
+
+ ///
+ /// List of shipped commodities. Measures in metric system
+ ///
+ public List items { get; set; }
+
+ ///
+ /// Latest transport Plan
+ ///
+ public CargooShipmentTransportPlanDto transportPlan { get; set; }
+
+ ///
+ /// List of the involved party – If shipment from an order – Parties of the order are copied
+ ///
+ public List parties { get; set; }
+
+ ///
+ /// Current Status of the shipment
+ ///
+ public CargooShipmentCurrentStatusDto currentStatus { get; set; }
+
+ ///
+ /// Unique Key of that shipment for integration
+ ///
+ public string integrationId { get; set; }
+
+ ///
+ ///
+ ///
+ public string contractNumber { get; set; }
+
+ }
+
+ ///
+ ///
+ ///
+ public class CargooShipmentPortDto
+ {
+ ///
+ /// Port or door – Default to 1
+ ///
+ public string type { get; set; }
+
+ ///
+ /// UNCODE port code
+ ///
+ public string code { get; set; }
+ }
+
+ ///
+ ///
+ ///
+ public class CargooShipmentContainerTypesDto
+ {
+ ///
+ /// Number of the containers of that type
+ ///
+ public string count { get; set; }
+
+ ///
+ /// Type of the container (i.e. 20GP)
+ ///
+ public string type { get; set; }
+
+ ///
+ /// Gross weight of the container + items
+ ///
+ public decimal weight { get; set; }
+
+ ///
+ /// Haulage information is available
+ ///
+ public string haulage { get; set; }
+
+ ///
+ /// Type of the container (i.e. 20GP)
+ ///
+ public CargooShipmentContainerReferDto refer { get; set; }
+ }
+
+ ///
+ ///
+ ///
+ public class CargooShipmentTransportPlanDto
+ {
+ ///
+ /// Cutoff date for to load cargo
+ ///
+ public string cargoCutOff { get; set; }
+
+ ///
+ /// Cutoff date for to load cargo
+ ///
+ public string documentCutOff { get; set; }
+
+ ///
+ /// Cutoff date for shipping document
+ ///
+ public string preCarriage { get; set; }
+
+ ///
+ /// List of legs making the main carriage.
+ ///
+ public List mainCarriage { get; set; }
+
+ ///
+ /// The structure from the on-carriage is the same main carriage. It can be one or more legs
+ ///
+ public List onCarriage { get; set; }
+ }
+
+ ///
+ ///
+ ///
+ public class CargooShipmentMainCarriageDto
+ {
+ ///
+ /// The leg number
+ ///
+ public string SequenceNumber { get; set; }
+
+ ///
+ /// From port
+ ///
+ public CargooShipmentCarriagePortDto from { get; set; }
+
+ ///
+ /// To port
+ ///
+ public CargooShipmentCarriagePortDto to { get; set; }
+
+ ///
+ /// Estimated departure date of the leg
+ ///
+ public string etd { get; set; }
+
+ ///
+ /// Estimated arrival date of the leg
+ ///
+ public string eta { get; set; }
+
+ ///
+ /// Actual departure date of the leg
+ ///
+ public string atd { get; set; }
+
+ ///
+ /// Actual arrival date of the leg
+ ///
+ public string ata { get; set; }
+
+ ///
+ ///
+ ///
+ public int transportMode { get; set; }
+
+ ///
+ ///
+ ///
+ public CargooShipmentTransportMeanDto transportMean { get; set; }
+
+ ///
+ /// Voyage Number
+ ///
+ public string conveyanceReferenceNumber { get; set; }
+ }
+
+ ///
+ ///
+ ///
+ public class CargooShipmentTransportMeanDto
+ {
+ ///
+ /// Internal Cargoo Code to define the mode of transport.
+ ///
+ public string code { get; set; }
+ ///
+ /// Vessel IMO/Identification number
+ ///
+ public string id { get; set; }
+ ///
+ /// Vessel Name
+ ///
+ public string name { get; set; }
+ }
+
+ ///
+ ///
+ ///
+ public class CargooShipmentContainerDto
+ {
+ ///
+ /// Booking Number belonging to that container
+ ///
+ public string bookingNumber { get; set; }
+ ///
+ /// Status of the container (i.e. 396)
+ ///
+ public string Status { get; set; }
+ ///
+ /// Description of the container status
+ ///
+ public string StatusDescription { get; set; }
+ ///
+ /// Date of the status of the container.
+ ///
+ public string statusDate { get; set; }
+ ///
+ /// Gross Weight of the cargo
+ ///
+ public decimal grossWeight { get; set; }
+ ///
+ /// Volume of the cargo
+ ///
+ public Nullable Volume { get; set; }
+ ///
+ /// If VGM is submitted – status of the submission (ie. Received)
+ ///
+ public string vgmStatus { get; set; }
+
+ ///
+ /// VGM weight in Metric Kg
+ ///
+ public string vgmWeight { get; set; }
+
+ ///
+ /// Container type (i.e. 20GP)
+ ///
+ public string type { get; set; }
+
+ ///
+ /// Container number
+ ///
+ public string number { get; set; }
+
+ ///
+ /// Bool.
+ ///
+ public Nullable soc { get; set; }
+ }
+
+ ///
+ ///
+ ///
+ public class CargooShipmentItemDto
+ {
+ ///
+ /// Commodity of the item – see appendix
+ ///
+ public string commodityCode { get; set; }
+ ///
+ ///
+ ///
+ public string articleCode { get; set; }
+ ///
+ /// Description of the intem
+ ///
+ public string articleDescription { get; set; }
+ ///
+ /// Number of pieces – Packages mostly used
+ ///
+ public Nullable pieces { get; set; }
+ ///
+ /// Number of transported packages
+ ///
+ public Nullable packages { get; set; }
+ ///
+ /// Type of package (i.e. Carton) – see appendix
+ ///
+ public string packageType { get; set; }
+ ///
+ /// Volume
+ ///
+ public Nullable volume { get; set; }
+ ///
+ /// Gross weight of the cargo
+ ///
+ public decimal grossWeight { get; set; }
+ ///
+ /// Net weight (less packages)
+ ///
+ public Nullable netWeight { get; set; }
+ ///
+ /// HS Code
+ ///
+ public string hsCode { get; set; }
+ }
+
+ ///
+ ///
+ ///
+ public class CargooShipmentContainerReferDto
+ {
+ ///
+ ///
+ ///
+ public string type { get; set; }
+
+ ///
+ ///
+ ///
+ public string metricType { get; set; }
+
+ ///
+ ///
+ ///
+ public string metricValue { get; set; }
+
+ ///
+ ///
+ ///
+ public string woodDeclaration { get; set; }
+
+ ///
+ ///
+ ///
+ public string shipperSealNumber { get; set; }
+
+ ///
+ ///
+ ///
+ public string carrierSealNumber { get; set; }
+ }
+
+ ///
+ ///
+ ///
+ public class CargooShipmentContainerTemperatureSettings
+ {
+ ///
+ ///
+ ///
+ public string ventSetting { get; set; }
+ ///
+ ///
+ ///
+ public string airFlowValue { get; set; }
+ ///
+ ///
+ ///
+ public string airFlowType { get; set; }
+ ///
+ ///
+ ///
+ public string Humidity { get; set; }
+ ///
+ ///
+ ///
+ public string humidificationRequested { get; set; }
+ ///
+ ///
+ ///
+ public string genSetRequested { get; set; }
+ ///
+ ///
+ ///
+ public string controlledAtmosphereRequested { get; set; }
+ ///
+ ///
+ ///
+ public string Carbon { get; set; }
+ ///
+ ///
+ ///
+ public string Nitrogen { get; set; }
+ ///
+ ///
+ ///
+ public string Oxygen { get; set; }
+ ///
+ ///
+ ///
+ public string instructions { get; set; }
+ }
+
+ ///
+ ///
+ ///
+ public class CargooShipmentCarriagePortDto
+ {
+ ///
+ /// UNCode of the port
+ ///
+ public string code { get; set; }
+
+ ///
+ /// Full name
+ ///
+ public string name { get; set; }
+
+ }
+
+ ///
+ ///
+ ///
+ public class CargooShipmentPartyDto
+ {
+ ///
+ ///
+ ///
+ public string name { get; set; }
+ ///
+ /// Customer or Cargoo Id
+ ///
+ public string companyId { get; set; }
+ ///
+ /// Type of party (i.e. BUYER) – see appendix
+ ///
+ public string Type { get; set; }
+ ///
+ /// Full address and contact details available. See Order model.
+ ///
+ public string address { get; set; }
+ ///
+ /// Reference for the given party
+ ///
+ public string Reference { get; set; }
+ }
+
+ ///
+ /// Current Status of the shipment
+ ///
+ public class CargooShipmentCurrentStatusDto
+ {
+ ///
+ /// Cargoo Code (see appendix below)
+ ///
+ public int Code { get; set; }
+ ///
+ /// Description of the Status
+ ///
+ public string Description { get; set; }
+ ///
+ /// Date when the status changed
+ ///
+ public string Date { get; set; }
+ }
+}