Skip to content
SyncMyShop

EDI documents

EDI 214 Transportation Carrier Shipment Status Message

The EDI 214 is how a carrier reports where a shipment is: picked up, en route, estimated delivery, delivered. This page covers the B10 and AT7 segments with their status codes, a sample that reports arrival and delivery at a distribution center, the envelope, what shippers require from carriers, and how status lands in your ERP or webshop.

Updated

What is an EDI 214?

The EDI 214 is the X12 Transportation Carrier Shipment Status Message. A carrier sends it to the shipper, the consignee or their agent to report the status of a shipment: dates, times, locations, the route and the reference numbers that identify the load. Each status is a two-letter code in the AT7 segment, such as AF for departed pick-up or D1 for completed unloading.

For a supplier that ships to retailers, the 214 is the inbound side of transport. The supplier tells the buyer what is on the truck with the 856 ship notice; the carrier tells the supplier where the truck is with the 214. A delivery reported in the 214 is the supplier's proof that the order arrived on the date the 850 asked for.

Where the 214 sits in the transport flow

Step Document Direction Relation to the 214
1 204 load tender Shipper to carrier Carries the shipment ID and stops the 214 has to repeat
2 990 response to a load tender Carrier to shipper Accepts or declines the load
3 214 shipment status Carrier to shipper One message per event, or several events per message
4 210 freight invoice Carrier to shipper Billed after the delivery the 214 reported

The functional identifier of the group is QM. In the EDI document map the 214 sits with the 204, 990 and 210 on the carrier side, next to the warehouse documents 940 and 945. A supplier that ships through a 3PL often receives the 214 through that 3PL, after its 940 warehouse shipping order was picked and loaded.

The segments of a 214

Segment Name What it carries What goes wrong
B10 Beginning Segment for Transportation Carrier Shipment Status Message B1001 carrier's PRO number, B1002 shipper's shipment ID, B1003 SCAC A shipment ID that differs from the 204, so the status matches no load
L11 Business Instructions and Reference Number BM bill of lading, PO purchase order, other references The PO number missing, so the order in the ERP is not found
N1, N3, N4 Name and address SH shipper, CN consignee, SF ship from, ST ship to Ship-from and ship-to both sent where the partner accepts one
LX Assigned Number Opens one status loop, repeatable up to 999,999 times A loop without an AT7
AT7 Shipment Status Details AT701 status, AT702 reason, or AT703 appointment with AT704; AT705 date, AT706 time, AT707 time code Status and appointment in one segment, which the standard forbids
MS1 Equipment, Shipment, or Real Property Location City, state and country, or longitude and latitude A city with neither state nor country, which the syntax rejects
AT8 Shipment Weight, Packaging and Quantity Data Weight qualifier, unit, weight, cartons, pallets Weight in kilograms read as pounds
SE Transaction Set Trailer Segment count and control number A count mismatch rejects the set

AT7 status, reason and time codes

X12 004010 defines 42 shipment status codes, 86 reason codes and 9 appointment codes. These are the ones shipper guides use most.

Element Code Meaning
AT701 X3 Arrived at pick-up location
AT701 AF Carrier departed pick-up location with shipment
AT701 X6 En route to delivery location
AT701 AG Estimated delivery
AT701 X1 Arrived at delivery location
AT701 D1 Completed unloading at delivery location
AT701 SD Shipment delayed
AT702 NS Normal status
AT702 AO, B1, S1 Weather related, consignee closed, delivery shortage
AT703 AB, ED, LD Delivery appointment, deliver no earlier than, deliver no later than
AT707 LT, ET, CT Local time, Eastern, Central

The time rule is in the standard: when AT707 is absent, AT706 is the local time at the place of the status. A carrier that sends 0740 without a time code means 07:40 wherever the truck stood.

