EDI 855 PO Acknowledgment: Line Status Codes Distribution Teams Use
For edi and integration analysts, it leads at shippers, 3pls and carriers · Understand the problem

EDI 855 PO Acknowledgment: Line Status Codes Distribution Teams Use: Illustrative TMS–ERP order and invoice handoff review beside a warehouse floor; not a client facility.
Quick answer: edi 855 po acknowledgment
An EDI 855 is the seller's X12 reply to an 850 purchase order. The BAK02 code states whether the whole order is accepted, changed or rejected, and each ACK segment gives a line status: IA accepted, IB backordered with a ship date, IQ quantity changed, IP price changed, DR date rescheduled, IS substituted or IR rejected.
TL;DR — what you’ll learn
- BAK02 sets the reading mode: AT accepts everything without line detail, AD and AC repeat lines, and RD or RJ reject the order, so a map must never store all five as simply acknowledged.
- A partial commitment is best sent as two ACK segments, IA for the quantity shipping now and IB for the balance, and the two ACK02 quantities must add up to PO102 exactly.
- IB needs a quantity, unit and a dated ACK04 qualifier such as 068 current schedule ship; syntax rule C0405 makes ACK05 mandatory whenever ACK04 is present.
- In the worked order, the first shipment covers 71.7% of units and $9,672 of $15,260, while the dated backorder lifts committed value to 79.6% before the rejected line is re-sourced.
Topics: edi 855 po acknowledgment · edi 855 line item status codes · ack01 ia ib ir codes · purchase order acknowledgment backorder · 855 vs 856 asn
All quantities, amounts, product codes and events are illustrative teaching examples.
A distributor's buyer opens the purchase order screen on Thursday and sees every line marked "acknowledged". On Monday the trailer arrives with 300 cartons of an item ordered at 500, a price that does not match the order, and no sign of a fourth item at all. The supplier had said all of that in its 855. The buyer's system simply stored "acknowledged" and threw the line detail away.
An EDI 855 is only useful when each line status code drives a specific action: a firm receipt, an open backorder with a date, a price hold or a cancelled line that purchasing must re-source. Mapped that way, the acknowledgment becomes the expected-receipt record that the ship notice, the dock and the invoice match against, and line-level surprises at the door drop sharply.
- What the guide covers: the BAK header, the ACK line status codes, backorder dates, the link to the ship notice, response timing and the follow-up change transactions.
- Worked material: a four-line 855 in X12 syntax, a fill and backorder calculation in US dollars with the exporter's rupee view, an incident trace and a partner rollout checklist.
Where an 855 sits between the 850 order and the 856 ship notice
The 855 is the seller's line-by-line answer to a purchase order, and it sets the quantities, prices and dates that every later document is checked against. X12 describes the transaction set as a seller's acknowledgment of a buyer's purchase order, and notes it can also notify a buyer of a vendor-generated order.
The order of events is simple: the buyer sends an 850, the seller's translator returns a 997 or 999 to confirm the file was readable, and the seller's order desk then sends the 855 with its business decision. The 856 ship notice follows when goods leave, and the 810 invoice after that. Only the 855 tells the buyer, before anything ships, what the seller has actually agreed to supply.
Scroll horizontally to see all columns.
| Acknowledgment element | Where the value comes from | Owner on the seller side | Who reviews it on the buyer side |
|---|---|---|---|
| BAK02 acknowledgment type | Order entry result for the whole PO | Customer service or order desk lead | Buyer or replenishment planner |
| ACK01 line status per PO1 line | Available-to-promise check in the seller's ERP | Order desk, with supply planning for shortages | Replenishment planner |
| Backorder quantity and ship date | Production or inbound supply schedule | Supply planner | Planner, who decides whether to wait or re-source |
| Changed unit price (CTP) | Price list or contract record in the seller's ERP | Pricing or contract administrator | Buyer, against the cost record |
| Substitute item identifier | Item master cross-reference | Product data team | Buyer and item master team |
| Rejected line and reason note | Credit, discontinuation or minimum-order rule | Order desk lead | Buyer, who re-sources the line |
Our broader guide to orchestrating the 856, 940, 945 and carrier messages covers the integration architecture across ERP, WMS and TMS. This article stays narrower: it explains what each field in the acknowledgment means and what a distribution team should do with it, so the ship notice described there has a reliable promise to be checked against.
Reading the BAK header: purpose code, acknowledgment type and PO date
The BAK segment tells the buyer, in one code, whether to read the lines at all. BAK01 (data element 353) carries the transaction set purpose, BAK02 (element 587) the acknowledgment type, BAK03 the purchase order number and BAK04 the order date. If BAK03 and BAK04 do not match an open order exactly, the acknowledgment should go to an exception queue rather than be applied.
- AT, accepted without detail: the whole order is accepted as sent, and X12's own example carries no line items at all, with a CTT count of zero.
- AD, accepted with detail, no change: each line is repeated, often with schedule dates, but nothing differs from the order.
- AC, accepted with detail and changes: at least one line carries a quantity, price, date or item change, so every ACK must be read.
- RD, rejected with detail: the order is refused and line detail explains which lines failed; many guides require a note giving the reason.
- RJ, rejected without detail: the order is refused outright; X12's example expects the buyer to follow with an 860 that cancels the order.
Purpose codes vary by partner. X12's published 855 examples use BAK01 code 11, a response, while many retail implementation guides require code 00, original. Neither is wrong; the partner's guide decides. What matters is that the buyer's map rejects a code it has not agreed to, instead of silently treating every acknowledgment as an original.
ACK line status codes and the warehouse action each one triggers
Each PO1 line in a detailed acknowledgment is followed by one or more ACK segments, and ACK01 (data element 668) carries the line status. The 5010 code list for element 668 holds 26 values, but most distribution partners allow only six to eight. The codes below are the ones X12's own examples and common 5010 guides use, with the action a buyer's system should take for each.
Scroll horizontally to see all columns.
| ACK01 code | Meaning | Fields that should be present | Action in the buyer's ERP or WMS |
|---|---|---|---|
| IA | Item accepted | ACK02 quantity, ACK03 unit; schedule date if agreed | Confirm the line; expected receipt equals the acknowledged quantity |
| IB | Item backordered | Quantity, unit, ACK04 qualifier and ACK05 date | Keep the line open for the backordered quantity with a new expected date |
| IQ | Accepted, quantity changed | New quantity and unit | Reduce or raise the open quantity; route to the planner if below a threshold |
| IP | Accepted, price changed | CTP segment with the new price | Hold the line for buyer approval before the invoice match tolerance is reset |
| DR | Accepted, date rescheduled | Qualifier and new date | Move the expected receipt date; re-run dock appointment planning |
| IS | Accepted, substitution made | Product qualifier and substitute identifier | Check the substitute against the item master before receipt is allowed |
| IR | Item rejected | Quantity and, by agreement, a reason note | Close the line and send it back to purchasing for re-sourcing |
One line can carry several ACK segments. X12's minor-changes example acknowledges a single line with IP, DR, IQ and IS together: a lower price, a later date, a smaller quantity and a substituted part number. A buyer's map that reads only the first ACK after each PO1 will apply the price change and miss the other three, which is one of the most common mapping faults in practice.
Backorder lines: carrying the IB quantity and date to planners
A backorder is useful only when it arrives with both a quantity and a date. In common 5010 guides, ACK02 and ACK03 are required whenever ACK01 is DR, IB or IQ, and ACK04 with ACK05 are required for DR and IB. The X12 syntax rule C0405 adds that if ACK04 is present, ACK05 must be too. Qualifier 068, current schedule ship, is the date most partners expect.
The cleanest way to show a partial commitment is to split the line: one ACK with IA for the quantity that will ship now, and a second ACK with IB for the remainder and its ship date. Both quantities together should equal PO102. The payload below shows a four-line order acknowledged that way, with one line split, one accepted at a changed price and one rejected.
ST*855*0412~
BAK*00*AC*4500123*20261102~
PO1*1*500*EA*12.4**VP*A-1001~
ACK*IA*300*EA*068*20261106~
ACK*IB*200*EA*068*20261204~
PO1*2*240*EA*8.75**VP*B-2040~
ACK*IA*240*EA*068*20261106~
PO1*3*120*EA*31**VP*C-3300~
CTP**CAT*32.1*1*EA~
ACK*IP*120*EA*068*20261106~
PO1*4*60*EA*54**VP*D-4410~
ACK*IR*60*EA~
CTT*4~
SE*14*0412~
Check per line: sum(ACK02 where ACK01 in IA, IB, IP, IQ, DR, IS) + ACK02(IR) = PO102
Line 1: 300 + 200 = 500 (passes)
Line 4: 0 + 60 = 60 (passes; line closed)
An X12 855 backorder is complete only when ACK01 carries IB, ACK02 and ACK03 give the backordered quantity and unit, and ACK04 qualifier 068 with ACK05 gives the current scheduled ship date. Syntax rule C0405 makes ACK05 mandatory whenever ACK04 appears, and split ACK quantities must sum to PO102 exactly.
Why the first ship notice must match the acknowledged quantities
The ship notice should never promise more than the acknowledgment committed for that date. When the buyer's receiving system builds expected receipts from the 855, an 856 that lists 500 units against a line acknowledged as 300 IA and 200 IB is either an early shipment of the backorder or a data error, and the dock cannot tell which without a phone call.
- Quantity ceiling: the ASN quantity for a line should not exceed the IA, IP, IQ, DR or IS quantity scheduled for that ship date, plus any agreed over-ship tolerance.
- Backorder release: the IB balance ships later on its own ASN, referencing the same PO and line number, so receiving can close the line when it lands.
- Rejected lines: any ASN line referencing an IR line should be held at the gate, because purchasing may already have placed that demand with another supplier.
- Substitutions: the ASN should carry the substitute identifier from the IS acknowledgment, otherwise the label scan at the dock will not match the expected item.
The rule also protects the supplier. A buyer that has stored the IB date has no reason to raise a late or short shipment against the first trailer, because the shortfall was disclosed. Scorecards built on the acknowledged quantity, not the original order, are fairer to both sides and far easier to dispute when they are wrong.
Distribution receiving should build expected receipts from the X12 855 line acknowledgment rather than the 850 order quantity, then hold any 856 line whose quantity exceeds the IA or IB quantity scheduled for that date by more than a 2% agreed tolerance. Lines acknowledged with IR should be blocked at the gate entirely.
A backorder sent as a quantity change that broke the dock receipt
The trace below follows a real-world pattern with illustrative document numbers. The supplier's translator turned a partial allocation into a quantity change, the buyer's ERP closed the balance, and four weeks later the balance arrived against a line that no longer existed.
- 2 Nov, 14:06: the distributor's ERP sends 850 PO 4500123, line 1, item A-1001, 500 each. The supplier's translator returns a 997 with AK501 code A twenty minutes later.
- 3 Nov, 09:41: the supplier's ERP allocates 300 and schedules 200 for early December, but its outbound map has no IB rule, so the 855 carries ACK*IQ*300*EA for line 1.
- 3 Nov, 09:43: the distributor's inbound map applies IQ as a firm quantity change, reduces line 1 to 300 and marks the line complete once that quantity is received on 6 Nov.
- 4 Dec, 07:20: a trailer arrives with 200 units and an 856 referencing PO 4500123 line 1. The WMS receiving transaction finds no open quantity and parks the pallets in a hold location.
- 4 Dec, 11:05: purchasing, which had already re-ordered 200 units from a second supplier on 10 Nov, now holds 400 units of demand worth 200. The fix agreed afterwards: the supplier maps partial allocations to IA plus IB, and the buyer routes any IQ reduction above 10% to a planner before closing.
Order fill and open backorder value in dollars and rupees
Converting the acknowledgment into money shows the planner what the order is worth today, what is still promised and what must be bought elsewhere. X12 is a US standard with no Indian regulatory counterpart, so the rupee column shows the same order from the side of an Indian exporter supplying the US distributor, converted at an illustrative ₹88 per US dollar.
Scroll horizontally to see all columns.
| Line and status | Units | US distributor view (USD) | Indian exporter view (INR at ₹88/$) |
|---|---|---|---|
| Line 1 ordered, 500 at $12.40 | 500 | $6,200.00 | ₹5,45,600 |
| Line 1 IA, shipping 6 Nov | 300 | $3,720.00 | ₹3,27,360 |
| Line 1 IB, ship date 4 Dec | 200 | $2,480.00 | ₹2,18,240 |
| Line 2 IA, 240 at $8.75 | 240 | $2,100.00 | ₹1,84,800 |
| Line 3 IP, 120 at $32.10 (ordered at $31.00) | 120 | $3,852.00 | ₹3,38,976 |
| Line 3 price variance awaiting buyer approval | 120 | $132.00 | ₹11,616 |
| Line 4 IR, 60 at $54.00, to be re-sourced | 60 | $3,240.00 | ₹2,85,120 |
| Total ordered | 920 | $15,260.00 | ₹13,42,880 |
| First shipment value (lines 1 IA, 2 and 3) | 660 | $9,672.00 | ₹8,51,136 |
Read as fill rates, the first shipment covers 660 of 920 units, or 71.7%, and $9,672 of $15,260 in value at acknowledged prices. Adding the dated backorder brings the committed value to $12,152, or 79.6% of the order. The $3,240 rejected line is the planner's immediate problem, and the $132 price increase is the buyer's, because the invoice will arrive at $32.10.
- For the exporter: the commercial invoice and export paperwork for 6 Nov cover only ₹8,51,136 of goods; the ₹2,18,240 backorder becomes a second shipment with its own invoice in December.
- For the distributor: open purchase commitments at month end should show $2,480 on line 1, not zero and not $6,200, which is only true if IB was stored as an open quantity.
Response windows, 997 receipts and follow-up 860 and 865 changes
A 997 or 999 proves the file arrived and parsed; it says nothing about whether the seller accepts the order. The business answer is the 855, and its deadline comes from the partner's guide, commonly a set number of hours or business days after the 850. Our guide to reconciling missing 997 acknowledgments covers the syntax layer; the 855 clock should be monitored separately.
- Buyer responds to AC: in X12's minor-changes example the buyer sends an 860, Purchase Order Change Request - Buyer Initiated, either to accept the supplier's changes or to cancel the order.
- Seller changes later: once an order is acknowledged, a supplier who must change it again uses the 865, which X12 defines as the seller's acceptance, rejection or change of a purchase order.
- Status between events: when the buyer needs a progress update rather than a change, the 869 inquiry and 870 report pair applies, covered in our order status inquiry guide.
- Overdue acknowledgments: a PO with a 997 but no 855 after the agreed window should alert the buyer, because the supplier has read the order and not yet committed to it.
Purchase order acknowledgment monitoring should track two separate clocks in the buyer's EDI log: the 997 or 999 functional acknowledgment, which confirms syntax only, and the X12 855 business acknowledgment, which confirms supply. A purchase order with a 997 but no 855 after the partner's agreed window, for example 48 hours, needs a buyer follow-up.
Which acknowledgment checks are fixed rules and where software assists
Matching an acknowledgment to an order is arithmetic and should be fully automatic; deciding what to do about a shortfall is a planning judgement. The split below keeps code-level checks inside the translator and ERP, and confines software suggestions to tasks where a planner or buyer still approves the outcome.
Scroll horizontally to see all columns.
| Task | Handled by a fixed rule | Where software assists a person | Who decides |
|---|---|---|---|
| Matching BAK03 and BAK04 to an open PO | Exact match or exception queue | Not needed | Map, no override |
| Summing split ACK02 quantities to PO102 | Mismatch rejects the acknowledgment | Not needed | Map, no override |
| Applying an IP price change | Line held until approved | Comparing the new price with contract history and recent invoices | Buyer |
| Choosing between waiting for an IB date and re-sourcing | Alert when the date breaches the need date | Projecting stock-out days and alternative supplier lead times | Replenishment planner |
| Accepting an IS substitute item | Blocked unless a cross-reference exists | Suggesting likely equivalents from item attributes | Item master team and buyer |
| Reading an emailed PDF confirmation from a non-EDI supplier | None until keyed or confirmed | Extracting quantities and dates into draft ACK lines | Order desk clerk confirms each line |
The last row matters for distributors with a long tail of suppliers who will never send EDI. Drafting acknowledgment lines from emailed confirmations is a reasonable use of document-reading software, provided a person confirms every quantity and date before the line updates the order, and the record shows it was keyed from an email rather than received as an 855.
Rollout checklist for a new 855 trading partner
Most 855 failures are agreed into the map on the first day and found months later. A short test plan that forces each allowed code through the map, end to end into the ERP and the receiving screen, catches them before the partner goes live. Use the checklist below with any partner, alongside the field rules in your EDI mapping specification.
Scroll horizontally to see all columns.
| Check | Test that proves it | Pass condition |
|---|---|---|
| Allowed BAK01 and BAK02 codes agreed | Send one acknowledgment per allowed type, plus one disallowed code | Allowed codes apply; the disallowed one lands in the exception queue |
| Multiple ACK segments per line read | Repeat X12's IP, DR, IQ and IS combination on one line | All four changes appear on the order line |
| IA plus IB split handled | Acknowledge 300 IA and 200 IB on a 500 line | Line shows 300 confirmed and 200 open with the IB date |
| IQ reduction routed | Reduce a line by more than the agreed threshold | Planner alert raised before the balance is closed |
| IR closes and re-sources | Reject one line | Line closed and a purchasing task created |
| ASN ceiling enforced | Send an 856 above the acknowledged quantity | Receipt held at the gate with a clear message |
| 855 overdue alert working | Send an 850 and withhold the 855 | Alert raised once the agreed window passes |
Once these pass, measure the first month by two numbers: the share of order lines acknowledged within the window, and the share of receipts that matched the acknowledged quantity rather than the ordered one. If you are scoping an EDI, ERP or WMS change to handle acknowledgments this way, the NextEdge request for proposal form sets out what to send us. More EDI and warehouse guides are on the logistics and supply chain hub.
Discuss this workflow
Describe your current systems, the recurring exception and the outcome you need. Keep shipment, customer and financial records out of the initial message.
Common operational questions
Practical answers for operations, engineering, and finance teams working on edi 855 po acknowledgment in logistics & supply chain.
What is the difference between an EDI 997 and an EDI 855?
How should a supplier show a partial backorder in an 855?
Is IQ the same as IB in an 855?
Does the ship notice have to match the 855?
References
Sources checked 13 November 2026. US and India statutory authorities and vendor documentation support platform facts; the worked examples and diagrams are original.
- X12 - Transaction set catalogue: 855 Purchase Order Acknowledgment, 860 and 865 definitionsPurpose statements for the 855, 860 Purchase Order Change Request - Buyer Initiated and 865 Purchase Order Change Acknowledgment/Request - Seller Initiated. Accessed 13 November 2026.
- X12 - 004010X358 Example 02: Purchase Order Acknowledgment with Minor ChangesBAK*11*AC header, ACK codes IA, IP, DR, IQ, IS and IR, CTP price change and the buyer's 860 response. Accessed 13 November 2026.
- X12 - 004010X358 Example 01: Basic Purchase Order Acknowledgment - AcceptedAT acknowledgment type sent without line detail and with CTT*0. Accessed 13 November 2026.
- X12 - 004010X358 Example 03: Basic Purchase Order Acknowledgment - RejectedRJ acknowledgment type and the expected 860 cancellation. Accessed 13 November 2026.
- X12 - 004010X358 Example 04: Purchase Order Acknowledgment with Shipment DetailsAD acknowledgment type with SCH segments using date qualifier 068. Accessed 13 November 2026.
- SPS Commerce - Cornerstone 855 Purchase Order Acknowledgment implementation guide, version 5010 (March 2024)Secondary source: a published trading partner guide, used for 5010 element numbers (353, 587, 668), the IB definition, RD code, functional group PR, ACK field conditions and syntax rules P0203 and C0405, because the X12 code lists require a licence. Accessed 13 November 2026.
- FMCSA — 49 CFR Part 395 Hours of Service & Electronic Logging Devices (ELD)US federal motor carrier dispatch and driver duty-status compliance mandate.
- ULIP & NIC GST E-Way Bill Portal — Unified Logistics & Rule 138 ComplianceIndian statutory goods-in-transit and multi-modal logistics verification framework.