AutoZone Edi 856
What This Is
This guide covers AutoZone EDI 856—Advance Ship Notice (ASN) processing specific to AutoZone’s vendor requirements. An ASN (X12 856) provides shipment-level and item-level details to the retailer prior to or at shipment arrival. AutoZone requires ASNs for many order types to enable efficient receiving, inventory reconciliation, and automated invoice matching.
You will get practical, actionable instructions: how to read an AutoZone 856, required segments and elements, how to convert an ASN to CSV for ERP ingestion, and detailed troubleshooting steps for common AutoZone ASN rejections. This guide includes multiple code examples, a real EDI snippet annotated line-by-line, and CSV output examples that mirror real integration scenarios.
Who This Is For
This guide is for EDI developers, integration engineers, vendor compliance teams, 3PLs, and anyone responsible for generating, validating or consuming AutoZone ASNs. If you send ASNs to AutoZone or receive them as a 3PL, this guide helps you meet AutoZone expectations and avoid chargebacks and receiving delays.
Key Segments Explained
Below are the segments you will encounter or be required to populate for AutoZone 856 implementations. The explanations include why they exist and what common mistakes lead to rejections.
- ISA/GS/ST — Functional envelope and transaction header. ISA contains fixed-length control fields (ISA13/ISA14 control numbers). If ISA/GS control numbers don’t match outbound acknowledgments (997), trading partners reject the transmission. AutoZone validates ISA/GS control consistency against expected sender/receiver IDs.
- BSN (Beginning Segment for Ship Notice) — Contains the ASN number and date/time. AutoZone relies on BSN02 (ASN ID) to match incoming ASNs with purchase orders. Duplicate BSN02 values or missing BSN segments cause immediate rejection. The BSN02 must be unique per shipment.
- HL (Hierarchical Level) — Defines the hierarchy: Shipment, Order, Pack, and Item levels. Common errors are incorrect HL loops or missing parent-child references (HL03 and HL04), which break the hierarchy and prevent AutoZone’s receiving system from mapping pallets to items.
- LIN/PO4/SN1 — Item identification, packaging, and quantity shipped. LIN contains UPC/GTIN or SKU identifiers. PO4 describes packaging; SN1 provides shipped quantities with correct UOM (EA, CA for cases). Using the wrong UOM or not matching the PO quantity causes mismatch rejections and potential chargebacks.
- TD1/TD5 — Carrier, packaging, and freight information. AutoZone uses TD5 to display carrier SCAC and routing. Missing or invalid TD5/REF (carrier PRO/BOL) values cause receiving delays and can trigger manual receipt processes.
- REF/PKG/TSD — Reference identifiers like BOL, PRO, and pallet IDs. AutoZone expects pallet IDs in REF (e.g., REF*PK*) or the MAN (Marks and Numbers) segment. Missing pallet-level identifiers obstruct ASN-to-pallet reconciliation on dock, leading to manual inspection.
Example EDI Snippet
ISA*00* *00* *ZZ*SENDERID *ZZ*AUTOZONEID *210914*1253*U*00401*000000905*0*P*>~
GS*SH*SENDERID*AUTOZONEID*20210914*1253*905*X*004010~
ST*856*0001~
BSN*00*ASN00012345*20210914*1253*0001~
HL*1**S~
TD1*CTN*10~
TD5*O*2*UPSN*M*GROUND~
REF*BM*BOL123456~
HL*2*1*O~
PRF*4500009876~
HL*3*2*P~
MAN*CP*PLT12345~
HL*4*3*I~
LIN**VP*AZ-SKU-1001*UP*000123456789~
SN1**10*EA~
LIN**VP*AZ-SKU-1002*UP*000987654321~
SN1**5*EA~
CTT*2~
SE*14*0001~
GE*1*905~
IEA*1*000000905~
Line-by-line explanation:
ISA*- Interchange control header. Contains sender/receiver IDs and control number000000905.GS*SH*- Functional group for Ship Notice/Manifest.ST*856*0001~- Transaction set header, ASN control number0001.BSN*00*ASN00012345*20210914*1253*0001~- ASN IDASN00012345, date/time, and hierarchical structure code0001.HL*1**S~- Shipment-level HL (no parent; level code S).TD1*CTN*10~- Shipment contains 10 cartons.TD5*O*2*UPSN*M*GROUND~- Carrier: UPSN (SCAC), mode Ground.REF*BM*BOL123456~- Bill of lading reference.HL*2*1*O~- Order-level HL, parent is 1.PRF*4500009876~- Purchase order number linked to the order HL.HL*3*2*P~- Pack level HL; parent 2.MAN*CP*PLT12345~- Pallet IDPLT12345transmitted at pack level.HL*4*3*I~- Item-level HL under pack 3.LIN**VP*AZ-SKU-1001*UP*000123456789~- Item identification using vendor part number and UPC.SN1**10*EA~- Quantity shipped: 10 Each.LIN**VP*AZ-SKU-1002*UP*000987654321~- Second item.SN1**5*EA~- Quantity shipped: 5 Each.CTT*2~- Transaction totals: 2 line items.SE*14*0001~- End of transaction set.GE/IEA- Group and interchange trailer control records.
CSV Output Example
The following table shows how to convert the example ASN to a flat CSV suitable for ERP import. Each row represents an item-level shipment line with shipment and order context.
| ShipmentID | ASNNumber | PO | PalletID | SKU | UPC | QtyShipped | UOM | CarrierSCAC | BolNumber | ASNDate |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | ASN00012345 | 4500009876 | PLT12345 | AZ-SKU-1001 | 000123456789 | 10 | EA | UPSN | BOL123456 | 2021-09-14T12:53 |
| 1 | ASN00012345 | 4500009876 | PLT12345 | AZ-SKU-1002 | 000987654321 | 5 | EA | UPSN | BOL123456 | 2021-09-14T12:53 |
Step-by-Step Conversion Process
-
Validate the envelope and headers
- Confirm ISA sender/receiver IDs match AutoZone’s trading partner ID exactly, including trailing spaces as required by fixed-length ISA fields.
- Verify GS/GE group control numbers and ST/SE transaction numbers increment and match cross-reference. Use an automated validator to flag mismatches before transmission.
-
Parse HL hierarchical loops
- Identify HL segments with correct HL03 level codes: S (shipment), O (order), P (pack), I (item).
- Build parent-child relationships using HL04 (parent ID) to ensure each item is associated with the correct pack/pallet and order.
-
Extract key fields for CSV
- From BSN: ASN number and timestamp into ASNNumber and ASNDate columns.
- From PRF: Purchase order number into PO column.
- From MAN or REF: Pallet/Bol into PalletID or BolNumber columns. Prefer MAN for pallet IDs if present.
- From TD5 and REF: Carrier SCAC and BOL/PRO values for CarrierSCAC and BolNumber.
- From LIN/SN1: Item SKU/UPC and QtyShipped/UOM.
-
Normalize dates, units, and identifiers
- Convert BSN date/time to ISO-8601 (YYYY-MM-DDThh:mm) for CSV date fields.
- Normalize UOM codes to the ERP expected values (EA, CA, etc.).
- Trim leading zeros from GTIN only if your ERP requires the shorter representation; keep UPC as transmitted if AutoZone expects exact match for item lookup.
-
Apply business rules and enrich data
- Map AutoZone SKUs to internal item IDs via your master item table.
- Compute carton-to-pallet mappings for receiving labels if pack-level HLs present; include PalletID in CSV.
- Flag over/under shipments where SN1 quantity differs from PO quantity and add an exception column for manual review.
-
Run validation checks
- Ensure unique BSN ASN numbers; reject duplicates and log for corrective action.
- Confirm all required segments exist: BSN, at least one shipment-level HL, item-level LIN/SN1.
- Use PlainEDI validation when possible to pre-validate against X12 schema and AutoZone-specific rules: PlainEDI validation flags missing HL parents, invalid UOMs, and mismatched PO references.
-
Export CSV and test ingest
- Write CSV file with headers and sample rows and run a test import into a staging ERP environment.
- Validate totals: CTT segment count should match the number of detail lines imported into ERP.
- Keep an audit trail: save original ASN file, parsed JSON, and CSV export for troubleshooting.
Common Errors and Fixes
- Error: Missing or duplicate BSN02 (ASN number) — AutoZone will flag duplicates or missing ASN IDs. Fix: Ensure BSN02 is unique per ASN and follows agreed format (e.g., ASN + sequential number). Use a server-side guard to prevent reuse of ASN IDs.
- Error: HL parent-child mismatch (HL04 incorrect) — Causes items not to associate to a pack/pallet. Fix: Rebuild HL hierarchy before transmit; ensure HL01 increments and HL04 references the correct HL01 of the parent level.
- Error: Invalid carrier SCAC or missing TD5 — Receiving team cannot route shipments without valid SCAC. Fix: Populate TD5*2*SCAC and include REF*BM for BOL. Verify SCAC against AutoZone’s carrier list.
- Error: UPC/GTIN mismatch between LIN and AutoZone master data — AutoZone systems fail to match items. Fix: Reconcile your vendor item master; send both vendor part and UPC in LIN (use qualifier VP for vendor part and UP for UPC) to increase match confidence.
- Error: Wrong UOM or SN1 quantity mismatch vs. PO — Discrepancies trigger manual review and potential chargebacks. Fix: Confirm PO UOM expectations and calculate case/piece conversions correctly; include PO-lot level notes when necessary.
- Error: ISA/GS control number mismatch — 997 functional ack will show control number errors. Fix: Ensure programmatic increment of ISA13/GS06 and that SE/GE values match counts. Use pre-send validators to avoid envelope-level rejections.
- Error: Pallet ID not transmitted at pack level — Dock-side scanning fails. Fix: Include MAN or REF*PK segments at the pack-level HL; use consistent pallet ID formatting and ensure it is unique per pallet.
Related Resources
- AutoZone EDI 850 purchase order guide
- AutoZone EDI 855 purchase order acknowledgment
- reading 997 functional acknowledgments
- edi conversion for 3pl warehouses
- freight forwarder edi to csv
- understanding edi x12 delimiters and structure
FAQ Section
Q: What is AutoZone EDI 856 used for?
The AutoZone EDI 856 (ASN) communicates shipment-level and item-level details to AutoZone prior to or on shipment arrival. It enables receiving automation, verifies quantities against purchase orders, and supports automated invoice reconciliation.
Q: When must an ASN be sent to AutoZone?
Send ASNs according to the purchase order terms and AutoZone’s vendor requirements. ASNs are typically expected prior to arrival at the receiving dock or at time of tender. Confirm timing and cutoffs on AutoZone’s vendor portal for exact SLA expectations.
Q: Which segments are critical to pass AutoZone validation?
Critical segments include ISA/GS/ST headers, BSN with unique ASN number, HL loops for shipment/order/pack/item, LIN and SN1 for item details, TD5 for carrier SCAC, and REF or MAN for BOL and pallet IDs. Missing any of these commonly triggers rejections or manual processing.
Q: How should pallet IDs be transmitted for AutoZone?
Transmit pallet IDs at the pack-level using MAN or REF segments (e.g., MAN*CP*PLT12345 or REF*PK*PLT12345). Ensure pallet IDs are unique and consistently formatted to allow AutoZone’s receiving system to reconcile scanned pallets to ASN lines.
Q: What penalties does AutoZone enforce for ASN errors?
Retailers, including AutoZone, enforce penalties for non-compliance with ASN and OTIF rules. Penalties include chargebacks for ASN inaccuracy, missed OTIF targets, and labeling non-compliance. Check AutoZone’s vendor portal for current penalty policies and thresholds. Best practice: use automated validation to reduce penalty exposure.
Q: How can I prevent HL hierarchy errors?
Build HL loops deterministically: assign sequential HL01 values and set HL04 to the parent HL01 where applicable. Validate the hierarchy programmatically and run against an X12 schema validator before submission. PlainEDI validation flags HL parent-child mismatches during pre-transmit checks—use it to catch issues early: PlainEDI.
Q: Can I convert AutoZone ASNs to CSV automatically?
Yes. Follow the conversion steps in this guide: validate envelopes, parse HL structure, extract BSN/PRF/LIN/SN1/MAN/TD5, normalize dates and UOMs, and export CSV. Automate this pipeline in your ETL or use tools that support X12-to-CSV mapping. PlainEDI includes mapping and validation features to automate conversion and prevent common mapping errors.
Q: What should I do if my ASN receives a 997 rejection?
Review the functional acknowledgment (997) for specific rejection codes and segment-level errors. Common fixes include correcting control numbers, adding missing segments, or fixing HL structure. Use a 997 parsing tool to locate the offending segment and re-submit corrected ASN after validation.
Real-World Case Studies and Troubleshooting Tips
Case study 1 — 3PL sending ASNs for multiple vendor SKUs: A 3PL repeatedly received manual receiving exceptions because pallet IDs were sent in REF segments at the shipment level instead of the pack-level. Fix: Move pallet IDs into MAN under the pack HL. Result: scanning accuracy increased and dock time reduced by eliminating manual pallet reconciliation.
Case study 2 — Carrier mismatch causing returns: A vendor sent TD5 with an incorrect SCAC code. AutoZone’s receiving routed the goods to an incorrect carrier lane and returned the shipment. Fix: Implement a pre-send rule set mapping carrier names to SCACs and validate TD5 against approved SCACs. Result: zero subsequent carrier routing failures.
Troubleshooting tip — Envelope control errors: If you see ISA or GS control mismatches in 997s, do not resend until you confirm the outgoing control numbers. Maintain a persistent state table for ISA13/GS06 increment values across restarts to prevent duplicates.
Final Checklist Before Sending an AutoZone ASN
- Unique BSN02 per ASN and datetime in BSN03/BSN04.
- Proper HL structure: one shipment HL, an order HL per PO, pack HLs with pallet MAN/REF, and item HLs.
- LIN contains vendor part and UPC where possible; SN1 contains correct quantities and UOM.
- TD5 populated with valid SCAC and REF with BOL/PRO.
- ISA/GS/ST control numbers consistent and validated by an X12 pre-flight tool such as PlainEDI.
Follow the step-by-step process and validation checks in this guide to reduce rejections, avoid receiving delays, and minimize chargebacks due to ASN inaccuracies. For automated validation and secure uploads, use the PlainEDI upload service at /upload to run EDI validation and conversion prior to sending to AutoZone.
Ready to validate or convert your AutoZone ASNs? Upload your ASN now to PlainEDI validation and conversion engine: PlainEDI upload.