Converting EDI Files for Accounting Software: QuickBooks, Xero, FreshBooks

QuickBooks, Xero, and FreshBooks don't have native EDI support. Learn how to convert EDI 850 purchase orders and 810 invoices to CSV for easy import into your accounting system—without expensive EDI integration middleware.

16 min readEDI Fundamentals

The Accounting Software EDI Problem

You're a small vendor selling to Walmart, Target, or Amazon. You use QuickBooks (or Xero, or FreshBooks) for accounting and inventory. Your retailer sends you EDI 850 purchase orders that look like this:

ISA*00* *00* *ZZ*WALMART *12*VENDORID123 *250120*1430*U*00401*000000001*0*P*~
GS*PO*WALMART*VENDORID123*20250120*1430*1*X*004010~
ST*850*0001~
BEG*00*NE*4500123456**20250125~
REF*DP*055~
DTM*002*20250125~
N1*ST*WALMART DC 6012*92*0078742001115~
PO1*1*500*EA*12.99*PE*UP*012345678905*VN*SKU-12345~

Your accounting software has no idea what to do with this file. You need to:

  • Extract the order details (PO number, customer, ship date, items, quantities, prices)
  • Create a sales order or invoice in QuickBooks/Xero
  • Track inventory allocation
  • Process the shipment
  • Match payments to invoices

The industry solution: Buy EDI integration middleware for $300-$1,500/month that automatically syncs EDI files with QuickBooks/Xero.

The affordable solution: Convert EDI to CSV for $99/month (or $3.90/file), then import the CSV into your accounting software using built-in import tools. Takes 5 minutes per order instead of $6,000-$18,000 per year in middleware costs.

Why Accounting Software Doesn't Support EDI Natively

QuickBooks, Xero, and FreshBooks are designed for small businesses. Most small businesses don't need EDI—they invoice customers directly via email/PDF. The software companies made a business decision:

  • QuickBooks: No native EDI support. Third-party integrations only (TrueCommerce, SPS Commerce, OrderEase).
  • Xero: No native EDI support. Users have been requesting CSV purchase order import since 2021 with no response from Xero (as of 2025).
  • FreshBooks: No EDI support at all. Designed for service businesses, not retail suppliers.
  • Sage 50/100: EDI available only in Enterprise plans ($5,000+ annual licensing).
  • Wave: No EDI support (free software with limited features).

Bottom line: If you're using accounting software under $100/month, you won't get EDI support. Your options are:

  1. Upgrade to NetSuite, SAP, or Microsoft Dynamics ($3,000-$10,000/month)
  2. Buy EDI integration middleware ($300-$1,500/month)
  3. Convert EDI to CSV and import manually ($99/month or $3.90/file)

For vendors processing under 200 orders/month, option 3 is 75-90% cheaper and takes only 5-10 minutes per order.

Step-by-Step: Converting EDI for QuickBooks

Step 1: Receive EDI 850 Purchase Order

Download the .edi or .txt file from:

  • Walmart: Retail Link portal or email
  • Target: Partners Online portal
  • Amazon: Vendor Central download
  • Home Depot: Supplier Portal
  • Other retailers: Usually email or SFTP download

Step 2: Convert EDI to CSV with PlainEDI

Upload the EDI file to PlainEDI. The conversion takes 30 seconds and outputs a CSV with columns like:

  • PO Number: 4500123456
  • PO Date: 2025-01-20
  • Ship Date (MABD): 2025-01-25
  • Customer Name: Walmart DC 6012
  • Ship-To Address: Full DC address with GLN
  • Department: 055
  • Item Line 1 - UPC: 012345678905
  • Item Line 1 - Vendor SKU: SKU-12345
  • Item Line 1 - Quantity: 500
  • Item Line 1 - Unit Price: $12.99
  • Item Line 1 - Extended Price: $6,495.00
  • FOB Terms: Delivered
  • Payment Terms: Net 60

Download this CSV to your computer.

Step 3: Import CSV into QuickBooks

QuickBooks Online (2025 method):

  1. Open QuickBooks Online → Sales → Customers
  2. Make sure "Walmart" (or your retailer) exists as a customer. If not, create the customer first.
  3. Sales → Sales Transactions → + New → Sales Receipt or Invoice
  4. Manual entry method: Create invoice manually using CSV data (5-10 minutes per order)
    • Customer: Walmart
    • Invoice Date: 2025-01-20 (from PO Date column)
    • Due Date: Calculate based on payment terms (Net 60 = 2025-03-21)
    • Add line items: Copy quantity, description, rate from CSV
    • Custom field: Add "PO Number" field and enter 4500123456
  5. Import method: QuickBooks Online doesn't have direct CSV invoice import, but you can use:
    • SaasAnt Transactions ($10-$29/month): Third-party tool that imports invoices from CSV/Excel into QuickBooks
    • Transaction Pro Importer ($39-$99/month): CSV import for invoices, sales orders, bills

