Normalize XML Inventory Feed to Parquet

Convert supplier XML stock feeds into clean Parquet rows with normalized SKUs and inventory levels.

Drop your XML (.xml) file here (or click to browse).
(50 MB or less file)
0%
Uploading...
Loading...
Loading…
Sign-up to upload larger files
HOW IT WORKS

From Supplier Feed to Store-Ready Parquet

Watch a supplier's XML stock feed become a clean Parquet with the tools already in Data Prep: one row per SKU, real quantities, and a stock status your store understands.

DataConverter.io
kestrel-inventory.xml(1.4 KB)
Start Over
Tools
Transform
Aggregate
Combine
History (0)
No actions applied yet
Showing 1 to 25 of 25 records
#suppliergeneratedskuUPCDescriptionStatuscodeQtyNextShipment
1Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-1042084213010422
2Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-1042084213010422Cast Iron Skillet, 10 in
3Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-1042084213010422Cast Iron Skillet, 10 inIn Stock
4Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-1042084213010422Cast Iron Skillet, 10 inIn StockRNO18
5Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-1042084213010422Cast Iron Skillet, 10 inIn StockATL6
6Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-1043084213010439Cast Iron Skillet, 10 inIn Stock
7Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-1043084213010439Cast Iron Skillet, 12 inIn Stock
8Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-1043084213010439Cast Iron Skillet, 12 inLow Stock
9Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-1043084213010439Cast Iron Skillet, 12 inLow StockRNO2
10Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-1043084213010439Cast Iron Skillet, 12 inLow StockATL0
11Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-2210084213022104Cast Iron Skillet, 12 inLow Stock
12Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-2210084213022104French Press, 34 ozLow Stock
13Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-2210084213022104French Press, 34 ozBackorder
14Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-2210084213022104French Press, 34 ozBackorder2026-11-04
15Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-2210084213022104French Press, 34 ozBackorderRNO02026-11-04
16Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-2210084213022104French Press, 34 ozBackorderATL02026-11-04
17Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-3105084213031052French Press, 34 ozBackorder2026-11-04
18Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-3105084213031052Chef's Knife, 8 inBackorder2026-11-04
19Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-3105084213031052Chef's Knife, 8 inIn Stock2026-11-04
20Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-3105084213031052Chef's Knife, 8 inIn StockRNO50+2026-11-04
21Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-3105084213031052Chef's Knife, 8 inIn StockATL142026-11-04
22Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-0877084213008771Chef's Knife, 8 inIn Stock2026-11-04
23Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-0877084213008771Enamel Dutch Oven, 5.5 qtIn Stock2026-11-04
24Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-0877084213008771Enamel Dutch Oven, 5.5 qtDiscontinued2026-11-04
25Kestrel Kitchen SupplyWed Oct 21 06:00:00 EDT 2026KK-0877084213008771Enamel Dutch Oven, 5.5 qtDiscontinuedRNO32026-11-04
  • Prev
  • 1
  • Next
store-inventory.parquet5 SKUs · 5 columns

UploadOn the XML defaults: 25 rows for 5 items

Show Shoppers the Stock You Actually Have

Supplier feeds split stock across warehouses, label it in words, and leave out restock dates. A normalized feed fixes all of it before your store imports a single row.

9 warehouse counts1 number per SKU0 units oversold
Every warehouse

Add up stock across all your warehouses.

Feeds list each warehouse on its own. Summarize Data adds them into one number per SKU, so 18 in Reno and 6 in Atlanta become 24.

File SettingsSummarize Data
kestrel-inventory.xml · on handTotal
KK-1042 24
KK-1043 2
KK-2210 0
KK-3105 64
KK-0877 3
RNO warehouseATL warehouse
No overselling

Never sell the last units twice.

Hold back a safety buffer and take discontinued items to zero, so a Low Stock item with 2 left shows as out of stock.

Feed saysKK-1043Low Stock · 2 on hand
Store gets0 to sellout_of_stock
Feed saysKK-0877Discontinued · 3 on hand
Store gets0 to selldiscontinued
Backorders

Tell shoppers when it's back.

The supplier's next shipment date becomes a restock date your store can show, instead of a plain out of stock.

French Press, 34 oz KK-2210 · 0 on hand Back in stock Nov 4 <NextShipment>2026-11-04</NextShipment> → RestockDate
SCHEDULED FEED PULLS

Normalize Inventory Feeds via API

Save your transformation steps as a template, post incoming supplier feeds directly to the API, and receive clean Parquet files ready for store import.

Explore the API
normalize-inventory-feed.sh
curl -X POST "https://dataconverter.io/api/v1/convert/template" \  -H "Authorization: Bearer YOUR_TOKEN_HERE" \  -F "templateId=YOUR_TEMPLATE_ID" \  -F "file=@kestrel-inventory.xml" \  --output store-inventory.parquet✓ 200 OK · store-inventory.parquet · 1,284 SKUs

Frequently asked questions

Why does my XML feed turn into more rows than items?

On the defaults, UPC, Description, Status and NextShipment are each a Record, so every item splits into extra rows besides its warehouse rows. In File Settings, turn Record off for everything except Warehouse, and turn Cascade off for NextShipment so one item's restock date doesn't carry onto the items after it. Turn Field off for supplier and generated if you don't need them. Then use Summarize Data to add up each SKU's stock.

How do I turn values like "50+" or "Low Stock" into numbers?

Use Add Columns expressions. parseInt(replaceString(toString(Qty), "+", "")) reads 50+ as 50, and conditional expressions like iif(...) set stock status directly from counts.

Can I handle feeds from several suppliers?

Yes. Save separate templates for each supplier configuration with mapped standard output columns. Every feed converts into a unified catalog structure regardless of supplier formatting differences.

Will the Parquet export keep the leading zeros in UPCs and GTINs?

Yes. Barcodes are read as text, so their leading zeros stay.