Amazon Inventory File Cleanup: From Supplier XLSX to Upload-Ready File
You have a supplier spreadsheet: an XLSX with a logo in the top-left cell, a couple of marketing banner rows, merged headers, cost and MSRP sitting in adjacent columns, and UPCs that Excel has already helpfully chopped the leading zeros off of. Amazon wants something completely different: a tab-delimited text file built on its category inventory template, with specific column names, SKUs preserved as text, and every required field filled in. This guide walks the actual gap between those two files, field by field, so your first upload does not bounce.
This is a preparation workflow, not an error-code lookup. If your file has already failed and you are staring at listing error messages, that is a different task. Here we assume you have a raw supplier file and need to shape it into upload-ready form before you ever hit the upload button.
What format does an Amazon inventory file actually need to be?
Amazon inventory file templates are Excel workbooks while you fill them in, but you upload them as a text (tab-delimited) file. Seller Central's own instructions tell you to save the completed template as Text (Tab delimited) (*.txt) before uploading it under Add Products via Upload. The .xlsx you edit in is not what Amazon ingests; the .txt export is. This trips up sellers who edit the template, save it as a normal workbook, and wonder why the upload tool rejects it.
There are two template families, and picking the wrong one causes a lot of wasted cleanup. A Category Inventory Template (also called a category-specific flat file) is for creating brand-new listings in the Amazon catalog and carries the full set of category attributes. The Listing Loader is for matching your inventory to products that already exist in the catalog using just the product ID, and it requires a Professional selling plan. If your supplier's products are already on Amazon, you need far fewer columns than a full category template. If you are creating new detail pages, you need the category template for your product type. Download it from Inventory, then Add Products via Upload, then Download an Inventory File, then Category-Specific Inventory Files, and choose your category.
Do not delete or reorder the top rows of the downloaded template. The first rows carry the TemplateType and Version metadata plus two header rows: a human-readable label row and the machine field-name row (item_sku, external_product_id, standard_price, and so on). Amazon reads the field-name row, not your labels. Type your supplier data under the correct field names and leave the metadata rows intact.
Map the supplier columns to the template field names
A supplier file rarely uses Amazon's names. Your supplier calls it Item #, Barcode, and Retail; Amazon's template calls them item_sku, external_product_id, and standard_price. The job is a translation, and it is worth doing deliberately because the field-name row is what the upload parser binds to. Here are the fields you will touch on almost every job:
Core fields present in nearly every category template:
- item_sku - your own unique identifier for the product; must stay text (see below)
- external_product_id - the barcode value (UPC, EAN, or GTIN)
- external_product_id_type - the type of that barcode: UPC, EAN, GTIN, or ISBN
- item_name - the listing title
- brand_name - the manufacturer or brand
- standard_price - the selling price, as a plain decimal with no currency symbol
- quantity - units available (for merchant-fulfilled listings)
- feed_product_type - the product type keyword required by your chosen category template
Everything else in the supplier file that does not map to a template field (case pack size, supplier notes, internal margin columns, a discontinued flag) should be dropped before export. Extra columns that do not match a template field name are noise at best and cause misaligned data at worst.
Why does Amazon strip my SKUs and UPCs of leading zeros?
It is not Amazon that strips them; it is Excel, before the file ever leaves your machine. When a cell holds 012345 and Excel treats the column as a number, it stores 12345 and the leading zero is gone for good. UPCs need 12 digits, EANs need 13, and ISBNs need 10, so a dropped leading zero produces an 11-digit UPC that fails validation. The same thing happens to SKUs like 007-BLUE that get reinterpreted or to product IDs that Excel decides to render in scientific notation (that dreaded 1.23457E+11).
The fix is to keep every identifier column as text end to end. In the Amazon template, format the SKU and product-ID columns as Text before you paste. But the deeper trap is the round trip: if you open a supplier CSV in Excel, it may have already destroyed the zeros on open, before you have a chance to set the format. The only reliable defense is to never let a spreadsheet editor auto-type those columns. This is exactly where a cleaning step that reads the raw file and preserves identifier columns as strings saves you: PipeSheets loads the supplier file without coercing 012345 into a number, so the zeros and check digits survive into your export.
Check digit warning: a UPC's final digit is a checksum computed from the other 11. If Excel dropped a leading zero and you re-pad the wrong end, you get a 12-digit number that still fails because the check digit no longer matches. Always restore the original barcode value, not a manually zero-padded guess.
Remove the supplier header, footer, and marketing junk
Supplier spreadsheets are built for humans, not parsers. Before the real data starts you usually have a logo row, a Spring 2026 Catalog banner, a contact line, and a merged title cell. After the last product you often find a Prices subject to change footer or a totals row. None of that belongs in an Amazon file, and merged cells in particular wreck column alignment when you export to tab-delimited text.
Your real header (the row with Item #, Barcode, Description, Cost, MSRP) is often row 4 or row 7, not row 1. The cleanup is: unmerge everything, delete the rows above the true header, delete the footer rows below the last product, and delete fully-empty separator rows and columns. Empty rows between product groups are common in catalogs organized by brand, and they will import as blank product rows if you leave them.
Which price column do you use: cost, MAP, MSRP, or retail?
Supplier files often carry three or four price columns, and putting the wrong one in standard_price is an expensive mistake. Cost is what you pay the supplier; if it lands in standard_price you are selling at a loss on Amazon. MSRP or Retail is the manufacturer's suggested price and is usually the right basis for your list price. MAP (Minimum Advertised Price) is a contractual floor, not a suggested price; some brands will pull your authorization if you advertise below it. Pick one deliberately, and drop the other price columns so they cannot leak into the export.
Whatever column you choose, standard_price must be a plain decimal: 29.99, not $29.99 and not 29.99 USD. Strip currency symbols and thousands separators. Normalize quantity to a whole number too; supplier stock columns sometimes carry text like In stock, 24+, or Call, none of which are valid quantities.
Fill or fix blank required fields
A category template marks required fields, and Amazon rejects rows where any required field is blank. The usual offenders after a supplier import are external_product_id (some rows have no barcode), brand_name (blank for generic items), and the category-specific attributes your product type demands. For apparel that means size and color; for other categories it is different attributes entirely. There is no shortcut here: a row missing a required value either needs the value supplied or needs to be pulled from this upload. What cleaning software can do is standardize the near-misses, so an assortment of blanks, N/A, null, and - all read as genuinely empty and are easy to find, and so a stray whitespace-only cell does not masquerade as filled.
Before and after: one messy supplier block to clean template rows
Here is a realistic slice of a supplier XLSX, with the marketing rows, merged header, mixed price columns, and Excel-mangled barcode all present:
ACME WHOLESALE *** SPRING 2026 CATALOG ***
sales@acme-wholesale.com | Prices subject to change
Item # Barcode Description Cost MAP MSRP Stock
AC-001 3.61245E+11 Blue Ceramic Mug 12oz 4.20 9.99 12.99 In stock
AC-002 36124500018 Red Ceramic Mug 12oz 4.20 9.99 12.99 24+
*** End of Kitchen ***
AC-014 036124500222 Steel Travel Tumbler 8.75 17.99 21.99 6And the same three products after cleanup, ready to paste under the field-name row of the Amazon template (shown here as tab-separated values):
item_sku external_product_id external_product_id_type item_name brand_name standard_price quantity
AC-001 361245000015 UPC Blue Ceramic Mug 12oz ACME 12.99 0
AC-002 036124500018 UPC Red Ceramic Mug 12oz ACME 12.99 24
AC-014 036124500222 UPC Steel Travel Tumbler ACME 21.99 6Note what changed: the banner and contact rows are gone, the End of Kitchen separator is gone, the scientific-notation barcode on AC-001 was restored to a full 12-digit UPC, the leading-zero UPCs kept their zeros, MSRP (not cost or MAP) became standard_price, the In stock and 24+ stock values became real integers, and every row carries brand_name so the required field is not blank.
A repeatable cleanup checklist
Run this pass on every supplier file before you save it as tab-delimited text:
- Confirm you have the right template: Category Inventory Template for new listings, Listing Loader for products already in the catalog
- Delete logo, banner, contact, and footer rows so the real header is the first data-defining row
- Unmerge all cells and remove empty separator rows and columns
- Set SKU and product-ID columns to text and verify no barcode shows scientific notation or a dropped leading zero
- Confirm UPC = 12 digits, EAN = 13, ISBN = 10, and set external_product_id_type to match
- Rename supplier columns to the template field names (item_sku, external_product_id, standard_price, quantity, etc.)
- Choose the correct price column (usually MSRP or retail, never cost, and mind MAP) and drop the rest
- Strip currency symbols from prices; make prices plain decimals and quantities plain integers
- Standardize null values and find rows with blank required fields; fill them or remove them
- Save the finished template as Text (Tab delimited) (.txt) before uploading
Where PipeSheets fits in this workflow
The parts of this that break in Excel are the parts a dedicated cleaner handles cleanly: reading a supplier file without mangling leading zeros or barcodes, trimming whitespace from every column, standardizing the scattered null values, and dropping empty rows and columns in one pass. PipeSheets' Quick Clean preset does that trimming, null-standardizing, and empty row/column removal in a single click, and a custom saved pipeline can rename supplier columns to Amazon's field names, drop the price columns you are not using, and normalize values with find-and-replace. You preview the before and after with detected column types, then export to CSV or XLSX with the identifier columns intact.
PipeSheets does not build the Amazon template for you or validate against category rules; that final assembly into the tab-delimited template, and the Check My File validation inside Seller Central, are still yours to run. But it removes the failure modes that turn a five-minute paste into an afternoon of chasing dropped zeros and stray marketing rows. Clean the supplier file first, then map it into the template, and your first upload has a real chance of going through.
Related tools & guides
- Amazon Bulk Upload CSV FixerFix Error 8058, 5461, and the other cryptic Seller Central rejections
- Vendor Catalog CSV CleanerTurn chaotic supplier data into ERP-ready imports
- PipeSheets CSV & Excel cleanerClean any spreadsheet in seconds — free to start
- Pricing & plansCompare the free and Pro plans for your workflow
Try the automated solution
PipeSheets can fix these issues automatically. Clean your first file free.
Clean Your CSV