The EDI 945 is the warehouse telling you what actually left the building. You sent your 3PL a 940 shipping order for twelve shirts and four cases. The 945 comes back with what really shipped: twelve shirts, three cases, one case short with no backorder, four cartons, four tracking numbers. Everything downstream (the customer's shipping email, the retailer's ASN, the invoice, your inventory balance) runs on those numbers, not on the 940.
This guide covers what the 945 carries, where it sits in the 3PL document set, every segment you will map, three live examples (a parcel order with a short line, a carton-level LTL shipment and a daily batch), the W12 status codes that explain short shipments, and the errors that break reconciliation.
What Is an EDI 945?
An EDI 945 is the Warehouse Shipping Advice transaction set defined by the ASC X12 standards body. A warehouse (the custodian of the goods) sends it to the depositor (the owner of the goods) to confirm that a shipment was made, with the shipment's identifiers, carrier and line-by-line quantities.
Authoritative references for 945 work:
- The X12 transaction set catalog defines the 945 and the rest of the warehouse series (940, 943, 944, 945, 947)
- The Stedi X12 004010 reference for the 945 shows the segment order, loops and usage, and links to each segment's elements and code lists
- Published 3PL mapping guides, such as Infoplus's 945 specification, show how much warehouses differ in where they put tracking numbers, item IDs and totals
- Your warehouse's own 945 implementation guide governs. It sets the required segments, the qualifiers and the timing
Who sends it? The warehouse: a 3PL, a fulfillment center, or your own warehouse if it runs a separate warehouse management system.
Who receives it? The depositor: the brand, manufacturer or distributor that owns the stock and sent the 940.
When is it sent? After the order is picked, packed and handed to the carrier, usually once per order. Some warehouses send one file per order, others send a batch at the end of each shipping day.
Why does it matter? Until the 945 arrives you do not know what shipped. It is the source for tracking numbers, the 856 you owe a retail customer, the invoice quantity and the inventory you still have at the warehouse.
The 3PL Document Set
The 945 is one of five warehouse transaction sets. Each travels in its own functional group, with its own code in GS01.
| Set | Name | Direction | GS01 | What it says |
|---|---|---|---|---|
| 940 | Warehouse Shipping Order | Depositor to warehouse | OW | Ship this order |
| 945 | Warehouse Shipping Advice | Warehouse to depositor | SW | This is what we shipped |
| 943 | Warehouse Stock Transfer Shipment Advice | Depositor to warehouse | AR | Stock is on its way to you |
| 944 | Warehouse Stock Transfer Receipt Advice | Warehouse to depositor | RE | This is what we received |
| 947 | Warehouse Inventory Adjustment Advice | Warehouse to depositor | AW | Your stock changed for another reason |
The 940 and 945 close the outbound loop. The 943 and 944 close the inbound loop. The 947 covers everything else. Your inventory at the warehouse should equal yesterday's balance plus 944 receipts, minus 945 shipments, plus or minus 947 adjustments, and an 846 inventory report from the warehouse is the check.
The 943 and the 945 share their header segment, W06. On the 943 it identifies an inbound transfer; on the 945 it identifies an outbound shipment.
How the 940 to 945 Loop Works
- Order arrives. A customer order reaches you as an EDI 850, a marketplace order, an email or a PDF, and lands in your ERP or order system.
- 940 goes out. You send the 940 to the warehouse with your order number in
W0502, the ship-to, the requested ship date and the lines. - Warehouse ships. The warehouse picks, packs, labels each carton with an SSCC-18, books the carrier and gets tracking numbers or a bill of lading.
- 945 comes back. The
W06header echoes your order number, the ship date and the warehouse's shipment ID. Each line reports ordered, shipped and the difference, with a status code. - You acknowledge it. Your translator returns a 997 for the
SWgroup. - You act on it. Update the order, send the tracking to the customer, build the 856 ship notice and the 810 invoice if the customer is a retailer, and post the shipment against your inventory.
Step 6 is where the 945 earns its keep. If the 856 and invoice are built from the 940 instead, every short shipment becomes a retailer chargeback or a short-pay.
Interactive Example: Parcel Order With a Short Line
This 945 answers the 940 in our 940 guide: order ORD-78901234, twelve black tees and four cases of white tees, to Acme Customer in Austin. W06*F reports full detail, G62*11 gives the ship date and W27*U*UPSN names UPS parcel service, freight prepaid. Line 1 shipped complete (W12*CC) in one carton. Line 2 shipped 3 of 4 cases (W12*CP, a partial shipment with no backorder), each case its own carton. Every carton has a MAN segment carrying its SSCC-18 and, in the second qualifier pair, its carrier tracking number. W03 totals 15 units, 61.5 pounds and 4 cartons.
Use the Plain English tab for a readable summary, or click any segment to break it down element by element.
3PL 945 Warehouse Shipping Advice (Parcel, One Short Line)
The 3PL confirms order ORD-78901234 from the 940 sample: W06 full detail, UPS parcel in W27, one SSCC-18 and tracking number per carton in MAN, line 1 shipped complete (W12 CC) and line 2 shipped 3 of 4 cases with no backorder (W12 CP)
- Document
- 945 Warehouse Shipping Advice
- From / to
- WAREHOUSE456 → BRAND123
- Segments
- 23
- Ship To
- ACME CUSTOMER INC
- 123 MAIN STREET, AUSTIN, TX, 78701
- Interchange date
- May 10, 2026
Raw EDI (X12)
Human-Readable
Interchange
Functional Group
Transaction 945
Warehouse Shipping AdviceSegment Detail
945 Structure at a Glance
The 945 in release 004010 has a header, a detail loop per shipped group, and one summary segment.
| Position | Segment | Name | Usage | Notes |
|---|---|---|---|---|
| Header | ST | Transaction Set Header | Mandatory | ST01 = 945 |
| Header | W06 | Warehouse Shipment Identification | Mandatory | Reporting code, your order number, ship date, shipment ID, PO |
| Header loop | N1 / N2 / N3 / N4 / PER | Name, address, contact | Mandatory, up to 10 loops | Ship-to, warehouse, depositor, bill-to |
| Header | N9 | Reference Identification | Optional, up to 10 | Bill of lading, PRO, load, customer references |
| Header | G62 | Date/Time | Optional, up to 5 | 11 shipped date; others as the guide requires |
| Header | NTE | Note/Special Instruction | Optional | Free text |
| Header | W27 | Carrier Detail | Optional | Transport mode, SCAC, routing, freight payment |
| Header | W10 | Warehouse Additional Carrier Information | Optional | Extra carrier detail some guides use |
| Header | G72 | Allowance or Charge | Optional | Warehouse charges, where the guide uses them |
| Detail loop | LX | Assigned Number | Mandatory per loop | Starts each group: a carton, a pallet or an order line, by guide |
| Detail loop | MAN | Marks and Numbers | Optional, repeats | SSCC-18, carrier package IDs |
| Detail loop | PAL | Pallet Information | Optional | Pallet type and dimensions |
| Detail loop | N9 | Reference Identification | Optional, up to 5 | Group-level references such as tracking |
| Item loop | W12 | Warehouse Item Detail | Mandatory per item | Status, ordered, shipped, difference, unit, item IDs |
| Item loop | G69 | Line Item Detail, Description | Optional | Item description |
| Item loop | N9 / G62 / QTY / MEA | References, dates, quantities, measurements | Optional | Lot, serial, expiry and similar |
| Summary | W03 | Total Shipment Information | Optional | Total units, weight, volume, lading quantity |
| Summary | SE | Transaction Set Trailer | Mandatory | Segment count and control number |
Two things are not in that table. The 945 has no HL hierarchical loop: pallet-to-carton-to-item nesting belongs on the 856. And the 945 has no prices: it is a custody report, not an invoice.
Key Segments Explained
W06: Warehouse Shipment Identification
W06*F*ORD-78901234*20260510*WHSE-SHIP-99821~
| Element | Name | Example | What it means |
|---|---|---|---|
| W0601 | Reporting Code | F | The basis of the report. F = full detail |
| W0602 | Depositor Order Number | ORD-78901234 | Your order number from W0502 on the 940. This is the matching key |
| W0603 | Date | 20260510 | The ship date, as CCYYMMDD |
| W0604 | Shipment Identification Number | WHSE-SHIP-99821 | The warehouse's shipment ID |
| W0605 | Agent Shipment ID Number | An agent's or forwarder's reference, when there is one | |
| W0606 | Purchase Order Number | The end customer's PO, which you need for the 856 and invoice | |
| W0607 / W0608 | Master Reference (Link) Number, Link Sequence Number | A master reference and sequence number, sent as a pair, when the warehouse's guide uses them to link related transactions |
F (Full Detail) is the reporting code most 945 guides specify: every shipped line is reported. The 004010 list for this element also includes N (No Exceptions), X (Exceptions Only) and C (Customer Return, Full Detail), among others. Use the code your warehouse's guide names. If a guide lists N, ask whether the warehouse really sends a 945 with no line detail when nothing is short, because your reconciliation has to handle it.
N1 Loop: Parties
N1*ST*ACME CUSTOMER INC~
N3*123 MAIN STREET~
N4*AUSTIN*TX*78701*US~
At least one N1 is required. Most guides ask for the ship-to (ST), and many also want the warehouse (WH), the ship-from (SF) or the depositor (DE). For retail shipments the ship-to often carries a DC or store number in N103/N104, which you will need on the 856.
N9: References
N9*BM*BOL-22455013~
N9*CN*PRO-71530288~
N9 carries references at the header (up to 10), at each LX group and on each item. Common qualifiers on a 945:
| Qualifier | Name | Typical use |
|---|---|---|
BM | Bill of Lading Number | LTL and truckload shipments |
CN | Carrier's Reference Number (PRO/Invoice) | The LTL carrier's PRO number |
2I | Tracking Number | Parcel tracking, when the guide puts it in N9 |
08 | Carrier Assigned Package Identification Number | Another place guides put parcel tracking |
PO | Purchase Order Number | Customer PO, when not in W0606 |
LT | Lot Number | At item level, for lot-controlled goods |
There is no single standard home for parcel tracking numbers. Some warehouses send them in N9 at the header or LX level, some in MAN against each carton (as in our examples), and some in both. Your warehouse's guide decides, and your map has to read from the right place.
G62: Date/Time
G62*11*20260510~
G6201 = 11 means "shipped on this date". Some guides add a time, an estimated delivery date (17) or an actual pickup date (86).
W27: Carrier Detail
W27*U*UPSN*UPS GROUND*PP~
| Element | Name | Example | What it means |
|---|---|---|---|
| W2701 | Transportation Method/Type Code | U | U private parcel service, M motor (common carrier), LT less than trailer load, H customer pickup, A air |
| W2702 | Standard Carrier Alpha Code | UPSN | The carrier's SCAC. Required for most modes |
| W2703 | Routing | UPS GROUND | Service level or routing text |
| W2704 | Shipment Method of Payment | PP | PP prepaid, CC collect, TP third party |
| W2705 to W2707 | Equipment description, initial and number | Trailer details for truckload |
Compare W27 with what the 940 asked for. A shipment that went out on a different carrier or service than the customer's routing guide required is a chargeback risk, and the 945 is your first chance to catch it.
LX and MAN: Shipped Groups and Carton Labels
LX*1~
MAN*GM*00008123456000001015**CP*1Z999AA10123456784~
LX starts each detail group. The standard does not say what a group is; the warehouse's guide does. One LX per carton (the most useful for building an 856), one per order line, or one per pallet are all common.
MAN carries the marks on the container. It has two qualifier and value pairs, so one segment can describe one physical carton two ways:
| Element | Name | Example | What it means |
|---|---|---|---|
| MAN01 | Marks and Numbers Qualifier | GM | GM = SSCC-18 and application identifier, so the value starts with 00 |
| MAN02 | Marks and Numbers | 00008123456000001015 | The carton's SSCC-18 with its 00 prefix |
| MAN03 | Marks and Numbers | End of a range, when a range is sent | |
| MAN04 | Marks and Numbers Qualifier | CP | CP = carrier-assigned package ID |
| MAN05 | Marks and Numbers | 1Z999AA10123456784 | The tracking number for that carton |
If you ship to retailers, these SSCC-18s are the ones printed on the GS1-128 labels, and the retailer's 856 must carry the same numbers. Taking them from the 945 instead of generating new ones keeps the labels and the ASN in step. Our SSCC label generator shows how the number and its check digit are built.
W12: Warehouse Item Detail
W12*CP*4*3*1*CA*012345678912*VN*BRAND-SKU-002~
| Element | Name | Example | What it means |
|---|---|---|---|
| W1201 | Shipment/Order Status Code | CP | What happened to this line (codes below) |
| W1202 | Quantity Ordered | 4 | The quantity from the 940 |
| W1203 | Number of Units Shipped | 3 | What actually shipped |
| W1204 | Quantity Difference | 1 | Ordered minus shipped |
| W1205 | Unit of Measure | CA | EA each, CA case, and other X12 unit codes |
| W1206 | U.P.C. Case Code | 012345678912 | The 12-digit case code, when the line is identified by it |
| W1207 / W1208 | Product/Service ID Qualifier, ID | VN, BRAND-SKU-002 | Your item number (VN), or another ID such as UP for a consumer UPC |
| W1209 | Warehouse Lot Number | The lot shipped, for lot-controlled goods | |
| W1210 to W1215 | Weights | Line weights with qualifier and unit, when the guide asks | |
| W1216 to W1218 | UPC case code and a second product ID pair | When W1201 is IS, these identify the original item ordered | |
| W1219 | Line Item Change Reason Code | Why the line changed, where the guide uses it |
The standard requires either W1206 or the W1207/W1208 pair, so every line carries at least one item identifier. Make sure it is one your 940 sent, or the line cannot be matched.
W1201 status codes you will see on a 945
| Code | Name | Read it as |
|---|---|---|
CC | Shipment Complete on (Date) | Shipped in full |
CL | Complete | Shipped in full (some guides use this instead of CC) |
CP | Partial Shipment on (Date), Considered No Backorder | Short, and the balance is not coming |
BP | Shipment Partial, Back Order to Ship on (Date) | Short, and the balance will follow on a later 945 |
PR | Partial Shipment | Short; the guide says what happens to the balance |
BO | Back Ordered | Nothing shipped yet; the line is backordered |
IC | Item Canceled | Not shipped and canceled |
DS | Out Of Stock Condition | Not shipped because there was no stock |
IS | Item Represents Substitution from Original Order | A substitute shipped; the original item is in W1216 to W1218 |
CS | Shipment Complete with Substitution | Shipped in full, partly with a substitute |
SS | Split Shipment | Part of a line shipped separately |
Element 368 has over a hundred codes in total. Your warehouse's guide lists the handful it uses; map those and alert on anything else.
G69: Description
G69*PERFORMANCE TEE WHITE LARGE CASE OF 12~
A free-text description of the item. Useful for people reading the file; never match on it.
W03: Total Shipment Information
W03*15*61.5*LB***4*CT~
| Element | Name | Example | What it means |
|---|---|---|---|
| W0301 | Number of Units Shipped | 15 | Sum of W1203 across the transaction set |
| W0302 / W0303 | Weight, Unit of Measure | 61.5, LB | Total shipped weight |
| W0304 / W0305 | Volume, Unit of Measure | Total volume, when sent | |
| W0306 / W0307 | Lading Quantity, Unit of Measure | 4, CT | Number of handling units: cartons, pallets |
W0301 adds up units across lines whatever their unit of measure, so a 945 with eaches and cases has a total that mixes both. Reconcile on the lines, and use W03 as a check that you received every line.
Short Shipments, Backorders and Substitutions
The difference between the 940 and the 945 is where the money is. Three cases cover almost every exception:
Short, no backorder (CP, or PR where the guide says so). The warehouse shipped what it had and the rest is closed. Cancel the balance in your order system, ship-confirm the shipped quantity, and tell the customer before their receiving dock does. For retail orders, the 856 and the invoice must show the shipped quantity, not the ordered one.
Short, backordered (BP or BO). The balance stays open and a later 945 will report it. Keep the order line open for the difference in W1204, and expect a second 945 with the same W0602 and a different W0604 shipment ID. Some warehouses do not backorder at all and want a new 940 for the balance; the guide says which.
Substituted (IS or CS). A different item shipped. Under IS, W1216 to W1218 identify the item originally ordered, so you can match the line back to the 940 and still invoice the item that really shipped. Substitutions you did not authorize are worth raising with the warehouse the same day.
Whatever the code, alert on every line where W1203 does not equal W1202. Status codes vary by warehouse; the arithmetic does not.
Interactive Example: Carton-Level Detail to a Retail DC
A less-than-truckload shipment to a retailer's distribution center. W0606 carries the retailer's PO, N9*BM the bill of lading and N9*CN the carrier's PRO number, and W27*M*SRLX the LTL carrier's SCAC. Each LX is one carton with its SSCC-18 in MAN*GM, followed by the W12 for the item inside it. W03 totals 96 units, 38 pounds and 2 cartons.
3PL 945 Carton-Level Detail (LTL to a Retail DC)
A carton-level 945 for a less-than-truckload shipment to a retailer DC: customer PO in W0606, bill of lading and PRO in N9, carrier SCAC in W27, and one LX group per carton with its SSCC-18 in MAN. The 945 has no HL hierarchy; pallet-to-carton nesting goes on the 856
- Document
- 945 Warehouse Shipping Advice
- From / to
- WAREHOUSE456 → BRAND123
- Segments
- 23
- Ship To
- ACME RETAIL DC 001
- 500 LOGISTICS PARKWAY, COLUMBUS, OH, 43219
- Interchange date
- May 10, 2026
Raw EDI (X12)
Human-Readable
Interchange
Functional Group
Transaction 945
Warehouse Shipping AdviceSegment Detail
This is the 945 shape to ask for if you sell to retailers through a 3PL. One LX per carton gives you everything the 856's pack level needs: the SSCC-18, the item and the quantity in each carton. What the 945 cannot give you is pallet-to-carton nesting, because it has no HL loop. If the retailer wants a pallet level on the 856, agree with the warehouse how it will report pallet SSCCs (for example, a separate LX per pallet with its own MAN) and build the hierarchy on your side.
Interactive Example: Daily Batch of Three Orders
Many 3PLs send one file per shipping day. The right way to do that in X12 is one 945 transaction set per order, all inside one functional group: three ST/SE pairs between a single GS and GE, with GE01 = 3. Each 945 has its own W06, ship-to, carrier, cartons and W03. The third order shipped 1 of 2 cases with the balance backordered (W12*BP).
Daily 945 Batch: Three Orders in One Functional Group
End-of-day file with three 945 transaction sets (one per 940 order) inside one GS/GE group, each with its own W06, ship-to, carton SSCC, tracking number and W03 totals. The third order ships 1 of 2 cases with the balance backordered (W12 BP)
- Document
- 945 Warehouse Shipping Advice
- From / to
- WAREHOUSE456 → BRAND123
- Segments
- 43
- Ship To
- CANYON TRAIL SUPPLY
- 14 FERRY STREET, MOAB, UT, 84532
- Interchange date
- May 10, 2026
Raw EDI (X12)
Human-Readable
Interchange
Functional Group
Transaction 945
Warehouse Shipping AdviceSegment Detail
Transaction 945
Warehouse Shipping AdviceSegment Detail
Transaction 945
Warehouse Shipping AdviceSegment Detail
A 945 transaction set has exactly one W06, so one transaction set describes one shipment for one depositor order. A file with several W06 segments inside a single ST to SE is not valid X12, and a validator will reject it.
EDI 945 vs 940, 856, 944 and 810
| Document | Sent by | To | Purpose |
|---|---|---|---|
| 940 Warehouse Shipping Order | Depositor | Warehouse | Instruction to ship an order |
| 945 Warehouse Shipping Advice | Warehouse | Depositor | Confirmation of what shipped against the 940 |
| 856 Ship Notice/Manifest | Seller | Buyer | Advance notice to the customer of what is arriving, with a full pallet, carton and item hierarchy |
| 944 Receipt Advice | Warehouse | Depositor | Confirmation of stock received into the warehouse |
| 810 Invoice | Seller | Buyer | Bill for the goods shipped |
The 945 and the 856 look alike because both describe a shipment, but they face different directions. The 945 is internal to your supply chain: your warehouse reporting to you. The 856 is external: you reporting to your customer. When a 3PL ships to your retail customer, the 945 comes in first and your 856 goes out built from it.
Where the 945 Sits in the Flow
For a supplier selling to a retailer through a 3PL:
- Retailer sends an 850 purchase order to you.
- You send a 940 to the 3PL.
- The 3PL ships and sends the 945 to you.
- You send the 856 to the retailer, built from the 945's cartons, SSCCs and quantities.
- You send the 810 for the shipped quantities.
- Every document gets a 997 in return.
For a direct-to-consumer brand the chain is shorter: the 945's tracking numbers go to the shopping platform and the customer's shipping email. Our guide to 3PL EDI integration covers the setup on both sides.
Common 945 Errors and How to Prevent Them
| Error | What happens | Prevention |
|---|---|---|
W0602 does not match any 940 | 945 cannot be matched; shipment goes unrecorded | Agree that the warehouse echoes W0502 exactly, including prefixes and leading zeros |
Several W06 in one transaction set | File rejected by your translator | One 945 per order; batch them as several ST/SE pairs in one group |
Invalid W1201 code | 997 rejection, or a line your map cannot classify | Agree the code list in the guide; alert on anything outside it |
| Item ID in the wrong W12 position | Line cannot be matched; 997 may reject it | UPC case code in W1206, qualifier and ID in W1207/W1208 |
SSCC-18 sent with MAN*UC | Downstream 856 carries the wrong qualifier | GM for an SSCC-18 with its 00 prefix; UC is for a 14-digit shipping container code |
| Tracking numbers in an unexpected place | Customer never gets a tracking email | Map tracking from where the guide puts it: MAN, N9*2I or N9*08 |
| Short lines with no difference reported | Invoice and 856 overstate the shipment | Alert whenever W1203 and W1202 differ, whatever the status code says |
| Backorder shipped with no link to the original | Order stays open, or ships twice | Match follow-up 945s on W0602, and track quantity open per line |
W03 total ignored | Missing lines go unnoticed | Compare W0301 with the sum of W1203 |
| 945 never arrives | Order shows as unshipped while the customer has the goods | Alert when a 940 has no 945 by the warehouse's agreed cut-off |
945 Implementation Checklist
Before going live with a warehouse:
- Get the warehouse's 945 guide and confirm release (usually 004010) and
GS01=SW - Confirm one 945 per order or per shipment, and whether daily batches arrive as several transaction sets in one group
- Confirm
W0602echoes your 940 order number exactly, and where the customer PO goes - Confirm what one
LXrepresents: a carton, a pallet or an order line - Confirm where tracking numbers, bills of lading and PRO numbers are sent
- Get the list of
W1201status codes the warehouse uses, and its backorder policy - Confirm the item identifiers in
W12match the ones on your 940 - Map lots, serials and expiry dates if you sell regulated or dated goods
- Build reconciliation: every 940 has a 945, every line's shipped quantity is posted,
W03matches the lines - Return a 997 for every 945 group, and test a short line, a backorder and a substitution before go-live
If you are setting up a 3PL connection from scratch, our page on EDI for third-party logistics and the EDI document types reference show which documents each side usually owns.
Getting Orders to Your Warehouse With OrderSync
The 945 can only be as good as the 940 it answers. If the order that went to the warehouse had the wrong item number, unit or ship-to, the 945 confirms the wrong shipment accurately.
OrderSync works on the order side. It reads customer orders in any format, from EDI 850s and 875s to PDFs, emails and spreadsheets, matches customers, items and units to your catalog, and outputs valid X12 or ERP data, so the order your warehouse works from is right the first time. Paste any 945 into the free EDI inspector to see it parsed segment by segment with a plain-English summary, or book a 15-minute walkthrough to see your own orders processed.
Frequently Asked Questions
What is an EDI 945 used for?
A warehouse sends the EDI 945 to confirm that it shipped an order. It carries the depositor's order number, ship date, carrier, tracking or bill of lading, carton labels, and for each line the quantity ordered, shipped and short, with a status code explaining any difference.
What is the difference between EDI 940 and EDI 945?
The 940 is the instruction: the depositor tells the warehouse to ship an order. The 945 is the confirmation: the warehouse tells the depositor what actually shipped. They are matched on the depositor order number, which the 945 carries in W0602.
What is the difference between EDI 945 and 856?
The 945 goes from your warehouse to you and confirms a shipment against your 940. The 856 goes from you to your customer and describes what is arriving, with a pallet, carton and item hierarchy. When a 3PL ships to your retail customer, you build the 856 from the 945.
What does W06 F mean in a 945?
W0601 is the reporting code, and F means Full Detail: the 945 reports every shipped line. It is the code most 945 guides specify. The same element can carry other codes, such as N (No Exceptions) or X (Exceptions Only), when the warehouse's guide calls for them.
How does a 945 report a short shipment?
On the W12 line. W1202 is the quantity ordered, W1203 the quantity shipped and W1204 the difference. W1201 says what happens to the balance: CP for a partial shipment with no backorder, BP or BO when the balance is backordered, IC when the line is canceled.
Can one 945 cover several orders?
One 945 transaction set covers one shipment, because it has a single W06 header. A warehouse that sends one file per day puts several 945 transaction sets, one per order, inside one functional group. Several W06 segments inside one transaction set is not valid X12.
Where does the tracking number go in a 945?
It depends on the warehouse's guide. Common places are MAN at carton level (with qualifier CP), N9 with qualifier 2I or 08 at header or group level, or both. Map from the place your warehouse uses.
Do I need to send a 997 for a 945?
Yes, if the warehouse's guide asks for functional acknowledgments, which most do. Your translator returns a 997 for the functional group with AK101 set to SW.