NAV
JSON XML

Introduction

A documentation Platform, made by developers for developers to support the daily business in international freight transports and logistics.

You can use our standard interfaces to get or post transport/logistics data.

The API is only available for registered customers.

Interested in using SPOT or our API? Contact us, it’s free!

Communication Modes

REST API

Swagger

REST API documentation can be found at https://swagger.test.spotworx.com/. The documentation is in standardized Swagger format.

Swagger after successful login

In order to try endpoints, you need to authorize first. Click on the authorize button and provide your user, password, client ID and client secret. As type select “Request body”:

Swagger available authorizations

After successful authentication you can select some endpoint, click on “Try it out” button, provide all required parameters (e.g. location) and hit execute. You will see generated curl command and direct response object from API.

Swagger Try it

API authentication - OAuth 2.0

curl -X POST \
https://sso.spotworx.com/auth/realms/Spotworx/protocol/openid-connect/token \
-H 'Authorization: Basic MGYyN2I0Zm...ViNg==' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'username=test-client&password=test-client&grant_type=password'

curl -X POST \
  https://sso.spotworx.com/auth/realms/Spotworx/protocol/openid-connect/token \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -d 'username=test&password=test&grant_type=password&client_id=0f1&client_secret=f96'

API consumers are required to use the OAuth 2.0 protocol for authentication and authorization. All API requests must be made over SSL.

Customers are given client ID and client secret. These tokens should be stored securely. Moreover customers are given one or more users (represented by username/password) Client ID, client secret, username and password are used to generate the bearer token, which is a temporary token to invoke the business API.

To generate the bearer token, the consumer should make a POST request to https://sso.spotworx.com/auth/realms/Spotworx/protocol/openid-connect/token. HTTP headers must contain basic auth header and content type:

Header Value
Authorization Basic [Base64(client_id:client_secret)]
Content-Type application/x-www-form-urlencoded

The body must contain the following parameters as x-www-form-urlencoded values. Please consider this and use a tool and code the values, the request will not work otherwise.

Key Value
grant_type password
username [your username]
password [your password]

Optionally, client_id and client_secret can be provided in body instead of Authorization header

Key Value
client_id [client ID]
client_secret [client secret]
{
    "access_token": "eyJhbGciOi...JSkyJQ",    
    "expires_in": 1800,
    "refresh_expires_in": 86400,
    "refresh_token": "eyJhbGciO...ixBAA",
    "token_type": "bearer",
    "not-before-policy": 0,
    "session_state": "a638a3a6-ec0b-42a1-b048-55846f328d2c"
}

Response message contains:

Token format is JWT. Access token is valid for 5 minutes, refresh token is valid for 30 minutes. Once the access token is expired, the refresh token can be used to generate a new pair of access and refresh tokens.

curl -X POST \
  https://sso.spotworx.com/auth/realms/Spotworx/protocol/openid-connect/token \
  -H 'Authorization: Basic MGYyN2I0...LWQ1MWQ3NTAzMDViNg==' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -d 'grant_type=refresh_token&refresh_token=eyJhbGciOi....iI'

Refresh token request is similar to the above requests, except that body contains:

Consuming API

curl -X POST \
  curl -X GET \
  'https://api.spotworx.com/logistics/v1/inventory?location=CTO' \
  -H 'Authorization: Bearer eyJhbGci...OohXhoNLx3Q'

Individual API endpoints are described in Swagger. Base API url is https://api.spotworx.com.

Webhooks

For certain events we provide webhooks. Customers can register their URL and it will be proactively called when event occurs.

Message types: Webhooks are available for the following message types:

Security: We support various type of security on customer’s endpoint.

Security type Required info
Basic auth name, password
OAtuh 2.0 tokenUrl, name, password, clientId, clientSecret, grantType
X-Hub-Signature messageDigestAlgorithm, sharedSecret

File-based transfer

File name restrictions

The following characters are not allowed in the name of files: ‘<’ (less than), ‘>’ (greater than), ‘:’ (colon), ‘"‘ (double quote), ‘/’ (forward slash), ‘\’ (backslash), ‘|’ (vertical bar or pipe), ‘?’ (question mark), ‘*’ (asterisk).

MessageHeader

For easier understanding and implementation there is a default message header in each file. We provide this header in XML/JSON to provide information about the file transfer itself.

"...": {
    "messageId": "244016",
    "messageDate": "2017-04-05",
    "messageTime": "13:08:59",
    "messageType": "transport.eventUpdate",
    "messageVersion": "1.0",
    "messageScope": "PROD"
}
<...>
    <messageId>244016</messageId>
    <messageDate>2017-04-05</messageDate>
    <messageTime>13:08:59</messageTime>
    <messageType>transport.clientTransportOrder</messageType>
    <messageVersion>1.0</messageVersion>
    <messageScope>PROD</messageScope>
</...>
Property Type Mandatory Description
messageId String M Identifier for tracing in case of error/debugging.
messageDate String M Date of message transfer in format YYYY-MM-DD as defined by ISO 8601.
messageTime String M UTC Time of message transfer in format hh:mm:ss as defined by ISO 8601.
messageType String M Unique identifier to distinguish between different message types.
messageVersion String M Message version.
messageScope String M Valid values: TEST, PROD

Transport

Client Transport Orders

CREATE Client Transport Order

messageType: transport.clientTransportOrder

{
    "messageHeader":{...},
    "clientTransportOrder":{...}
}
<?xml version="1.0" encoding="UTF-8" ?>
<ediMessage>
    <messageHeader>...</messageHeader>
    <ClientTransportOrder>...</ClientTransportOrder>
</ediMessage>

Creates a transport order in our SPOT system.

FTP folder: /in/transport/clientTransportOrders

Sample files

The sample files are provided in 3 levels of detail: Small, Medium and Large. Small only contains the bare necessities needed to create an order in our system, whereas for large almost all possible fields of the respective modality are filled.

While it is possible to send us orders with only the minimum of data provided, it is highly recommended to provide as much information as possible.

Property Type Mandatory Description
messageHeader MessageHeader M Message Header information.
ClientTransportOrder ClientTransportOrder M Transport Order

ClientTransportOrder

"...": {
  "businessDirection": "EXPORT",
  "cargoDescriptions": [{...}],
  "containerDefinition": {...},
  "customerAccountNumber": "string",
  "deliveryTerm": {...},
  "mainCategory": "FCL",
  "mainModality": "AIR",
  "orderDetails": {...},
  "participants": {...},
  "routingInformation": {...}
}
<...>
  <businessDirection>EXPORT</businessDirection>
  <cargoDescriptions>
      <cargoDescription>...</cargoDescription>
  </cargoDescriptions>
  <containerDefinition>...</containerDefinition>
  <customerAccountNumber>string</customerAccountNumber>
  <deliveryTerm>...</deliveryTerm>
  <mainCategory>FCL</mainCategory>
  <mainModality>AIR</mainModality>
  <orderDetails>...</orderDetails>
  <participants>...</participants>
  <routingInformation>...</routingInformation>
</...>
Property Type Mandatory Description
customerAccountNumber String M Your SPOT account number. This is used to associate the created order with your company or office.
mainModality String M Modality of transport. Valid values: AIR, ROAD, SEA, AIR_SEA, SEA_AIR
mainCategory String C Defines the subtype of the transport modality. Mandatory for SEA shipments.
Valid values for ROAD: FTL, LTL, GROUPAGE
Valid values for SEA: FCL, LCL, REEFER
businessDirection String M Identifies direction of goods from principals viewpoint.
Valid values: IMPORT, EXPORT, TRIANGLE
deliveryTerm TransportDeliveryTerm M IncoTerm and Location
cargoDescriptions Array[CargoDescription] M Transport cargo description. For FCL/REEFER per container.
orderDetails OrderDetails O Additional detail information
containerDefinition ContainerDefinition C Only applicable and mandatory for SEA FCL / REEFER. Mandatory for SEA event tracking.
participants Participants M Parties participating in a transport
routingInformation RoutingInformation M Information about the transport routing and dates
orderComment OrderComment O comments regarding the Transport Order

OrderDetails

"...": {
    "insurance": {...},
    "paymentDefinition": {...},
    "references": [{...}],
    "serviceSpecification": {...},
    "transportDetails": {...},
    "articleDetails": [{...}]
}
  <...>
    <insurance>...</insurance>
    <paymentDefinition>...</paymentDefinition>
    <references>
      <reference>...</reference>
    </references>
    <serviceSpecification>...</serviceSpecification>
    <transportDetails>...</transportDetails>
    <articleDetails>
      <articleDetail>...</articleDetail>
    </articleDetails>
  </...>
Property Type Mandatory Description
insurance Insurance O Insurance details
references Array[TransportOrderReference] O Shipment references
paymentDefinition PaymentDefinition O Payment details
transportDetails TransportDetails O Additional transport details
serviceSpecification ServiceSpecification O Additional transport services
articleDetails Array[ArticleDetail] O Additional article details

TransportDetails

"...": {
  "oceanCarrier": {...},
  "carrierBookingNumber": "string",
  "carrierContractNumber": "string",
  "hawb": "string",
  "hbl": "string",
  "mawb": "string",
  "mbl": "string",
  "plateNumbers": ["string"],
  "vesselName": "string",
  "voyageNumber": "string"
}
<...>
  <oceanCarrier>...</oceanCarrier>
  <carrierBookingNumber>string</carrierBookingNumber>
  <carrierContractNumber>string</carrierContractNumber>
  <hawb>string</hawb>
  <hbl>string</hbl>
  <mawb>string</mawb>
  <mbl>string</mbl>
  <plateNumbers>
      <plateNumber>string</plateNumber>
  </plateNumbers>
  <vesselName>string</vesselName>
  <voyageNumber>string</voyageNumber>
</...>
Property Type Mandatory Description
oceanCarrier OceanCarrier C Provide for designated carrier. Mandatory for SEA event tracking.
carrierContractNumber String O
carrierBookingNumber String O Mandatory for SEA event tracking (Please note that only one of the values mbl OR carrierBookingNumber is needed).
mbl String C Master-BoL number. Mandatory for SEA event tracking (Please note that only one of the values mbl OR carrierBookingNumber is needed).
hbl String O House-BoL number.
mawb String O Master-AWB number.
hawb String O House-AWB number.
vesselName String O Name of carrier vessel.
voyageNumber String O Vessel voyage number.
plateNumbers Array[String] O Truck plate numbers.

ArticleDetail

"...": {
  "externalReference": "string",
  "articleCode": "string",
  "description": "string",
  "packageType": {...},
  "referenceNumber1": "string",
  "referenceNumber2": "string",
  "referenceNumber3": "string",
  "hsCode": "string",
  "containerNumber": "string",
  "dimensions": {...},
  "pieces": "number",
  "weight": "number",
  "netWeight": "number",
  "totalVolume": "number",
  "loadingDeviceType": "string",
  "loadingDeviceNumber": "number",
  "quantityPerLoadingDevice": "number",
  "dateOfIssue": {...},
  "expirationDate": {...}
}
<...>
  <externalReference>string</externalReference>
  <articleCode>string</articleCode>
  <description>string</description>
  <packageType>...</packageType>,
  <referenceNumber1>string</referenceNumber1>
  <referenceNumber2>string</referenceNumber2>
  <referenceNumber3>string</referenceNumber3>
  <hsCode>string</hsCode>
  <containerNumber>string</containerNumber>
  <dimensions>...</packageType>,
  <pieces>number</pieces>
  <weight>number</weight>
  <netWeight>number</netWeight>
  <totalVolume>number</totalVolume>
  <loadingDeviceType>string</loadingDeviceType>
  <loadingDeviceNumber>number</loadingDeviceNumber>
  <quantityPerLoadingDevice>number</quantityPerLoadingDevice>
  <dateOfIssue>...<dateOfIssue>
  <expirationDate>...<expirationDate>
</...>
Property Type Mandatory Description
externalReference String M External reference. Required for proper correlation.
articleCode String O Article code.
description String O Article description.
packageType ArticlePackageType O Article package type.
referenceNumber1 String O Reference number 1.
referenceNumber2 String O Reference number 2.
referenceNumber3 String O Reference number 3.
hsCode String O Standardized code for classification of commodities.
containerNumber String O Container number. Applicable for SEA modality.
dimensions ArticleDimensions O Article dimensions.
pieces Integer O Number of pieces.
weight BigDecimal O Article weight.
netWeight BigDecimal O Article net weight (without packaging).
totalVolume BigDecimal O Total article volume.
loadingDeviceType String O Loading device type.
loadingDeviceNumber Integer O Loading device number.
quantityPerLoadingDevice Integer O Quantity per loading device.
dateOfIssue ApiDate O Issue date.
expirationDate ApiDate O Expiration date.

ArticlePackageType

"...": {
  "unitName": "string",
}
<...>
  <unitName>string</unitName>
</...>
Property Type Mandatory Description
unitName String O SPOT package type code [(Package type code list)][spot-packagetypes1]

ArticleDimensions

"...": {
  "length": "number",
  "width": "number",
  "height": "number",
  "volume": "number"
}
<...>
  <length>number</length>
  <width>number</width>
  <height>number</height>
  <volume>number</volume>
</...>
Property Type Mandatory Description
length String O Article length.
width String O Article width.
height String O Article height.
volume String O Article volume.

RoutingInformation

"...": {
    "pickup": {...},
    "delivery": {...},
    "airportOfDeparture": {...},
    "airportOfArrival": {...},
    "portOfLoading": {...},
    "portOfDischarge": {...}
}
<...>
    <airportOfArrival>...</airportOfArrival>
    <airportOfDeparture>...</airportOfDeparture>
    <delivery>...</delivery>
    <pickup>...</pickup>
    <portOfDischarge>... </portOfDischarge>
    <portOfLoading>...</portOfLoading>
</...>
Property Type Mandatory Description
pickup RoutingPickup M Information to pickup
delivery RoutingDelivery O Information to delivery
airportOfDeparture RoutingPointAirport O
airportOfArrival RoutingPointAirport O
portOfLoading RoutingPointSeaport O
portOfDischarge RoutingPointSeaport O

RoutingPickup

"...": {
  "desiredPickup": {...},
  "estimatedCargoReadiness": {...},
  "estimatedPickup": {...},
  "remark": "string",
  "shipperSelfDelivery": false
}
<...>
  <desiredPickup>...</desiredPickup>
  <estimatedCargoReadiness>...</estimatedCargoReadiness>
  <estimatedPickup>...</estimatedPickup>
  <remark>string</remark>
  <shipperSelfDelivery>false</shipperSelfDelivery>
</...>
Property Type Mandatory Description
estimatedCargoReadiness ApiDate M Defines date when goods are ready for transport
desiredPickup ApiDateFromTo O Defines time frame of desired pickup of goods.
estimatedPickup ApiDate O Defines date for estimated pickup of goods. Only processed if EDI-Partner is an Agent or shipperSelfDelivery = true.
shipperSelfDelivery Boolean O
remark String O Additional comments for pickup.

RoutingDelivery

"...": {
    "desiredDelivery": {...},
    "estimatedDelivery": {...},
    "consigneeSelfPickup": false,
    "remark": "string"
}
<...>
    <consigneeSelfPickup>false</consigneeSelfPickup>
    <desiredDelivery>...</desiredDelivery>
    <estimatedDelivery>...</estimatedDelivery>
    <remark>string</remark>
</...>
Property Type Mandatory Description
consigneeSelfPickup Boolean O
desiredDelivery ApiDateFromTo O Defines time frame of desired delivery of goods.
estimatedDelivery ApiDate O Defines date for estimated delivery of goods. Only processed if EDI-Partner is an Agent or consigneeSelfPickup = true.
remark String O Additional comments for delivery.

RoutingPointAirport

"...": {
    "iataCode":"string",
    "estimatedDate":{...}
 }
<...>
  <estimatedDate>...</estimatedDate>
  <iataCode>string</iataCode>
</...>

Property Type Mandatory Description
iataCode String M IATA 3-letter airport code.
estimatedDate ApiDate O If known, estimated arrival date (if airportOfArrival) / estimated departure date (if airportOfDeparture) can be provided here.

RoutingPointSeaport

"...": {
    "estimatedDate":{...},     
    "terminal":"string",
    "unlocode":"string" 
}
<...>
  <estimatedDate>...</estimatedDate>
  <terminal>string</terminal>
  <unlocode>string</unlocode>
</...>
Property Type Mandatory Description
estimatedDate ApiDate O If known, estimated arrival date (if portOfDischarge) / estimated departure date (if portOfLoading) can be provided here.
terminal String O Container terminal.
unlocode String M UNLOCODE 5-letter location code.

Participants

"...": {
    "consignee": {...},
    "controllingAgent": {...},
    "delivery": {...},
    "destinationAgent": {...},
    "destinationHub": {...},
    "destinationWarehouse": {...},
    "exportCustomsBroker": {...},
    "importCustomsBroker": {...},
    "mainInvoiceTo": {...},
    "officeInCharge": {...},
    "originAgent": {...},
    "originHub": {...},
    "originWarehouse": {...},
    "pickup": {...},
    "principal": {...},
    "shipper": {...},
    "shippersTradingCompany": {...},
    "notifyAgent":{...},
    "thirdParties": [...]
}
<...>
    <consignee>...</consignee>
    <controllingAgent>...</controllingAgent>
    <delivery>...</delivery>
    <destinationAgent>...</destinationAgent>
    <destinationHub>...</destinationHub>
    <destinationWarehouse>...</destinationWarehouse>
    <exportCustomsBroker>...</exportCustomsBroker>
    <importCustomsBroker>...</importCustomsBroker>
    <mainInvoiceTo>...</mainInvoiceTo>
    <officeInCharge>...</officeInCharge>
    <originAgent>...</originAgent>
    <originHub>...</originHub>
    <originWarehouse>...</originWarehouse>
    <pickup>...</pickup>
    <principal>...</principal>
    <shipper>...</shipper>
    <shippersTradingCompany>...</<shippersTradingCompany>
  <notifyAgent>...</notifyAgent>
    <thirdParties>
      <thirdParty>...</thirdParty>
    </thirdParties>
