Shipment store

Version: 1.0, Date: 2025-12-10

Revision history

DateVersionDescription
2025-12-101.0Initial version.

Business process

  • If a delivery needs to be created without communication to the carrier, this endpoint can be used. This is used for the process where Kuehne & Nagel deliveries are provided with a pre-advice.
  • The response will not return carrier labels and carrier tracking references.

Business rules

  • Carrier & service is determined in SAP based on destination/pallet vs carrier.
    • Viya will translate the carrier and service level codes to the carrier specific codes.
  • SAP expects to NOT send commercial invoice data to Viya.

Integration touch points

Below diagram shows the interaction between WMS and Viya for the shipment store process.

Diagram

There is no line between Viya and Carrier as there is no communication done to the carrier.

Goal

Create a shipment in Viya that is not communicated to the carrier.

Request & response

For the request, response and samples: see Shipment API schema documentation.

Payload:

  • See Shipment API schema documentation for schema and samples for request and response.
  • Specifics for this integration:
    • The sscc is passed in the handlingUnits.references.reference field.
    • The sscc is the unique identifier for the handlingUnit. That field determines if a handlingUnit is new or already known. If no sscc is provided, an error is thrown.
    • If a shipment with the same shipment.reference is inserted, the shipment will be updated with the new information.
    • The shipment.reference contains the Deliverynumber from the WMS.
    • The Deliverynumber is also passed in the shipment.references.sapDelivery field.
      • This is Mandatory, if it is missing an error is returned.
    • The timewindows.pickup.requested should be used for the current or future time. This is the date for when the shipment is expected to be picked up.
    • The carrierReference can be left empty, use transportServices.shipperAssigned.carrierReference instead.
    • The shipment.serviceLevelReference can be left empty, use transportServices.shipperAssigned.serviceLevelReference instead.
    • The transportServices.shipperAssigned.carrierReference should contain the SAP code (only 0-9 and a-Z allowed), which can also be maintained in Viya.
      • Note: this value is only used if the carrierReference in the root of the message is not provided.
    • The transportServices.shipperAssigned.serviceLevelReference should contain the SAP code for the service level. Viya will translate this to the carrier specific serviceLevelReference.
      • Note: this value is only used if the serviceLevelReference in the root of the message is not provided.
    • The shipment.accounts is defaulted with a sender and transport account for the respective carrier as setup in Viya for address with reference carriers-{locationreference}.
      • The {locationReference} is the location reference of the sender, identical to the locationReference in the payload.
      • This means: if a carrier needs an account number: configure the account number in the Viya addressbook, the integration will pick it up.
      • if a carrier account is known in SAP it can be passedin the shipment.accounts section of the payload.