QuickBooks Desktop (2025 method):

  1. File → Utilities → Import → Excel Files
  2. Select "Invoices" from import type
  3. Map CSV columns to QuickBooks fields:
    • PO Number → Customer PO Number
    • Customer Name → Customer
    • PO Date → Invoice Date
    • Item UPC/SKU → Item (must match existing QuickBooks item SKU)
    • Quantity → Quantity
    • Unit Price → Rate
  4. Review and import

Important: QuickBooks Desktop has better CSV import capabilities than QuickBooks Online. If you're processing 50+ EDI orders/month, Desktop is easier for imports.

Step 4: Verify Item Matching

Critical issue: EDI files use UPC/GTIN codes. QuickBooks uses SKU/Item Name. You need to map these.

Example:

  • EDI shows UPC: 012345678905
  • QuickBooks item: "Organic Honey 16oz" with SKU: HON-16OZ
  • These are the same product, but QuickBooks won't auto-match UPC to SKU

Solution: Create a cross-reference spreadsheet:

UPC (from EDI)QuickBooks SKUQuickBooks Item Name
012345678905HON-16OZOrganic Honey 16oz
012345678912HON-32OZOrganic Honey 32oz

When entering invoices, use VLOOKUP in Excel to match EDI UPC → QuickBooks SKU before import.

Step-by-Step: Converting EDI for Xero

Step 1: Convert EDI to CSV (same as QuickBooks)

Upload EDI 850 purchase order to PlainEDI, download CSV with all order details.

Step 2: Import CSV into Xero

Problem: As of 2025, Xero still doesn't support CSV import for purchase orders. Users have been requesting this feature since 2021 with no response from Xero.

Workaround options:

  1. Manual entry (recommended for <50 orders/month):
    • Business → Invoices → New Invoice
    • Select customer (Walmart, Target, etc.)
    • Enter reference number (PO number from CSV)
    • Add line items manually from CSV data
    • Time: 5-10 minutes per invoice
  2. SaasAnt Transactions ($10-$29/month):
    • Third-party tool that imports invoices, bills, and sales orders into Xero from CSV/Excel
    • Maps CSV columns to Xero fields automatically
    • Supports batch import (50+ invoices at once)
  3. EntryRocket ($15-$49/month):
    • Imports invoices, bills, purchase orders from CSV, Excel, PDF, email
    • Can automatically pull EDI files from email attachments and import to Xero
  4. CData Arc EDI connector ($500+/month):
    • Full EDI automation with Xero integration
    • Only worth it if processing 500+ EDI files/month

Step 3: Handle Purchase Orders vs Invoices in Xero