</...>
Property Type Mandatory Description
shipper Party M Party providing the goods.
consignee Party M Party receiving the goods.
pickup Party O Pickup location. If not provided, it will be assumed to be the same as shipper.
delivery Party O Delivery location. If not provided, it will be assumed to be the same as consignee.
principal Party M Owner of the transport order.
officeInCharge PartyOfficeInCharge M Freight forwarder handling office.
mainInvoiceTo Party M Party which will be billed for transport. Is normally the same as the principal.
exportCustomsBroker Party O
importCustomsBroker Party O
originWarehouse Party O
destinationWarehouse Party O
shippersTradingCompany Party O
notifyAgent Party O
thirdParties Array[Party] O
originAgent PartyAgent O Not available if mainModality is ROAD.
destinationAgent PartyAgent O Not available if mainModality is ROAD.
originHub PartyAgent O Only applicable if mainModality is ROAD.
destinationHub PartyAgent O Only applicable if mainModality is ROAD.
controllingAgent PartyAgent O

PartyAgent

"...": {
  "accountNumber": "string",
  "contacts": [{...}],
  "externalPartyIdentifier": "string",
}
<...>
    <accountNumber>string</accountNumber>
    <contacts>
        <contact>...</contact>
    </contacts>
    <externalPartyIdentifier>string</externalPartyIdentifier>
</...>
Property Type Mandatory Description
accountNumber String M SPOT internal account number.
externalPartyIdentifier String O EDI-Partners identifier for a party. If provided it functions in the same way as the accountNumber
contacts Array[Contact] O

PartyOfficeInCharge

"...": {
    "accountNumber": "123456",
    "officeRole": "string",
    "externalPartyIdentifier": "string",
    "contacts": [{...}]
}
<...>
  <accountNumber>string</accountNumber>
  <contacts>
      <contact>...</contact>
  </contacts>
  <externalPartyIdentifier>string</externalPartyIdentifier>
  <officeRole>CONTROLLING_AGENT</officeRole>
</...>
Property Type Mandatory Description
accountNumber String M SPOT internal account number.
officeRole String O Valid values: ORIGIN_AGENT, DESTINATION_AGENT, CONTROLLING_AGENT
externalPartyIdentifier String O EDI-Partners identifier for a party. If provided it functions in the same way as the accountNumber
contacts Array[Contact] O

OrderComment

"...": {
    "permissions":{
      "permissions_val":"string"
    },
    "text":"string"
}
  <...>
   <permissions>
      <permissions_val>string</permissions_val>
   </permissions>
  <text>string</text>
  </...>
Property Type Mandatory Description
permissions array [permissions] M permissions
text string M text field for order comment

permissions

Property Type Mandatory Description
permissions_val string M Valid values: SHIPPER, PICKUP, CONSIGNEE, DELIVERY, PRINCIPAL, MAIN_INVOICE_TO, CONTROLLING_AGENT, OFFICE_IN_CHARGE, ORIGIN_AGENT, ORIGIN_HUB, TRANSIT_HUB, EXPORT_CONSOLIDATION_HUB, IMPORT_DECONSOLIDATION_HUB, SEA_HUB, AIR_HUB, DESTINATION_AGENT, DESTINATION_HUB, NOTIFY_AGENT, SHIPPERS_TRADING_COMPANY, EXPORT_CUSTOMS_BROKER, IMPORT_CUSTOMS_BROKER, ORIGIN_WAREHOUSE, DESTINATION_WAREHOUSE, THIRD_PARTY, ROAD_CARRIER

Shipments

GET Shipment

messageType: transport.shipment

{
    "messageHeader": {...},
    "Shipment": {...}
}
<?xml version="1.0" encoding="UTF-8" ?>
<ediMessage>
    <messageHeader>...</messageHeader>
    <Shipment>...</Shipment>
</ediMessage>

Get shipment data from SPOT.

FTP folder if provided on our FTP and not pushed to partner FTP: /out/transport/shipments

Sample files:

The sample files provided are based on real world shipments where parties and references have been changed for privacy reasons.

You can also get into contact with our Integration Competence Center and we will provide you with real examples based on your shipments.

Property Type Mandatory Description
messageHeader MessageHeader M Message Header information.
Shipment Shipment M Shipment information

Shipment

"...": {
  "cargoDescriptions": [{...}],
  "containerDefinition": {...},
  "events": [{...}],
  "mainCategory": "FCL",
  "mainModality": "AIR",
  "shipmentStatus": "CARGO_EXPECTED_FOR_TRANSPORT",
  "participants": {...},
  "routingInformation": {...},
  "shipmentDetails": {...},
  "trackingId": "string"
}
<...>
  <cargoDescriptions>
    <cargoDescription>...</cargoDescription>
  </cargoDescriptions>
    <containerDefinition>...</containerDefinition>
  <events>
    <event>...</event>
  </events>
  <mainCategory>FCL</mainCategory>
  <mainModality>AIR</mainModality>
  <shipmentStatus>CARGO_EXPECTED_FOR_TRANSPORT</shipmentStatus>
  <participants>...</participants>
  <routingInformation>...</routingInformation>
  <shipmentDetails>...  </shipmentDetails>
  <trackingId>string</trackingId>
</...>
Property Type Mandatory Description
cargoDescriptions Array[CargoDescription] M Transport cargo description. For FCL/REEFER per container.
containerDefinition ContainerDefinition C Available for SEA FCL/REEFER.
events Array[Event] M List of transport events
mainCategory String C Valid values for ROAD: FTL, LTL, GROUPAGE
Valid values for SEA: FCL, LCL, REEFER. Not available for AIR
mainModality String M Modality of transport. Values: AIR, ROAD, SEA, AIR_SEA, SEA_AIR
shipmentStatus String O Information about the shipment status. Values: CARGO_EXPECTED_FOR_TRANSPORT, CARGO_READY_FOR_TRANSPORT, PICKED_UP, DEPARTED, ARRIVED, DELIVERED.
participants ShipmentParticipants M Parties participating in a transport
routingInformation ShipmentRoutingInformation M Information about shipment routing
shipmentDetails ShipmentDetails M Additional shipment details
trackingId String M SPOT Shipment tracking ID. (SPOT ID)

ShipmentParticipants

"...": {
    "airHub": {...},
    "consignee": {...},
    "controllingAgent": {...},
    "delivery": {...},
    "destinationAgent": {...},
    "destinationHub": {...},
    "destinationWarehouse": {...},
    "exportCustomsBroker": {...},
    "exportConsolidationHub": {...},
    "importCustomsBroker": {...},
    "exportDeconsolidationHub": {...},
    "mainInvoiceTo": {...},
    "notifyAgent": {...},
    "originAgent": {...},
    "originHub": {...},
    "originWarehouse": {...},
    "pickup": {...},
    "principal": {...},
    "seaHub": {...},
    "shipper": {...},
    "shippersTradingCompany": {...},
    "thirdParties": [{...}],
    "transitHubs": [{...}]
}
<...>
    <airHub>...</airHub>
    <consignee>...</consignee>
    <controllingAgent>...</controllingAgent>
    <delivery>...</delivery>
    <destinationAgent>...</destinationAgent>
    <destinationHub>...</destinationHub>
    <destinationWarehouse>...</destinationWarehouse>
    <exportCustomsBroker>...</exportCustomsBroker>
    <exportConsolidationHub>...</exportConsolidationHub>
    <importCustomsBroker>...</importCustomsBroker>
    <importDeconsolidationHub>...</importDeconsolidationHub>
    <mainInvoiceTo>...</mainInvoiceTo>
    <notifyAgent>...</notifyAgent>
    <originAgent>...</originAgent>
    <originHub>...</originHub>
    <originWarehouse>...</originWarehouse>
    <pickup>...</pickup>
    <principal>...</principal>
    <seaHub>...</seaHub>
    <shipper>...</shipper>
    <shippersTradingCompany>...</shippersTradingCompany>
    <thirdParties>
        <thirdParty>...</thirdParty>
    </thirdParties>
    <transitionHubs>
        <transitHub>...</transitHub>
    </transitionHubs>
</...>
Property Type Mandatory Description
airHub Party O
consignee Party M
controllingAgent Party M Office in charge of transport.
delivery Party C Delivery location. Not available if shipperSelfDelivery is true.
destinationAgent Party O Not available if mainModality is ROAD.
destinationHub Party C Only available if mainModality is ROAD and mainCategory is GROUPAGE.
destinationWarehouse Party O
exportCustomsBroker Party O
exportConsolidationHub Party O
importCustomsBroker Party O
importDeconsolidationHub Party O
mainInvoiceTo Party M Party which will be invoiced.
notifyAgent Party O
originAgent Party O Not available if mainModality is ROAD.
originHub Party C Only available if mainModality is ROAD and mainCategory is GROUPAGE.
originWarehouse Party O
pickup Party C Pickup location. Not available if consigneeSelfPickup is true.
principal Party M Owner of the transport order.
seaHub Party O
shipper Party M
shippersTradingCompany Party O
thirdParties Array[Party] O
transitHubs Array[Party] O

ShipmentRoutingInformation

"...": {
    "delivery": {...},
    "pickup": {...},
    "routingPoints": [{...}]
}
<...>
    <delivery>...</delivery>
    <pickup>...</pickup>
    <routingPoints>
      <routingPoint>...</routingPoint>
    </routingPoints>
</...>
Property Type Mandatory Description
pickup ShipmentRoutingPointPickup M Information to pickup
routingPoints Array[ShipmentRoutingPoint] O Information to routing points between Pickup and Delivery (e.g. Port of loading, Port of discharge, …)
delivery ShipmentRoutingPointDelivery M Information to delivery

ShipmentRoutingPoint

"...": {
    "city": "string",
    "countryCode": "string",
    "estimatedArrival": {...},
    "estimatedDeparture": {...},
    "iataCode": "string",
    "legModality": "SEA_FCL",
    "realArrival": {...},
    "realDeparture": {...},
    "remark": "string",
    "routingPointType": "PICKUP",
    "unlocode": "string",
    "zipCode": "string"
}
<...>
 <routingPoint>
  <city>string</city>
  <countryCode>string</countryCode>
  <estimatedArrival>...</estimatedArrival>
  <estimatedDeparture>...</estimatedDeparture>
  <iataCode>string</iataCode>
  <legModality>SEA_FCL</legModality>
  <realArrival>...</realArrival>
  <realDeparture>...</realDeparture>
  <remark>string</remark>
  <routingPointType>PICKUP</routingPointType>
  <unlocode>string</unlocode>
  <zipCode>string</zipCode>
  </routingPoint>
</...>
Property Type Mandatory Description
remark String O
routingPointType String M Valid values: EXPORT_CONSOLIDATION_HUB, ORIGIN_WAREHOUSE, DEPARTURE_AIRPORT, PORT_OF_LOADING, TRANSIT_HUB, ORIGIN_HUB, SEA_HUB, AIR_HUB, DESTINATION_HUB, ARRIVAL_AIRPORT, PORT_OF_DISCHARGE, IMPORT_DECONSOLIDATION_HUB, DESTINATION_WAREHOUSE, FINAL_DESTINATION, UNASSIGNED_HUB
legModality String O If specified, shows transport modality between this and the next routing point.
countryCode String C Routing point location ISO country code (ISO 3166-1 Alpha-2)
city String C Routing point location city
zipCode String C Routing point location zipCode
iataCode String C 3-letter IATA location code of routing point.
unlocode String C 5-letter UnLocode location of routing point.
estimatedArrival ApiDate O Estimated arrival at specified routing location.
realArrival ApiDate O Actual arrival at specified routing location.
estimatedDeparture ApiDate O Estimated departure from specified routing location.
realDeparture ApiDate O Actual departure from specified routing location.

ShipmentRoutingPointPickup

"...": {
  "city": "string",
  "countryCode": "string",
  "desiredPickup": {...},
  "estimatedCargoReadiness": {...},
  "estimatedPickup": {...},
  "iataCode": "string",
  "legModality": "SEA_FCL",
  "realCargoReadiness": {...},
  "realPickup": {...},
  "remark": "string",
  "routingPointType": "PICKUP",
  "shipperSelfDelivery": true,
  "unlocode": "string",
  "zipCode": "string"
}
<...>
  <city>string</city>
  <countryCode>string</countryCode>
  <desiredPickup>...</desiredPickup>
  <estimatedCargoReadiness>...</estimatedCargoReadiness>
  <estimatedPickup>...</estimatedPickup>
  <iataCode>string</iataCode>
  <legModality>SEA_FCL</legModality>
  <realCargoReadiness>...</realCargoReadiness>
  <realPickup>...</realPickup>
  <remark>string</remark>
  <routingPointType>PICKUP</routingPointType>
  <shipperSelfDelivery>true</shipperSelfDelivery>
  <unlocode>string</unlocode>
  <zipCode>string</zipCode>
</...>
Property Type Mandatory Description
remark String O
routingPointType String M Valid values: PICKUP, PLACE_OF_RECEIPT
legModality String O If specified, shows transport modality between this and the next routing point.
countryCode String C Routing point location ISO country code (ISO 3166-1 Alpha-2)
city String C Routing point location city
zipCode String O Routing point location zipCode
iataCode String C 3-letter IATA location code of routing point.
unlocode String C 5-letter UnLocode location of routing point.
estimatedCargoReadiness ApiDate M Estimated date when cargo will be ready for transport.
realCargoReadiness ApiDate O Actual date when cargo was ready for transport.
estimatedPickup ApiDate O Estimated date when cargo will be picked up.
realPickup ApiDate O Actual date when cargo was picked up.
desiredPickup ApiDateFromTo O Time frame of desired pickup of cargo.
shipperSelfDelivery Boolean O

ShipmentRoutingPointDelivery

"...": {
  "city": "string",
  "consigneeSelfPickup": true,
  "countryCode": "string",
  "desiredDelivery": {...},
  "estimatedDelivery": {...},
  "iataCode": "string",
  "legModality": "SEA_FCL",
  "realDelivery": {...},
  "remark": "string",
  "routingPointType": "PICKUP",
  "unlocode": "string",
  "zipCode": "string"
}
<...>
  <city>string</city>
  <consigneeSelfPickup>true</consigneeSelfPickup>
  <countryCode>string</countryCode>
  <desiredDelivery>...</desiredDelivery>
  <estimatedDelivery>...</estimatedDelivery>
  <iataCode>string</iataCode>
  <legModality>SEA_FCL</legModality>
  <realDelivery>...</realDelivery>
  <remark>string</remark>
  <routingPointType>PICKUP</routingPointType>
  <unlocode>string</unlocode>
  <zipCode>string</zipCode>
</...>
Property Type Mandatory Description
remark String O
routingPointType String M Valid values: PLACE_OF_HANDOVER, DELIVERY
legModality String O If specified, shows transport modality between this and the next routing point.
countryCode String C Routing point location ISO country code (ISO 3166-1 Alpha-2)
city String C Routing point location city
zipCode String C Routing point location zipCode
iataCode String C 3-letter IATA location code of routing point.
unlocode String C 5-letter UnLocode location of routing point.
consigneeSelfPickup Boolean O
estimatedDelivery ApiDate O Estimated date when cargo will be delivered.
realDelivery ApiDate O Actual date when cargo was delivered.
desiredDelivery ApiDateFromTo O Time frame of desired delivery of cargo.

ShipmentDetails

"...": {
    "deliveryTerm": {...},
    "electronicFreight": "string",
    "hblOriginalRequired": true,
    "insurance": {...},
    "paymentDefinition": {...},
    "references": [{...}],
    "serviceSpecification": {...},
    "shipmentTransportDetails": {...}
}
<...>
    <deliveryTerm>...</deliveryTerm>
    <electronicFreight>string</electronicFreight>
    <hblOriginalRequired>true</hblOriginalRequired>
    <insurance>...</insurance>
    <paymentDefinition>...</paymentDefinition>
    <references>
        <reference>...</reference>
    </references>
    <serviceSpecification>...</serviceSpecification>
    <shipmentTransportDetails>...</shipmentTransportDetails>
</...>
Property Type Mandatory Description
deliveryTerm DeliveryTerm M IncoTerm and Location
electronicFreight String O
hblOriginalRequired Boolean O
insurance Insurance O Insurance details
paymentDefinition PaymentDefinition O Payment information
references Array[TransportOrderReference] O Shipment references
serviceSpecification ServiceSpecification O Additional transport services
shipmentTransportDetails ShipmentTransportDetails O Additional transport details

ShipmentTransportDetails

"...": {
  "carrierContractNumber": "string",
  "flightNumbers": ["string"],
  "hawb": "string",
  "hbl": "string",
  "mawb": "string",
  "mbl": "string",
  "oceanCarrier": {...},
  "plateNumbers": ["string"],
  "roadCarrier": "string",
  "vesselName": "string",
  "voyageNumber": "string"
}
<...>
  <carrierContractNumber>string</carrierContractNumber>
  <flightNumbers>string</flightNumbers>
  <hawb>string</hawb>
  <hbl>string</hbl>
  <mawb>string</mawb>
  <mbl>string</mbl>
  <oceanCarrier>...</oceanCarrier>
  <plateNumbers>
   <plateNumber>string</plateNumber>
  </plateNumbers>
  <roadCarrier>string</roadCarrier>
  <vesselName>string</vesselName>
  <voyageNumber>string</voyageNumber>
</...>
Property Type Mandatory Description
carrierContractNumber String O
flightNumbers Array[String] O
mbl String O Master-BoL number
hbl String O House-BoL number
mawb String O Master-AWB number
hawb String O House-AWB number
oceanCarrier OceanCarrier O Information about ocean carrier
plateNumbers Array[String] O Truck plate numbers
roadCarrier String O Name of road carrier
vesselName String O Name of carrier vessel
voyageNumber String O Vessel voyage number

Shipment Event Updates

POST/GET Event update

messageType: transport.eventUpdate

{
    "messageHeader": {...},
    "eventUpdate": {...}
}
<ediMessage>
    <messageHeader>...</messageHeader>
    <eventUpdate>...</eventUpdate>
</ediMessage>

This is used to either create events in our SPOT system or to receive event information when events are updated on your shipment.

Sample files:

FTP folder:

For inbound event updates: /in/transport/eventUpdates

For outbound event updates, if provided on our FTP and not pushed to partner FTP: /out/transport/eventUpdate

Property Type Mandatory Description
messageHeader MessageHeader M Message Header information.
eventUpdate EventUpdate M Event Update information.

EventUpdate

"...": {
    "trackingId": "string",
    "transportReferences": [{...}],
    "references": [{...}],
    "events": [{...}]
}
<...>
    <trackingId>string</trackingId>
    <transportReferences>
    <transportReference>...</transportReference>
    </transportReferences>
    <references>
        <reference>...</reference>
    </references>
    <events>
    <event>...</event>
    </events>
