X12 859 — Freight Invoice
The 859 is the multi-modal freight invoice: issued by the carrier (truck, rail, ocean) to the shipper or forwarder, with itemized charges.
Purpose
The 859 documents post-delivery billing for a freight shipment: shipment reference (Pro number, B/L, AWB), payer, itemized charges (line haul, fuel surcharge, accessorials, taxes), total and payment terms. It is the generic equivalent of the 210 (motor) and 410 (rail) on consolidated freight-bill profiles.
Used by multi-modal forwarders and 3PLs to bill clients when mode can vary by shipment. Acknowledged by 997, it triggers the 820 (Remittance) on the payer side and feeds accounting.
Envelope structure
The 859 travels within the three X12 envelope levels (ISA/IEA,
GS/GE with functional group FB, and ST/SE).
Didactic example in release 004010:
ISA*00* *00* *ZZ*ACME3PL *ZZ*ACMESHIPPER *260514*1430*U*00401*000000859*0*P*>~
GS*FB*ACME3PL*ACMESHIPPER*20260514*1430*1*X*004010~
ST*859*0001~
B3**PRO-2026-77912*PP*20260514*FB**ACME3PL*USD~
N9*PO*PO78901~
N1*SH*ACME ELECTRONICS INC*92*S-0001~
N1*CN*ACME EU GMBH*92*C-0042~
LX*1~
L5*1*ELECTRONICS COMPONENTS~
L0*1*1200*L*68*M3*1200~
L1*1*LINE HAUL*USD*2150.00~
L1*2*FUEL SURCHARGE*USD*220.00~
L1*3*LIFTGATE*USD*45.00~
L3**L*1200**2415.00~
SE*11*0001~
GE*1*1~
IEA*1*000000859~ Common segments
- Header —
ST,B3(Beginning Segment for Carrier's Invoice),N9(shipment refs). - Parties —
N1(SH, CN, BT = Bill To, FW). - Lines —
LXloop withL5(description),L0(weight / volume),L1(per-line charges). - Summary —
L3(Total Weight and Charges),SE.
Common pitfalls
- Implicit transport mode: the 859 does not always carry a mode code; encode it via
B3orREFotherwise the payer must infer and risks accounting mis-classification. - Accessorials: encode as separate
L1lines; some 3PLs roll everything into line-haul, which prevents fine-grain dispute and breaks transport analytics. - Unique Pro number:
N9*POorN9*BMmust be unique per carrier over 7 years; reuse = overwrite of in-flight payment.
Related transactions
Documentation
The code 859 and the name Freight Invoice 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.