Important distinction:

  • EDI 850 is a purchase order FROM the retailer TO you (they're buying from you)
  • In Xero, this becomes a Sales Invoice (you're selling to them), not a Purchase Order
  • Xero Purchase Orders are for when YOU are buying from suppliers, not when retailers buy from you

When converting EDI 850 to CSV and importing to Xero, create Invoices (under Sales), not Purchase Orders.

Step-by-Step: Converting EDI for FreshBooks

FreshBooks limitations:

  • No native CSV invoice import
  • No EDI support
  • No third-party EDI integrations available
  • Designed for service businesses (freelancers, consultants), not retail suppliers

Workaround:

  1. Convert EDI to CSV with PlainEDI
  2. Manual entry in FreshBooks:
    • Invoices → New Invoice
    • Select client (create Walmart, Target, etc. as clients)
    • Enter line items from CSV
    • Add PO number in "Notes" field
    • Time: 5-10 minutes per invoice

Recommendation: If you're processing 50+ EDI orders/month, FreshBooks isn't the right tool. Switch to QuickBooks Desktop or Xero with SaasAnt for better CSV import capabilities.

Handling EDI 810 Invoices (Retailer Payments)

After you ship products, retailers send EDI 810 invoices (if they generate invoices) or EDI 820 payment remittance advice showing what they paid you. You need to reconcile these payments in your accounting software.

Step 1: Convert EDI 820 Payment Remittance to CSV

Upload the 820 EDI file to PlainEDI. The CSV will show:

  • Payment amount: $6,495.00
  • Invoice number: 4500123456
  • Deductions:
    • Code 21: Missing ASN penalty: -$75.00
    • Code 64: Shortage (10 units @ $12.99): -$129.90
  • Net payment: $6,290.10
  • Payment date: 2025-02-20
  • Check/ACH number: ACH 987654321

Step 2: Reconcile in QuickBooks/Xero

QuickBooks:

  1. Banking → Reconcile
  2. Match the ACH deposit ($6,290.10) to invoice 4500123456
  3. Note the $204.90 difference (deductions)
  4. Create journal entry for deductions:
    • Debit: Chargebacks Expense $204.90
    • Credit: Accounts Receivable $204.90
  5. Add memo: "Walmart deductions - Code 21 missing ASN $75, Code 64 shortage $129.90"

Xero:

  1. Banking → Bank Reconciliation
  2. Find the ACH deposit ($6,290.10)
  3. Create → Reconcile
  4. Allocate to invoice 4500123456 (original $6,495.00)
  5. Create credit note for $204.90 deductions
  6. Apply credit note to invoice
  7. Add reference: "Walmart chargebacks - Missing ASN + Shortage"

Why This Matters: Tracking Chargebacks

Walmart takes an average 5.8% in deductions from supplier invoices. If you don't track these in your accounting software, you'll think you have $6,495 in accounts receivable when you actually only received $6,290.10. This creates cash flow problems.

Converting EDI 820 payment remittances to CSV lets you see exactly what was deducted and why, so you can:

  • Reconcile payments accurately
  • Track chargeback patterns (which codes appear most often)
  • Dispute incorrect deductions (Walmart allows 60-90 day dispute window)
  • Fix operational issues (if you're getting Code 21 penalties, you need to submit ASNs on time)

Cost Comparison: EDI Integration vs CSV Import

Let's compare the true cost of EDI integration middleware vs. converting EDI to CSV for manual import into QuickBooks. Scenario: Small vendor processing 50 EDI orders/month.

Option 1: EDI Integration Middleware

TrueCommerce QuickBooks EDI:$500-$800/month
SPS Commerce integration:$750+/month
OrderEase integration:$300-$600/month
Implementation fee:$2,000-$5,000 one-time
Annual cost (using OrderEase low-end):$5,600 (year 1 with setup)
Years 2+:$3,600/year

Option 2: CSV Conversion + Manual Import

PlainEDI unlimited plan:$99/month
SaasAnt Transactions (optional, for batch import):$29/month
Labor (50 orders × 5 min × $25/hr):$104/month
Implementation fee:$0
Annual cost:$2,784/year
All years:$2,784/year (consistent)
$2,816 Saved in Year 1
$816/year saved in years 2+
That's 50% cost reduction with CSV import method

Common Challenges and Solutions

Challenge 1: "My items don't match between EDI and QuickBooks"

Problem: EDI uses UPC/GTIN. QuickBooks uses SKU. Target might call your product "Organic Honey 16oz" while your QuickBooks item is "HON-16OZ Honey Organic 16 ounce".

Solution: Create a master item cross-reference spreadsheet:

  1. Export your QuickBooks item list to Excel
  2. Add a "UPC" column
  3. Fill in the UPC for each SKU (from product packaging or retailer item setup)
  4. When importing EDI CSV to QuickBooks, use VLOOKUP to match:
    • Look up EDI UPC in your master spreadsheet
    • Return the QuickBooks SKU
    • Use that SKU in your import file

This takes 1-2 hours to set up initially, but saves hours every month on manual item matching.

Challenge 2: "I have multiple ship-to locations in one PO"

Problem: Some retailers (especially Walmart and Target) send EDI 850 purchase orders with multiple ship-to locations in a single PO. The CSV will have multiple rows with different ship-to addresses.

Example:

PO NumberShip-To LocationItemQty
4500123456Walmart DC 6012HON-16OZ500
4500123456Walmart DC 6015HON-16OZ300

Solution in QuickBooks:

  • Option A: Create separate invoices for each ship-to location (Invoice 1 for DC 6012, Invoice 2 for DC 6015)
  • Option B: Create one invoice with total quantity (800 units) and note the split in invoice memo field
  • Recommended: Option A for better shipment tracking. When you create your 856 ASN, you'll ship separately to each DC anyway.

Challenge 3: "Payment amounts don't match invoice amounts"

Problem: You invoiced Walmart for $10,000. Their EDI 820 payment shows they only paid $9,420. Where's the $580?

Solution: Convert the EDI 820 payment remittance to CSV. The CSV will show deduction codes:

  • Code 21 (Missing ASN): -$200
  • Code 22 (Late shipment): -$150
  • Code 64 (Shortage - 20 units @ $11.50): -$230
  • Total deductions: -$580

Create a journal entry in QuickBooks/Xero to record these deductions as "Chargeback Expense" so your books match the actual payment received.

Important: Review all deductions. Walmart's error rate on chargebacks is 15-25%. You can dispute incorrect deductions through Retail Link's Dispute Manager within 60-90 days.

Challenge 4: "I'm spending 10+ hours per week on manual entry"

Threshold analysis:

  • Under 50 orders/month: Manual CSV import is cost-effective (2-3 hours/week @ $25/hr = $300/month labor vs $500-$800/month middleware)
  • 50-100 orders/month: Break-even zone. Consider SaasAnt Transactions ($29/month) for batch import to reduce manual entry time
  • 100-200 orders/month: Still cheaper to do manual import (6-8 hours/week @ $25/hr = $600-$800/month) than full EDI integration ($500-$1,500/month + implementation)
  • Over 200 orders/month: EDI integration middleware becomes cost-effective. Manual entry takes 10+ hours/week.

Solution: Start with CSV import. When you hit 200+ orders/month consistently for 3+ months, upgrade to EDI integration.

Alternative: When You Should Upgrade to Full EDI Integration

CSV import works great for small vendors, but there are scenarios where full EDI integration makes sense:

Upgrade If:

  • Volume: 200+ EDI files per month (manual entry becomes a full-time job)
  • Real-time inventory: You need automatic inventory deduction in QuickBooks when EDI 850 arrives
  • Multiple employees: Warehouse staff need instant access to new orders without waiting for manual entry
  • ERP upgrade: You're moving from QuickBooks to NetSuite/SAP (which have better native EDI support)
  • Trading partners: 10+ retailers with daily orders each (managing 50+ CSV imports per day is unsustainable)
  • Transmission requirement: Retailer mandates direct EDI transmission for 856 ASN and 810 invoices (can't use web portals)

EDI Integration Options for QuickBooks:

  • OrderEase: $300-$600/month, designed for small to mid-size vendors
  • TrueCommerce: $500-$800/month for QuickBooks Online integration
  • SPS Commerce: $750+/month, full-service managed EDI
  • Vantree: Custom pricing, real-time QuickBooks Desktop integration

The Bottom Line: QuickBooks, Xero, FreshBooks and EDI

You don't need expensive EDI integration to use QuickBooks or Xero as a retail supplier.

Here's what you actually need:

  1. PlainEDI ($99/month): Convert EDI 850, 810, 820 files to CSV
  2. QuickBooks or Xero: Your existing accounting software
  3. Optional: SaasAnt Transactions ($29/month): If processing 50+ orders/month and want batch CSV import
  4. 5-10 minutes per order: Manual entry time from CSV data

Total cost: $99-$128/month vs. $300-$1,500/month for full EDI integration.

When you grow beyond 200 orders/month, reevaluate whether EDI integration ROI makes sense. Until then, save $2,400-$16,000 per year.

Convert Your First EDI File to CSV

Upload any Walmart, Target, or Amazon EDI file and see it converted to QuickBooks-ready CSV instantly—no credit card required.

Try PlainEDI Free

Frequently Asked Questions

Can QuickBooks read EDI files directly?

No. QuickBooks (Online and Desktop) has no native EDI support. You need either: (1) EDI integration middleware ($300-$1,500/month) or (2) Convert EDI to CSV and import manually ($99/month or $3.90/file).

Does Xero support EDI import?

No. Xero has no native EDI support. As of 2025, Xero doesn't even support CSV import for purchase orders (despite user requests since 2021). You'll need third-party tools like SaasAnt Transactions or EntryRocket to import CSV data from EDI files into Xero.

How do I match UPC codes in EDI to SKU codes in QuickBooks?

Create a master cross-reference spreadsheet with three columns: UPC (from EDI), QuickBooks SKU, and Item Name. When importing CSV data, use VLOOKUP in Excel to convert UPC codes to QuickBooks SKUs before import. This one-time setup (1-2 hours) saves hours every month.

Can I import EDI 850 purchase orders as sales orders in QuickBooks?

QuickBooks Online doesn't have "sales orders" in the same way QuickBooks Desktop does. In QBO, you'll import EDI 850 data as Invoices or Estimates. In QuickBooks Desktop, you can import as Sales Orders if you use third-party import tools like Transaction Pro Importer.

What if I receive 100+ EDI files per month—is CSV import still realistic?

At 100 files/month (5 per business day), manual CSV import takes about 6-8 hours per week. This is still cheaper than $500-$1,500/month EDI integration if your labor cost is $25-$35/hour. Use SaasAnt Transactions ($29/month) for batch import to reduce time. Beyond 200 files/month, EDI integration becomes more cost-effective.

How do I reconcile Walmart payment deductions in QuickBooks?

Convert the EDI 820 payment remittance to CSV to see deduction codes and amounts. In QuickBooks, create a journal entry: Debit "Chargeback Expense" for the deduction amount, Credit "Accounts Receivable" for the same amount. Add a memo with the deduction codes (e.g., "Code 21 Missing ASN $75, Code 64 Shortage $130"). This adjusts the invoice balance to match the actual payment received.