</...>
Property Type Mandatory Description
trackingId String M Shipment tracking ID (SPOT ID).
transportReferences Array[TransportReference] O Array of transport references.
references Array[TransportOrderReference] O Array of references. (Customer/Partner/…)
events Array[Event] M Array of events.

TransportReference

"...": {
    "referenceType": "string",
    "value": "string"
}
<...>
    <referenceType>...</referenceType>
    <value>...</value>
</...>
Property Type Mandatory Description
referenceType String M Type of transport reference MAWB, HAWB, MBL, HBL, JOBFILE_UKW_POSITION.
value String M Reference value.

Documents

Upload (document only)

Example filename: 201903151242_shipment_1.0_12345_T103_filename.pdf

Using this method, only the document itself is needed but the filename must strictly follow the below described format, as the for the upload necessary metadata will be parsed from the filename.

Filename format: <creationDate>_<messageType>_<messageTypeVersion>_<reference>_<documentTypeCode>_<filename>.<fileExtension>

FTP folder: /in/transport/documents

Property Type Mandatory Description
<creationDate> String M Creation date and time
<messageType> String M Valid message types: clientTransportOrder, shipment
<messageTypeVersion> String M Will be provided by our IT contact (default 1.0)
<reference> String M Reference used in the related message type (e.g. for shipment use trackingID). Needs to be aligned with IT contact.
<documentTypeCode> String M SPOT 4-letter document code. (Document type code list)
<filename> String M Filename of upload document, can be any filename chosen by customer.
<fileExtension> String M Fileextension. E.g.: .pdf

Upload (Document + metadata)

Example document name: hardcopyPOD_12345.pdf
Example metadata name: hardcopyPOD_12345.xml

For the second method an additional metadata file is needed. This allows for the use of multiple and additional reference types. It is recommended to give the metadata file the same name as the document.

FTP folder: /in/transport/document

DocumentMetadata

{
    "filename": "testdocument.pdf",
    "file": "...",
    "accountNumber" : "926989",
    "partyId" : "2496735",
    "messageType" : "shipment",
    "messageVersion": "1.0",
    "documentType" : "T103",
    "references": [{...}]
}
<?xml version="1.0" encoding="UTF-8" ?>
<documentMetadata>
    <filename>testdocument.pdf</filename>
    <file>...</file>
    <accountNumber>926989</accountNumber>
    <partyId>2496735</partyId>
    <messageType>shipment</messageType>
    <messageVersion>1.0</messageVersion>
    <documentType>T103</documentType>
    <references>
        <reference>...</reference>
    </references>
</documentMetadata>
Property Type EDI Mandatory API Mandatory Description
filename String M M Filename of document
file String O Base 64 encoded file.
accountNumber String C SPOT Address book account number
partyId String C SPOT Address book Party number
messageType String M Valid message types: clientTransportOrder, shipment
messageVersion String M Will be provided by our IT contact (default 1.0)
documentType String M M SPOT 4-letter document code. (Document type code list)
references Array[DocumentUploadReferences] M M Array of references used to find shipment.

TransportDocumentUploadReferences

"...": {
    "type": "TRACKING_ID",
    "value": "100149780",
    "key": "string"
}
<...>
    <type>TRACKING_ID</type>
    <value>100149780</value>
    <key>string</key>
</...>
Property Type Mandatory Description
type String M Type of reference. Valid values: TRACKING_ID, MAWB, HAWB, MBL, HBL, JOBFILE_UWK_POSITION
value String M Reference value.
key String O Key for referenceNumber assignment (For example EDI-Partner reference type).

Common Transport Objects

CargoDescription

"...": {
    "containerIndex": 1,
    "cargoDetails": [{...}],
    "chargeableWeight": 0,
    "currencyCode": "string",
    "dangerousGoods": [{...}],
    "loadingMeters": 0,
    "valueOfGoods": 0,
    "ssccNumbers": [
        "310000001000000014",
        "310000001000000026"
    ]
}
<...>
    <containerIndex>1</containerIndex>
    <cargoDetails>
     <cargoDetail>...</cargoDetail>
    </cargoDetails>
    <chargeableWeight>1.1</chargeableWeight>
    <currencyCode>string</currencyCode>
    <dangerousGoods>
     <dangerousGood>...</dangerousGood>
    </dangerousGoods>
    <loadingMeters>1.1</loadingMeters>
    <valueOfGoods>1.1</valueOfGoods>
    <ssccNumbers>
    <ssccNumber>310000001000000014</ssccNumber>
    <ssccNumber>310000001000000026</ssccNumber>
    </ssccNumbers>
</...>
Property Type Mandatory Description
containerIndex Integer O Running number for association with container
cargoDetails Array[CargoDetails] M
valueOfGoods BigDecimal O
currencyCode String C ISO 4217 three letter currency code. Mandatory if valueOfGoods is provided
chargeableWeight BigDecimal O
loadingMeters BigDecimal O
dangerousGoods Array[DangerousGoods] O
ssccNumbers Array[String] O Array of ssccNumbers

CargoDetails

"...": {
    "description": "string",
    "height": 0,
    "length": 0,
    "packageTypeCode": "string",
    "pieces": 0,
    "volume": 0,
    "weight": 0,
    "width": 0
 }
<...>
    <description>string</description>
    <height>1</height>
    <length>1</length>
    <packageTypeCode>string</packageTypeCode>
    <pieces>1</pieces>
    <volume>1.123</volume>
    <weight>1.1</weight>
    <width>1</width>
</...>
Property Type Mandatory Description
pieces Integer M
packageTypeCode String M SPOT package type code (Package type code list)
description String M
weight BigDecimal O Weight in kg
width Integer O Width in cm
height Integer O Height in cm
length Integer O Length in cm
volume BigDecimal O Volume in m³. Will only be taken over if no dimensions are provided. If dimensions are provided, volume will be automatically calculated.

Contact

"...": {
  "emailBusiness": "string",
  "emailOther": "string",
  "externalReference": "string",
  "fax": {...},
  "firstName": "string",
  "jobRole": "string",
  "jobTitle": "string",
  "lastName": "string",
  "mobile": {...},
  "phoneBusiness": {...},
  "phoneOther": {...},
  "salutation": "MR",
  "title": "string"
}
<...>
    <emailBusiness>string</emailBusiness>
    <emailOther>string</emailOther>
    <externalReference>string</externalReference>
    <fax>...</fax>
    <firstName>string</firstName>
    <jobRole>string</jobRole>
    <jobTitle>string</jobTitle>
    <lastName>string</lastName>
    <mobile>...</mobile>
    <phoneBusiness>...</phoneBusiness>
    <phoneOther>...</phoneOther>
    <salutation>MR</salutation>
    <title>string</title>
</...>
Property Type Mandatory Description
salutation String M Valid values: MR, MS
title String O
firstName String M
lastName String M
jobTitle String O
jobRole String O
phoneBusiness Phone O Contact business phone number.
phoneOther Phone O Additional phone number.
mobile Phone O Contact mobile phone number.
fax Phone O Contact fax number.
emailBusiness String O Contact business email address.
emailOther String O Additional email address.

ContainerDefinition

"...": {
    "containers": [{...}],
    "currencyCode": "string",
    "generalCargoDescription": "string",
    "goodsValue": 0,
    "totalPieces": 0,
    "totalVolume": 0,
    "totalWeight": 0
}
<...>
    <containers>
      <container>...</container>
    </containers>
    <currencyCode>string</currencyCode>
    <generalCargoDescription>string</generalCargoDescription>
    <goodsValue>1.1</goodsValue>
    <totalPieces>1</totalPieces>
    <totalVolume>1.1</totalVolume>
    <totalWeight>1.1</totalWeight>
</...>
Property Type Mandatory Description
containers Array[Container] M Specify details per container.
generalCargoDescription String M
goodsValue BigDecimal O Value of goods in all containers.
currencyCode String C ISO 4217 three letter currency code. Mandatory if goodsValue is provided.
totalPieces Integer O Overall pieces of goods.
totalVolume BigDecimal O Overall volume of goods.
totalWeight BigDecimal O Overall weight of goods.

Container

"...": {
    "containerIndex": 0,
    "containerNumber": "",
    "containerCode": "",
    "sealNumber": "",
    "atbNumber": "",
    "references": [{...}],
    "additionalAttributes": [...]
}
<...>
  <additionalAttributes>GOH</additionalAttributes>
  <atbNumber>string</atbNumber>
  <containerCode>string</containerCode>
  <containerIndex>1</containerIndex>
  <containerNumber>string</containerNumber>
  <references>
   <reference>...</reference>
  </references>
  <sealNumber>string</sealNumber>
</...>
Property Type Mandatory Description
containerIndex Integer M Running number identifying a container.
containerNumber String C ISO 6346 container number. Required when container references are provided.
containerCode String C ISO 6346 Standard Container Code. Mandatory for SEA FCL. e.g. 22GP, 22G1, 42GP, 42UT, L5BK …
sealNumber String O
atbNumber String O
references Array[TransportOrderReference] O References on container level
additionalAttributes Array[String] O Garments on hanger: GOH, Non-operated reefer: ROH, Shippers own container: SOC

Event

"...": {
    "eventTypeIdentifier": "string",
    "eventTypeName": "string",
    "eventTimestamp": {...},
    "remark": "string",
    "containerNumber": "string",
    "eventLocation": {...},
    "additionalAttributes": [{...}]
}
<...>
    <eventTypeIdentifier>7</eventTypeIdentifier>
    <eventTypeName>DEPARTED</eventTypeName>
    <eventTimestamp>...<eventTimestamp>
    <remark>Shipment departed from VIE</remark>
    <containerNumber/>
    <eventLocation>...</eventLocation>
    <additionalAttributes>
     <additionalAttribute>...</additionalAttribute>
    </additionalAttributes>
</...>
Property Type Mandatory Description
eventTypeIdentifier String M Identifier of eventType. (Event type list)
eventTypeName String M Full name of the event.
eventTimestamp ApiDate M Date of event occurrence.
eventLocation EventLocation M Location of event occurrence.
remark String O A remark to the event.
additionalAttributes Array[EventAdditionalAttribute] C Array of additional attributes to an event.
containerNumber String O ISO 6346 container number. If provided, event will only be set on this container.

The below described list provides an overview about the main event types.

The full list of all event types can be found here.

Identifier Type Description
84 REAL Order confirmation
13 ESTIMATED Estimated cargo readiness
15 REAL Cargo ready
9 REAL PICKED UP
5 ESTIMATED Estimated departure
7 REAL DEPARTED
21 REAL PreAlert processed
1 ESTIMATED Estimated arrival
4 REAL ARRIVED
10 ESTIMATED Estimated delivery
12 REAL DELIVERED

EventLocation

"...": {
    "locationType": "string",
    "unlocodeLocation": {...},
    "iataLocation": {...},
    "addressLocation": {...},
    "freeLocation": {...}
}
<...>
    <locationType>string</locationType>
    <unlocodeLocation>...</unlocodeLocation>
    <iataLocation>...</iataLocation>
    <addressLocation>...</addressLocation>
    <freeLocation>...</freeLocation>
</...>

This defines the location of the event occurrence. Depending on the value of locationType, the corresponding object needs to be provided.

Property Type Mandatory Description
locationType String M type identifier of the location UNLOCODE, IATA, ADDRESS, FREE.
unlocodeLocation EventUnlocodeLocation C location of type UNLOCODE.
iataLocation EventIataLocation C location of type IATA.
addressLocation EventAddressLocation C location of type ADDRESS.
freeLocation EventFreeLocation C location of type FREE.

EventUnlocodeLocation

"...": {
    "unlocode": "string"
}
<...>
    <unlocode>string</unlocode>
</...>
Property Type Mandatory Description
unlocode String M UNLOCODE 5-letter location code.

EventIataLocation

"...": {
    "iataCode": "string"
}
<...>
    <iataCode>string</iataCode>
</...>
Property Type Mandatory Description
iataCode String M IATA 3-letter airport code.

EventAddressLocation

"...": {
    "city": "string",
    "street": "string",
    "postCode": "string",
    "countryCode": "string"
}
<...>
    <city>string</city>
    <street>string</street>
    <postcode>string</postcode>
    <countryCode>string</countryCode>
</...>
Property Type Mandatory Description
city String M Name of the city/location.
street String O Street address part (including house, store, door numbers).
postCode String O postal code of the city/location.
countryCode String M ISO country code (ISO 3166-1 Alpha-2).

EventFreeLocation

"...": {
    "name": "string"
}
<...>
    <name>string</name>
</...>
Property Type Mandatory Description
name String M any free-text location information.

EventAdditionalAttribute

"...": [{
    "identifier": "string",
    "value": "string"
}]
<...>
    <identifier>string</identifier>
    <value>string</value>
</...>

Some events have additional attributes e.g.: DELIVERED has an attribute POD Name, which gives information about who accepted the delivery. Please see attached excel sheet for detailed identifiers and events.

Property Type Mandatory Description
identifier String M Identifier of attribute. (Additional attributes list)
value String M Attribute value

Insurance

"...": {
    "currencyCode": "string",
    "requiredBy": "CONSIGNEE",
    "value": 0
}
<...>
    <currencyCode>string</currencyCode>
    <requiredBy>CONSIGNEE</requiredBy>
    <value>1.1</value>
</...>
Property Type Mandatory Description
value BigDecimal O Insurance value.
currencyCode String C ISO 4217 three letter currency code. Mandatory if value is provided.
requiredBy String O party/contact who requires insurance, if applicable. Valid values: SHIPPER, CONSIGNEE, PRINCIPAL

OceanCarrier

"...": {
    "name": "string",
    "scac": "string"
}
<...>
    <name>string</name>
    <scac>string</scac>
</...>
Property Type Mandatory Description
scac String M SCAC of carrier.
name String O Name of carrier.

Party

"...": {
  "accountNumber": "string",
  "city": "string",
  "contacts": [{...}],
  "countryCode": "string",
  "email": "string",
  "externalPartyIdentifier": "string",
  "externalReference": "string",
  "fax": {...},
  "matchCode": "string",
  "name": "string",
  "otherPhone": {...},
  "phone": {...},
  "state": "string",
  "street": "string",
  "zipCode": "string"
}
<...>
  <accountNumber>string</accountNumber>
  <city>string</city>
  <contacts>
   <contact>...</contact>
  </contacts>
  <countryCode>string</countryCode>
  <email>string</email>
  <externalPartyIdentifier>string</externalPartyIdentifier>
  <externalReference>string</externalReference>
  <fax>...</fax>
  <matchCode>string</matchCode>
  <name>string</name>
  <otherPhone>...</otherPhone>
  <phone>...</phone>
  <state>string</state>
  <street>string</street>
  <zipCode>string</zipCode>
</...>
Property Type Mandatory Description
accountNumber String O SPOT internal account number. If provided no additional info required.
name String C Mandatory if no accountNumber or externalPartyIdentifier is provided.
externalPartyIdentifier String O EDI-Partners identifier for a party. If provided it functions in the same way as the accountNumber
externalReference String O
matchCode String O
city String C Mandatory if no accountNumber or externalPartyIdentifier is provided.
street String C Mandatory if no accountNumber or externalPartyIdentifier is provided.
zipCode String O
state String O
countryCode String C ISO country code (ISO 3166-1 Alpha-2). Mandatory if no accountNumber or externalPartyIdentifier is provided.
phone Phone O
fax Phone O
email String O
webSite String O
otherPhone Phone O
contacts Array[Contact] O

PaymentDefinition

"...": {
  "cashOnDelivery": 0,
  "codCurrencyCode": "string",
  "letterOfCredit": "string",
  "termsOfPayment": "CASH_AGAINST_DOCUMENT"
}
<...>
  <cashOnDelivery>1.1</cashOnDelivery>
  <codCurrencyCode>string</codCurrencyCode>
  <letterOfCredit>string</letterOfCredit>
  <termsOfPayment>CASH_AGAINST_DOCUMENT</termsOfPayment>
</...>
Property Type Mandatory Description
termsOfPayment String O Defines the terms of payment.
Valid values: LETTER_OF_CREDIT, OPEN_ACCOUNT, COD, CASH_AGAINST_DOCUMENT, SHIPMENT_RELEASE_AFTER_CONFIRMATION_ONLY, PAID_IN_ADVANCE
cashOnDelivery BigDecimal C value for Cash-On-Delivery. Mandatory if termsOfPayment is set to COD
codCurrencyCode String C ISO 4217 three letter currency code. Mandatory if cashOnDeliveryValue is provided.
letterOfCreditNumber String C Mandatory if termsOfDelivery is set to LETTER_OF_CREDIT

ServiceSpecification

"...": {
  "billOfLoadingType": "EMPTY",
  "serviceDefinition": "ECONOMY",
  "specialHandlingClassification": [
    "GARMET_ON_HANGER"
  ],
  "temperatureFrom": 0,
  "temperatureTo": 0
}
<...>
  <billOfLoadingType>EMPTY</billOfLoadingType>
  <serviceDefinition>ECONOMY</serviceDefinition>
  <specialHandlingClassification>GARMET_ON_HANGER</specialHandlingClassification>
  <temperatureFrom>1.1</temperatureFrom>
  <temperatureTo>1.1</temperatureTo>
</...>
Property Type Mandatory Description
billOfLoading String O Valid values: EMPTY, EXPRESS_BL_REQUIRED, ORIGINAL_BL_REQUIRED, TELEX_RELEASE
serviceDefinition String O Valid values: ECONOMY, EXPRESS, EMERGENCY
Default if not provided: ECONOMY
specialHandlingClassification Array[String] O Valid values: GARMET_ON_HANGER, HEAVY_LIFT, HUMIDITY_CONTROLLED, OVERSIZED, ROLL_ON_OFF, TEMPERATURE_CONTROLLED, VALUABLE_CARGO
temperatureFrom Decimal C Min. temperature. Mandatory if specialHandlingClassification contains TEMPERATURE_CONTROLLED
temperatureTo Decimal C Max. temperature. Mandatory if specialHandlingClassification contains TEMPERATURE_CONTROLLED

TransportDeliveryTerm

"...": {
    "deliveryTerm": "string",
    "deliveryTermLocation": "string",
}
<...>
    <deliveryTerm>CFR</deliveryTerm>
    <deliveryTermLocation>string</deliveryTermLocation>
</...>
Property Type Mandatory Description
deliveryTerm String M 3-letter Incoterms® code. (List of Incoterms®).
deliveryTermLocation String M Location of delivery term.

