Guide
Supplier files arrive every month and cover a slice of your catalog, never all of it. The safe way to load one is to decide, before anything is written, which part of your data that file is allowed to speak for.
A fitment file is almost never a complete picture of your store. It is usually one of these:
What you have stored, meanwhile, came from several suppliers, plus the applications you worked out yourself from a catalog PDF or a customer telling you the part fitted their truck. Those hand-added rows are usually the most valuable ones you have, because nobody else has them.
So "import this file" is not one operation. It is four different operations, and the damage comes from running the wrong one.
The simplest import is to delete all fitment and load the new file. It is also the one that costs the most. A file covering one brand replaces data covering twenty, so every other brand loses its fitment and disappears from vehicle search until the next file for that brand arrives. The hand-added applications are gone with no way to get them back.
This is worth saying plainly: if your tool only offers a full replace, a supplier sending you a single-brand update puts the rest of your catalog at risk every month.
The opposite mistake is to only add, never remove. Nothing breaks on the day of the import, so it feels safe. What builds up is coverage that is no longer true: an application the manufacturer withdrew because the part damages the 2019 facelift, a fitment that was a typo in a file from two years ago. Your vehicle search keeps offering those parts, the shopper buys, and the part does not fit.
A return for a part that does not fit costs more than a normal return. The customer usually blames the store rather than the catalog.
The third failure is not about what gets written, but about what does not. A row whose
SKU does not match anything in your catalog cannot be stored. So can a row with a year
range like 2019-2015, or an empty model column. If those rows are dropped
without a record, the only symptom is a question weeks later: why does this part not show
up for the F-150? By then nobody remembers which file it came from.
The fix is not clever software. It is a list of the rows that were not used, with the line number and the reason, that you can open the file and check against.
Before loading a file, answer one question: what is this file allowed to speak for? There are four useful answers.
| Scope | What it writes | What it removes | Use it when |
|---|---|---|---|
| Add only | Rows you do not already have | Nothing | First load of a new brand, or when you trust your own corrections more than the file |
| Add and update | New rows, and changes to rows that match | Nothing | A routine update from a supplier who only ever extends coverage |
| Replace one brand | Every row in the file for that brand | That brand's stored rows that the file does not list | The file is that brand's full current catalog and you want withdrawn applications gone |
| Replace the parts in this file | Every row in the file | Stored rows for those part numbers only | A correction file for a handful of SKUs |
The two replace scopes are the ones that remove data, and they are also the ones you need when a supplier drops an application. The difference from a full replace is the boundary: replacing one brand leaves every other brand exactly as it was.
One thing to be clear about with yourself: a replace deletes your hand-added rows inside that scope too. The file becomes the truth for that brand. If your own corrections matter more than the supplier's version, the scope is wrong, or those corrections need to go into the file first.
Whatever tool you use, get these four numbers in front of you before the write happens.
If a tool cannot show you these before writing, it is asking you to trust a file you have not read.
These are the problems that come up again and again, in rough order of frequency.
2015-2019 is easy,
2015/2019 and 15-19 are not, and 2019-2015 is a
mistake that should be rejected rather than guessed at.0041250
into 41250 and long part numbers into scientific notation. Once saved, the
original value is gone.Before a large import, export your current fitment. It is a plain file and it is the only thing that makes a bad import reversible on your own terms. An undo that covers the last import is better than nothing, but it is not a substitute: you may only notice the problem after the next import has already run.
The habit worth building is smaller and more frequent imports, each with a clear scope, rather than one large file that changes everything at once. A small import that goes wrong is also small to fix.
The four scopes above are the four import modes in the app. Each import is preceded by a preview that shows the rows read, the fitments after expansion, the SKUs matched and unmatched, the added, updated and removed counts, and every row that could not be used with its line number and reason. Nothing is written until you press Import, and the last import can be undone.
You can run all of that yourself, on sample supplier files, in the interactive demo — including replacing one brand and watching the other brands stay exactly where they were.
Free up to 1,000 fitments, with every feature included, so you can check it against your own part numbers before paying. Pro is $19/month with a 14-day free trial and holds up to 1,000,000 fitments.
View on the Shopify App StoreNew to vehicle fitment on Shopify? Start with how to add Year / Make / Model search to a Shopify store, which covers the free approach and where it stops working. If you do not have a fitment file yet, see where auto parts stores get vehicle fitment data.