Migration log · entry 002 · July 2026

Half a million SKUs walk into a new database.

The first real job of an ERP migration isn’t configuration — it’s moving decades of data out of systems that were never designed to give it up.

Our catalog lived across a legacy ERP and a family of aging databases. Getting it into Odoo meant writing importers for products, categories, images, and tags — and making a hundred small judgment calls about what the old data meant. One example I liked: rather than hand-writing rules for which legacy tag sets mattered, we let the old system classify itself — sets it had flagged as filterable became proper product attributes, a short skip list dropped the junk, and everything else came across as tags. Thirty-year-old databases know more about themselves than any spreadsheet of mine would have.

Then the uncomfortable part. With half a million records finally in one place, you can see exactly what decades of “we’ll fill that in later” look like: descriptions missing, specs thin, entire product families that exist as little more than a part number and a price.

You can’t sell what you can’t describe — and no team on earth fixes that by hand at this scale.

Which is where the next entry picks up: the AI module we built to research and complete product records, with a confidence gate deciding what ships automatically and what earns human eyes.