EDI 214 status events for one shipment, 3 to 6 October The supplier sends its 856 at 09:15 on 3 October. The carrier reports arrival at pickup (X3) and departure (AF) that morning, an en route update (X6) on 4 October, an estimated delivery (AG) on 5 October, and arrival (X1) and unloading complete (D1) at the distribution center on 6 October, the delivery date requested in the 850. Supplier and buyer documents 856 sent, 09:15 850: deliver on 6 Oct Carrier 214 events (AT701), pickup and en route X3, AF at pickup X6 en route AG: ETA 6 Oct 08:00 Carrier 214 events at the distribution center X1 07:40, D1 09:10 3 Oct 4 Oct 5 Oct 6 Oct 7 Oct
One shipment, six 214 events. The delivery on 6 October matches the date the 850 requested.

A sample 214, with delimiters

The shipment from the 856 sample: shipment ID SH0004821, bill of lading BOL7730042, PO 4500018236, one carton to Harbor Retail DC 07 in Columbus, Ohio. The carrier reports arrival and delivery in one message.

ST*214*0001~
B10*58813402*SH0004821*ABCD~
L11*BOL7730042*BM~
L11*4500018236*PO~
N1*SH*NORTHFIELD SUPPLY~
N1*CN*HARBOR RETAIL DC 07~
N3*1200 DOCK STREET~
N4*COLUMBUS*OH*43215*US~
LX*1~
AT7*X1*NS***20261006*0740*LT~
MS1*COLUMBUS*OH*US~
LX*2~
AT7*D1*NS***20261006*0910*LT~
MS1*COLUMBUS*OH*US~
AT8*G*L*18.4*1~
SE*16*0001~

Read it field by field. B10 carries the carrier's PRO number 58813402, the shipper's shipment ID SH0004821 from the 856, and the SCAC. Each LX opens one event: X1 at 07:40, D1 at 09:10, both with reason NS and time code LT. AT703 and AT704 stay empty because these are statuses, not appointments, so three asterisks run from AT702 to the date. Unloading took 09:10 minus 07:40, which is 1 hour 30 minutes. AT8 reports gross weight in pounds, 18.4, and 1 carton. Columbus is on Eastern Daylight Time in October, UTC minus 4, so 07:40 local is 11:40 UTC. There are 16 segments from ST to SE, so SE01 is 16.

The envelope around it

ISA*00*          *00*          *02*ABCD           *ZZ*NORTHFIELD     *261006*0915*U*00401*000000318*0*P*>~
GS*QM*ABCD*NORTHFIELD*20261006*0915*318*X*004010~
ST*214*0001~
SE*16*0001~
GE*1*318~
IEA*1*000000318~

The carrier is the sender, so ISA06 and GS02 hold its ID. Qualifier 02 in ISA05 marks the ID as a SCAC; the TMS guide below accepts 02 or ZZ, where retail guides use 01 for a DUNS number or ZZ. The control numbers are the carrier's own sequence. ISA13 has to equal IEA02, GS06 GE02, ST02 SE02, and SE01 has to be the real count of 16. GS01 is QM. ISA15 is P for production and T for test. A carrier that sends 40 status messages a day in separate files sends 40 interchanges with 40 control numbers; the TMS guide below answers each one with a 997 as ISA14 directs.

What shippers require from carriers

The rules for a 214 come from the shipper or its transportation system, not from the retailer. Two published carrier guides, checked on 3 October 2026, show how much they add to the standard.

Rule Manufacturer's TMS guide (Meritor, 004010) TMS carrier guide (004010, revised April 2023)
Shipment ID B1002 is the TMS number from the 204 B2 segment; without it "the entire transaction is rejected" B1002 must equal B204 of the 204; B1003 must equal the SCAC in B202
Events Arrival and departure at shipper, arrival and departure at consignee, ETA Pickup and delivery appointments, arrivals, departures, ETA, position updates
Frequency Over 500 miles, one ETA update every 8 hours until delivery Not fixed
References L11 with QN, the stop sequence number L11 with OQ, the order number from the 204, mandatory
Parties Not used N1 SH first; SF or ST, not both

