EDI Specifications


Overview of Shipment Status EDI

The Shipment Status EDI is an XML-based file conforming to the ANSI X.12 315 event standard. The file is structured into four key sections:


XSD Schema

This section displays the ShipmentStatusEvent schema, representing a key part of the overall EDI structure. The complete XSD schema, including all elements and attributes, is available for download at the bottom of this page.

... ... <xsd:complexType name="ShipmentStatusEventType"> <xsd:sequence> <xsd:element name="EventCode"> <xsd:simpleType> <xsd:restriction base="xsd:string"></xsd:restriction> </xsd:simpleType> </xsd:element> <xsd:element name="EventName" type="xsd:string"></xsd:element> <xsd:element name="EventDateTime" type="EventDateTimeType"></xsd:element> <xsd:element name="EventLocation" type="EventLocationType"></xsd:element> <xsd:element name="ContainerPrefix" type="xsd:string"></xsd:element> <xsd:element name="ContainerNumber" type="xsd:string"></xsd:element> <xsd:element name="ContainerCheckDigit" type="xsd:string" maxOccurs="1" minOccurs="0"></xsd:element> <xsd:element name="ContainerType" type="xsd:string" maxOccurs="1" minOccurs="0"></xsd:element> <xsd:element name="SealNumber" type="xsd:string" maxOccurs="1" minOccurs="0"></xsd:element> <xsd:element name="ContainerStatus" maxOccurs="1" minOccurs="0"> <xsd:annotation><xsd:documentation>'L' - Load / Full (Full containenr) or 'E' - Empty (empty container)</xsd:documentation></xsd:annotation> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:enumeration value="L"></xsd:enumeration> <xsd:enumeration value="E"></xsd:enumeration> </xsd:restriction> </xsd:simpleType> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="EventDateTimeType"> <xsd:sequence> <xsd:element name="DateTime" type="DateTimeType"></xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="DateTimeType"> <xsd:sequence> <xsd:element name="Date" type="xsd:string"> <xsd:annotation><xsd:documentation>Date pattern : CCYYMMDD eg. 20250207</xsd:documentation></xsd:annotation> </xsd:element> <xsd:element name="Time" type="xsd:string"> <xsd:annotation><xsd:documentation>Event time pattern: HHMM (without second) eg. 0546</xsd:documentation></xsd:annotation> </xsd:element> <xsd:element name="DateTimeQualifier"> <xsd:annotation><xsd:documentation>'A' - Actual or 'E' - Estimated</xsd:documentation></xsd:annotation> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:enumeration value="A"></xsd:enumeration> <xsd:enumeration value="E"></xsd:enumeration> </xsd:restriction> </xsd:simpleType> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="LocationType"> <xsd:sequence> <xsd:element name="LocationFunction" minOccurs="0"> <xsd:annotation> <xsd:documentation> R - Place of receipt E - Place of delivery L - Port of loading D - Port of discharge T - Transhipment port </xsd:documentation> </xsd:annotation> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:enumeration value="R"></xsd:enumeration> <xsd:enumeration value="L"></xsd:enumeration> <xsd:enumeration value="D"></xsd:enumeration> <xsd:enumeration value="E"></xsd:enumeration> <xsd:enumeration value="T"></xsd:enumeration> </xsd:restriction> </xsd:simpleType> </xsd:element> <xsd:element name="LocationCode"> <xsd:annotation><xsd:documentation>Generally, an UNLOCODE is mapped unless carrier doesn't provde any code for them. And it will be defaulted as '0'.</xsd:documentation></xsd:annotation> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:maxLength value="5"></xsd:maxLength> <xsd:minLength value="1"></xsd:minLength> </xsd:restriction> </xsd:simpleType> </xsd:element> <xsd:element name="LocationCodeQualifier"> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:maxLength value="2"></xsd:maxLength> <xsd:enumeration value="UN"></xsd:enumeration> <xsd:enumeration value="ZZ"></xsd:enumeration> </xsd:restriction> </xsd:simpleType> </xsd:element> <xsd:element name="LocationName" type="xsd:string"></xsd:element> <xsd:element name="CountryCode" maxOccurs="1" minOccurs="0" type="xsd:string"> <xsd:annotation><xsd:documentation>ISO country code</xsd:documentation></xsd:annotation> </xsd:element> <xsd:element name="StateProvinceCode" type="xsd:string" maxOccurs="1" minOccurs="0"></xsd:element> <xsd:element name="TerminalName" type="xsd:string" maxOccurs="1" minOccurs="0"></xsd:element> <xsd:element name="DateTime" type="DateTimeType" maxOccurs="1" minOccurs="0"></xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="EventLocationType"> <xsd:sequence> <xsd:element name="Location" type="LocationType"></xsd:element> </xsd:sequence> </xsd:complexType> ... ...

Sample XML File

This example highlights the ShipmentStatusEvent. For the complete XML structure and all data elements, please download the full sample file.

... ... <ShipmentStatusEvent> <EventCode>RCVE</EventCode> <EventName>Empty Container Returned</EventName> <EventDateTime> <DateTime> <Date>20250410</Date> <Time>1136</Time> <DateTimeQualifier>A</DateTimeQualifier> </DateTime> </EventDateTime> <EventLocation> <Location> <LocationCode>BRSSZ</LocationCode> <LocationCodeQualifier>UN</LocationCodeQualifier> <LocationName>SANTOS</LocationName> <DateTime> <Date>20250410</Date> <Time>1136</Time> <DateTimeQualifier>A</DateTimeQualifier> </DateTime> </Location> </EventLocation> <ContainerPrefix>PCIU</ContainerPrefix> <ContainerNumber>180535</ContainerNumber> <ContainerCheckDigit>5</ContainerCheckDigit> <ContainerType>20'</ContainerType> <SealNumber>A4230376177</SealNumber> </ShipmentStatusEvent> ... ...

Downloadable Files

Download Sample XML Download XSD Schema

FAQs

How can I get the EDI file?
The EDI file can be transferred using FTP or SFTP. For enhanced security, we strongly recommend using SFTP, which supports both password and key-based authentication.

How do I validate the XML?
You can use the provided XSD (XML Schema Definition) file to validate the XML file. An XSD defines the structure and rules for the XML.