XML to CSV Converter
Turn XML product records into a CSV table. Upload your file or try a sample, check the preview and download the result.
Converter XML → CSV
Upload an XML file up to 5 MB. Check which records become rows, then convert to CSV and download the file.
No XML file at hand?Try a two-product sample. The downloadable source and actual CSV output are shown below.
Need transformations, not just format conversion?
Sign up when you need to change values in cells, resize and convert images, or filter exports to include only selected items.
How XML becomes a CSV table
In an XML product list, each repeated product record becomes a CSV row. Its values become columns, and missing values leave empty cells. Check the preview before exporting: attributes, currencies and repeated elements can produce column names or cell values that differ from the XML tag names.
When you need it
When data exists in one format but the next system expects another format or structure.
What Eofferix does
The service reads the source, detects repeated records and builds output with clear fields.
Why rules matter
The same file can be exported as a flat table, XML nodes, JSON structure or a feed.
Two XML files. Two real CSV results.
Download either pair, or load the XML into the converter above. Both CSV files were generated by the same converter used on this page.
Product fields and repeated images
Two product records with SKU, price, stock and images. Each product becomes one CSV row.
Source XML
2 products<?xml version="1.0" encoding="UTF-8"?>
<products>
<product>
<sku>SKU-001</sku>
<name>iPhone 15</name>
<price>999</price>
<stock>12</stock>
<category>Smartphones</category>
<image>front.jpg</image>
<image>back.jpg</image>
</product>
<product>
<sku>SKU-002</sku>
<name>Samsung S24</name>
<price>899</price>
<stock>0</stock>
<category>Smartphones</category>
<image>s24.jpg</image>
</product>
</products>Actual CSV output
2 rows| category | image | name | price | sku | stock |
|---|---|---|---|---|---|
| Smartphones | ["front.jpg","back.jpg"] | iPhone 15 | 999 | SKU-001 | 12 |
| Smartphones | s24.jpg | Samsung S24 | 899 | SKU-002 | 0 |
Both products remain in the result, including the one with zero stock. Two image values are kept together as a JSON array in one cell; a single image remains plain text. The CSV download uses the exact column names shown here.
An ID attribute, a currency and several images
The records sit inside catalog → products → product. The ID is an attribute, and the price has a currency attribute.
Source XML
2 products<?xml version="1.0" encoding="UTF-8"?>
<catalog>
<products>
<product id="LAMP-001">
<name>Desk lamp</name>
<price currency="USD">39.90</price>
<stock>12</stock>
<image>https://example.com/lamp-front.jpg</image>
<image>https://example.com/lamp-side.jpg</image>
</product>
<product id="LAMP-002">
<name>Floor lamp</name>
<price currency="USD">79.00</price>
<stock>0</stock>
<image>https://example.com/floor-lamp.jpg</image>
</product>
</products>
</catalog>Actual CSV output
2 rows| @attributes.id | image | name | price.USD | stock |
|---|---|---|---|---|
| LAMP-001 | ["https://example.com/lamp-front.jpg","https://example.com/lamp-side.jpg"] | Desk lamp | 39.90 | 12 |
| LAMP-002 | https://example.com/floor-lamp.jpg | Floor lamp | 79.00 | 0 |
In this file, the product ID appears in @attributes.id, and the price in price.USD. Both image URLs are preserved in one cell for the first product. The outer catalog container does not become a separate product row.
Need a different CSV layout?
The examples show direct conversion. To rename columns, remove zero-stock products, change prices or run the export on a schedule, save a processing profile in your account.
When you need an XML to CSV converter
These conversions are commonly used for catalogs, price lists, stock data, partner exchange and files prepared for receiving-system requirements.
Supplier catalogs
Bring supplier files to the structure expected by a site, CMS, ERP or PIM.
Price lists and stock
Prepare prices, availability, SKUs and categories for import or checks.
Marketplaces and channels
Build files for channel requirements, required fields and stable IDs.
Internal integrations
Move data between systems that use different exchange formats.
Manual review
Get a readable structure for managers, analysts or content teams.
Recurring exports
Run the same scenario repeatedly without manual setup.
Common XML to CSV conversion mistakes
Errors usually come from nesting, mixed value types, empty fields and receiver requirements.
Wrong record selected
Each product element is one record. Check the detected list in the preview. For a custom saved export, select the product record in the XML snapshot. Choose and map XML records →
Repeated images in one cell
Two image values can appear as a JSON array in one CSV cell, as in the samples above. If the receiving system needs separate columns or a different separator, configure that layout in a profile.
Different fields
If records have different fields, decide how empty values are handled.
Types not normalized
Prices, dates, true/false and HTML should be normalized.
No filters
Without filters, inactive products or extra categories may be exported.
No validation
Before recurring runs, check preview, encoding and required fields.
XML → CSV: online or manual conversion
A one-time check and production exchange need different approaches.
| Method | Pros | Cons |
|---|---|---|
| Manual code | Maximum flexibility for unique schemas. | Requires developer time, tests and maintenance. |
| Script | Fast for repeated technical tasks. | Harder to control files, logs, permissions, schedule and delivery. |
| Eofferix | Preview, profiles, rules, files up to 2 GB and scheduled runs. | Complex structures need a saved profile. |
Limits, safety and recurring workflows
Eofferix creates a separate output and does not change the source file. For large catalogs and exact rules, use a saved profile.
Up to 5 MB without signup
Good for quick checks of simple files.
Up to 2 GB after signup
Large catalogs are processed in the account with saved rules.
Source stays unchanged
Output is created as a separate file.
Structure control
When supplier data changes, update only affected rules.
Value transformations
Normalize text, prices, empty values and fields.
Result delivery
Email, FTP/SFTP, webhook and other channels for repeat processes.
Other conversions
Eofferix can also help with adjacent formats for catalogs, price lists and supplier exports.
XML → JSON
Adjacent format for checking structure and preparing data.
XML → XLS
Adjacent format for checking structure and preparing data.
XML → XLSX
Adjacent format for checking structure and preparing data.
XML → YML
Adjacent format for checking structure and preparing data.
CSV → XML
Reverse conversion for validation and integrations.
How to convert XML to CSV
Upload a file
Drop the file on the page or choose it from your computer.
Check the result
Eofferix reads the structure, shows a preview and prepares the selected format.
Download or save a profile
Download the file or sign up to save rules for repeat runs.
What the XML to CSV converter supports
Quick conversion and saved profiles
Small files can be checked directly on the page, while production rules are saved in a profile.
Field mapping
Rename fields, choose order, hide unnecessary values and match receiver requirements.
Nested data
Arrays, objects, repeated nodes and tables can be processed with clear rules.
Export filters
Export only required products, categories, stock records or rows.
Preview
Check structure before downloading the file or saving a processing profile.
Automation
After signup, profiles can run manually, on schedule or with result delivery.
XML to CSV FAQ
Convert XML to CSV and automate repeat tasks
Start by checking a file, then save a profile for recurring catalog, price-list and stock processing.
Try for free → Up to 5 MB without signup · up to 2 GB after signup · no software install