Local in-browser EDI parsing — zero raw orders or wholesale prices are ever stored on our servers.
EDIParse

EDI 850 & 810 SAC Segment: Allowance, Charge & SAC05 N2 Guide

Understand how SAC*A (Allowances/Discounts) and SAC*C (Freight/Charges) work in EDI 850 and 810—and how to carry them across partial-ship PO-flips, Shopify 2026-10 Live Orders, QuickBooks .IIF, and QBO CSV without throwing your invoice out of balance.

Drop your file below, check the order, then download for QuickBooks Desktop (.IIF).

In-browser workbench (no AS2/VAN pipe hosting): Converts X12 files, auto-fixes compliance errors, builds 855/856/810 turnarounds & prints 4x6" GS1-128 labels with zero raw orders stored. Pair with Amazon Vendor Central Self-Service EDI (free built-in SFTP) or your existing Direct AS2, SFTP, or VAN mailbox.

Looking for the raw X12 segments (SAC)? Orders open as a readable document. Select View raw EDI code (for IT) at the top right of the document to see the ANSI X12 segments side by side.
  1. 1Load your order file
  2. 2Check it and match your SKUs
  3. 0/1 Buyer IDs

Drop EDI order files or a .zip batch folder here

Drop multiple .edi / .x12 POs or a .zip archive for one-click batch 855/856/810 turnaround & merged 4x6" labels. Read locally in browser memory.

Now showing
walmart-850-crossdock.edi
No file handy? Open a sample:

No chargeback risks found. This Purchase Order passes every check.

Checked against the Walmart supplier guide for EDI 850.

  • Detected Cross-Dock SDQ allocations (6 store-level splits verified against PO102).
  • Walmart Dept #0018 & Vendor #123456789 verified.

Raw EDI Code Inspector

31 lines
1ISAISA*00* *00* *08*925485US00 *12*5551234567 *261109*0830*^*00501*000010850*0*P*:~
2GSGS*PO*925485US00*5551234567*20261109*0830*10850*X*005010~
3STST*850*0001~
4BEGBEG*00*SA*4500991288**20261109~
5CURCUR*BY*USD~
6REFREF*DP*0018~
7REFREF*MR*0020~
8REFREF*IA*123456789~
9FOBFOB*PP*OR*BENTONVILLE~
10CSHCSH*Y~
11SACSAC*A*D240***2500**********NEW STORE PROMO ALLOWANCE~
12ITDITD*01*3*2**10**30*****2/10 NET 30~
13DTMDTM*037*20261112~
14DTMDTM*038*20261118~
15N1N1*BY*WALMART STORES INC*UL*0078742000008~
16N1N1*ST*WALMART DC 6094G-RDC*UL*0078742035260~
17N3N3*5801 SW REGIONAL AIRPORT BLVD~
18N4N4*BENTONVILLE*AR*72712*US~
19N1N1*VN*ACME HOME GOODS LLC*92*123456789~
20PO1PO1*1*100*EA*12.50*WE*UP*012345678905*IN*554433221*VN*SKU-TOWEL-BLU-L*UK*10012345678902~
21PIDPID*F*08***ORGANIC COTTON BATH TOWEL ROYAL BLUE~
22PO4PO4*10*1*EA~
23SDQSDQ*EA*92*0101*25*0102*35*0103*40~
24PO1PO1*2*60*EA*18.00*WE*UP*012345678912*IN*554433299*VN*SKU-ROBE-WHT-XL~
25PIDPID*F*08***LUXURY WAFFLE ROBE WHITE XL~
26PO4PO4*6*1*EA~
27SDQSDQ*EA*92*0101*20*0102*20*0103*20~
28CTTCTT*2*160~
29SESE*27*0001~
30GEGE*1*10850~
31IEAIEA*1*000010850~
BEGBeginning Segment for Purchase Order (850)
Line #4

Primary header of an EDI 850 Purchase Order. BEG03 is the legal PO # that must be echoed on your 856 ASN and 810 Invoice.

