X12 240 — Motor Carrier Package Status
The 240 reports the status of a parcel or group of parcels treated as one shipment by a motor carrier. It is the historic EDI vehicle for parcel and small-package tracking.
Purpose
The 240 reports a parcel (UPS, FedEx, USPS, OnTrac, regional parcel) status with the latest event — hub arrival, in transit, delivered, exception. It was historically the EDI channel for enterprise shippers that could not yet consume parcel tracking APIs. Today APIs dominate; the 240 lingers in contexts where EDI archiving is mandatory.
Envelope structure
The 240 travels in a functional group PS (Package Status). Didactic example
in release 004010:
ISA*00* *00* *ZZ*ACMEPARCEL *ZZ*ACMESHIPPER *260514*1430*U*00401*000000240*0*P*>~
GS*PS*ACMEPARCEL*ACMESHIPPER*20260514*1430*1*X*004010~
ST*240*0001~
BX*00*PS-2026-0033*ACMEPARCEL*PRO-7800*20260514~
N1*SH*ACME WAREHOUSE 1*92*WH-001~
N1*CN*BOB DOE*92*CONS-0099~
LX*1~
N9*BM*BOL-2026-998~
PKG*F*68***NO LABEL OF UPS~
T6*20260514*1230*A1*MEMPHIS HUB*TN*US~
SE*9*0001~
GE*1*1~
IEA*1*000000240~
The BX (General Shipment Information) opens with SCAC, PRO or tracking
number, date. The N1 segments identify SH and CN. The LX loop
carries a single parcel, with N9 for secondary identifiers (BOL),
PKG (Marking, Packaging, Loading) for the packaging type, and T6
(Transit Time and Date) or an event segment for the status.
Common segments
- Header —
ST,BX(General Shipment Information),DTM. - Parties —
N1loop (SH, CN). - Parcel —
LXloop withN9(qualifier TN = Tracking Number, BM = BOL),PKG,K1(Remarks). - Event —
T6orL11with status-code qualifier (typically AT8 / G62 depending on the carrier TR3). - Summary —
SE.
Common pitfalls
- Carrier-unique tracking number: UPS, FedEx, and USPS have their own formats; place the tracking number in
N902with qualifierTNwithout prefixing SCAC. - Event density: a parcel typically generates 10–20 events; each 240 carries one event, so 10–20 transactions per parcel per carrier.
- API vs EDI: for real-time parcel tracking, UPS/FedEx/USPS APIs are faster and cheaper; the 240 remains useful for batch reconciliation and archiving.
Related transactions
- 214 — Transportation Carrier Shipment Status Message
- 213 — Motor Carrier Shipment Status Inquiry
- 856 — Ship Notice/Manifest (ASN)
- X12 — Hub
Documentation
The code 240 and the name Motor Carrier Package Status are public and listed on x12.org/products/transaction-sets. The UPS and FedEx TR3s frame the event-code conventions in use.