embedded in total ('$45.00')

Symbol stripped; value stored as numeric 45.00.

Frequently Asked Questions

Which columns are kept by default?

Order ID, date, status, customer email, billing name, shipping name, line items, subtotal, tax, total, payment method.

Are multi-item orders split into separate rows?

Yes — enable 'one row per line item' to split bundled orders.

Related tools

Platform

Shopify Customer Export Cleaner

Normalize Shopify customer exports: merge split address fields, clean phones, and strip internal metadata.

Open Tool →
Platform

Stripe CSV to JSON

Convert Stripe balance and payment CSV exports to clean JSON with amount conversion and metadata parsing.

Open Tool →
Platform

Google Contacts CSV Fixer

Fix Google Contacts CSV exports to import into Outlook, Apple Contacts, or CRM platforms.

Open Tool →
embedded in total ('$45.00')","outcome":"Symbol stripped; value stored as numeric 45.00."}],"alternativeMethod":{"tool":"Python","code":"import html, csv\nwith open('woo.csv') as f:\n rows = list(csv.DictReader(f))\nfor row in rows:\n row['Items'] = html.unescape(row.get('Items', ''))\n row['Order Total'] = row['Order Total'].replace('
, '').replace(',', '')\nprint(rows[:2])","notes":"html.unescape() decodes all HTML entities including numeric ones like “."},"sampleFile":{"filename":"sample-woocommerce.csv","content":"Order ID,Order Date,Order Total,Order Status,Items\n1001,2024-01-15,45.00,completed,Solar Panel & Accessories (SKU: SP-01) x1 | Inverter (SKU: INV-02) x2\n1002,2024-01-16,28.00,completed,Battery Pack (SKU: BAT-05) x3"},"testInput":[{"Order Number":"1001","Order Status":"completed","Order Total":"85.00","Customer Email":"grace@corp.com"},{"Order Number":"1002","Order Status":"processing","Order Total":"120.00","Customer Email":"peter@corp.com"}],"expectedOutput":[{"first_name":"1001","last_name":"","Order Status":"completed","Order Total":"85.00","Customer Email":"grace@corp.com"},{"first_name":"1002","last_name":"","Order Status":"processing","Order Total":"120.00","Customer Email":"peter@corp.com"}],"howToSteps":["Export your orders from WooCommerce → Orders → Export.","Upload the CSV.","Click 'Clean'. Internal WooCommerce columns are removed, currency is stripped from amounts, and dates are standardised to ISO.","Download."],"thingsThatGoWrong":["Custom WooCommerce plugins may add columns in unexpected positions.","Refund rows (negative amounts) are preserved — filter them out if you only want sales."],"faqs":[{"q":"Which columns are kept by default?","a":"Order ID, date, status, customer email, billing name, shipping name, line items, subtotal, tax, total, payment method."},{"q":"Are multi-item orders split into separate rows?","a":"Yes — enable 'one row per line item' to split bundled orders."}],"beforeAfter":{"before":"WooCommerce 65-column export with currency-formatted amounts and ISO 8601 timestamps","after":"Clean 15-column CSV with numeric amounts and YYYY-MM-DD dates"},"whyItMatters":"WooCommerce exports are notoriously hard to use outside WordPress — messy column names, currency-formatted amounts, and no clean date format.","proTips":["Filter by 'status = completed' before analysis to exclude pending and cancelled orders.","Use Group By and Count on the 'payment_method' column to see payment method distribution."],"edgeCases":["Orders with coupons show a negative discount line — handle as a separate line item type.","Refund orders have negative totals — flag them with Filter CSV Rows."]};