BEG01Transaction Set Purpose Code
00
BEG02Purchase Order Type Code
SA
BEG03Purchase Order Number
4500991288
BEG05Purchase Order Date
20261109

Purchase Order Summary & Line Items

Purchase Order #
4500991288
Order Date
11/09/2026
Dept # / Vendor #
Dept 0018 · Vendor 123456789
Order Total
$2,305.00 USD
Ship-To Warehouse / DC
WALMART DC 6094G-RDC
5801 SW REGIONAL AIRPORT BLVD
BENTONVILLE, AR 72712
Location Code: 0078742035260
Shipping Dates & Payment Terms
Earliest Ship Date:11/12/2026
Latest Ship Date:11/18/2026
Payment Terms:2/10 NET 30 · FOB PP
Multi-Store Order Detected: Automatically split items by store location
Order / Store #Your SKURetailer Item # / UPCItem DescriptionQtyUnit PriceLine Total
PO-4500991288
Item: 554433221
UPC: 012345678905
ORGANIC COTTON BATH TOWEL ROYAL BLUE100 EA$12.50$1250.00
PO-4500991288
Item: 554433299
UPC: 012345678912
LUXURY WAFFLE ROBE WHITE XL60 EA$18.00$1080.00
Total Units: 160 across 2 items
Items Subtotal: $2330.00
Allowance / Charge: -$25.00
Net Order Total: $2305.00

Download for your software

Pick where the order is going, then download. Files are ready for Excel, QuickBooks, Shopify or a thermal printer.

QuickBooks Desktop (.IIF) Settings:
Direct QuickBooks Desktop import file — unshipped 850 POs default to non-posting Sales Orders (optional Invoice mode), while 810 Invoices & Credit Memos auto-balance A/R and Revenue.
Field mapping table: which EDI segment fills which column (for IT & bookkeepers)

SAC Segment Elements (SAC01, SAC02, SAC05, SAC15) & Accounting Treatment

Deterministic segment-to-column mapping rules enforced by our client-side X12 engine

Source X12 Segment / ElementSample Raw ValueTarget ERP / CSV ColumnTransformation & Validation Logic
SAC01 (Indicator)
A / C / N
Discount vs Charge SignA = Allowance (deducted from invoice total); C = Charge (added to invoice total); N = No Allowance/Charge.
SAC02 (Service/Promo Code)
D240 / G830 / C310
Allowance / Freight Item CodeD240 = Promotional Allowance; C310 = Discount; G830 = Shipping and Handling.
SAC05 (Amount in N2 Cents)
2500 ($25.00)
SPL / Line Item Dollar AmountDivided by 100. Mapped to QuickBooks SPL splits, QBO/Xero negative lines, and Shopify order discounts/shipping.
SAC15 (Description)
NEW STORE PROMO ALLOWANCE
Line Description / MemoHuman-readable explanation printed on the invoice split line.

Authentic ANSI X12 Stream & SAC Element Breakdown (EDI 850)

Live SAC segment instances extracted from walmart-850-crossdock.edi with element-by-element ANSI X12 definitions

