X12 transaction guide · Finance

EDI 880 Grocery Products Invoice

The X12 invoice grocery suppliers and brokers send to retailers and wholesalers, following grocery-industry (UCS) conventions.

Sent by
Supplier, manufacturer or broker
Received by
Grocery retailer or wholesaler
Standard
ANSI ASC X12
EDIFACT equivalent
INVOIC

What is an EDI 880?

The EDI 880 Grocery Products Invoice is the ANSI X12 transaction set a supplier or broker uses to bill a grocery retailer or wholesaler for finished goods. It is a standalone, line-detail invoice built on grocery-industry practice, with its own G-segments for the invoice header, item detail and totals, in place of the segments of the general 810 invoice.

Each 880 identifies the invoice, the purchase order it bills, the ship-to party, the items and quantities invoiced, and the totals. It is not used for statements or for credit and debit adjustments, which have their own transaction sets. Accurate case codes, quantities and allowances are essential, because grocery buyers match invoices against orders and receipts before paying.

How the EDI 880 worksDiagram of the EDI 880 Grocery Products Invoice. Supplier, manufacturer or broker sends it to grocery retailer or wholesaler. It usually follows 875 and 856. It is usually followed by 997 and 820. Inside the ISA, GS and ST envelopes, X12 release 004010 requires, in the heading: G01 (Invoice Identification) and the required 0100 loop with N1 (Name) and summary: G31 (Total Invoice Quantity) and G33 (Total Dollars Summary). 3 optional loops are listed by their first segment.How the EDI 880 worksGrocery Products Invoice: who sends it, where it fits and what the standard marks required1 WHERE IT FITSUSUALLY FOLLOWS875Grocery ProductsPurchase Order856Advance Ship NoticeEDI 880SENDERSupplier, manufactureror brokerRECEIVERGrocery retailer orwholesaler997 or 999 acknowledgment back, if the partners agreeUSUALLY FOLLOWED BY997FunctionalAcknowledgment820PaymentOrder/Remittance Advice2 WHAT X12 RELEASE 004010 REQUIRESInterchange: sender and receiver IDsISA … IEAFunctional group, ID code GPGS … GETransaction set 880ST … SEHEADINGG01Invoice IdentificationRequired loop 0100 · repeats up to10N1Name+ 1 optional loop, starting with:G72DETAIL+ 2 optional loops, starting with:G17ENTSUMMARYG31Total Invoice QuantityG33Total Dollars SummaryBlue box: required loop. Optional loops are listed by the segment that starts them; when a loop is used, that first segment is required. Optional segmentsoutside loops are not drawn.Structure: required segments and loops in the X12 004010 listing for the 880. Your trading partner's implementation guide adds its own requirements.
How the EDI 880 worksDiagram of the EDI 880 Grocery Products Invoice. Supplier, manufacturer or broker sends it to grocery retailer or wholesaler. It usually follows 875 and 856. It is usually followed by 997 and 820. Inside the ISA, GS and ST envelopes, X12 release 004010 requires, in the heading: G01 (Invoice Identification) and the required 0100 loop with N1 (Name) and summary: G31 (Total Invoice Quantity) and G33 (Total Dollars Summary). 3 optional loops are listed by their first segment.How the EDI 880 worksGrocery Products Invoice: who sends it, whereit fits and what the standard marks required1 WHERE IT FITSUSUALLY FOLLOWS875Grocery Products Purchase Order856Advance Ship NoticeEDI 880SENDERSupplier,manufacturer orbrokerRECEIVERGrocery retaileror wholesaler997 or 999 acknowledgment back, if the partnersagreeUSUALLY FOLLOWED BY997Functional Acknowledgment820Payment Order/Remittance Advice2 WHAT X12 RELEASE 004010 REQUIRESInterchange: sender and receiver IDs (ISA… IEA)Functional group, ID code GP (GS … GE)Transaction set 880 (ST … SE)HEADINGG01Invoice IdentificationRequired loop 0100 · repeats upto 10N1Name+ 1 optional loop, starting with:G72DETAIL+ 2 optional loops, starting with:G17ENTSUMMARYG31Total Invoice QuantityG33Total Dollars SummaryBlue box: required loop. Optional loops are listedby the segment that starts them; when a loop isused, that first segment is required. Optionalsegments outside loops are not drawn.Structure: required segments and loops in the X12004010 listing for the 880. Your trading partner'simplementation guide adds its own requirements.

How to read this diagram: the top row shows who sends the 880, to whom, and which documents usually come before and after it. The lower part shows what X12 release 004010 itself requires: the envelopes around the 880 and the segments and loops the standard marks as required, area by area. Optional loops are listed by the segment that starts them rather than drawn in full. This is the standard's minimum, not a trading partner's requirement: each partner's implementation guide usually makes some optional loops mandatory, restricts the codes and may use a different release.

Expand diagram Download SVG

When it is used

  • Billing grocery retailers and wholesale distributors
  • Invoices with U.P.C. case codes and case quantities
  • Invoices that carry allowances and charges at header or line level

Where it fits in the document flow

This document 880 Grocery Products Invoice

Structure

Key segments in the 880