More information regarding the Incoterms® rules can be found at the Incoterms® rules 2010 page of the International Chamber of Commerce.

“Incoterms” is a trademark of the International Chamber of Commerce.

TransportOrderReference

"...": {
    "referenceType": "string",
    "referenceKey": "string",
    "referenceNumber": "string"
}
<...>
    <referenceType>string</referenceType>
    <referenceKey>string</referenceKey>
    <referenceNumber>string</referenceNumber>
</...>
Property Type Mandatory Description
referenceType String M Type of reference. (List of SPOT reference types)
referenceKey String O Key for referenceNumber assignment (For example EDI-Partner reference type).
referenceNumber String M Reference value.

Invoice

POST Invoice

messageType: Invoice

{
    "messageHeader": {...},
    "invoice": {...}
}
<?xml version="1.0" encoding="UTF-8" ?>
<ediMessage>
    <messageHeader>...</messageHeader>
    <invoice>...</invoice>
</ediMessage>

SFTP folder if provided on our SFTP and not pushed to partner SFTP: /out/invoicing/invoice

Sample files:

The sample files provided are based on real invoices where parties and references have been changed for privacy reasons.

You can also get into contact with our Integration Competence Center and we will provide you with real examples based on your shipments.

Property Type Mandatory Description
messageHeader MessageHeader M Message Header information
invoice Invoice M Invoice information

Invoice

"...": {
  "invoiceHeader": {...},
  "invoicePositions": [{...}]
}
<...>
  <invoiceHeader>...</invoiceHeader>
  <invoicePositions>  
    <invoicePosition>...</invoicePosition>
  </invoicePositions>
</...>
Property Type Mandatory Description
invoiceHeader InvoiceHeader M Invoice header information
invoicePositions Array[InvoicePositions] M Invoice positions information

InvoiceHeader

"...": {
    "invoiceNumber": "AUT 606350/2022",
    "invoicingParty": {...},
    "invoiceRecipient": {...},
    "invoiceNetValue": 19362.00,
    "invoiceVatValue": 0.00,
    "invoiceGrossValue": 19362.00,
    "invoiceCurrencyCode": "EUR",
    "localNetValue": 19362.00,
    "localVatValue": 0.00,
    "localGrossValue": 19362.00,
    "localCurrencyCode": "EUR",
    "localExchangeRate": 1.00,
    "voucherType": "invoice",
    "collectiveInvoice": false,
    "invoiceDate": "2022-01-28",
    "issueDate": "2022-01-28",
    "periodOfPayment": 60,
    "dueDateOfPayment": "2022-02-10"
}
<...>
     <invoiceNumber>AUT 606350/2022</invoiceNumber>
     <invoicingParty>...</invoicingParty>
     <invoiceRecipient>...</invoiceRecipient>
     <invoiceNetValue>19362.00</invoiceNetValue>
     <invoiceVatValue>0.00</invoiceVatValue>
     <invoiceGrossValue>19362.00</invoiceGrossValue>
     <invoiceCurrencyCode>EUR</invoiceCurrencyCode>
     <localNetValue>19362.00</localNetValue>
     <localVatValue>0.00</localVatValue>
     <localGrossValue>19362.00</localGrossValue>
     <localCurrencyCode>EUR</localCurrencyCode>
     <localExchangeRate>1.00</localExchangeRate>
     <voucherType>invoice</voucherType>
     <collectiveInvoice>false</collectiveInvoice>
     <invoiceDate>2022-01-28</invoiceDate>
     <issueDate>2022-01-28</issueDate>
     <periodOfPayment>13</periodOfPayment>
     <dueDateOfPayment>2022-02-10</dueDateOfPayment>
</...>
Property Type Mandatory Description
invoiceNumber String M Invoice or creditNote number. E.g. AUT 999999/2022.
invoicingParty InvoicingParty M Party that is issueing the invoice
invoiceRecipient InvoicingParty M Party receiving the invoice
invoiceNetValue BigDecimal M Net value in document currency
invoiceVatValue BigDecimal M Vat value in document currency
invoiceGrossValue BigDecimal M Gross value in document currency
invoiceCurrencyCode BigDecimal M Currency code in document currency
localNetValue BigDecimal M Net amount in local currency
localVatValue BigDecimal M VAT amount in local currency
localGrossValue BigDecimal M Gross value in local currency
localCurrencyCode BigDecimal M Currency code in local currency
localExchangeRate BigDecimal M Exchange rate local
voucherType BigDecimal M Information about the document type. Valid values: invoice, crediNote, storno
referencedInvoiceNumber String C Mandatory only for credit notes, identifies the original invoice
collectiveInvoice Boolean M Collective invoice confirmation. Collective invoice contains multiple invoice positions
invoiceDate ApiDate M Document creation date
issueDate ApiDate M Document issue date
periodOfPayment Integer M Period of payment in days
dueDateOfPayment ApiDate M Due date of payment

InvoicePositions

"...": {
    "sequenceNumber": 1,
    "positionInvoiceNumber": "AUT 606350/2022",
    "positionReference": "111111",
    "spotId": "111111111",
    "customerReference": "test",
    "serviceDateFrom": "2022-01-28",
    "positionNetValue": 19362.00,
    "positionVatValue": 0.00,
    "positionGrossValue": 19362.00,
    "positionCurrencyCode": "EUR",
    "positionLocalNetValue": 19362.00,
    "positionLocalVatValue": 0.00,
    "positionLocalGrossValue": 19362.00,
    "positionLocalCurrencyCode": "EUR",
    "positionLocalExchangeRate": 1.00,
    "positionDescription": "SPOT-ID: 111111111",
    "costBreakdownLines": [{...}],
    "orderNumbers": [...],
    "shipmentDetails": [{...}],
    "freeTexts": [...],
    "accountingTexts": [...]
}
<...>
    <sequenceNumber>1</sequenceNumber>
    <positionInvoiceNumber>AUT 606350/2022</positionInvoiceNumber>
    <positionReference>111111</positionReference>
    <spotId>111111111</spotId>
    <customerReference>test</customerReference>
    <serviceDateFrom>2022-01-28</serviceDateFrom>
    <serviceDateTo>2022-01-28</serviceDateTo>
    <positionNetValue>19362.00</positionNetValue>
    <positionVatValue>0.00</positionVatValue>
    <positionGrossValue>19362.00</positionGrossValue>
    <positionCurrencyCode>EUR</positionCurrencyCode>
    <positionLocalNetValue>19362.00</positionLocalNetValue>
    <positionLocalVatValue>0.00</positionLocalVatValue>
    <positionLocalGrossValue>19362.00</positionLocalGrossValue>
    <positionLocalCurrencyCode>EUR</positionLocalCurrencyCode>
    <positionLocalExchangeRate>1.00</positionLocalExchangeRate>
    <positionDescription>SPOT-ID: 111111111</positionDescription>
    <costBreakdownLines>...</costBreakdownLines>
    <orderNumbers>...</orderNumbers>
    <shipmentDetails>...</shipmentDetails>
    <freeTexts>...</freeTexts>
    <accountingTexts>...</accountingTexts>
</...>
Property Type Mandatory Description
sequenceNumber Integer M Invoice position iteration. Starts with 1.
positionInvoiceNumber String M Invoice number
positionReference String M Position number
spotId String M Shipment number in SPOT
customerReference String M Customer order reference
serviceDateFrom Date M Date on which services rendered
positionNetValue BigDecimal M Net value
positionVatValue BigDecimal M Vat value
positionGrossValue BigDecimal M Gross value
positionCurrencyCode String M Currency code
positionLocalNetValue BigDecimal M Local net value
positionLocalVatValue BigDecimal M Local vat value
positionLocalGrossValue BigDecimal M Local gross value
positionLocalCurrencyCode String M Local currency code
positionLocalExchangeRate BigDecimal M Local exchange rate
positionDescription String M SPOT-ID (Shipment number)
costBreakdownLines Array[CostBreakdownLines] M Additional cost breakdown lines
orderNumbers Array[String] O Customer order numbers
shipmentDetails Array[ShipmentDetails] M Additional shipment details
freeTexts Array[String] O Additional free text
accountingTexts Array[String] M Additional bank and payment terms details

CostBreakdownLines

"...": {
    "lineIndex": 1,
    "costType": "10",
    "costTypeText": "Air Freight",
    "netAmount": 20.00,
    "grossAmount": 25.00,
    "vatAmount": 5.00,
    "vatPercentage": 25.00
}
<...>
    <lineIndex>1</lineIndex>
    <costType>10</costType>
    <costTypeText>Air Freight</costTypeText>
    <netAmount>20.00</netAmount>
    <grossAmount>25.00</grossAmount>
    <vatAmount>5.00</vatAmount>
    <vatPercentage>25.00</vatPercentage>
</...>
Property Type Mandatory Description
lineIndex Integer M Position line iteration. Starts with 1.
costType String M Position line type code identifier
costTypeText String M Posiition line short description
netAmount BigDecimal M Net value
grossAmount BigDecimal M Gross value
vatAmount BigDecimal M VAT amount
vatPercentage BigDecimal M VAT percentage

ShipmentDetails

"...": {
    "deliveryTermCode": "CIF",
    "mainModality": "SEA",
    "mainCategory": "FCL",
    "shipper": {...},
    "consignee": {...},
    "mawb": "XXXXX4444444444",
    "hawb": "XXXX33333333333",
    "mbl": "XXXXX6666666666",
    "hbl": "XXXX2222222222222",
    "vesselName": "Okee Alicia",
    "portOfLoading": "DEHAM",
    "portOfDischarge": "HAIFA",
    "etd": "2022-06-04",
    "eta": "2022-06-04",
    "containers": [{...}],
    "containerNumbers": [...],
    "cargoDetails": [{...}]
}
<...>
    <deliveryTermCode>CIF</deliveryTermCode>
    <mainModality>SEA</mainModality>
    <mainCategory>FCL</mainCategory>
    <shipper>...</shipper>
    <consignee>...</consignee>
    <mawb>XXXXX4444444444</mawb>
    <hawb>XXXX33333333333</hawb>
    <mbl>XXXXX6666666666</mbl>
    <hbl>XXXX2222222222222</hbl>
    <vesselName>Okee Alicia</vesselName>
    <portOfLoading>DEHAM</portOfLoading>
    <portOfDischarge>HAIFA</portOfDischarge>
    <etd>2022-06-04</etd>
    <eta>2022-06-04</eta>
    <containers>...</containers>
    <containerNumbers>...</containerNumbers>
    <cargoDetails>...</cargoDetails>
</...>
Property Type Mandatory Description
deliveryTermCode String M 3-letter Incoterms® code. (List of Incoterms®).
mainModality String M Modality of transport. Valid values: AIR, SEA, ROAD, RAIL
mainCategory String M Defines the subtype of the transport modality. Mandatory for SEA & ROAD. Valid values for ROAD: FTL, LTL, GROUPAGE. Valid values for SEA: FCL, LCL, REEFER
shipper InvoicingParty M Shipper
consignee InvoicingParty M Consignee
mawb String O Master-AWB number
hawb String O House-AWB number
mbl String O Master-BoL number
hbl String O House-BoL number
vesselName String O Name of carrier vessel
portOfLoading String O UNLOCODE 5-letter location code.
portOfDischarge String O UNLOCODE 5-letter location code.
etd String O Estimated / Expected Time of Departure
eta String O Estimated / Expected Time of Arrival
containers InvoicingContainers O Containers details
containerNumbers [Array]String O List of all available container numbers
cargoDetails InvoicingCargoDetails O Overall cargo description

Invoicing Common Objects

InvoicingParty

"...": {
    "accountNumber": "11111",
    "name1": "CARGO-PARTNER",
    "name2": "string",
    "name3": "string",
    "street": "Teststreet 20",
    "city": "VIENNA",
    "zipCode": "1010",
    "countryCode": "AT",
    "vatId": "AT5222349705",
    "taxNumber": "3222339705",
    "commercialRegisterNumber": "322-233-9705"
}
<...>
    <accountNumber>11111</accountNumber>
    <name1>CARGO-PARTNER</name1>
    <name2>string</name2>
    <name3>string</name3>
    <street>Teststreet 20</street>
    <city>VIENNA</city>
    <zipCode>1010</zipCode>
    <countryCode>AT</countryCode> 
    <vatId>AT5222349705</vatId>   
    <taxNumber>3222339705</taxNumber>    
    <commercialRegisterNumber>322-233-9705</commercialRegisterNumber>     
</...>
Property Type Mandatory Description
accountNumber String M SPOT internal account number. This is used to associate the invoice with the company or office
name1 String M
name2 String O
name3 String O
street String M
city String M
zipCode String M
countryCode String M ISO country code (ISO 3166-1 Alpha-2).
vatId String C Only available & mandatory for InvoicingRecipient & InvoicingParty
taxNumber String C Only available & mandatory for InvoicingRecipient & InvoicingParty
commercialRegisterNumber String C Only available & mandatory for InvoicingRecipient & InvoicingParty

InvoicingContainers

"...": {
    "containerNumber": "XXGU6079444",
    "containerDimensionCode": "40",
    "packageQuantity": 20,
    "packageTypeCode": "PAL",
    "descriptionOfGoods": "ANY PARTS",
    "grossWeight": 3195.590,
    "measureOfWeight": "kg",
    "volume": 25.008,
    "measureOfVolume": "m³"
}
<...>
    <containerNumber>XXGU6079444</containerNumber>
    <containerDimensionCode>40</containerDimensionCode>
    <packageQuantity>20</packageQuantity>
    <packageTypeCode>PAL</packageTypeCode> 
    <descriptionOfGoods>ANY PARTS</descriptionOfGoods>   
    <grossWeight>3195.590</grossWeight>    
    <measureOfWeight>kg</measureOfWeight>    
    <volume>25.008</volume> 
    <measureOfVolume></measureOfVolume>  
</...>
Property Type Mandatory Description
containerNumber String O ISO 6346 container number. Required when container references are provided.
containerDimensionCode String O ISO 6346 container dimension Code. Mandatory for SEA FCL. e.g. 22GP, 45HC.
packageQuantity Integer O Package quantity
packageTypeCode String O SPOT package type code (Package type code list)
descriptionOfGoods String O Goods description on container level
grossWeight BigDecimal O Weight of goods
measureOfWeight String O Measure of weight in kg
volume BigDecimal O Volume of goods
measureOfVolume String O Measure of volume in m³

InvoicingCargoDetails

"...": {
    "cargoDescription": "ANY DESCRITON OF THE CARGO",
    "grossWeight": 11409.49,
    "chargeableWeight": 11409.49,
    "measureOfWeight": "kg",
    "volume": 82.566,
    "measureOfVolume": "m³"
}
<...>
    <cargoDescription>ANY DESCRITON OF THE CARGO</cargoDescription>
    <grossWeight>11409.49</grossWeight>
    <chargeableWeight>11409.49</chargeableWeight>
    <measureOfWeight>kg</measureOfWeight> 
    <volume>82.566</volume>   
    <measureOfVolume></measureOfVolume>    
</...>
Property Type Mandatory Description
cargoDescription String O Cargo description overall per position
grossWeight BigDecimal O Gross weight of goods per position
chargeableWeight BigDecimal O Chargeable weight of goods per position
measureOfWeight String O Measure of weight in kg
volume BigDecimal O Volume of goods per position
measureOfVolume String O Measure of volume in m³

Logistics

Items

CREATE/GET Items

messageType: logistics.items

{
    "messageHeader":{...},
    "items":[{...}]
}
<?xml version="1.0" encoding="UTF-8" ?>
<ediMessage>
    <messageHeader>...</messageHeader>
    <items>
        <item>...</item>
    </items>
</ediMessage>

Create items in logistics management system.

Filename format: <location>_<operative>_IM_<YYYYMMDD>_<uniqueId>.<extensions>

FTP folder: /in/logistics/items

Sample files

Property Type Mandatory Description
messageHeader MessageHeader M Message header information
items Array[Item] M Item objects

Item

"...": {
        "warehouse": {...},
        "itemCode": "ART-8456",
        "itemDescription1": "Article name",
        "itemDescription2": "Some more",
        "itemDescription3": "",
        "itemDescription4": "",
        "matchCode": "FIND-ME",
        "clearingUnit": "156446",
        "itemFamily": "A",
        "itemGroup": "B",
        "itemSubGroup": "C",
        "originCountryCode": "AT",
        "itemConfiguration": {....},
        "packagingUnits": [{....}]
    }
<...>
    <warehouse>...</warehouse>
    <itemCode>ART-8456</itemCode>
    <itemDescription1>Article name</itemDescription1>
    <itemDescription2>Some more</itemDescription2>
    <itemDescription3></itemDescription3>
    <itemDescription4></itemDescription4>
    <matchCode>FIND-ME</matchCode>
    <clearingUnit>156446</clearingUnit>
    <itemFamily>A</itemFamily>
    <itemGroup>B</itemGroup>
    <itemSubGroup>C</itemSubGroup>
    <originCountryCode>AT</originCountryCode>
    <itemConfiguration>...</itemConfiguration>
    <packagingUnits>
        <packagingUnit>...</packagingUnit>
    </packagingUnits>
</...>
Property Type Length Mandatory Description
warehouse Warehouse M Warehouse information.
itemCode String 20 M Item code of customer, used as reference for receipt/dispatch; no leading spaces
itemDescription1 String 35 M Item description, name
itemDescription2 String 35 O Item description, additional text
itemDescription3 String 35 O Item description, additional text
itemDescription4 String 35 O Item description, additional text
matchCode String 35 O Matchcode, additional search attribute
clearingUnit String 15 O HS-code for customs clearance
itemFamily String 3 O Additional item attribute, can be used as an additional dimension for grouping and filtering reports data
itemGroup String 3 O Additional item attribute, can be used as an additional dimension for grouping and filtering reports data
itemSubGroup String 3 O Additional item attribute, can be used as an additional dimension for grouping and filtering reports data
originCountryCode String 2 O Country code of item origin
itemConfiguration ItemConfiguration O Optional configuration for general item handling
packagingUnits Array[PackagingUnit] 1 - 6 M Packaging units of the item, level 1 is PCS

ItemConfiguration

