The ANSI X12 860 – Purchase Order Change Request (Buyer Initiated) is generated when a buyer needs to modify an already-sent Purchase Order (X12 850) and must formally notify the supplier of those changes.
Below is a clear, real-world explanation of how and when the 860 is generated and sent, from both ERP and EDI perspectives.
πΉ When is X12 860 Generated?
An 860 is generated ONLY AFTER an 850 has already been sent and acknowledged.
Typical business triggers include:
1️⃣ Buyer Changes Order Details
Any change to an existing PO may trigger an 860:
Quantity increase/decrease
Price change
Delivery date change
Item substitution
Cancel or re-open PO lines
Add or delete line items
⚠️ If the buyer wants to cancel the entire PO, some trading partners require 860, others accept 855 with rejection.
2️⃣ ERP Event Trigger (System-Driven)
The 860 is usually triggered when:
Buyer updates PO in ERP (SAP / Oracle / NetSuite / JD Edwards)
Change status moves to “PO Change”
System compares Original PO vs Changed PO
Delta (difference) is identified
➡️ That delta is converted into X12 860
3️⃣ Supplier Has Not Yet Shipped
Most suppliers expect:
860 BEFORE shipment
If shipment already occurred → 860 may be rejected
πΉ How X12 860 is Generated (Step-by-Step Flow)
π§© End-to-End Flow
Buyer ERP
↓
PO Change Event
↓
ERP generates PO Change ID
↓
EDI Translator maps changes → X12 860
↓
EDI VAN / AS2 / SFTP
↓
Supplier EDI System
πΉ Step 1: Original PO Exists (850)
Buyer already sent X12 850
Supplier acknowledged via 855
πΉ Step 2: PO Change Happens in ERP
Example:
Qty changed from 100 → 120
Delivery date changed
ERP marks:
Change Version / Revision Number
Change Reason (optional)
πΉ Step 3: ERP → EDI Mapping Logic
EDI mapping:
Compares Old PO vs New PO
Identifies:
Changed lines
Added lines
Deleted lines
πΉ Step 4: X12 860 Creation
Key segments used:
| Segment | Purpose |
|---|---|
| ST | Transaction Set Header |
| BCH | Beginning Segment for PO Change |
| REF | PO number / Change ID |
| DTM | Change effective date |
| POC | Line item change details |
| CTT | Transaction totals |
| SE | Transaction trailer |
πΉ Example BCH Segment
BCH*01*SA*4500001234**20260126~
01→ Change orderSA→ Standalone changePO Number referenced
πΉ Example POC Segment (Quantity Change)
POC*01*120*EA*25.00**IN*ABC123~
01→ Change120→ New quantity
πΉ How Is X12 860 Sent to Supplier?
π Transmission Methods
AS2 (most common)
SFTP
VAN (SPS, OpenText, TrueCommerce)
π Supplier Response After 860
| Response | Meaning |
|---|---|
| 855 | Accept / Reject PO change |
| 997 | Technical acknowledgment |
| 856 | Shipment (if accepted) |
πΉ Important Business Rules
⚠️ 860 vs 850
| Scenario | Document |
|---|---|
| New PO | 850 |
| Modify existing PO | 860 |
| Cancel PO (partner-dependent) | 860 or 855 |
⚠️ Partial Acceptance
Supplier may accept some lines and reject others
Reflected in 855 response
πΉ Real-World Example
Retail Buyer (Walmart / Target / Amazon)
Buyer sends 850
Inventory changes
Buyer updates ERP
860 generated automatically
Supplier confirms via 855
Shipment continues with 856
πΉ Common Rejection Reasons
PO already shipped
Invalid line reference
Price change not allowed
Change window expired
πΉ Summary
✅ X12 860 is generated ONLY after an 850 exists
✅ Triggered by PO change in buyer ERP
✅ Contains only the changed lines (delta)
✅ Sent before shipment
✅ Supplier responds with 855
No comments:
Post a Comment