Developer ToolsFree generatorPDF, Excel, Word export

X12 856 Advance Ship Notice (ASN) Generator

The X12 856 Advance Ship Notice tells a customer what is in a shipment before it arrives. This generator builds a minimal, correctly structured 856 from your shipment, carrier and item details so you can test your translator or a trading partner connection.

Fill in

Generated code
Download:

X12 856 (version 004010)

ISA*00*          *00*          *ZZ*ACMEMFG        *ZZ*BIGCUSTOMER    *261020*0930*U*00401*000000101*0*P*>~
GS*SH*ACMEMFG*BIGCUSTOMER*20261020*0930*101*X*004010~
ST*856*0001~
BSN*00*SHP0004512*20261020*0930*0001~
DTM*011*20261020~
HL*1**S~
TD1*CTN25*4****G*120*LB~
TD5**2*ABCD*M~
REF*BM*BOL778812~
N1*ST*BIGCUSTOMER DC 12~
HL*2*1*O~
PRF*PO558123~
HL*3*2*I~
LIN**BP*PN-48213~
SN1**400*EA~
CTT*3~
SE*15*0001~
GE*1*101~
IEA*1*000000101~

This is a generic SOI (shipment, order, item) structure for testing. Trading partners publish their own implementation guides that decide which segments are mandatory, qualifiers, packaging levels (SOTPI is common for retailers) and the ISA/GS identifiers. Verify against the partner's guide and your EDI translator before you send production data. SE01 must equal the segment count from ST to SE inclusive: if you add or remove segments, update it.

Get ASN mapping reviewed

Optional: send us your partner guide and ERP delivery fields and we will outline an automated 856 mapping.

Optional. The tool and every export work without this. No spam.

How to use the generator

Fill in the sender and receiver identifiers, the date and control number, the shipment ID, carrier SCAC, bill of lading, ship-to and one purchase order line. The output updates as you type. Copy it into a .edi or .txt file, or into your translator's test harness. ISA fields are fixed width: sender and receiver IDs must be exactly 15 characters, so keep the trailing spaces in the defaults.

  • ISA13 and IEA02 must carry the same control number.
  • GS06 and GE02 must carry the same group control number.
  • ST02 and SE02 must match as well.
  • CTT01 counts HL segments in this transaction.

The 856 hierarchy

The 856 uses HL (hierarchical level) loops. Level S is the shipment and carries BSN, dates, packaging totals in TD1, routing in TD5 and references such as the bill of lading. Level O is the order, identified with PRF. Level I is the item, with LIN identifying the buyer part number and SN1 giving the quantity shipped. Retailers often add tare and pack levels between order and item. The HL01 value is the loop ID, HL02 points to the parent loop, and HL03 is the level code.

Common mistakes

Frequent rejections come from the wrong SE count after editing segments, ISA padding errors, quantity units that do not match the customer's PO, ship dates in the wrong format, and a missing or wrong SSCC when the customer requires pack level detail. Always send a test file first and read the 997 or 999 functional acknowledgement from the partner. A syntax pass does not prove that the content satisfies the partner's business rules.

Frequently Asked Questions

What is an X12 856?

It is the ANSI X12 transaction set for the Ship Notice or Manifest, commonly called the Advance Ship Notice or ASN. The supplier sends it electronically when goods ship, listing shipment, order and item details so the receiver can plan receiving.

Why does the ISA segment need exact padding?

ISA is a fixed length segment. Sender and receiver IDs must each be 15 characters, the control number 9 digits and so on. If the lengths are wrong the whole interchange is rejected at the first parse, before any business data is read.

What does the HL loop structure mean?

HL segments nest parts of the shipment. S is the shipment, O is order, I is item, and retailers may add T for tare and P for pack levels. Each HL says its own ID, its parent, and its level code, so receivers can rebuild the tree.

Does this generate a file I can send to a customer in production?

No, it is a test skeleton. Production ASNs must follow the customer's implementation guide, use their qualifiers and identifiers and be sent through your EDI translator or VAN. Treat the output as a starting point for mapping and testing only.

If you need ASNs generated directly from deliveries in SAP, Infor, Epicor or NetSuite, Netray can help review the mapping and build a controlled integration.