Generate an EDI 940 transaction set using the standard X12 envelope structure: ISA interchange header, GS functional group, ST/SE transaction boundaries, and IEA trailer.
Populate the W05 segment (Warehouse Order Identification) with a transaction purpose code — N for new order, C for change, D for cancellation — and include the warehouse order number and date.
Include a W66 segment to specify carrier instructions: shipment method of payment (prepaid or collect), transportation method code, and FOB point.
Add LX/W01 loop segments for each line item, providing the item identifier (UPC, SKU, or GTIN), quantity ordered, and unit of measure; include the W76 segment for total quantity and weight.
Transmit the 940 to the 3PL via your EDI VAN, AS2, or SFTP channel; the 3PL's WMS ingests it to create a pick-and-ship order and responds with an EDI 997 Functional Acknowledgement.
Monitor for an inbound EDI 945 Warehouse Shipping Advice from the 3PL confirming what was actually shipped, then reconcile shipped quantities against ordered quantities before generating your customer invoice and ASN.
Known gotchas
The W05 transaction purpose code must correctly signal new vs. change vs. cancel — sending a new-order code for a modification may create a duplicate order in the 3PL WMS.
Confirm with each 3PL trading partner which EDI X12 version (e.g., 4010, 5010) and which optional segments they require; implementations vary significantly between partners.
A 997 Functional Acknowledgement confirms message receipt and structure, not order acceptance — always wait for the 945 to confirm the shipment was actually executed.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp