Job feed-version-diff-report-before-import · revised 11 October 2026
Get a change report comparing two supplier feed versions before you import
For two named versions of one supplier feed you get a repeatable report of every added, removed and changed product, with price and stock moves over your thresholds and counts that reconcile.
You might be seeing
- Nobody can say how many products changed between this week's file and last week's
- A line-by-line text comparison of the two files shows thousands of differences that are only row order or spacing
No passwords, keys, card details or admin invites needed to start.
What usually happened
Comparing two supplier files by eye or with a line-based text tool treats a reordered file, a spacing change or a number format change as thousands of differences, and hides the few real ones. Without a key-based comparison of product rows nobody can see which products were added, which are absent and which changed price or stock.
Who it’s for: Purchasing or operations manager who imports each new supplier file and wants to know what changed before it touches live prices and stock.
Usually starts when: A supplier file looks different from last week's, prices moved in ways nobody expected, or a past import changed far more products than anyone intended.
The result: For two named versions of one supplier feed, you receive a report listing each product added, absent from the new file and changed, by key, with the columns that changed, price and stock moves above agreed thresholds, and counts that reconcile on distinct keys: old keys minus absent plus added equals new keys. The number of extra rows that repeat a key is reported separately for each file, and every repeated key is listed rather than resolved. A script reproduces the same report from the same two files.
Check whether this job fits
Answer these without sending files or logins. Nothing is submitted unless you choose to contact us.
Checks you can run yourself
Sort and compare two products
Sort both versions by the product code and pick two products. Compare every column by eye.
Look for: Whether changes are in the values or only in spacing, number formatting and row order. If the same product differs only in formatting, the report must normalise it before comparing.
What you get
- The change report as a spreadsheet-ready file and a one-page summary
- The script and the written key, column and threshold rules
- A reconciliation of distinct keys between the two versions, with the extra rows that repeat a key counted separately for each file
- Instructions to run it again on the next version
Included
- One supplier feed layout and two named file versions of up to 100,000 rows each, as redacted or synthetic copies
- Agree the key columns, the columns to compare and the normalisation rules (trimming, number formats, empty versus missing)
- Compare by key rather than by line order, and report each change with old and new values. A key that appears more than once in a file is listed with all its rows and is not compared, because the report does not choose between them; it still counts as present for added and absent
- Flag price and stock moves above thresholds you set, and list products absent from the new file without calling them discontinued
- Provide a script that reproduces the report, and a plain-English summary
Not included
- Deciding whether to import the new file or which changes are acceptable
- Applying any change to your store or database
- Judging whether the supplier's new prices or stock are true
- Detecting whether a file is a complete snapshot; the report only states what the file contains
- Files containing personal data
How we know it’s done
Agreed with you before work starts. Each check produces evidence you keep.
On a synthetic pair of files with ten planted differences (two additions, two absences, three price changes, one stock change, one description change, one key that repeats in the new file only) plus reordered rows and whitespace-only differences, the report lists exactly the ten planted differences and no others, and its distinct-key reconciliation holds although the two files differ in how many rows repeat a key.
Evidence: The planted list and the report side by side, and the reconciliation with the repeated-key rows counted for each file.
Comparing a file with itself reports zero changes.
Evidence: The report and its zero counts.
For the two agreed real versions, the number of distinct keys in the old file minus keys absent plus keys added equals the number of distinct keys in the new file, the extra rows that repeat a key are reported separately for each file, and every repeated key is listed rather than resolved. When no key repeats, these equal the plain row counts.
Evidence: The reconciliation table, with distinct keys and repeated-key rows for each file, and the repeated-key list.
Running the script twice on the same two files gives byte-identical reports.
Evidence: Both outputs compared.
Sign-off. You inspect the planted-change test and the reconciliation, and sign off in writing. Payment follows sign-off.
If it fails. If the agreed tests do not reconcile, you do not pay for this fixed scope. We hand over what we found and agree whether to stop or re-quote; no surprise work.
When it fits, and when we stop
It fits when
- You can supply two versions of the file as redacted copies, or synthetic copies with the same structure
- Each product has a key that is stable between versions, or you can agree one
- The data is product, price and stock data, not personal data
We stop and tell you if
- There is no stable key and none can be agreed, so products cannot be matched
- The files contain personal data that cannot be removed
- The files exceed the agreed size and you do not want a quoted larger scope
What could go wrong
The job reads two files and writes a report; it changes nothing in your systems, so there is nothing to revert. Our copies of your files are deleted when the job ends.
Scroll the table sideways to read it all.
| Risk | How we handle it |
|---|---|
| Formatting differences are reported as real changes and bury the real ones. | Normalisation rules are written down and tested with planted formatting-only differences that must not appear. |
| A key that repeats unevenly between the two files makes a plain row count look wrong, or hides a lost row. | The reconciliation is on distinct keys, which holds whatever the repeats, and the extra rows that repeat a key are counted and listed separately for each file. |
| A product missing from a partial file is read as discontinued. | The report only says a product is absent from this file. It never says discontinued or unavailable. |
| Sensitive data arrives in the files. | The first enquiry asks for column names only. Files go through an agreed secure route after agreement, and personal data is refused. |
An independent reviewer checks that matching is by key, that formatting-only differences are not reported as changes, that repeated keys are listed and not compared, and that the distinct-key counts reconcile with the repeated-key rows counted separately. Your named person accepts the report format.
How we deliver
We arrange the work and independent review, then show you the result against the agreed checks. You keep authority over your systems.
- Agree the layout, key columns, compared columns, normalisation rules and thresholds in writing
- Receive the redacted or synthetic copies through the agreed secure route
- Build the comparison by key and test it on a copy with planted additions, removals, price changes and duplicate keys
- Run it on the two agreed versions, and reconcile the distinct keys and the repeated-key rows
- Independent review of the rules, the planted-change test and the reconciliation
- Hand over the report, script and instructions, and delete our copies of your files
This is a one-off job, not emergency cover or a subscription. We confirm eligibility, the total price, a start window and a delivery date before you accept. Work starts only after agreed inputs, secure access and any needed permissions are in place. Hosting, supplier and platform charges are excluded unless the written quote includes them. An enquiry creates no charge or booking.
Need to keep it working?
Discuss a standing check that produces this report for every new supplier file.
Ongoing work is separately scoped and quoted: no monitoring, response-time guarantee or automatic subscription is included in this job.
Explore an ongoing engineering lane, or mention the responsibility you need in your enquiry.
What you can check
This is a new service. We have not delivered this job for a client yet.
Other ways to get this done
- A line-based text comparison is the wrong tool for tables: Python's difflib compares sequences of items in order, so a reordered file looks changed throughout. docs.python.org
- For small files, sort both versions by the key in a spreadsheet and use a lookup column to find added, absent and changed rows. It works until the files grow or the rules change.
Questions
Can the report tell me whether to import the file?
No. It shows what changed so you can decide. Your thresholds highlight the moves you care about.
Will it say a missing product is discontinued?
No. It says the product is absent from the new file. Only the supplier can say why.
What if the same product code appears twice in a file?
The report lists that code with all its rows and does not choose between them or compare them. The counts reconcile on distinct codes, and the extra rows that repeat a code are counted separately for each file.
Can I run it myself next month?
Yes. You receive the script and instructions. Running it on future files is yours to do, or a standing check can run it for you.
Send an enquiry
Send us
- The supplier's column names, as text, and which column identifies a product
- Roughly how many rows each version has and how often files arrive
- The price and stock moves you would want flagged. No real price lists, customer data or credentials in the first enquiry
Later, once you agree
- Two redacted or synthetic copies of the file versions through an agreed secure route
- Written key, comparison and threshold rules
- A named person who accepts the report format
You keep the files and the decisions about what to import. We work on copies you send through an agreed secure route, return the report and a script you can run yourself, and delete our copies when the job ends. We do not connect to your systems or the supplier's.
Email fallback: open your mail app
If website submission is unavailable, review and send the fallback email yourself. An email fallback is not a website receipt. Or write to hello@syntheticindustry.ai with “feed-version-diff-report-before-import” as the subject.