X12 889 — Promotion Announcement
The 889 announces a retailer promotion — TPR, BOGO, off-invoice allowance, display program — from a manufacturer to retailers, for trade planning.
Purpose
The 889 documents a trade promotion: type (TPR temporary price reduction, BOGO buy-one-get-one, off-invoice allowance, display incentive), amount, performance period, concerned items, conditions (display compliance, minimum order). It serves trade promotion management (TPM).
It triggers a trade planning, execution and settlement cycle. Acknowledged by 997. Typically followed by 855 / 810 on promo orders.
Envelope structure
The 889 travels within the three X12 envelope levels (ISA/IEA,
GS/GE with functional group PA, and ST/SE).
Didactic example in release 004010:
ISA*00* *00* *ZZ*MFR *ZZ*RETAILER *260515*1300*U*00401*000000889*0*P*>~
GS*PA*MFR*RETAILER*20260515*1300*1*X*004010~
ST*889*0001~
BAU*00*PA*PROMO-2026-5500*20260515~
N1*MF*ACME FOODS INC*92*MFR-001~
N1*BY*ACME RETAIL CO*92*0001~
REF*ZZ*PROMO-TYPE-TPR~
DTM*090*20260601~
DTM*036*20260628~
LX*1~
LIN*1*UP*012345678905~
AMT*PI*0.50~
SE*11*0001~
GE*1*1~
IEA*1*000000889~ Common segments
- Header —
ST,BAU. - Mfr / Retailer —
N1*MF,N1*BY. - Promo type —
REF*ZZ. - Window —
DTM*090/DTM*036. - Items / off-invoice —
LXloop:LIN*UP,AMT*PI(Promotion incentive value). - Summary —
SE.
Common pitfalls
- Trade compliance proofs: an off-invoice allowance requires display compliance proofs (photos); the 889 must condition them explicitly.
- Lift forecasting: a 889 without expected lift / volume prevents the manufacturer from provisioning promo stock — include in
QTY. - Stack with coupons: a 889 TPR + a 877 coupon on the same item in the same window is not combinable by default; the 889 must declare the stacking policy.
Related transactions
Documentation
The code 889 and the name Promotion Announcement are public and listed on x12.org/products/transaction-sets. The complete structure of loops, qualifiers and code lists is distributed by DISA via the proprietary Implementation Guides (TR3). ediverse.io covers only public concepts, the envelope and didactic examples.