"...": {
    "receiptDispatchEnabled": true,
    "eWarehouseEnabled": true,
    "allocationNumberEnabled": false,
    "batchNumberReceiptEnabled": false,
    "batchNumberDispatchEnabled": false,
    "serialNumberDispatchEnabled": false,
    "fifoLifo": "FIFO",
    "fifoDateType": "receipt",
    "minimalStock": 10,
    "maximalStock": 1000,
    "reorderStock": 50,
    "blockReason": ""
}
<...>
    <receiptDispatchEnabled>true</receiptDispatchEnabled>
    <eWarehouseEnabled>true</eWarehouseEnabled>
    <allocationNumberEnabled>false</allocationNumberEnabled>
    <batchNumberReceiptEnabled>false</batchNumberReceiptEnabled>
    <batchNumberDispatchEnabled>false</batchNumberDispatchEnabled>
    <serialNumberDispatchEnabled>false</serialNumberDispatchEnabled>
    <fifoLifo>FIFO</fifoLifo>
    <fifoDateType>receipt</fifoDateType>
    <minimalStock>10</minimalStock>
    <maximalStock>1000</maximalStock>
    <reorderStock>50</reorderStock>
    <blockReason></blockReason>
</...>
Property Type Length Mandatory Description
receiptDispatchEnabled Boolean O If enabled, receipt/dispatch of item is allowed
eWarehouseEnabled Boolean O If enabled, item will be shown in eWarehouse
allocationNumberEnabled Boolean O If enabled, the allocation numbers of items need to be recorded/considered on receipt/dispatch
batchNumberReceiptEnabled Boolean M If enabled, the batch numbers of items need to be recorded on receipt
batchNumberDispatchEnabled Boolean M If enabled, the batch numbers of items need to be recorded on dispatch. Is only effective, if “batchNumberReceiptEnabled” is also enabled.
serialNumberDispatchEnabled Boolean O If enabled, the serial numbers of items need to be recorded on dispatch.
fifoLifo String 4 O FIFO or LIFO
fifoDateType String 15 O Distinction on which date the FIFO order depends (expiration/production/receipt)
minimalStock Integer O Minimal stock quantity
maximalStock Integer O Maximal stock quantity
reorderStock Integer O Reorder stock quantity
blockReason String 3 O Block Reason, default proposal for items receipt

Receipt Avisos

CREATE Receipt Avisos

messageType: logistics.receiptAviso

{
    "messageHeader":{...},
    "receiptAviso":{...}
}
<?xml version="1.0" encoding="UTF-8" ?>
<ediMessage>
    <messageHeader>...</messageHeader>
    <receiptAviso>...</receiptAviso>
</ediMessage>

Create receipt avisos in logistics management system.

Filename format: <location>_<operative>_RA_<YYYYMMDD>_<uniqueId>.<extensions>

FTP folder: /in/logistics/receiptAvisos

Sample files

Property Type Mandatory Description
messageHeader MessageHeader M Message header information
receiptAviso ReceiptAviso M Receipt aviso

ReceiptAviso

"...": {
    "warehouse": {...},
    "customerReference1": "REF/8345",
    "customerReference2": "0015430",
    "supplierCode": "9997-SP",
    "supplierReference": "SUP44",
    "forwarderCode": "56435",
    "forwarderReference": "974-456",
    "comment": "attention please!",
    "goodsInDate": {...},
    "positions": [{...}],
}
<...>
    <warehouse>...</warehouse>
    <customerReference1>REF/8345</customerReference1>
    <customerReference2>0015430</customerReference2>
    <supplierCode>9997-SP</supplierCode>
    <supplierReference>SUP44</supplierReference>
    <forwarderCode>56435</forwarderCode>
    <forwarderReference>974-456</forwarderReference>
    <comment>attention please!</comment>
    <goodsInDate>...</goodsInDate>
    <positions>
        <position>...</position>
    </positions>
</...>
Property Type Length Mandatory Description
warehouse Warehouse M Warehouse information
customerReference1 String 35 M customer reference 1
customerReference2 String 35 O customer reference 2
supplierCode String 13 O WMS supplier code (Default: if not specified the warehouse/operative is taken)
supplierReference String 35 O Reference of supplier
forwarderCode String 13 O WMS forwarder code. Needs to be aligned with operational business contact.
forwarderReference String 35 O Reference of forwarder
comment String 180 O Comments to the aviso
goodsInDate ApiDate M Planned entry date of goods into warehouse, time is not used
positions Array[ReceiptAvisoPosition] M Receipt aviso positions

ReceiptAvisoPosition

"...": {
        "clientPositionNumber": "010",
        "quantity": 8,
        "variableQuantity": 4,
        "itemCode": "ART-8456",
        "itemCodeClient": "SUPART-1221",
        "batchNumber": "1654863",
        "allocationNumber": "44",
        "packagingType": "PAL",
        "mheReference": "SSCC-Number",
        "productionDate": {...},
        "bestBeforeDate": {...},
    }
<...>
    <clientPositionNumber>010</clientPositionNumber>
    <quantity>8</quantity>
    <variableQuantity>4</variableQuantity>
    <itemCode>ART-8456</itemCode>
    <itemCodeClient>SUPART-1221</itemCodeClient>
    <batchNumber>1654863</batchNumber>
    <allocationNumber>44</allocationNumber>
    <packagingType>PAL</packagingType>
    <mheReference>SSCC-Number</mheReference>
    <productionDate>...</productionDate>
    <bestBeforeDate>...</bestBeforeDate>
</...>
Property Type Length Mandatory Description
clientPositionNumber String 5 O Position number from customer
quantity Integer 10 M Quantity in pieces (packing unit, smallest unit)
variableQuantity Integer 10,4 O Variable Quantity (running meter)
itemCode String 20 M Item number defined in item master database, no leading spaces
itemCodeClient String 20 O Item number provided by client, e.g. supplier item code
batchNumber String 35 O Batch number
allocationNumber String 35 O Allocation number, if item is reserved for a project for example
packagingType String 3 O Packing unit e.g. PAL. Needs to be aligned with the operational business contact.
mheReference String 35 O Reference MHE (= Mechanical Handling Equipment), e.g. SSCC-Number
productionDate ApiDate O Goods production date (if applicable to item), time is not used
bestBeforeDate ApiDate C Goods expiration date (if applicable to item), time is not used

Receipt Orders

CREATE Receipt Order

messageType: logistics.receiptOrder

{
    "messageHeader":{...},
    "receiptOrder":{...}
}
<?xml version="1.0" encoding="UTF-8" ?>
<ediMessage>
    <messageHeader>...</messageHeader>
    <receiptOrder>...</receiptOrder>
</ediMessage>

Create receipt orders in logistics management system.

Filename format: <location>_<operative>_RO_<YYYYMMDD>_<uniqueId>.<extensions>

FTP folder: /in/logistics/receiptOrders

Sample files

Property Type Mandatory Description
messageHeader MessageHeader M Message header information
receiptOrder ReceiptOrder M Receipt order

ReceiptOrder

"..." : {
    "warehouse": {...},
    "customerReference1": "AB-123456",
    "customerReference1": "",
    "supplierCode": "SUP44",
    "supplierReference": "9997-SP",
    "forwarderCode": "56435",
    "forwarderReference": "974-456",
    "comment": "Glass - Fragile!",
    "receiverCode": "S-845",
    "positions": [{...}],
}
<...>
    <warehouse>...</warehouse>
    <customerReference1>AB-123456</customerReference1>
    <customerReference2></customerReference2>
    <supplierCode>SUP44</supplierCode>
    <supplierReference>9997-SP</supplierReference>
    <forwarderCode>56435</forwarderCode>
    <forwarderReference>974-456</forwarderReference>
    <comment>Glass - Fragile!</comment>
    <receiverCode>S-845</receiverCode>
    <positions>
        <position>...</position>
    </positions>
</...>
Property Type Length Mandatory Description
warehouse Warehouse M Warehouse information
customerReference1 String 35 M customer reference 1
customerReference2 String 35 O customer reference 2
supplierCode String 13 O WMS supplier code (Default: if not specified the warehouse/operative is taken)
supplierReference String 35 O Reference of supplier
forwarderCode String 13 O WMS forwarder code
forwarderReference String 35 O Reference of forwarder
comment String 60 O Comments to the receipt order
receiverCode String 13 O WMS receiver code, if the goods receiver is already known
positions Array[ReceiptOrderPosition] M Receipt order positions

ReceiptOrderPosition

"...": {
        "clientPositionNumber": "010",
        "quantity": 8,
        "itemCode": "ART-8456",
        "batchNumber": "1654863",
        "allocationNumber": "44",
        "customsReference": "576438",
        "packagingType": "PAL",
        "mheReference": "SSCC-Number",
        "blockReason": "QLT",
        "productionDate": {...},
        "bestBeforeDate": {...},
    }
<...>
    <clientPositionNumber>010</clientPositionNumber>
    <itemCode>ART-8456</itemCode>
    <quantity>8</quantity>
    <batchNumber>1654863</batchNumber>
    <allocationNumber>44</allocationNumber>
    <customsReference>576438</customsReference>
    <packagingType>PAL</packagingType>
    <mheReference>SSCC-Number</mheReference>
    <blockReason>QLT</blockReason>
    <productionDate>...</productionDate>
    <bestBeforeDate>...</bestBeforeDate>
</...>
Property Type Length Mandatory Description
clientPositionNumber String 5 O Position number from customer
itemCode String 20 M Item number defined in item master database,no leading spaces
quantity Integer 10 M Quantity in pieces (packing unit,smallest unit)
batchNumber String 35 O Batch number
allocationNumber String 35 O Allocation number, if item is reserved for a project for example
customsReference String 35 O Customs tariff code
packagingType String 3 O Packing unit e.g. PAL, Needs to be aligned with the operational business contact.
mheReference String 35 O Reference MHE (=Mechanical Handling Equipment), e.g. SSCC-Number
blockReason String 3 O Reason for block QLT Quality check, GW Locked goods (damage)
productionDate ApiDate O Production date (if applicable to item), time is not used
bestBeforeDate ApiDate O Goods expiration date (if applicable to item), time is not used

Receipt Confirmations

GET Receipt Confirmations

messageType: logistics.receiptConfirmation

{
    "messageHeader":{...},
    "receiptOrderConfirmation":{...}
}
<?xml version="1.0" encoding="UTF-8" ?>
<ediMessage>
    <messageHeader>...</messageHeader>
    <receiptConfirmation>...</receiptConfirmation>
</ediMessage>

Filename format: <location>_<operative>_RC_<YYYYMMDD>_<uniqueId>.<extensions>

FTP folder: /out/logistics/receiptConfirmations

Sample files

Property Type Mandatory Description
messageHeader MessageHeader M Message header information
receiptConfirmation ReceiptConfirmation M Receipt confirmation

ReceiptConfirmation

"...": {
    "warehouse": {...},
    "receiptOrderId": 87954,
    "customerReference1": "AB-123456",
    "customerReference1": "",
    "supplier": {...},
    "supplierReference": "HSFR215",
    "forwarder": {...},
    "forwarderReference": "89796F",
    "goodsInDate": {...},
    "positions": [{...}],
}
<...>
    <warehouse>...</warehouse>
    <receiptOrderId>87954</receiptOrderId>
    <customerReference1>AB-123456</customerReference1>
    <customerReference2></customerReference2>
    <supplier>...</supplier>
    <supplierReference>HSFR215</supplierReference>
    <forwarder>...</forwarder>
    <forwarderReference>89796F</forwarderReference>
    <goodsInDate>...</goodsInDate>
    <positions>
        <position>...</position>
    </positions>
</...>
Property Type Length Mandatory Description
warehouse Warehouse M Warehouse information
receiptOrderId Integer 10 M ID generated for warehouse receipt order
customerReference1 String 35 M customer reference 1
customerReference2 String 35 O customer reference 2
supplier LogisticsParty O
supplierReference String 35 O Reference of supplier
forwarder LogisticsParty O
forwarderReference String 35 O Reference of forwarder
goodsInDate ApiDate O Entry date of goods into warehouse
positions Array[ReceiptConfirmationPosition] M Receipt confirmation positions

ReceiptConfirmationPosition

"...": {
        "positionNumber": 1,
        "clientPositionNumber": "010",
        "receiptAvisoPositionNumber": "2",
        "quantity": 5,
        "variableQuantity": 4,
        "itemCode": "ART-8456",
        "itemDescription1": "Article name",
        "itemDescription2": "Some more",
        "itemDescription3": "",
        "itemDescription4": "",
        "itemVolume": 2.47,
        "measureOfVolume": "m³",
        "itemWeight": 24.63,
        "measureOfWeight": "kg",
        "eanCode": "5438245978836",
        "sscc": "SSCC-Number",
        "batchNumber": "1654863",
        "allocationNumber": "44",
        "customsReference": "8564168146",
        "packagingType": "PAL",
        "mheReference": "MHE-REF",
        "turnoverClass": "S",
        "stockRestriction": "K",
        "productionDate": {...},
        "bestBeforeDate": {...},
        "packagingUnits": [{....}]
    }
<...>
    <positionNumber>1</positionNumber>
    <clientPositionNumber>010</clientPositionNumber>
    <receiptAvisoPositionNumber>2</receiptAvisoPositionNumber>
    <quantity>5</quantity>
    <variableQuantity>4</variableQuantity>
    <itemCode>ART-8456</itemCode>
    <itemDescription1>Article name</itemDescription1>
    <itemDescription2>Some more</itemDescription2>
    <itemDescription3></itemDescription3>
    <itemDescription4></itemDescription4>
    <itemVolume>2.47</itemVolume>
    <measureOfVolume></measureOfVolume>
    <itemWeight>24.63</itemWeight>
    <measureOfWeight>kg</measureOfWeight>
    <eanCode>5438245978836</eanCode>
    <sscc>SSCC-Number</sscc>
    <batchNumber>1654863</batchNumber>
    <allocationNumber>44</allocationNumber>
    <customsReference>8564168146</customsReference>
    <packagingType>PAL</packagingType>
    <mheReference>MHE-REF</mheReference>
    <turnoverClass>S</turnoverClass>
    <stockRestriction>K</stockRestriction>
    <productionDate>...</productionDate>
    <bestBeforeDate>...</bestBeforeDate>
    <packagingUnits>
        <packagingUnit>...</packagingUnit>
    </packagingUnits>
</...>
Property Type Length Mandatory Description
positionNumber Integer 5 M Position number
clientPositionNumber String 5 O Position number from client
receiptAvisoPositionNumber String 10 M Position number from receipt aviso/order
quantity Integer 10 M Quantity in pieces (packing unit, smallest unit)
variableQuantity Integer 10,4 O Variable Quantity (running meter)
itemCode String 20 M Item number defined in item master database
itemDescription1 String 35 M Item description 1
itemDescription2 String 35 O Item description 2
itemDescription3 String 35 O Item description 3
itemDescription4 String 35 O Item description 4
itemVolume BigDecimal 10,6 O Item volume in m³
measureOfVolume String 3 C Mandatory, if itemVolume is filled. Currently always “m³”.
itemWeight BigDecimal 10,4 O Item weight in kg
measureOfWeight String 3 C Mandatory, if itemWeight is filled. Currently always “kg”.
eanCode String 13 O European Article Number
sscc String 18 O SSCC-Number
batchNumber String 35 O Batch number
allocationNumber String 35 O Allocation number, if item is reserved for a project for example
customsReference String 35 O Customs reference
packagingType String 3 O Packaging type codes: PCS, BOX, PAL
mheReference String 35 O Reference MHE (= Mechanical Handling Equipment)
turnoverClass String 1 O Optional classification based on inventory turnover ratio of the item.
stockRestriction String 20 O Optional stock restriction for specific item storage (e.g. temperature controlled).
productionDate ApiDate O Goods production date, if applicable to item
bestBeforeDate ApiDate O Goods expiration date, if applicable to item
packagingUnits Array[PackagingUnit] 1 - 6 M Packaging units of the item, level 1 is PCS

Dispatch Orders

CREATE Dispatch Orders

messageType: logistics.dispatchOrder

{
    "messageHeader":{...},
    "dispatchOrder":[{...}]
}
<?xml version="1.0" encoding="UTF-8" ?>
<ediMessage>
    <messageHeader>...</messageHeader>
    <dispatchOrder>...</dispatchOrder>
</ediMessage>

Creates a dispatch order in our warehouse system.

Filename format: <location>_<operative>_DO_<YYYYMMDD>_<uniqueId>.<extensions>

FTP folder: /in/logistics/dispatchOrders

Sample files

Property Type Mandatory Description
messageHeader MessageHeader M Message header information
dispatchOrder DispatchOrder M Dispatch order

DispatchOrder

"...": {
    "warehouse": {...},
    "customerReference1": "REF/8345",
    "customerReference2": "0015430",
    "orderReference": "ORD-987623",
    "receiver": {...},
    "deliveryDate": {...},
    "deliveryTerm": {...},
    "forwarderCode": "56435",
    "shippingMode": "",
    "serviceCode": "",
    "comment1": "Glass inside!",
    "comment2": "instructions can be here",
    "codValue": 92.70,
    "codCurrencyCode": "EUR",
    "positions": [{...}]
}
<...>
    <warehouse>...</warehouse>
    <customerReference1>"REF/8345</customerReference1>
    <customerReference2>0015430</customerReference2>
    <orderReference>ORD-987623</orderReference>
    <receiver>...</receiver>
    <deliveryDate>...</deliveryDate>
    <deliveryTerm>...</deliveryTerm>
    <forwarderCode>56435</forwarderCode>
    <shippingMode>56435</shippingMode>
    <serviceCode>56435</serviceCode>
    <comment1>Glass inside!</comment1>
    <comment2>instructions can be here</comment2>
    <codValue>92.70</codValue>
    <codCurrencyCode>EUR</codCurrencyCode>
    <positions>
        <position>...</position>
    </positions>
</...>
Property Type Length Mandatory Description
warehouse Warehouse M Information about warehouse
customerReference1 String 35 M Reference, all lines with the same reference are one dispatch order.
customerReference2 String 35 O Reference from customer.
orderReference String 35 O customer’s client order reference, if needed
receiver LogisticsParty M Receiver of dispatched goods
deliveryDate ApiDate 10 O Date of desired delivery, time is not used
deliveryTerm DeliveryTerm O Delivery term and location
forwarderCode String 13 O Forwarder code defined in forwarder master database. Align with integration manager.
shippingMode String 3 O Shipping mode for parcel orders. Has to be aligned with respective warehouse.
serviceCode String 3 O Service code for parcel orders. Has to be aligned with respective warehouse.
comment1 String 35 O short comment
comment2 String 160 O long comment
codValue BigDecimal 15,5 O Cash on delivery value
codCurrencyCode String 3 O Cash on delivery currency code
positions Array[DispatchOrderPosition] M Positions of dispatch orders

DispatchOrderPosition

"...": {
        "clientPositionNumber": "00010",
        "customerPositionReference": "8564168146",
        "quantity": 5,
        "itemCode": "ART-8456",
        "batchNumber": "1654863",
        "allocationNumber": "44",
        "customsReference": "8564168146",
        "packagingType": "PAL",
        "pricePerItem": 18.54,
        "totalPrice": 92.70,
        "currencyCode": "EUR",
    }
<...>
    <clientPositionNumber>00010</clientPositionNumber>
    <customerPositionReference>8564168146</customerPositionReference>
    <quantity>5</quantity>
    <itemCode>ART-8456</itemCode>
    <batchNumber>1654863</batchNumber>
    <allocationNumber>44</allocationNumber>
    <customsReference>8564168146</customsReference>
    <packagingType>PAL</packagingType>
    <pricePerItem>18.54</pricePerItem>
    <totalPrice>92.70</totalPrice>
    <currencyCode>EUR</currencyCode>
</...>
Property Type Length Mandatory Description
clientPositionNumber String 5 O Position number from customer
customerPositionReference String 35 O Position reference number from customer. This is a passthrough position not visible in WMS only in dispatch confirmation.
quantity Integer 10 M Quantity in pieces (packing unit level 1)
itemCode String 20 M Item number defined in item master database, no leading spaces
batchNumber String 35 O Batch number
allocationNumber String 35 O Allocation number, if item is should be taken from an allocated (reserved) stock
customsReference String 35 O customs reference of item
packagingType String 3 O packagingType for item
pricePerItem BigDecimal 15,5 O Price per item
totalPrice BigDecimal 15,5 O Total price for items
currencyCode String 3 O ISO 4217 three letter currency code

Dispatch Confirmations

GET Dispatch Confirmations

messageType: logistics.dispatchConfirmation

{
    "messageHeader":{...},
    "dispatchConfirmation":{...}
}
<?xml version="1.0" encoding="UTF-8" ?>
<ediMessage>
    <messageHeader>...</messageHeader>
    <dispatchConfirmation>...</dispatchConfirmation>
</ediMessage>

Get dispatch confirmations from logistics management system.

Filename format: <location>_<operative>_DC_<YYYYMMDD>_<uniqueId>.<extensions>

FTP folder: /out/logistics/dispatchConfirmations

Sample files

Property Type Mandatory Description
messageHeader MessageHeader M Message header information
dispatchConfirmation DispatchConfirmation M Dispatch confirmation

DispatchConfirmation

"...": {
    "warehouse": {...},
    "dispatchOrderId": 34535,
    "customerReference1": "REF/8345",
    "customerReference2": "0015430",
    "orderReference": "ORD-987623",
    "orderDate": {...},
    "receiver": {...},
    "shippingMode": "ABH",
    "deliveryTerm": {...},
    "deliveryNoteNumber": "1538",
    "forwarder": {...},
    "shipmentTrackingId": "",
    "shipmentTrackingUrl": "",
    "positions": [{...}],
    "packages": [{...}],
    "shipments": [{...}],
}
<...>
    <warehouse>...</warehouse>
    <dispatchOrderId>34535</dispatchOrderId>
    <customerReference1></customerReference1>
    <customerReference2></customerReference2>
    <orderReference></orderReference>
    <orderDate>...</orderDate>
    <receiver>...</receiver>
    <shippingMode>ABH</shippingMode>
    <deliveryTerm>...</deliveryTerm>
    <deliveryNoteNumber>1538</deliveryNoteNumber>
    <forwarder>...</forwarder>
    <shipmentTrackingId>...</shipmentTrackingId>
    <shipmentTrackingUrl>...</shipmentTrackingUrl>
    <positions>
        <position>...</position>
    </positions>
    <packages>
        <package>...</package>
    </packages>
    <shipments>
        <shipment>...</shipment>
    </shipments>
</...>
Property Type Length Mandatory Description
warehouse Warehouse M Information about warehouse
dispatchOrderId Integer O ID generated for warehouse dispatch order
customerReference1 String 35 M Reference from customer, taken from the corresponding dispatch order.
customerReference2 String 35 O Reference from customer, taken from the corresponding dispatch order.
orderReference String 35 O Order reference from customer’s client, taken from the corresponding dispatch order.
orderDate ApiDate O Dispatch order date
receiver LogisticsParty M Receiver of dispatch Confirmation
shippingMode String 3 O Valid values: ABH, SPE, PARABH=pick-up, SPE=freight forwarder, PAR=parcel service
deliveryTerm DeliveryTerm M Delivery term and location
deliveryNoteNumber String 10 O Delivery note number
forwarder LogisticsParty M Forwarder of dispatch confirmation
shipmentTrackingId String O shipment tracking id
shipmentTrackingUrl String O shipment tracking url
positions Array[DispatchConfirmationPosition] M Positions of dispatch confirmation
packages Array[DispatchConfirmationPackage] O Packages of goods dispatched
shipments Array[DispatchConfirmationShipment] O Shipments of dispatch confirmation

DispatchConfirmationPosition

"...": {
        "positionNumber": "1",
        "clientPositionNumber": "010",
        "deliveryNotePositionNumber": "010",
        "customerPositionReference": "010",
        "quantity": 15,
        "variableQuantity": 4,
        "itemCode": "ART-8456",
        "itemdescription1": "Article name",
        "itemdescription2": "Some more",
        "itemdescription3": "",
        "itemdescription4": "",
        "itemVolume": 2.47,
        "measureOfVolume": "m³",
        "itemWeight": 24.63,
        "measureOfWeight": "kg",
        "eanCode": "5438245978836",
        "sscc": "SSCC-Number",
        "batchNumber": "1654863",
        "allocationNumber": "44",
        "mhe": "MHE",
        "mheReference": "MHE-REF",
        "packagingType": "PAL",
        "customsReference": "8564168146",
        "clearingUnit": "CLU",
        "pricePerItem": 3,
        "totalPrice": 45,
        "currencyCode": "EUR",
        "productionDate": {...},
        "bestBeforeDate": {...},
        "packagingUnits": [{....}],
        "serialNumbers": ["123456789", "987654321", "01710"]
    }
<...>
    <positionNumber>1</positionNumber>
    <clientPositionNumber>010</clientPositionNumber>
    <deliveryNotePositionNumber>010</deliveryNotePositionNumber>
    <customerPositionReference>010</customerPositionReference>
    <quantity>15</quantity>
    <variableQuantity>4</variableQuantity>
    <itemCode>ART-8456</itemCode>
    <itemDescription1>Artcle name</itemDescription1>
    <itemDescription2>Some more</itemDescription2>
    <itemDescription3></itemDescription3>
    <itemDescription4></itemDescription4>
    <itemVolume>2.47</itemVolume>
    <measureOfVolume></measureOfVolume>
    <itemWeight>24.63</itemWeight>
    <measureOfWeight>kg</measureOfWeight>
    <eanCode>5438245978836</eanCode>
    <sscc>SSCC-Number</sscc>
    <batchNumber>1654863</batchNumber>
    <allocationNumber>44</allocationNumber>
    <mhe>MHE</mhe>
    <mheReference>MHE-REF</mheReference>
    <serialNumber>123456</serialNumber>
    <packagingType>PAL</packagingType>
    <customsReference>8564168146</customsReference>
    <clearingUnit>CLU</clearingUnit>
    <pricePerItem>3</pricePerItem>
    <totalPrice>45</totalPrice>
    <currencyCode>EUR</currencyCode>
    <productionDate>...</productionDate>
    <bestBeforeDate>...</bestBeforeDate>
    <packagingUnits>
        <packagingUnit>...</packagingUnit>
    </packagingUnits>
    <serialNumbers>...</serialNumbers>
</...>
Property Type Length Mandatory Description
positionNumber String 5 M Position number
clientPositionNumber String 5 O Position number from client
deliveryNotePositionNumber String 5 M Delivery note position number
customerPositionReference String 35 O Position reference from customer
quantity Integer M Quantity in pieces (packaging unit, smallest unit)
variableQuantity BigDecimal 10,4 O Variable Quantity (running meter)
itemCode String 20 M Item number defined in item master database
itemDescription1 String 35 M Item description 1
itemDescription2 String 35 O Item description 2
itemDescription3 String 35 O Item description 3
itemDescription4 String 35 O Item description 4
itemVolume BigDecimal 10,6 O Item volume
measureOfVolume String 3 C Mandatory, if itemVolume is filled. Currently always “m³”.
itemWeight BigDecimal 10,4 O Item weight
measureOfWeight String 3 C Mandatory, if itemWeight is filled. Currently always “kg”.
eanCode String 13 O European Article Number
sscc String 18 O SSCC Number
batchNumber String 35 O Batch number
allocationNumber String 35 O Allocation number, if item is reserved for a project for example
packagingType String 3 O Packaging type code of the smallest packaging unit of items.
mhe String 3 O Packaging type code of Mechanical Handling package, if position items are packaged to another package
mheReference String 35 O Reference of MHE, e.g. SSCC-Number
customsReference String 35 O Customs reference
clearingUnit String 15 O HS-code for customs clearance
pricePerItem BigDecimal 15,5 O Price per item
totalPrice BigDecimal 15,5 O Total price of position
currencyCode String 3 C ISO 4217 three letter currency code. Mandatory, if pricePerItem or totalPrice are provided.
productionDate ApiDate O Goods production date, if applicable to item.
bestBeforeDate ApiDate O Goods expiration date, if applicable to item.
packagingUnits Array[PackagingUnit] 1 - 6 M Packaging units of the item, level 1 is PCS
serialNumbers Array[String] 35 O Serial numbers

DispatchConfirmationPackage

"...": {
        "packageNumber": 1,
        "quantity": 2,
        "packagingType": "PAL",
        "packageReference": 12345,
        "handlingUnitNumber": AAAAQZ,
        "length": 120,
        "width": 80,
        "height": 50,
        "measureOfDimension": "cm",
        "volume": 0.48,
        "measureOfVolume": "m³",
        "weight": 44.63,
        "measureOfWeight": "kg",
        "trackingId": "",
        "trackingUrl": "",
        "packageItems": [{...}]
    }
<...>
    <packageNumber>1</packageNumber>
    <quantity>2</quantity>
    <packagingType>PAL</packagingType>
    <packageReference>12345</packageReference>
    <handlingUnitNumber>AAAAQZ</handlingUnitNumber>
    <length>120</length>
    <width>80</width>
    <height>50</height>
    <measureOfDimension>cm</measureOfDimension>
    <volume>0.48</volume>
    <measureOfVolume></measureOfVolume>
    <weight>44.63</weight>
    <measureOfWeight>kg</measureOfWeight>
    <trackingId>12345</trackingId>
    <trackingUrl>123</trackingUrl>
    <packageItems>
        <packageItem>...</packageItem>
    </packageItems>
</...>
Property Type Length Mandatory Description
packageNumber Integer M continuous number of package
quantity Integer M Quantity of packages
packagingType String 3 M Packaging type code of package
packageReference String 35 O package reference (for example external SSCC)
handlingUnitNumber String 6 M unique package iD given by WMS. This iD is also present on physical package label.
length Integer O Length of package
width Integer O Width of package
height Integer O Height of package
serialNumbers Array [String] 35 C Serial number
measureOfDimension String 3 C Mandatory, if length/width/height are filled. Currently always “cm”.
volume BigDecimal 10,5 O Volume of package
measureOfVolume String 3 C Mandatory, if volume is filled. Currently always “m³”.
weight BigDecimal 10,2 O Weight of package
measureOfWeight String 3 C Mandatory, if itemWeight is filled. Currently always “kg”.
trackingId String O tracking id
trackingUrl String O tracking url
packageItems Array[PackageItems] O Details for items in the package

DispatchConfirmationPackageitems

"...": {
        "itemCode": 1,
        "quantity": 2,
        "packagingType": "STK",
        "deliveryNotePositionNumber": "",
        "serialNumbers": ["123456789", "890123"]
    }
<...>
    <itemCode>1</itemCode>
    <quantity>2</quantity>
    <packagingType>STK</packagingType>
    <deliveryNotePositionNumber>12345</deliveryNotePositionNumber>
        <serialNumbers>
            <serialNumber>123456</serialNumber>
            <serialNumber>890123</serialNumber>
        </serialNumbers>
</...>
Property Type Length Mandatory Description
itemCode String 20 M item Code
quantity Integer M quantity of item in the package
packagingType Integer 3 M packaging Type
deliveryNotePositionNumber String 5 M delivery Note Position Number
serialNumbers Array[String] O serial numbers

DispatchConfirmationShipment

"...": {
        "trackingId": "1Z108551YW96458034",
        "provider": "UPS",
        "trackingURL": "...",
        "parcelShipmentURL": "...",
        "parcels": [{...}]
    }
<...>
    <trackingId>1Z108551YW96458034</trackingId>
    <provider>UPS</provider>
    <trackingURL>...</trackingURL>
    <parcelShipmentURL>...</parcelShipmentURL>
    <parcels>
        <parcel>...</parcel>
    </parcels>
</...>
Property Type Length Mandatory Description
trackingId String O Tracking Id of the shipment
provider String O Name of the provider
trackingURL String O Tracking URL
parcelShipmentURL String O Parcel shipment URL
parcels Array[DispatchConfirmationParcel] O Parcels of the shipment

DispatchConfirmationParcel

"...": {
        "licensePlate": "1Z108551YW96458034"
    }
<...>
    <licensePlate>1Z108551YW96458034</licensePlate>
</...>
Property Type Length Mandatory Description
licensePlate String O Parcel license plate

Inventory Reports

GET Inventory Reports

messageType: logistics.inventoryReport

{
    "messageHeader":{...},
    "inventoryPositions":{...}
}
<?xml version="1.0" encoding="UTF-8" ?>
<ediMessage>
    <messageHeader>...</messageHeader>
    <inventoryPositions>...</inventoryPositions>
</ediMessage>

Get inventory report for stock items.

Filename format: <location>_<operative>_IR_<YYYYMMDD>_<uniqueId>.<extensions>

FTP folder: /out/logistics/inventoryReports

Sample files

Property Type Mandatory Description
messageHeader MessageHeader M Message header information
inventoryPositions Array[InventoryPosition] M Inventory

InventoryPosition

"...": {
    "warehouse": {...},
    "itemCode": "ART-8456",
    "itemDescription1": "Article name",
    "itemDescription2": "Some more",
    "itemDescription3": "",
    "itemDescription4": "",
    "itemGroup": "A",
    "itemSubgroup": "B",
    "batchNumber": "1654863",
    "allocationNumber": "44",
    "variableQuantity": 0,
    "blockReason":"BVG",
    "bestBeforeDate": {...},
    "packagingUnits": [{...}]
}
<...>
    <warehouse>...</warehouse>
    <itemCode>ART-8456</itemCode>
    <itemDescription1>Article name</itemDescription1>
    <itemDescription2>Some more</itemDescription2>
    <itemDescription3></itemDescription3>
    <itemDescription4></itemDescription4>
    <itemGroup>A</itemGroup>
    <itemSubgroup>B</itemSubgroup>
    <batchNumber>1654863</batchNumber>
    <allocationNumber>44</allocationNumber>
    <variableQuantity>1</variableQuantity>
    <blockReason>BVG</blockReason>
    <bestBeforeDate>...</bestBeforeDate>
    <packagingUnits>
        <packagingUnit>...</packagingUnit>
    </packagingUnits>
</...>
Property Type Length Mandatory Description
warehouse Warehouse M Information about warehouse
itemCode String 20 M Item code
itemDescription1 String 35 M Item description 1
itemDescription2 String 35 O Item description 2
itemDescription3 String 35 O Item description 3
itemDescription4 String 35 O Item description 4
itemGroup String 3 O Item group
itemSubgroup String 3 O Item subgroup
batchNumber String 35 O Batch number
allocationNumber String 35 O Allocation number
variableQuantity BigDecimal 10,4 O Variable quantity
blockReason String 3 O Identifies the code for blocking reason. Determines, why the goods are blocked.
bestBeforeDate ApiDate M Expiration date
packagingUnits Array[PackagingUnit] 1 - 6 M Packaging units of the item, level 1 is PCS

Documents

Upload (PDF only)

Example filename: 201903151242_dispatchOrder_1.0_12345_deliveryNote_filename.pdf

Using this method, only the document in ‘.pdf.’ format itself is needed but the filename must strictly follow the below described format, as the for the upload necessary metadata will be parsed from the filename.

Filename format: <creationDate>_<messageType>_<messageTypeVersion>_<reference>_<documentTypeCode>_<filename>.<fileExtension>

FTP folder: <code>/in/logistics/documents</code>

Property Type Length Mandatory Description
<creationDate> String 12 M Creation date and time
<messageType> String 20 M Valid message types: items, receiptAviso, receiptOrder, dispatchOrder
<messageTypeVersion> String 3 M Will be provided by our IT contact (default 1.0)
<reference> String 35 M Reference used in the related message type (e.g. for dispatchOrder use customerReference1)
<documentTypeCode> String 20 M Type which document is uploaded. Valid types: deliveryNote, invoice, label
<filename> String 35 M Filename of upload document, can be any filename chosen by customer.
<fileExtension> String 5 M Fileextension. E.g.: .pdf

In case of Labels/Parcels, it’s important do be sure that correct data format has been choosen. Allowed document formats are: PDF Allowed size of single document/file is 5 MB max.

Upload (metadata file)

This method allows to use multiple reference types.

FTP folder: <code>/in/logistics/documents</code>

This upload version allows 2 options:

1. Upload document + metadata file

Example document name: dispatchOrder_12345.pdf <br> Example metadata name: dispatchOrder_12345.xml

In this upload version a document file and a metadata file is uploaded. It is recommended to give the metadata file the same name as the document. The optional file element of the metadata file is not used in this case.

2. Upload metadata file including Base64 encoded document

In this upload version only a metadata file is uploaded. The document itself is uploaded Base64 encoded in the optional file element of the metadata file.

In case of Labels/Parcels, it’s important do be sure that correct data format has been choosen. Allowed document formats are: PDF, ZPL. Please remember that in cace of processing of documents as metadata file, they have to be Base64 encoded. Allowed size of single document/file is 5 MB max.

MetadataDocument

