Sec. 04 — Plan & method
Handling out-of-stock
A third of a flagship category is out of stock and still ranking. Discontinued products should leave the catalog; temporarily-out products should stay discoverable but stop occupying the top of search.
Demote, don't hide
Out-of-stock items drop below in-stock in Searchspring relevance so no sold-out product ranks #3 for a head term. They stay indexable for the long tail.
“Notify me” by default
Every out-of-stock PDP defaults to the In-Stock-Notify app already installed, turning a dead end into a captured email + a Klaviyo back-in-stock flow.
Discontinued = deactivate + 301
Supplier-discontinued SKUs are deactivated and 301'd to the closest live equivalent or the parent category, so the gap analysis against supplier files actually closes.
Supplier price-change intake
The job is “process supplier price changes” and “gap analysis between supplier catalogs and products listed on our stores.” Here's the intake I'd stand up — Excel + AI-assisted, as the posting asks.
Ingest
- Supplier file → fixed column map (UPC, cost, MSRP, MAP, status)
- AI-assisted cleanup of units, encoding and stray characters before anything touches the store
- Rows keyed on UPC/MPN, not name
Gap analysis
- Diff supplier list against the live Searchspring index
- Flag: new items, discontinued, price deltas beyond a threshold, MAP violations
- Nothing auto-publishes — the diff is reviewed first
Validated import
- BigCommerce CSV import with a pre-flight validation pass (my Commerce Change Atlas pattern)
- Post-import spot-check on price, availability and schema
- Every change logged for rollback
I built this before: Commerce Change Atlas diffs supplier files against live listings before they load — lab.mousabatarseh.com. At Universal Wholesale I ran the same motion on 14,000+ SKUs by CSV.
First 90 days
Census
- Full-catalog defect run (all 104k, not a sample)
- Ship the schema patch (gtin, decoded description, mpn, rolling date)
- Fix the visible mojibake in the highest-traffic categories first
Systematize
- Attribute-casing normalization + part-number convention pass
- Sold-out demotion + “notify me” default live
- Supplier price-change SOP running weekly
Prevent
- Facets that match the category (drive size, torque range, type)
- Discontinued-item retirement + 301 loop closing the supplier gap
- A weekly data-health report so defects are caught, not discovered
Method & scope
Every number here comes from public data pulled on Sep 19, 2026: the Searchspring search API that powers jbtools.com search and category grids (a 799-product sample, siteId 77jpy6), individual product-page source (JSON-LD, H1, displayed UPC), the /torque-wrenches/ facet counts, and a Lighthouse mobile audit. Sampled percentages describe the sample, not the full 104,348-product catalog — the first deliverable is the full run. I'm not affiliated with JB Tools; this is an independent review to show how I'd approach the eCommerce Database Manager role, and I'd validate every finding against the actual product feed and admin, which expose fields (weights, dimensions, cost) the public catalog doesn't.