The second guide also fixes the delimiters to *, ~ and > and expresses appointment windows as two AT7 segments, EP and LP for pickup or ED and LD for delivery. A carrier that sends one shipper's 214 layout to the other breaks the other's rules on the shipment ID and the L11 reference. Meritor's guide is public: Meritor EDI 214.

What goes wrong with 214 data

  • Local time stored as server time. 07:40 LT in Columbus stored as 07:40 on a server in Central time is an hour late; stored as UTC, it is four hours early. Delivery performance is measured against the requested date, so a D1 at 23:30 local that becomes the next day in another zone moves the delivery to the wrong date. The note on dates and time zones covers the conversion.
  • Unmatched shipments. A 214 with a PRO number and no shipment ID or PO cannot be linked to an order. The fix is a lookup table from PRO to bill of lading, filled when the carrier first reports it.
  • Status out of order. Messages travel separately, so a D1 can arrive before the X1 for the same load. Status has to be set by AT705 and AT706, not by arrival order of the files.
  • Estimated delivery read as a delivery. AG with a date in the future is an estimate. Mapping every AT705 to "delivered on" closes orders that are still on the road.
  • Exceptions buried in reason codes. SD with reason AO, weather, and X1 with reason S1, delivery shortage, both need someone to act. With NS on most messages, the exceptions are the few lines that should raise an alert.

Handling the 214 in the ERP, TMS or webshop

The 214 updates the shipment that the order created. Where the order came from a webshop, the same status can go back to the customer: Shopify takes carrier events through fulfillmentEventCreate, with a status, a happenedAt timestamp and an estimatedDeliveryAt.

AT701 Meaning Shopify FulfillmentEventStatus
AF Departed pick-up with shipment CARRIER_PICKED_UP
X6 En route to delivery location IN_TRANSIT
AG Estimated delivery estimatedDeliveryAt on the event
SD Shipment delayed DELAYED
AH Attempted delivery ATTEMPTED_DELIVERY
D1 Completed unloading at delivery location DELIVERED

happenedAt takes a timestamp with a zone, so the conversion of AT706 with AT707 has to happen before the call. In an ERP the D1 is the moment to record proof of delivery on the shipment and, where terms run from delivery, the date the invoice terms start. See the Shopify FulfillmentEventStatus reference.

We build the 214 into an EDI integration as one of the inbound feeds: statuses matched to the shipment by ID, bill of lading or PO, times converted to one zone, delays and shortages raised in the dashboard, and the delivery passed on to the order flow and the webshop. Tell us which carriers send you 214s.

Frequently asked questions

What are the most used EDI 214 status codes?

In AT701: X3 arrived at pick-up location, AF carrier departed pick-up location, X6 en route to delivery location, AG estimated delivery, X1 arrived at delivery location, D1 completed unloading at delivery location, and SD shipment delayed. X12 004010 defines 42 status codes; each shipper's guide lists the ones it processes.

Who sends an EDI 214?

The carrier, to the shipper or to the shipper's agent, such as a transportation management system or a 3PL. A consignee can receive it too. Suppliers that ship with their own carriers receive 214s; they do not send them.

What is the difference between AT701 and AT703?

AT701 is a status that happened, such as X1 arrived. AT703 is an appointment, such as AB delivery appointment. Only one of the two may be present in an AT7 segment, and each needs its own reason code, AT702 or AT704. A carrier that reports an arrival and an appointment sends two AT7 segments.

Which documents come with the 214?

The 204 load tender, in which the shipper offers the load to the carrier; the 990, the carrier's response to the tender; and the 210, the carrier's freight invoice. The 214 repeats the shipment ID from the 204 so each status can be matched to the right load.

Tell us what you need

Tell us which systems you use and what needs to work better. We reply personally within one working day. We help you define the work, then agree the price and timing before you commit.

  • You know the price and the timeline before you commit to anything
  • We work out the connection that takes the work off your hands
  • We handle the build, hosting, monitoring and maintenance
  • Your team has less information to retype and fewer discrepancies to chase

Suppliers, products, orders per day, a rough estimate is fine.

Or email directly: carsten@syncmyshop.com