{
   "filename" : "dispatchOrder_12345.pdf",
   "file":"...",
    "location" : "TES",
    "operative" : "TESTICC",
    "messageType" : "dispatchOrder",
    "messageVersion": "1.0",
    "documentType" : "deliveryNote",
   "references":[{...}]
}
<?xml version="1.0" encoding="UTF-8" ?>
<documentMetadata>
   <filename>dispatchOrder_12345.pdf</filename>
   <file>...</file>
   <location>TES</location>
   <operative>TESTICC</operative>
   <messageType>dispatchOrder</messageType>
   <messageVersion>1.0</messageVersion>
   <documentType>deliveryNote</documentType>
   <references>
   <references>...</references>
   </references>
</documentMetadata>
Property Type Mandatory Description
filename String M Filename of upload document, can be any filename chosen by customer.
file String O Base 64 encoded file.
location String M Location code of warehouse, announced by IT contact.
operative String M Operative (customer) code in warehouse, announced by IT contact.
messageType String M Valid message types: items, receiptAviso, receiptOrder, dispatchOrder
messageVersion String M Will be provided by our IT contact (default 1.0)
documentType String M The document type, e.g. deliveryNote, invoice, label, itemlabel.
references Array[DocumentUploadReferences] M Array of references used to find the order.

LogisticsDocumentUploadReferences

"...": {
    "type": "customerReference1",
    "value": "30001486"
}
<...>
    <type>customerReference1</type>
    <value>30001486</value>  
</...>
Property Type Mandatory Description
type String M Type of reference. Valid values: <code> customerReference1, customerReference2, orderNumber, invoiceNumber, deliveryNoteNumber </code>
value String M Reference value.

LogisticsDocumentUploadDetails

Please be adviced that besides Labels and Parcels, Invoices and Delivery notes could be also uploaded using options mentioned and described above - In case of such documents to be uploaded to us, please be sure that all the rules stated are followed and format for Invoices and Delivery notes is set for A4. In case of need for more details on this topic, please contact us.

Common Logistics Objects

Warehouse

"...": {
    "location":"CTO",
    "operative":"TEST"
}
<...>
    <location>CTO</location>
    <operative>TEST</operative>
</...>
Property Type Length Mandatory Description
location String 3 M Code were the Warehouse is located.
operative String 10 M Name of operative in warehouse system.

LogisticsParty

"...": {
    "partyCode": "185961",
    "name1": "TEST Party",
    "name2": "",
    "name3": "",
    "address1": "Teststreet 20",
    "address2": "",
    "city": "VIENNA",
    "zipCode": "1010",
    "state": "AT",
    "countryCode": "AT",
    "contactName": " Test Person",
    "phone": {...},
    "fax": {...},
    "email": "test@example.com",
}
<...>
    <partyCode>185961</partyCode>
    <name1>TEST Party</name1>
    <name2></name2>
    <name3></name3>
    <address1>Teststreet 20</address1>
    <address2></address2>
    <city>VIENNA</city>
    <zipCode>1010</zipCode>
    <state>AT</state>
    <countryCode>AT</countryCode>
    <contactName>Test Person</contactName>
    <phone>...</phone>
    <fax>...</fax>
    <email>test@example.com</email>
</...>
Property Type Length Mandatory Description
partyCode String 13 C WMS party code. If provided no additional information is required.
name1 String 35 C Mandatory if no partyCode is provided.
name2 String 35 O
name3 String 35 O Only used for receiver/forwarder parties in dispatch confirmations
address1 String 35 C Mandatory if no partyCode is provided.
address2 String 35 O
city String 35 C Mandatory if no partyCode is provided.
zipCode String 13 O
state String 35 O The US state name to completely define US addresses
countryCode String 3 C ISO country code (ISO 3166-1 Alpha-2). Mandatory if no partyCode is provided.
contactName String 35 O
phone Phone 25 O
fax Phone 25 O
email String 50 O

PackagingUnit

"...": {
        "packagingType": "PCS",
        "packagingLevel": 1,
        "pieces": 1,
        "eanCode": "string13Chars",
        "weight": 9,
        "measureOfWeight": "kg",
        "length": 70,
        "width": 20,
        "height": 60,
        "measureOfDimension": "cm",
        "turnoverClass": "S",
        "stockRestriction": "K"
    }
<...>
    <packagingType>PCS</packagingType>
    <packagingLevel>1</packagingLevel>
    <pieces>1</pieces>
    <eanCode>string13Chars</eanCode>
    <weight>9</weight>
    <measureOfWeight>kg</measureOfWeight>
    <length>70</length>
    <width>20</width>
    <height>60</height>
    <measureOfDimension>cm</measureOfDimension>
    <turnoverClass>S</turnoverClass>
    <stockRestriction>K</stockRestriction>
</...>
Property Type Length Mandatory Description
packagingType String 3 M Packaging type codes: PCS, BOX, PAL. By default PCS is for packagingLevel 1, but further type need to be defined with the operational business contact.
packagingLevel Integer M Packaging level 1-6 (smallest to largest unit, level 1 is PCS). By default only packaging level 1/3/6 are used and need to be defined with the operational business contact.
pieces Integer M Quantity of pieces of lowest packaging level within current level
eanCode String 13 O EAN-13 code
weight BigDecimal 10,4 O Total weight of packaging unit (will be converted/stored in kg)
measureOfWeight String 3 O Measure of weight. Default is kg, if not otherwise specified (t, kg, g, lbs)
length Integer O Length dimension (will be converted/stored in mm/cm)
width Integer O Width dimension (will be converted/stored in mm/cm)
height Integer O Height dimension (will be converted/stored in mm/cm)
measureOfDimension String 2 O Measure of dimensions. Default is cm, if not otherwise specified (m,cm, mm, ft, in)
turnoverClass String 1 O Optional classification based on inventory turnover ratio of the item.
stockRestriction String 20 O Optional stock restriction for specific item storage (e.g. temperature controlled). Only certain values are allowed. Please align with warehouse before sending.

Parcel

Parcel Order

CREATE/GET Parcel Order

messageType: parcel.parcelOrder

Create a new parcel order or get an existing order

Sample files

ParcelOrderRequest

{
    "shipment": {...},
    "participants": {...},
    "options": {...}
}
<parcelOrderRequest>
    <shipment>...</shipment>
    <participants>...</participants>
    <options>...</options>
</parcelOrderRequest>
Property Type Mandatory Description
shipment ParcelShipment M Shipment information
participants ParcelParticipants M Involved participants
options ParcelOptions O Additional options

ParcelOrder

{
    "orderId": "1881117",
    "status": "OPEN",
    "trackingIds": [
        "Z7L6SK4Z",
        "Z7L6SK50"
    ],
    "shipmentNumber": "38154512115",
    "priceExcl": "12.3",
    "priceIncl": "12.3",
    "shipment": {...},
    "participants": {...},
    "options": {...}
}
<parcelOrder>
    <orderId>1881117</orderId>
    <status>OPEN</status>
    <trackingIds>
        <trackingId>Z7L6SK4Z</trackingId>
        <trackingId>Z7L6SK50</trackingId>
    </trackingIds>
    <shipmentNumber>38154512115</shipmentNumber>
    <priceExcl>12.3</priceExcl>
    <priceIncl>12.3</priceIncl>
    <shipment>...</shipment>
    <participants>...</participants>
    <options>...</options>
</parcelOrder>
Property Type Mandatory Description
orderId String M Order ID
status String M Status of order, allowed values: OPEN, DRAFT, CLOSED, DISCREPANCIES, EXCEPTION, HIDDEN
trackingIds Array[String] M Array of tracking IDs
shipmentNumber String O Shipment number
priceExcl String O Price
priceIncl String O Price
shipment ParcelShipment M Shipment information
participants ParcelParticipants M Involved participants
options ParcelOptions O Additional options

Parcel Label

GET Parcel Labels

messageType: parcel.parcelLabel

Get labels for parcel order.

ParcelLabel

[
    {
        "id": "38154512115_label.png",
        "type": "PNG",
        "size": "A6",
        "scope": "LABEL",
        "label": "iVBORw0KGgoAAAANSUhEUgAABNUAAAbW...kJggg==",
        "options": {...}
    }
]
<parcelLabels>
    <parcelLabel>
        <id>38154512115_label.png</id>
        <type>PNG</type>
        <size>A6</size>
        <scope>LABEL</scope>
        <label>iVBORw0KGgoAAAANSUhEUgAABNUAAAbW...kJggg==</label>
        <options>...</options>
    </parcelLabel>
<parcelLabels>
Property Type Mandatory Description
id String M Label identifier (file name)
type String M File format, allowed values: PDF, GIF, EPL, ZPL, EPL2, ZPL2, PNG, HTML
size String M Label size, allowed.values: A4, A5, A6, A7, S8X4(“8x4”), S6X4(“6x4”), S4X8(“4x8”), S4X6(“4x6”), S8X11(“8x11”), S9X4(“9x4”),NA(“N/A”) ,PostSize1(“2xA5inA4”, “2x A5 in A4”). In case of non-conventional size of the label, it has to be alligned with iLogistics as a part of dedicated requirements/implementation
scope String M Document type, allowed values: LABEL, PACKAGE_LABEL, END_OF_DAY_MANIFEST, SHIPMENT_RECEIPT
label String M Base64 encoded binary data
options ParcelOptions O Additional options

Details/information about document/label upload could be found in logistics documents description.

Parcel by TrackingId

GET Parcel by TrackingId

Get events for parcel by tracking id

{
    "trackingId": "parcel-trackingId",
    "events": [
        {
            "eventDate": "2020-07-08",
            "eventTime": "16:57:52",
            "eventDescription": "Order submitted by user@doesnotexist.com",
            "eventCode": "Order Submitted",
            "originalEventCode": "Order Submitted",
            "originalEventDescription": "Order submitted by user@doesnotexist.com",
            "location": "Online / Web"
        }
    ]
}
<?xml version="1.0" encoding="UTF-8"?>
<root>
   <trackingId>parcel-trackingId</trackingId>
   <events>
      <element>
         <eventDate>2020-07-08</eventDate>
         <eventTime>16:57:52</eventTime>
         <eventDescription>Order submitted by user@doesnotexist.com</eventDescription>
         <eventCode>Order Submitted</eventCode>
         <originalEventCode>Order Submitted</originalEventCode>
         <originalEventDescription>Order submitted by user@doesnotexist.com</originalEventDescription>
         <location>Online / Web</location>
      </element>
   </events>
</root>
Property Type Mandatory Description
eventDate ApiDate M
eventTime ApiDate M
eventDescription String O
eventCode String M
originalEventCode String O
originalEventDescription String O
location String O

Common Parcel Objects

ParcelParticipants

"...": {
    "principalId": 1568269,
    "principalContacts": [
        {...}
    ],
    "shipper": {...},
    "consignee": {...},
    "pickup": {...},
    "delivery": {...}
}
<...>
    <principalId>1568269</principalId>
    <principalContacts>
        <parcelContact>...</parcelContact>
    </principalContacts>
    <shipper>...</shipper>
    <consignee>...</consignee>
    <pickup>...</pickup>
    <delivery>...</delivery>
</...>
Property Type Mandatory Description
principalId Integer M Principal identifier
principalContacts Array[ParcelContact] O Principal contact info
shipper ParcelParticipant M Shipper info
consignee ParcelParticipant M Consignee info
pickup ParcelParticipant O Pickup info
delivery ParcelParticipant O Delivery info

ParcelParticipant

"...": {
    "partyId": "1568269",
    "name": "Test-Party",
    "street": "AIRPORTSTRASSE",
    "street2": "Office nr. 3",
    "street3": "Logistics dep.",
    "city": "Vienna",
    "zip": "22180",
    "stateProvince": "Parcel-Tester",
    "country": "AUSTRIA",
    "countryCode": "AT",
    "contacts": [{...}]
}
<...>
    <partyId>1568269</partyId>
    <name>Test-Party</name>
    <street>AIRPORTSTRASSE</street>
    <street2>Office nr. 3</street2>
    <street3>Logistics dep.</street3>
    <city>Vienna</city>
    <zip>22180</zip>
    <stateProvince>Parcel-Tester</stateProvince>
    <country>AUSTRIA</country>
    <countryCode>AT</countryCode>
    <contacts>
        <parcelContact>...</parcelContact>
    </contacts>
</...>
Property Type Mandatory Description
partyId String C Party ID; if provided no other info is required
name String C Party name
street String C Street
street2 String O Optional additional address line
street3 String O Optional additional address line
city String C City
zip String C ZIP code
stateProvince String C Provice if applicable
country String C Country
countryCode String C Country code
contacts Array[ParcelContact] O Party contact persons

ParcelContact

"...": {
    "name": "Parcel-Tester",
    "phone": "43-29568-18170",
    "email": "test@example.com"
}
<...>
    <name>Parcel-Tester</name>
    <phone>43-29568-18170</phone>
    <email>test@example.com</email>
</...>
Property Type Mandatory Description
name String M Contact person name
phone String M Contact person phone
email String M Contact person email

ParcelShipment

"...": {
    "provider": "GLS",
    "serviceName": "Business Parcel",
    "productCode": "123",
    "localProductCode": "456",
    "parcelOrderStatus": "OPEN",
    "trackingId": "38154512115",
    "orderTimestamp": {...},
    "priceExcl": "1.2",
    "priceIncl": "1.2",
    "addOn": "AT",
    "label": "PNG_A6",
    "contentsDescription": "*Signo/TEST",
    "references": [{...}],
    "incoterm": "DAP",
    "dutiable": "DOCUMENTS",
    "declaredValue": 0,
    "currencyCode": "EUR",
    "dimensions": [{...}],
    "packages": [{...}]
}

Property Type Mandatory Description
trackingId String O Shipment tracking ID
references ParcelReference O Party contact persons
provider String M Shipment provider, allowed values: DHL, DPD, DPD_CH, DPD_PL, DPD_HR, IN_TIME, X_PRESS, FAN_COURIER, D_EXPRESS, FEDEX, GLS, POST_AT, UPS, TNT, USPS, PITNEY_BOWES
serviceName String M Service name
parcelOrderStatus String M Current order status, allowed values: CLOSED, DISCREPANCIES, DRAFT, EXCEPTION, HIDDEN, OPEN
productCode String M Product code
localProductCode String O Local product code
contentsDescription String M Description of content
dimensions ParcelDimension M Dimensions
packages ParcelPackage O Packages
dutiable String M Allowed values: DOCUMENTS, NON_DOCUMENTS
priceExcl Double O Price excl tax
priceIncl Double O Price incl tax
declaredValue Double O Dutiable value
currencyCode String M Currency code
label String M Label format, allowed values (see attached excel)
skipCreateLabel Boolean O Create order without generating labels
addOn String O Percentage added to reseller pricing
incoterm String M Terms of trade, allowed values: DAP, DDP
orderTimestamp ApiDate O When the order was created

ParcelDimension

"...": {
    "pieces": 2,
    "weight": 3.81,
    "length": 30,
    "width": 20,
    "height": 17,
    "declaredValue": 12.3
}

Property Type Mandatory Description
pieces Integer M
weight Double M Weight in kg
length Integer O Length in cm
width Integer O Width in cm
height Integer O Height in cm
declaredValue Double O Dutiable value of goods (required for some providers)

ParcelPackage

"...": {
    "licensePlate": "123",
    "events": [{...}],
    "status": "OPEN",
}

Property Type Mandatory Description
licensePlate String O License
events Array[ParcelEvent] O Parcel event
status String M Status, allowed values: OPEN, EXCEPTION, DISCREPANCY, DELIVERED

ParcelEvent

"...": {
    "eventTimestamp": {...},
    "eventCode": "Order Submitted",
    "eventDescription": "Order submitted by parcel-api-test",
    "originalEventCode": "Order Submitted",
    "originalEventDescription": "Order submitted by parcel-api-test",
    "location": "Online / Web",
    "signatory": "",
}

Property Type Mandatory Description
eventTimestamp ApiDate M
eventCode String M
eventDescription String O
originalEventCode String O
originalEventDescription String O
location String O
signatory String O

ParcelReference

"...": {
    "type": "GENERAL_REFERENCE",
    "reference": "os836mty"
}

Property Type Mandatory Description
type String M Reference type, allowed values: GENERAL_REFERENCE, SENDERS_REFERENCE
reference String M Reference value

ParcelOptions

"...": {
    "opt1": "val1",
    "opt2": "val2",
    ...
}

Property Type Mandatory Description
<key> String M <key, value> map

Procurement

Purchase Orders

CREATE Purchase Orders

messageType: procurement.purchaseOrder

{
    "messageHeader":{...},
    "purchaseOrder":[{...}]
}
<?xml version="1.0" encoding="UTF-8" ?>
<ediMessage>
    <messageHeader>...</messageHeader>
    <purchaseOrder>...</purchaseOrder>
</ediMessage>

Create purchase orders in our purchase order management system.

Sample files

Property Type Mandatory Description
messageHeader MessageHeader M Message Header information.
purchaseOrders PurchaseOrder M Array of purchase orders.

PurchaseOrder

"...": {
    "deliveryTerm": {...},
    "destinationCountryCode": "string",
    "lineItems": [{...}],
    "mainModality": "AIR",
    "orderDate": {...},
    "originCountryCode": "string",
    "parties": [{...}],
    "poReference": "string",
    "sourceIdentifier": "string"
}
<...>
    <deliveryTerm>...</deliveryTerm>
    <destinationCountryCode>string</destinationCountryCode>
    <lineItems>
        <lineitem>...</lineitem>
    </lineItems>
    <mainModality>AIR</mainModality>
    <orderDate>...</orderDate>
    <originCountryCode>string</originCountryCode>
    <parties>
        <party>...</party>
    </parties>
    <poReference>string</poReference>
    <sourceIdentifier>string</sourceIdentifier>
</...>
Property Type Mandatory Description
deliveryTerm DeliveryTerm M 3-letter Incoterms® code.
destinationCountryCode String M ISO country code (ISO 3166-1 Alpha-2).
lineItems Array[PurchaseOrderLineItem] M
mainModality String M Main modality for Procurement. AIR, SEA, ROAD.
orderDate ApiDate M Order date from customer.
originCountryCode String M ISO country code (ISO 3166-1 Alpha-2).
parties Array[PurchaseOrderParty] M
poReference String M Customer’s purchase order number.
sourceIdentifier String M Will be provided from us. Identification for each customer.

Common Procurements Objects

PurchaseOrderLineItem