The segments most implementations use, described in plain language. The last column shows what X12 release 004010 itself requires: "Required" marks a segment the standard requires in every 880; "Optional, common" marks a segment the standard leaves optional, or that sits in an optional loop, but that implementations often use. This is the standard's requirement, not your trading partner's: each partner's implementation guide names the release it uses, makes some optional segments mandatory and restricts the values, and requirements can differ between releases. The requirement status comes from one published X12 reference listing and has not been checked against a second source.

SegmentNameWhat it carriesIn X12 004010
G01Invoice IdentificationInvoice date and number, with the purchase order date and number being billed.Required
N1 loopNameParties to the invoice, including the party the goods were shipped to.Required
G17Item Detail - InvoiceQuantity invoiced and unit, item cost and the U.P.C. case code or other product identifier.Optional, common
G31Total Invoice QuantityTotal units shipped, with optional weight and volume.Required
G33Total Dollars SummaryTotal invoice amount, including charges less allowances, before any terms discount.Required

Example

Sample EDI 880

Invoice INV88123 billing order GPO77812 for 50 and 30 cases. G31 totals 80 cases. G33 carries the 1,583.00 total with two implied decimal places (50 × 18.40 + 30 × 22.10).

Illustrative data only, not tied to one X12 release or trading partner. The interchange (ISA/IEA) and functional group (GS/GE) envelopes are omitted for readability.

ST*880*0001~
G01*20261024*INV88123*20261020*GPO77812~
N1*ST*Example Grocers DC 12~
G17*50*CA*18.40*001234567890~
G17*30*CA*22.10*001234567906~
G31*80*CA~
G33*158300~
SE*8*0001~
Reading a sample EDI 880, line by lineAnnotated sample EDI 880 with 8 lines. Notes explain the ST, G01, N1, G17, G31, G33 and SE segments.Reading a sample EDI 880, line by lineEach numbered note explains the segment on that line. The data is illustrative.ST*880*0001~11Transaction Set Header. Opens the 880 and gives it a controlnumber, which SE repeats.G01*20261024*INV88123*20261020*GPO77812~22Invoice Identification. Invoice date and number, with thepurchase order date and number being billed.N1*ST*Example Grocers DC 12~33Name. Parties to the invoice, including the party the goods wereshipped to.G17*50*CA*18.40*001234567890~44Item Detail - Invoice. Quantity invoiced and unit, item cost andthe U.P.C. case code or other product identifier.G17*30*CA*22.10*001234567906~G31*80*CA~55Total Invoice Quantity. Total units shipped, with optional weightand volume.G33*158300~66Total Dollars Summary. Total invoice amount, including chargesless allowances, before any terms discount.SE*8*0001~77Transaction Set Trailer. Closes the set with the number ofsegments, including ST and SE, and the same control number.Illustrative data only, not tied to one trading partner. Envelopes (ISA/GS) are omitted for readability.
Reading a sample EDI 880, line by lineAnnotated sample EDI 880 with 8 lines. Notes explain the ST, G01, N1, G17, G31, G33 and SE segments.Reading a sample EDI 880, lineby lineEach numbered note explains the segment onthat line. The data is illustrative.ST*880*0001~Transaction Set Header. Opens the 880 andgives it a control number, which SE repeats.G01*20261024*INV88123*20261020*GPO77812~Invoice Identification. Invoice date andnumber, with the purchase order date andnumber being billed.N1*ST*Example Grocers DC 12~Name. Parties to the invoice, including theparty the goods were shipped to.G17*50*CA*18.40*001234567890~Item Detail - Invoice. Quantity invoiced andunit, item cost and the U.P.C. case code orother product identifier.G17*30*CA*22.10*001234567906~G31*80*CA~Total Invoice Quantity. Total units shipped,with optional weight and volume.G33*158300~Total Dollars Summary. Total invoice amount,including charges less allowances, before anyterms discount.SE*8*0001~Transaction Set Trailer. Closes the set withthe number of segments, including ST and SE,and the same control number.Illustrative data only, not tied to one trading partner.Envelopes (ISA/GS) are omitted for readability.

The sample is the same one shown above, with a note beside each segment the first time it appears. Segment IDs are highlighted at the start of each line; the fields after them are separated by asterisks, and each segment ends with a tilde.

Expand diagram Download SVG

Avoid problems

Common 880 errors and how to prevent them

Totals that do not add up

Grocery buyers check G33 against the line detail, allowances and charges. Calculate totals from the same lines you send, with the correct implied decimals.

Billing quantities not received

Invoices are matched to receipts. Bill what was shipped and confirmed in the ship notice, or expect deductions.

Using the 880 for adjustments

Credits and debits for shortages or pricing errors travel in separate transaction sets. Sending them as 880s causes duplicate or rejected invoices.

Trading partners

Integration guides that include the 880

  • Kroger EDI integration

EDI 880 FAQs

What is the difference between an 810 and an 880?

Both are invoices. The 880 is the grocery-industry version, built from G-segments and grocery conventions, while the 810 is used across most other industries.

How are amounts formatted in the 880 totals?

The G33 total amount uses a numeric format with two implied decimal places, so 158300 means 1,583.00. Partners' guides confirm the format they expect.

Do grocery retailers still require the 880?

Some do, while many now accept or require the 810. Suppliers selling into grocery often support both, depending on each partner's requirements.

Need help with the EDI 880?

ECOM maps, tests and monitors X12 documents for your trading partners and integrates them with your ERP.