Monday, January 26, 2026

ANSI X12 860 – Purchase Order Change Request (Buyer Initiated)

 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:

SegmentPurpose
STTransaction Set Header
BCHBeginning Segment for PO Change
REFPO number / Change ID
DTMChange effective date
POCLine item change details
CTTTransaction totals
SETransaction trailer

πŸ”Ή Example BCH Segment

BCH*01*SA*4500001234**20260126~
  • 01 → Change order

  • SA → Standalone change

  • PO Number referenced


πŸ”Ή Example POC Segment (Quantity Change)

POC*01*120*EA*25.00**IN*ABC123~
  • 01 → Change

  • 120 → New quantity


πŸ”Ή How Is X12 860 Sent to Supplier?

🚚 Transmission Methods

  • AS2 (most common)

  • SFTP

  • VAN (SPS, OpenText, TrueCommerce)


πŸ” Supplier Response After 860

ResponseMeaning
855Accept / Reject PO change
997Technical acknowledgment
856Shipment (if accepted)

πŸ”Ή Important Business Rules

⚠️ 860 vs 850

ScenarioDocument
New PO850
Modify existing PO860
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: