# EDI 882 Direct Store Delivery Summary Guide

> EDI 882 explained: how DSD suppliers summarize reconciled deliveries and returns to request payment, G47, G48, G33 and G49 segments, an example, and errors.

<QuickAnswer>
The EDI 882 Direct Store Delivery Summary Information is the X12 transaction a DSD supplier uses to summarize deliveries, returns and adjustments already reconciled at the store, and to request payment for them. It lists each delivery or return ticket with its store and net amount, but carries no product detail. Totals close the statement.
</QuickAnswer>

**The EDI 882 is the statement of direct store delivery.** Each store stop already produced its own records: an [894 Delivery/Return Base Record](/guides/edi/894-delivery-return-base-record) from the route driver, and an 895 from the store accepting or adjusting it. The 882 rolls those reconciled tickets into one document per statement period, so the retailer's accounts payable team can see what the supplier expects to be paid, ticket by ticket, without the item lines.

This guide covers what the 882 carries, where it fits in DSD settlement, every segment you will map, a live example, how it compares to the 894, 895 and the grocery invoice, and the errors that leave tickets unpaid.

<EDIGuideCTA
	transactionType="882"
	headline="Start every DSD route from the right order"
	body="OrderSync reads store and head-office orders in any format, from EDI 850s and 875s to PDFs, emails and spreadsheets, matches stores, items and units, and outputs clean data to your ERP or route system."
/>

## What Is an EDI 882?

**An EDI 882 is the Direct Store Delivery Summary Information transaction set defined by the [ASC X12 standards body](https://x12.org/products/transaction-sets). It summarizes detailed delivery, return and adjustment information that was reconciled at the time of delivery in a retail DSD environment, and can be used to request payment for the products delivered.** The standard is explicit that the 882 carries only a summary of deliveries and adjustments, without product detail.

Authoritative references for 882 work:

- The [X12 transaction set catalog](https://x12.org/products/transaction-sets) defines the 882 structure and segment order
- [GS1 US](https://www.gs1us.org/industries-and-insights/standards) governs the company and location identifiers (GLNs, alongside DUNS numbers) that DSD retailers use to identify the supplier, the chain and each store
- Each DSD retailer that uses the 882 publishes its own guide, which sets the statement cycle, the reference numbers it expects on each ticket, and how credits are signed

**Who sends it?** The DSD supplier, usually from its route accounting or AR system.

**Who receives it?** The retailer's accounts payable, often at head office rather than the store.

**When is it sent?** On the statement cycle agreed with the retailer, for example weekly, after the deliveries and returns in it have been reconciled through the 894 and 895.

**Why does it matter?** A DSD supplier can make hundreds of stops a week for one chain. Paying ticket by ticket from hundreds of 894s is slow for the retailer, and chasing them one at a time is slow for the supplier. The 882 turns a week of stops into one payable statement with a total both sides can agree on.

## Where the 882 Fits in DSD Settlement

The 882 is the last supplier document in the DSD cycle. Everything in it should already have been settled at the store.

1. **Store delivery or return.** The driver records it on an [894](/guides/edi/894-delivery-return-base-record), with items, quantities, costs and the receiver's signature.
2. **Store reconciliation.** The retailer answers with an 895, accepting the 894 as sent or adjusting quantities and costs.
3. **Summary statement.** At the end of the period, the supplier sends an 882 listing each reconciled ticket and its net amount.
4. **Payment.** The retailer pays, often with an [820 remittance advice](/guides/edi/820-payment-order) that lists which tickets were paid and what was deducted.

Some DSD categories also start with a store order. Where the retailer orders on an [875 Grocery Products Purchase Order](/guides/edi/875-grocery-product-purchase-order), it changes that order with an [876](/guides/edi/876-grocery-products-purchase-order-change), the grocery counterpart of the [860 Purchase Order Change](/guides/edi/860-purchase-order-change), and if it wants a response to a change, its guide names it (the general X12 response is the [865](/guides/edi/865-purchase-order-change-acknowledgment)). Those order documents settle what should be delivered; the 894, 895 and 882 settle what was delivered and what is owed.

Not every DSD retailer uses the 882. Some pay directly from the reconciled 894 and 895. Others want an [810 invoice](/guides/edi/810-invoice) or an [880 Grocery Products Invoice](/guides/edi/880-grocery-products-invoice) per delivery. Under scan-based trading, payment follows [852 product activity data](/guides/edi/852-product-activity-data) instead. The retailer's DSD guide says which model it runs; the 882 is for retailers that settle DSD on a summary statement.

## Interactive Example: Weekly DSD Summary Statement (882)

A beverage supplier sends its weekly statement to a grocery chain. It covers three tickets: the delivery and the return from store `0147` on November 3 (the same two records shown in our [894 guide](/guides/edi/894-delivery-return-base-record)), and a delivery to store `0152` on November 5.

- `G47` dates the statement and gives it a number
- The first `N1` names the supplier as the party to receive the remittance (`RI`), and the second names the retailer
- Each `G48` opens one ticket, with its number, date and store, followed by its quantity (`G31`) and net amount (`G33`)
- The return carries a negative amount in `G33`, which is how this example shows a credit
- `G49` totals the statement: $178.90 less $23.40 plus $412.60 is $568.10

Use the **Plain English** tab for a readable summary, or click any segment to break it down element by element.

<EDISample id="882-dsd-weekly-summary" />

Notice what is missing: no UPCs, no item costs, no case packs. The retailer already holds that detail from the 894s and 895s. The 882 only has to point at each ticket and state the amount.

## 882 Structure at a Glance

In the version 4010 standard, the 882 has a short header, one loop per ticket, and a statement total.

| Area | Segment | Name | Usage | Notes |
|---|---|---|---|---|
| Header | **ST** | Transaction Set Header | Mandatory | `ST01` = `882` |
| Header | **G47** | Statement Identification | Mandatory | Statement date and number |
| Header loop | **N1** to **N4** | Name and address | Mandatory, repeats | One `N1` must identify the party to receive the remittance |
| Header | **N9** | Reference Identification | Optional | Statement-level references |
| Header | **G61** | Contact | Optional | Supplier AR contact |
| Header | **G23** | Terms of Sale | Optional | Statement-level terms |
| Detail loop | **G48** | Statement/Invoice Identification | Mandatory, repeats | One per delivery, return or adjustment |
| Detail loop | **G72** / **G73** | Allowance or Charge | Optional | Ticket-level allowances and charges |
| Detail loop | **G23** | Terms of Sale | Optional | Ticket-level terms |
| Detail loop | **G25** | F.O.B. Information | Optional | Delivery terms where the retailer wants them |
| Detail loop | **G31** | Total Invoice Quantity | Optional | Units on the ticket |
| Detail loop | **G33** | Total Dollars Summary | Mandatory | Net amount of the ticket |
| Summary | **G49** | Statement Total | Mandatory | Statement totals |
| Summary | **SE** | Transaction Set Trailer | Mandatory | Segment count and control number |

The functional group code in `GS01` is **IG**. Version `004010UCS` or a later UCS release is common in grocery, but the retailer's guide sets it.

## Key Segments Explained

### G47: Statement Identification

```
G47*20261108*STMT-2026-W45~
```

| Element | Name | Example | What it means |
|---|---|---|---|
| **G4701** | Date | `20261108` | The statement date |
| **G4702** | Statement Number | `STMT-2026-W45` | Your statement number, up to 16 characters. Keep it unique |

The retailer pays and disputes against the statement number, so never reuse one, even after a statement is rejected and resent with corrections. Ask the retailer how it wants a corrected statement numbered.

### N1 Loop: Remit-To and Other Parties

```
N1*RI*SUMMIT BEVERAGE CO*1*123456789~
N1*BY*HARBOR GROCERS INC*1*069854900~
```

The standard requires one `N1` to identify the party that receives the remittance. Here that is the supplier, as `RI` (remit to), with its DUNS number. Other `N1` loops name the retailer or a bill-to party. Use the identifiers the retailer's guide asks for: the same DUNS numbers or GLNs that appear on your 894s keep both sides' records aligned.

### G48: Statement/Invoice Identification

Each `G48` opens one entry on the statement: a delivery, a return or an adjustment.

```
G48*DSD-118734*20261103*0147~
```

| Element | Name | Example | What it means |
|---|---|---|---|
| **G4801** | Invoice Number | `DSD-118734` | The ticket or invoice number for this entry |
| **G4802** | Invoice Date | `20261103` | The date of the ticket |
| **G4803** | Store Number | `0147` | The store the delivery or return belongs to |
| **G4804** | Purchase Order Date | | Where the delivery was against a store order |
| **G4805** | Purchase Order Number | | That store order's number |
| **G4806** | Vendor Order Number | | Your own order number, if the retailer wants it |
| **G4807** | Reference Identification Qualifier | | Qualifies a reference used in place of, or alongside, the invoice number |
| **G4808** | Reference Identification | | The reference itself |
| **G4809** | Date | | A further date the retailer's guide defines |

Either an invoice number (`G4801`, with its date in `G4802`) or a reference (`G4807` with `G4808`) is required. In this example the invoice number is the 894 delivery or return number, because that is the key the store reconciled on. Use the number your retailer's guide names. A ticket the retailer cannot match to its own records is the most common reason an 882 line goes unpaid.

### G72 and G73: Allowances and Charges

`G72` applies an allowance or charge to a ticket: a deal, a promotional allowance, a delivery charge. It carries an allowance or charge code, a handling method, and a rate, quantity or total amount, with `G73` for a description. The codes come from the retailer's guide and must match the deal agreed with the category buyer. The ticket's `G33` amount is net of them.

### G31: Total Invoice Quantity

```
G31*20*CA~
```

`G3101` is the number of units on the ticket and `G3102` the unit of measure. Further elements can carry weight, volume and third-party pallet counts. It is optional, and the example leaves it off the return because the return mixes cases and loose bottles.

### G33: Total Dollars Summary

```
G33*17890~
```

`G3301` is the ticket's total amount, including charges and less allowances, before any terms discount. It has two implied decimals: `17890` is $178.90.

This amount should equal the reconciled figure, meaning the total after the store's 895 adjustments, not what the driver's 894 originally said. Billing the pre-adjustment figure is the fastest way to have an 882 short-paid.

### G49: Statement Total

```
G49*56810~
```

| Element | Name | Example | What it means |
|---|---|---|---|
| **G4901** | Amount | `56810` | Total of all charges billed on this statement since the last one ($568.10) |
| **G4902** | Amount | | Amount of unpaid charges from before this statement |
| **G4903** | Amount | | Total amount now due |

All three use two implied decimals. `G4901` should equal the sum of the `G33` amounts. Whether the retailer wants a carried-forward balance in `G4902` and `G4903` is set in its guide. The example sends `G4901` alone.

## Returns, Credits and the Sign of the Amount

The 882 has no credit/debit flag. The 894 marks a return with `G8201` = `C`, but `G48` has no equivalent element. That leaves the retailer's guide to decide how a credit appears on the statement. Two approaches you may see are a negative `G33` amount, as in the example above, or a separate adjustment entry identified through a reference in `G4807` and `G4808`.

Whichever convention the retailer uses, two checks catch most problems:

- The statement total in `G4901` must equal the signed sum of every `G33`. A return entered as a positive amount bills the store for product you took back
- Every return ticket from your 894s for the period should appear on the statement. A credit you leave off comes back as a deduction later, usually without the ticket number attached

## EDI 882 vs 894, 895, 880 and 820

| Document | Sent by | Level of detail | Purpose |
|---|---|---|---|
| **[894 Delivery/Return Base Record](/guides/edi/894-delivery-return-base-record)** | Supplier | Item lines, one store, one event | Records what was delivered to or returned from a store |
| **895 Delivery/Return Acknowledgment or Adjustment** | Retailer | Item lines | Accepts or adjusts an 894 |
| **882 Direct Store Delivery Summary Information** | Supplier | One line per ticket, no product detail | Summarizes reconciled tickets for a period and requests payment |
| **[880 Grocery Products Invoice](/guides/edi/880-grocery-products-invoice)** | Supplier | Item lines | Bills one grocery order or delivery |
| **[810 Invoice](/guides/edi/810-invoice)** | Supplier | Item lines | General-purpose invoice |
| **[820 Payment Order/Remittance Advice](/guides/edi/820-payment-order)** | Retailer | One line per paid ticket | Reports what was paid and deducted |

The short version: the 894 and 895 settle each stop, the 882 asks to be paid for a period's worth of settled stops, and the 820 says what was actually paid. If you see an 820 deduction against a ticket, the 895 for that ticket is the first place to look.

## Common 882 Errors and How to Prevent Them

| Error | What happens | Prevention |
|---|---|---|
| **Pre-adjustment amounts billed** | Statement short-paid by the 895 adjustments | Build `G33` from the reconciled figures, after 895s are posted |
| **Ticket number the retailer cannot match** | Entry held or unpaid | Use the 894 number, or the reference the guide names, exactly as sent |
| **Return entered as a positive amount** | Store billed for product taken back; dispute | Apply the retailer's credit convention and test it |
| **Return left off the statement** | Later deduction with no ticket reference | Reconcile the statement against every 894 return in the period |
| **`G49` does not equal the sum of `G33`** | Statement rejected or paid at the lower figure | Compute totals from the entries at build time |
| **Implied decimal error** | Amounts read as 100 times too large or small | Send whole cents with no decimal point |
| **Ticket billed on two statements** | Duplicate rejected, or paid twice and clawed back | Mark tickets as billed when the 882 is sent |
| **Ticket billed before its 895 arrives** | Amount disputed after payment | Hold unreconciled tickets for the next statement |
| **Statement number reused** | Second statement rejected as a duplicate | Number from one sequence per retailer |

The [EDI inspector](/edi-inspector) shows each `G48` entry with its store, date and amount, plus the statement total, which makes a statement that does not add up easy to spot before you send it.

## 882 Implementation Checklist

Before your first live 882 with a DSD retailer:

- Confirm the retailer settles DSD on an 882, and not on the 894 and 895 alone or on an 810 or 880
- Get its 882 guide and agree the statement cycle
- Confirm which number goes in `G48` for each ticket, and whether it wants store numbers in `G4803`
- Confirm how returns and other credits are signed or identified
- Confirm the identifiers for the remit-to `N1` and the retailer
- Confirm whether `G4902` and `G4903` are expected
- Build statements only from tickets whose 895 has been posted
- Agree how a corrected statement is numbered and sent
- Match each 820 back to the statement and its tickets
- Monitor 997s for structural rejections in the first weeks of production

For the wider DSD document set, see our [EDI document types reference](/edi-document-types), our page on [EDI for DSD distributors](/edi-for/dsd-distributors), and our guide to [grocery EDI requirements](/blog/grocery-edi).

## Handling DSD Orders With OrderSync

The 882 sits at the end of the DSD cycle. The start of it is the order: store and head-office orders that arrive as EDI 850s and 875s, emails, PDFs, spreadsheets and phone calls, and that someone keys into the route system before the truck leaves.

OrderSync reads those orders in any format, matches the stores, items and units to your catalog, and outputs clean data to your ERP or route system, so each delivery starts from the right order and the tickets that end up on your statement match what the store expected. Paste any 882 into the [free EDI inspector](/edi-inspector) to see it parsed with a plain-English summary, read more about [EDI for beverage distribution](/edi-for/beverage-distribution), or [book a 15-minute walkthrough](/book-call) to see your own orders processed.

## Frequently Asked Questions

<div className="not-prose">

### What is an EDI 882 used for?

A direct store delivery supplier uses the EDI 882 to summarize the deliveries, returns and adjustments it has already reconciled with a retailer's stores, and to request payment for them. It lists each ticket with its store and net amount, with no product detail.

### What is the difference between an EDI 882 and an EDI 894?

The 894 records one delivery or return at one store, item by item, with costs and the receiver's signature. The 882 summarizes many reconciled 894 tickets over a statement period, one line per ticket with its net amount, and requests payment. The 894 comes first; the 882 comes after the store has accepted or adjusted each 894.

### Does the EDI 882 include item detail?

No. The X12 standard defines the 882 as a summary of direct store deliveries and adjustments without product detail. Item lines, UPCs and costs stay on the 894 and 895.

### Who sends the EDI 882?

The DSD supplier sends the 882 to the retailer, usually from its route accounting or accounts receivable system. The retailer's accounts payable team uses it to pay for the period's deliveries net of returns and adjustments.

### How are returns shown on an EDI 882?

The 882 has no credit/debit flag, so the retailer's guide sets the convention. One approach is a negative total amount in G33 for the return ticket. Whatever the convention, the statement total in G49 must equal the signed sum of every ticket.

### What does G49 mean in an EDI 882?

G49 is the statement total. G4901 is the total billed on this statement, G4902 the unpaid amount from earlier statements, and G4903 the total now due. All three use two implied decimals.

### Do all DSD retailers use the EDI 882?

No. Many retailers pay directly from the reconciled 894 and 895, or require an 810 or 880 invoice per delivery. The 882 is for retailers that settle direct store delivery on a periodic summary statement. The retailer's DSD guide says which model it uses.

### What functional group code does an EDI 882 use?

GS01 is IG, the functional group code X12 assigns to Direct Store Delivery Summary Information. The 894 and 895 use DX.

</div>
