X12 323 — Vessel Schedule and Itinerary
The 323 carries a vessel itinerary: scheduled port calls, arrival and departure windows, voyage / liner service binding.
Purpose
The 323 is issued by an ocean carrier or a port operator to publish a vessel itinerary on a liner service: port calls in order, ETA / ETD per port, voyage number, vessel Lloyd's number, service code. It is the structured form of the Vessel Schedules published on carrier websites.
It feeds supply-chain visibility tools (CargoSmart, GTNexus, INTTRA, Project44) and shipper ERPs that adjust their booking cut-off. Acknowledged by 997, it is typically broadcast to every subscriber of a given service.
Envelope structure
The 323 travels within the three X12 envelope levels (ISA/IEA,
GS/GE with functional group KS, and ST/SE).
Didactic example in release 004010:
ISA*00* *00* *ZZ*OCEANCARRIER *ZZ*BCO *260514*0830*U*00401*000000323*0*P*>~
GS*KS*OCEANCARRIER*BCO*20260514*0830*1*X*004010~
ST*323*0001~
KS1*ACME-EAST-005*20260514~
V1*9876543*ACME EXPRESS*US*MSC*VOYAGE-EAST-005~
V9*AE*ACME EAST SERVICE~
LX*1~
R4*L*UN*USNYC*NEW YORK*US~
DTM*139*20260520*1800~
DTM*140*20260521*1400~
LX*2~
R4*P*UN*USCHS*CHARLESTON*US~
DTM*139*20260523*0600~
DTM*140*20260523*2000~
LX*3~
R4*P*UN*BRRIO*RIO DE JANEIRO*BR~
DTM*139*20260603*0700~
DTM*140*20260605*0200~
SE*15*0001~
GE*1*1~
IEA*1*000000323~ Common segments
- Header —
ST,KS1(Beginning Segment for Vessel Schedule and Itinerary),V1(Vessel Identification),V9(Service Identification). - Itinerary —
LXloop per port call, withR4(Port or Terminal Identification: UN/LOCODE),DTM*139(ETA),DTM*140(ETD). - Details —
R4qualifiedL(Load),D(Discharge),P(Port of Call),T(Transshipment). - Status —
ZC1orQ5for downstream amendments. - Summary —
SE.
Common pitfalls
- UN/LOCODE mandatory:
R4must use the official UN/LOCODE (USNYC, USCHS); a free-text port label makes the itinerary unusable by visibility hubs. - ETA vs ETB:
DTM*139is the arrival at port (anchorage); berthing is carried by a distinct code. Mixing them up drifts booking cut-offs by 12-24 hours. - Multi-service itineraries: a single vessel can switch services (loop AE → loop AE2 after dry dock); always use
V9to anchor the service of the published itinerary.
Related transactions
Documentation
The code 323 and the name Vessel Schedule and Itinerary are public and listed on x12.org/products/transaction-sets. The complete structure of loops, qualifiers and code lists is distributed by DISA via the proprietary Implementation Guides (TR3). ediverse.io covers only public concepts, the envelope and didactic examples.