Shopify

Shopify Order Export Sample CSV (Dirty + Clean)

A production-realistic Shopify order export (200 rows) covering the exact scenarios that break data pipelines: multi-line items (one order → multiple rows), partial refunds, mixed fulfillment statuses, and discount code stacking. The 'dirty' version contains trailing whitespace on emails, HTML entities (&) in Lineitem name, and timezone-naive Created at timestamps that shift order dates by ±12 hours during UTC conversion. The 'clean' version normalizes all fields to warehouse-ready format. Perfect for testing ShipStation ERP imports, QuickBooks reconciliation, or Shopify API mock data. All processing happens locally in your browser — your order data never leaves your machine.

Live Interactive Preview

Live Data Preview

See how this messy shopify data looks before downloading. All processing happens locally in your browser.

💡 Pro Tip: Don't just download. Drag this CSV into our Shopify Normalizer and watch 200 messy rows collapse into a clean, flat table in 3 seconds.

⚡ Next Step: Got 50 monthly Shopify exports? Merge them all with our CSV Merger — it stays in your browser and finishes before your espresso does.

Data Schema Definition

ColumnTypeDescription
NamestringShopify order number (e.g., #1001). Not unique across stores; always pair with store domain for deduplication.
EmailstringCustomer email. Dirty version contains trailing spaces causing duplicate customer records in CRM syncs.
Financial StatusstringEnum: paid | refunded | partially_refunded | pending. Partial refunds create orphan line items if not joined correctly.
Fulfillment StatusstringEnum: fulfilled | unfulfilled | partial. Mixed status orders require window functions to avoid double-counting revenue.
Lineitem quantityintegerPer-SKU quantity. Multi-line orders repeat header fields N times, inflating SUM aggregations by 3-5× without dedup logic.
Lineitem namestringProduct variant title. Frequently contains unescaped commas and HTML entities (&, ') breaking naive CSV parsers.
Lineitem pricedecimalUnit price before discounts. Stored as decimal dollars, unlike Stripe's cents convention.
Discount CodestringStacked codes appear as comma-separated string. Null when no discount applied — causes JOIN failures if not coalesced.
ShippingdecimalShipping charge allocated per line item. Often zero for digital products; null vs 0 distinction matters for margin calc.
Created attimestampOrder creation time. Shopify exports use store-local timezone without offset indicator, causing ±12h date-shift bugs in UTC warehouses.