ediverse Explore the platform

Spotlight PEPPOL BIS Billing 3.0 The EU e-invoicing mandate is here — France Sept 2026, Belgium Jan 2026, Germany 2025.

X12 880 — Grocery Products Invoice

The 880 is the grocery- and CPG-specific invoice. More compact than the generic 810, it reflects the pricing practices typical of mass-consumer finished goods.

Purpose

The 880 serves the US grocery sector: it bills finished products delivered to a retailer or wholesaler in a historically more condensed formalism than the 810 (generic invoice). Where the 810 is full of generic loops (PID, ITD, IT3), the 880 uses grocery-specific G02, G34, G31 segments that compress lines, prices, and totals.

In practice, many US chains have migrated to the standard 810 with a grocery variant on promotional allowance codes. The 880 still shows up at long-standing CPGs and certain grocery cooperatives.

Envelope structure

The 880 travels in a functional group GP (Grocery Products). Didactic example in release 004010:

x12 example-880.x12
ISA*00*          *00*          *ZZ*ACMECPG       *ZZ*ACMERETAIL    *260514*1100*U*00401*000000880*0*P*>~
GS*GP*ACMECPG*ACMERETAIL*20260514*1100*1*X*004010~
ST*880*0001~
G01*INV-2026-880-007*20260513*PO78901~
N1*BY*ACME RETAIL CO*92*0001~
N1*VN*ACME CPG INC*92*V-9087~
N1*ST*ACME RETAIL DC 5*92*DC-005~
G02*5*EA*012345678905*RETAIL CHIPS 12X1OZ*48~
G34*48*EA*1.99*012345678905~
G31*95.52*30*60~
SE*8*0001~
GE*1*1~
IEA*1*000000880~

The G01 (Invoice Identification) opens with: invoice number, date, related PO. The N1 segments name buyer, vendor and ship-to. The G02 segments are item lines; G34 carries price detail per UPC; G31 totals.

Common segments

  • HeaderST, G01 (Invoice Identification), DTM.
  • PartiesN1 loop (BY, VN, ST, RI).
  • LinesG02 (Beginning Segment for Grocery Products Invoice), G34 (Line Item Detail), G69 (Item Description).
  • AllowancesG72 (Allowance or Charge) at line or document level.
  • SummaryG31 (Invoice Summary), SE.

Common pitfalls

  • UPC required: G3404 must carry the GS1 UPC of the product; a vendor-only SKU is rejected on the retailer side.
  • Trade promotions and allowances: specific G72 codes (off-invoice allowance, slotting fee); check that the retailer accepts the chosen code.
  • Substitution with the 810: when a retailer accepts both, prefer the 810 for portability and use the 880 only when explicitly required.

Documentation

The code 880 and the name Grocery Products Invoice are public and listed on x12.org/products/transaction-sets. GS1 US and FMI / GMA conventions frame the 880 in grocery.