SAC AST JSON
1. Raw ANSI X12 Input — walmart-850-crossdock.edi (EDI 850)Highlighted: SAC
ISA*00*          *00*          *08*925485US00     *12*5551234567     *261109*0830*^*00501*000010850*0*P*:~
GS*PO*925485US00*5551234567*20261109*0830*10850*X*005010~
ST*850*0001~
BEG*00*SA*4500991288**20261109~
CUR*BY*USD~
REF*DP*0018~
REF*MR*0020~
REF*IA*123456789~
FOB*PP*OR*BENTONVILLE~
CSH*Y~
SAC*A*D240***2500**********NEW STORE PROMO ALLOWANCE~
ITD*01*3*2**10**30*****2/10 NET 30~
DTM*037*20261112~
DTM*038*20261118~
N1*BY*WALMART STORES INC*UL*0078742000008~
N1*ST*WALMART DC 6094G-RDC*UL*0078742035260~
N3*5801 SW REGIONAL AIRPORT BLVD~
N4*BENTONVILLE*AR*72712*US~
N1*VN*ACME HOME GOODS LLC*92*123456789~
PO1*1*100*EA*12.50*WE*UP*012345678905*IN*554433221*VN*SKU-TOWEL-BLU-L*UK*10012345678902~
PID*F*08***ORGANIC COTTON BATH TOWEL ROYAL BLUE~
PO4*10*1*EA~
SDQ*EA*92*0101*25*0102*35*0103*40~
PO1*2*60*EA*18.00*WE*UP*012345678912*IN*554433299*VN*SKU-ROBE-WHT-XL~
PID*F*08***LUXURY WAFFLE ROBE WHITE XL~
PO4*6*1*EA~
SDQ*EA*92*0101*20*0102*20*0103*20~
CTT*2*160~
SE*27*0001~
GE*1*10850~
IEA*1*000010850~
2. Decoded SAC Segment Elements (Normalized AST)
{
  "segmentTag": "SAC",
  "officialName": "Service, Promotion, Allowance, or Charge Information",
  "category": "header",
  "occurrencesInSample": 1,
  "decodedSegments": [
    {
      "lineNumber": 11,
      "rawSegment": "SAC*A*D240***2500**********NEW STORE PROMO ALLOWANCE~",
      "elements": {
        "SAC01 — Allowance or Charge Indicator": "A",
        "SAC02 — Service, Promotion, Allowance, or Charge Code": "D240",
        "SAC05 — Amount (N2 Implied 2 Decimals)": "2500 (N2 -> $25.00)",
        "SAC15 — Description": "NEW STORE PROMO ALLOWANCE"
      }
    }
  ]
}

Highlighted SAC segment lines on the left map directly to the decoded element dictionary on the right.

Critical Chargeback & Import Pitfalls We Prevent

Red-light 824/997(R) rejections, $250+ receiving fines, and $0.00 ledger errors blocked automatically

Putting an Explicit Decimal Point in SAC05 (e.g., 25.00)

Risk: 997 Syntax Rejection

Like TDS01, SAC05 is an N2 implied-decimal element. Writing "25.00" instead of "2500" is invalid X12 syntax.

Test our "⚠️ Chargeback Demo" sample below to see our linter catch and auto-fix SAC05.

Wrong Sign on SAC*A When Exporting to QuickBooks Desktop .IIF

Risk: IIF Out-of-Balance Error

Because revenue SPL lines in .IIF are negative, an allowance that reduces A/R must be a positive SPL debit (Sales Discounts) so TRNS + sum(SPL) === 0.

Our .IIF exporter handles SAC*A and SAC*C signs automatically across Invoices, Sales Orders, and Credit Memos.

Omitting 850 SAC Allowances When Generating the 810 Invoice

Risk: 824 Allowance Variance Hold

If the buyer’s 850 included a mandatory SAC*A promotional allowance and your 810 omits it, the invoice is placed on AP hold.

Our 850 → 810 Turnaround generator carries over SAC segments and reconciles TDS01/TDS02.

How to Inspect & Export SAC Allowances to QuickBooks

Zero middleware setup — complete in under 60 seconds

1. Click Line #11 (SAC) in the Walmart 850 Sample Below

See SAC01="A", SAC02="D240", and SAC05="2500" ($25.00).

2. Switch to the "⚠️ Chargeback Demo" Sample

See how our linter catches an illegal decimal in SAC05 and fixes it in one click.

3. Preview the QuickBooks .IIF, QBO CSV, or Shopify Live Order Payload

Verify that the $25.00 Promo Allowance is included and penny-balanced.

Technical Questions & Implementation Notes

ANSI X12 specification details, retail companion rules, and ERP import answers

What are the most common SAC02 allowance and charge codes?

D240 = Promotional Allowance; C310 = Allowance/Discount; F050 = Defective Allowance; G830 = Shipping and Handling (Freight); D500 = Handling.

Is SAC05 always implied 2 decimal places?

Yes. In ANSI X12 4010 and 5010, element 610 (SAC05 Amount) is data type N2 (implied 2 decimal places in cents).

Related EDI Converters, Retailer Guides & X12 Segment References