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