"...": {
        "article": {...},
        "cargoReady": {...},
        "cargoReadiness": {...},
        "desiredDelivery": {...},
        "estimatedArrival": {...},
        "estimatedDeparture": {...},
        "grossWeight": 0,
        "leadTime": 0,
        "mainModality": "AIR",
        "plannedQuantity": 0,
        "preCarriageTime": 0,
        "quantity": 0,
        "reference": "string",
        "volume": 0
    }
<...>
    <article>...</article>
    <cargoReady>...</cargoReady>
    <cargoReadiness>...</cargoReadiness>
    <desiredDelivery>...</desiredDelivery>
    <estimatedArrival>...</estimatedArrival>
    <estimatedDeparture>...</estimatedDeparture>
    <grossWeight>1.1</grossWeight>
    <leadTime>1</leadTime>
    <mainModality>AIR</mainModality>
    <plannedQuantity>1</plannedQuantity>
    <preCarriageTime>1</preCarriageTime>
    <quantity>1</quantity>
    <reference>string</reference>
    <volume>1.1</volume>
</...>
Property Type Mandatory Description
article PurchaseOrderArticle M
cargoReadiness ApiDate C Mandatory if status is planned for transport.
cargoReady ApiDateFromTo C Mandatory if DDto or leadtime is empty.
desiredDelivery ApiDateFromTo C Mandatory if Cargo ready to or leadtime is empty.
estimatedArrival ApiDate C Mandatory if status is planned for transport, planning pending.
estimatedDeparture ApiDate C Mandatory if status is planned for transport, planning pending.
grossWeight BigDecimal O Weight of article in KG with packaging.
leadTime Integer O Mandatory if not defined in system settings.
mainModality String M Main modality for procurement. AIR, SEA, ROAD.
plannedQuantity Integer O Mandatory if status planned for transport is set.
mainCarriage Integer C Mandatory if not defined in system settings.
preCarriageTime Integer C Mandatory if not defined in system settings.
quantity Integer M Quantity of lineitems.
reference String M ID for each lineitem.
volume BigDecimal O Volume of article in m³.

PurchaseOrderArticle

"...": {
    "code": "string",
    "customsTariffNumber": "string",
    "dangerousGoods": {...},
    "description": "string",
    "eanCode": "string",
    "netPrice": 12.4,
    "netWeight": 1.2,
    "originCountry": "AT",
    "supplierCode": "string",
    "supplierDescription": "string"
}
<...>
    <code>string</code>
    <customsTariffNumber>string</customsTariffNumber>
    <dangerousGoods>...</dangerousGoods>
    <description>string</description>
    <eanCode>string</eanCode>
    <netPrice>12.4</netPrice>
    <netWeight>1.2</netWeight>
    <originCountry>AT</originCountry>
    <supplierCode>string</supplierCode>
    <supplierDescription>string</supplierDescription>
</...>
Property Type Mandatory Description
code String M Article code.
customsTariffNumber String O HS-code, customs tariff number.
dangerousGoods DangerousGoods M
description String M Description of article.
eanCode String O European Article Number.
netPrice BigDecimal O Final price after deducting all discounts and rebates.
netWeight BigDecimal O Weight of article in KG without packaging.
originCountry String O ISO origin country code (ISO 3166-1 Alpha-2).
supplierCode String O Supplier’s article code.
supplierDescription String O Supplier’s article description.

PurchaseOrderParty

"...": {
        "contacts": [{...}],
        "partyId": 415645,
        "partyType": "PRINCIPAL"
    }
<...>
    <contacts>
        <contact>...</contact>
    </contacts>
    <partyId>415645</partyId>
    <partyType>PRINCIPAL</partyType>
</...>
Property Type Mandatory Description
contacts Array[PurchaseOrderContact] O Array for contact persons.
partyId Integer M Customer ID (Provided from us).
partyType String M Possible types below.
partyAddress PartyAddress O If no party ID is provided the address data have to be filled out.
PartyTypes
PRINCIPAL SHIPPER PICKUP CONSIGNEE DELIVERY CONTROLLING_AGENT ORIGIN_AGENT DESTINATION_AGENT TRANSIT_HUB THIRD_PARTY NOTIFY_AGENT CONTROLLING_OFFICE HANDLING_OFFICE CUSTOMER SUPPLIER

PurchaseOrderContact

"...": {
        "contactPersonId": 0,
        "emailBusiness": "string",
        "firstName": "string",
        "lastName": "string",
        "mobile": "string",
        "phoneBusiness": "string"
    }
<...>
    <contactPersonId>1</contactPersonId>
    <emailBusiness>string</emailBusiness>
    <firstName>string</firstName>
    <lastName>string</lastName>
    <mobile>string</mobile>
    <phoneBusiness>string</phoneBusiness>
</...>
Property Type Mandatory Description
contactPersonId Integer C If an Id will be provided all other fields can be ignored.
emailBusiness String C Contact business email address.
firstName String C Mandatory if no ID is provided.
lastName String C Mandatory if no ID is provided.
mobile String C Mandatory if no ID is provided.
phoneBusiness String C Contact business phone number.

PurchaseOrderPartyAddress

"...": {
        "externalReference": 0,
        "name": "string",
        "city": "string",
        "street": "string",
        "zipCode": "string",
        "countryCode": "string",
        "state": "string",
        "email": "string",
        "phone": {...},
        "fax": {...},
        "otherPhone": {...},
    }
<...>
    <externalReference>1</externalReference>
    <name>string</name>
    <city>string</city>
    <street>string</street>
    <zipCode>string</zipCode>
    <countryCode>string</countryCode>
    <state>string</state>
    <email>string</email>
    <phone>...</phone>
    <fax>...</fax>
    <otherPhone>...</otherPhone>
</...>

If no partyId or externalReference is provided address data is mandatory.

Property Type Mandatory Description
externalReference Integer C If an Id will be provided all other fields can be ignored.
name String C
city String C Name of the city/location.
street String C Street address part (including house, store, door numbers).
zipCode String C postal code of the city/location.
countryCode String C ISO country code (ISO 3166-1 Alpha-2).
state String O
email String C
phone Phone O
fax Phone O
otherPhone Phone O

Customs

Export Customs Declarations

Create export declarations in our customs system.

Filename format: <accountId>_<customerName>_EXCD_<YYYYMMDD>_<uniqueId>.<extensions>

(S)FTP folder: /in/customs/export

Sample files

{
    "messageHeader": {...},
    "exportCustomsDeclaration": {...}
}
<ediMessage>
    <messageHeader>...</messageHeader>
    <exportCustomsDeclaration>...</exportCustomsDeclaration>
</ediMessage>
Property Type Length Mandatory Description
messageHeader MessageHeader M Message Header information.
exportCustomsDeclaration CustomsDeclaration M

Import Customs Declarations

Create import declarations in our customs system.

Filename format: <accountId>_<customerName>_IMCD_<YYYYMMDD>_<uniqueId>.<extensions>

SFTP folder: /in/customs/import

Sample files

{
    "messageHeader": {...},
    "importCustomsDeclaration": {...}
}
<ediMessage>
    <messageHeader>...</messageHeader>
    <importCustomsDeclaration>...</importCustomsDeclaration>
</ediMessage>
Property Type Length Mandatory Description
messageHeader MessageHeader M Message Header information.
importCustomsDeclaration CustomsDeclaration M

Reimport Customs Declarations

Create reimport declarations in our customs system.

Filename format: <accountId>_<customerName>_RICD_<YYYYMMDD>_<uniqueId>.<extensions>

SFTP folder: /in/customs/reimport

Sample files

{
    "messageHeader": {...},
    "reimportCustomsDeclaration": {...}
}
<ediMessage>
    <messageHeader>...</messageHeader>
    <reimportCustomsDeclaration>...</reimportCustomsDeclaration>
</ediMessage>
Property Type Length Mandatory Description
messageHeader MessageHeader M Message Header information.
reimportCustomsDeclaration CustomsDeclaration M

Customs Common Objects

CustomsDeclaration

Create declarations in our customs system.

"...": {
    "accountId": 9999,
    "orderId": "I-12345678909",
    "deliveryTerm": {...},
    "eoriNumber": "",
    "invoice": {...},
    "packaging":  {...}
}
<...>
    <accountId>9999</accountId>
    <orderId>I-12345678909</orderId>
    <deliveryTerm>...</deliveryTerm>
    <eoriNumber>...</eoriNumber>
    <invoice>...</invoice>
    <packaging>...</packaging>
</...>
Property Type Length Mandatory Description
accountId Integer 8 M Will be provided by us. Identification for each customer (i.e. exporter).
orderId String 20 M Unique identifier for invoice.
deliveryTerm DeliveryTerm M 3-letter Incoterms® code.
eoriNumber String 17 O EORI number.
invoice Invoice M Main invoice part.
packaging Packaging M Packaging of invoice.

Invoice

"...": {
    "invoiceHeader": {...},
    "invoicePositions": [{...}],
    "invoiceFooter": {...}
}
<...>
    <invoiceHeader>...</invoiceHeader>
    <invoicePositions>
        <invoicePosition>...</invoicePosition>
    </invoicePositions>
    <invoiceFooter>...</invoiceFooter>
</...>
Property Type Mandatory Description
invoiceHeader InvoiceHeader M Header of invoice.
invoicePositions Array[InvoicePosition] M Positions of invoice.
invoiceFooter InvoiceFooter M Footer of invoice.

InvoiceHeader

"...": {
    "clientCustomerNumber": "164825",
    "clientEmailAddress": "test@customermail.com",
    "clientEmailAddresses":{
      "clientEmailAddress": 
            [
            "test1@company.com",
            "test2@company.com",
            "test3@company.com"
           ]},
    "invoiceDate": {...},
    "invoiceNumber": "2011406",
    "shipper": {...},
    "consignee": {...},
    "documents": [{...}]
}
<...>
    <clientCustomerNumber>164825</clientCustomerNumber>
    <clientEmailAddresses>
      <clientEmailAddress>test1@company.com</clientEmailAddress>
      <clientEmailAddress>test2@company.com</clientEmailAddress>
      <clientEmailAddress>test3@company.com</clientEmailAddress>
    </clientEmailAddresses>
    <invoiceDate>...</invoiceDate>
    <invoiceNumber>2011406</invoiceNumber>
    <shipper>...</shipper>
    <consignee>...</consignee>
    <documents>
        <document>...</document>
    </documents>
</...>
Property Type Length Mandatory Description
clientCustomerNumber String 20 O Customer’s optional reference number.
clientEmailAddresses Array[ClientEmailAddress] O Customer’s email address for confirmations from tax authority
invoiceDate ApiDate 10 M Date of the invoice, time is not used.
invoiceNumber String 8 M Invoice number.
shipper CustomsParty M Shipper.
consignee CustomsParty M Consignee.
documents Array[CustomsDocuments] M Documents for customs declaration.

InvoicePosition

"...": {
        "itemCode": "1513",
        "itemDescription": "Printer",
        "customsTariffNumber": "8514684153",
        "deliveryNoteNumber": "11156",
        "quantity": 3,
        "measureOfQuantity": "LFM",
        "specialQuantity": 52.50,
        "specialMeasureOfQuantity": "qm",
        "totalPrice": 185.20,
        "netWeight": 2.48,
        "procedureCode": 1000,
        "additionalProcedureCode": 000,
        "countryOfOrigin": AT
        "documents": [{...}]
    }
<...>
    <itemCode>1513</itemCode>
    <itemDescription>Printer</itemDescription>
    <customsTariffNumber>8514684153</customsTariffNumber>
    <deliveryNoteNumber>11156</deliveryNoteNumber>
    <quantity>3</quantity>
    <measureOfQuantity>LFM</measureOfQuantity>
    <specialQuantity>52.50</specialQuantity>
    <specialMeasureOfQuantity>qm</specialMeasureOfQuantity>
    <totalPrice>185.20</totalPrice>
    <netWeight>2.48</netWeight>
    <procedureCode>1000</procedureCode>
    <additionalProcedureCode>000</additionalProcedureCode>
    <countryOfOrigin>AT</countryOfOrigin>
    <documents>
        <document>...</document>
    </documents>    
</...>
Property Type Length Mandatory Description
itemCode String 30 M Item code.
itemDescription String 60 M Description of item.
customsTariffNumber String 10 M Customs tariff code.
deliveryNoteNumber String 20 O Delivery note number.
quantity BigDecimal 13,2 M Quantity of regular unit of measure items.
measureOfQuantity String 4 O Regular measure of quantity for position item. (e.g. litres, meters, kilograms, etc.) According to the authority’s guideline and field “customsTariffNumber”.
specialQuantity BigDecimal 16,3 C Quantity of special unit of measure items.
specialMeasureOfQuantity String 4 O Special customs measure of quantity for position item. According to the authority’s guideline and field “customsTariffNumber”.
totalPrice BigDecimal 16,2 M Total price of position.
netWeight BigDecimal 11,2 O Weight of item (i.e. for each position) in KG w/o packaging.
procedureCode String 4 O Procedure code for the customs process
additionalProcedureCode String 3 O Additional code for detailed specification of the process
countryOfOrigin String 2 O Country of origin for the customs position
documents Array[CustomsDocuments] C Documents for customs declaration.

InvoiceFooter

"...": {
    "freightCosts": 45.66,
    "currencyCode": "EUR",
    "invoiceNumber": 196.25
}
<...>
    <freightCosts>45.66</freightCosts>
    <currencyCode>EUR</currencyCode>
    <invoiceTotal>196.25</invoiceTotal>
</...>
Property Type Length Mandatory Description
freightCosts BigDecimal 10,3 O Deductible costs of freight can be provided if necessary. If this field is left empty, the amount “0” is assumed.
currencyCode String 3 M ISO 4217 three letter currency code.
invoiceTotal BigDecimal 16,2 M Grand total of invoice.

Packaging

"...": {
    "packageType": "PK",
    "grossWeight": "196.25",
    "packagesTotal": 15
}
<...>
    <packageType>PK</packageType>
    <grossWeight>196.25</grossWeight>
    <packagesTotal>15</packagesTotal>
</...>
Property Type Length Mandatory Description
packageType String 3 O Packaging units of the article. This value needs to be always “PK”.
grossWeight BigDecimal 11,3 C Total weight of all articles in KG with packaging.
packagesTotal Integer 7 M Total packages of invoice.

CustomsParty

"...": {
    "partyCode": 654684,
    "name": "",
    "address": "Teststreet 20",
    "city": "Vienna",
    "zipCode": "1010",
    "countryCode": "AT"
}
<...>
    <partyCode>654684</partyCode>
    <name>TEST Party</name>
    <address>Teststreet 20</address>
    <city>Vienna</city>
    <zipCode>1010</zipCode>
    <countryCode>AT</countryCode>
</...>
Property Type Length Mandatory Description
partyCode Integer 20 O Customer account number, can be retrieved from operational business contact
name String 70 M
address String 35 M
city String 35 M
zipCode String 9 O
countryCode String 2 M ISO country code (ISO 3166-1 Alpha-2).

CustomsDocuments

A customs clearance requires documents. Here can you place which document will be used.

"...": {
    "documentType": "N325",
    "referenceNumber": "a12345678"
}
<...>
    <documentType>N325</documentType>
    <referenceNumber>a12345678</referenceNumber>
</...>
Property Type Length Mandatory Description
documentType String 4 M A list of all document types can be found on this PAGE. Download the Current Report (Aktueller Report) PDF document available under the Code lists (Codelisten) section.
referenceNumber String 20 M Reference for each document must be provided here.

ClientEmailAddress

A customs clearance requires documents. Here can you place which document will be used.

"...": {
            "clientEmailAddress": 
            [
              "test1@company.com",
              "test2@company.com",
              "test3@company.com"
            ]
}
<...>
    <clientEmailAddress>test1@company.com</clientEmailAddress>
    <clientEmailAddress>test2@company.com</clientEmailAddress>
    <clientEmailAddress>test3@company.com</clientEmailAddress>
</...>
Property Type Length Mandatory Description
clientEmailAddress String 60 M Client Email address

Common Objects

ApiDate

"...": {
    "date":"date",
    "time":"time",
}
<...>
    <date>string</date>
    <time>string</time>
</...>
Property Type Length Mandatory Description
date String 10 M Date in format YYYY-MM-DD as defined by ISO 8601.
time String 8 O Local time of location in format hh:mm:ss as defined by ISO 8601.

ApiDateFromTo

"...": {
    "dateFrom":"date",
    "timeFrom":"time",
    "dateTo":"date",
    "timeTo":"time",
}
<...>
    <dateFrom>string</dateFrom>
    <dateTo>string</dateTo>
    <timeFrom>string</timeFrom>
    <timeTo>string</timeTo>
</...>
Property Type Length Mandatory Description
dateFrom String 10 O Date in format YYYY-MM-DD as defined by ISO 8601.
dateTo String 10 O Date in format YYYY-MM-DD as defined by ISO 8601.
timeFrom String 8 O Local time of location in format hh:mm:ss as defined by ISO 8601.
timeTo String 8 O Local time of location in format hh:mm:ss as defined by ISO 8601.

DangerousGoods

"...": {
    "classification": "string",
    "packagingGroup": "string",
    "unNumber": "string"
}
<...>
    <classification>string</classification>
    <packagingGroup>string</packagingGroup>
    <unNumber>string</unNumber>
</...>
Property Type Mandatory Description
classification String M Dangerous goods classification
packagingGroup String C packaging group, if assigned to the IMO class
unNumber String M 4-digit number codes defined by the UN Committee of Experts on the Transport of Dangerous Goods

DeliveryTerm

"...": {
    "deliveryTermCode": "EXW",
    "deliveryTermLocation": "Location",
}
<...>
    <deliveryTermCode>EXW</deliveryTermCode>
    <deliveryTermLocation>Location</deliveryTermLocation>
</...>
Property Type Mandatory Description
deliveryTermCode String M 3-letter Incoterms® code. (List of Incoterms®).
deliveryTermLocation String M Location of delivery term.

Phone

"...": {
    "countryCode": "string",
    "areaCode": "string",
    "localNumber": "string"
}
<...>
  <areaCode>string</areaCode>
  <countryCode>string</countryCode>
  <localNumber>string</localNumber>
</...>
Property Type Mandatory Description
countryCode String O ITU phone calling country code (e.g. 43 for Austria, 1 for USA, 852 for Hong Kong).
areaCode String O Area code within the country.
localNumber String M Local connection number (If number cannot be split put whole number here.)