Order Format
Shopify order export format
This page explains why a single Shopify order can appear as multiple rows in the CSV export, why only one of those rows shows the financial status (e.g. paid), and how to correctly interpret and import the data.
Key concept: one row per line item
- Shopify’s Orders export CSV outputs one row per line item.
- Order‑level fields (e.g., financial status, totals, discount code, gateway, shipping method, billing/shipping addresses) are typically populated on the first line item row for each order and may be blank on subsequent rows for the same order.
- You must group rows by the order identifier (the “Name” column like
#128520) to reconstruct the full order: one order with N line items → N rows in the CSV.
Why only one row shows “financial status: paid”
- Financial status is an order‑level field. In the CSV, it appears on the row of the first line item for that order.
- The remaining rows for the same order represent additional line items; they inherit the same financial status even if the column is blank in those rows.
Example (your export)
Below, all three rows belong to the same order #128520. The first row shows order‑level data including paid and the two following rows are additional line items for the same order:
#128520,sophie.gallas@matice-avocats.com,paid,2025-10-07 09:50:26 +0200,fulfilled,2025-10-08 14:21:21 +0200,yes,EUR,53.91,0.00,0.00,53.91,WELCOME10,110.59,Livraison Rapide [4 à 5 Jours ouvrés],2025-10-07 09:50:26 +0200,3,Masque au Bio-Collagène,34.90,39.90,,true,false,fulfilled,Sophie GALLAS,13-15 rue de Berri,13-15 rue de Berri,,MATICE AVOCATS,PARIS (75008),'75008,,FR,+33610826417,Sophie GALLAS,13-15 rue de Berri,13-15 rue de Berri,,MATICE AVOCATS,PARIS (75008),'75008,,FR,+33610826417,,"",,Shopify Payments,rIw4QXqrJbXeyKv4gKSgs2b8P,0.00,Leaf,0.00,,,,7410991464714,"",Low,web,0.00,TVA 20%,0.00,,,,,,,,,+33610826417,,,,,rIw4QXqrJbXeyKv4gKSgs2b8P,,,rIw4QXqrJbXeyKv4gKSgs2b8P
#128520,sophie.gallas@matice-avocats.com,,,,,,,,,,,,,,2025-10-07 09:50:26 +0200,1,Patchs Yeux Aloe Vera & Collagène,29.90,39.90,"",true,false,fulfilled,,,,,,,,,,,,,,,,,,,,,,,,,,,Leaf,,,,,,,,,0.00,,,,,,,,,,,+33610826417,,,,,,,,
#128520,sophie.gallas@matice-avocats.com,,,,,,,,,,,,,,2025-10-07 09:50:26 +0200,1,Sérum hydratant Acide Hyaluronique 2% - 30ml,29.90,29.90,"",true,false,fulfilled,,,,,,,,,,,,,,,,,,,,,,,,,,,Leaf,,,,,,,,,0.00,,,,,,,,,,,+33610826417,,,,,,,,
```typescript
- The first row (line item: “Masque au Bio-Collagène”, quantity 3) shows `financial_status=paid`, totals, discount code `WELCOME10`, gateway “Shopify Payments”, shipping method “Livraison Rapide…”, and addresses.
- The other two rows are additional line items (“Patchs Yeux Aloe Vera & Collagène” and “Sérum hydratant Acide Hyaluronique 2% - 30ml”, quantity 1 each) and omit order‑level fields. They still belong to `#128520` and share the same order‑level values (including `paid`).
### Practical guidance for imports
- Group by the order “Name” (e.g., `#128520`) or the order ID if available.
- Treat fields like financial status, payment gateway, discount code, shipping method, customer info, and addresses as order‑level. If they’re missing on subsequent rows, copy from the first row of the group.
- Sum line item subtotals, discounts, and taxes per order if you need to recompute totals. Prefer the provided order totals when present to avoid rounding differences.
- Line item columns you’ll usually want to capture per row: title, quantity, price, compare‑at price, tax lines/rate, SKU, fulfillment status, and any line‑level discounts.
### FAQ
- Why does an order appear multiple times in the CSV?
- Because the export uses one row per line item. Multiple rows with the same “Name” are line items for a single order.
- Only one row says paid, what are the other two?
- They are additional line items for the same order. They inherit the same financial status; the column is just left blank on those rows in the export.
- Which column should I use for grouping?
- Use the “Name” (e.g., `#128520`) for human‑readable grouping or the order ID if your export includes it.
### Notes
- Timezones: Timestamps are exported with timezone offsets; normalize as needed.
- Discounts: Order‑level vs line‑level discounts can both appear. Ensure you don’t double‑count when reconstructing totals.
- Fulfillment: Line items can have individual fulfillment statuses even when the overall order is fulfilled.