Lab · Resale
Spread
A StockX arbitrage finder: products that cost less at a retailer than StockX’s sell-now payout, ranked by profit times how fast they sell.
- Status
- Built · not running yet
- Who uses it
- Andrew only. The board sits behind an operator token.
- Built with
- Node.js + Postgres on Render (web service + 4-hourly job) · StockX API · Apify · SerpApi
Scoring per size
Synthetic exampleSynthetic example: Spread hasn’t run in production yet.
Retail, after tax and cashbackSpread, up to the payout (bid after fee and ship-in)
SizePayout vs retailSpread × salesScore
- 9+$45 × 7/wk315
- 8.5+$26 × 9/wk234
- 8+$32 × 6/wk192
- 10+$38 × 5/wk190
- 9.5+$21 × 4/wk84
A board that expires
The problem
A resale margin only exists when the retail price, sales tax, fees, shipping and cashback all line up for a size that actually sells. Checking that by hand across retailers doesn’t scale.
How it works
Discovery
A scraper browses seed categories (sneakers first, a small electronics lane) for bids, asks and recent sales.
Real bids per size
The official StockX API gives bid, ask, “earn more” and “sell faster” prices for every size, looked up by style code, and only for products that trade.
Retail search
Google Shopping is searched by style code. A different style code in the title is a hard reject, and listings are tagged new, open-box or refurb.
Scoring per size
Payout is the bid after StockX’s fee and ship-in; the spread is that payout minus retail after tax and portal cashback; the score is spread times weekly sales.
A board that expires
Hits above a minimum spread go to the board; anything not re-confirmed on the next pass is taken down.
Where AI fits
- No AI in the product. Every number comes from a stored quote or offer.
Guardrails
The board is honest
No estimates and no demo numbers. A failed scan shows as an alarm, never as stale-but-green.
Cost control
Paid retail lookups only run for products with a bid and enough sales, and skip anything checked in the last six hours.
New and sealed only
Refurb and open-box offers are stored but never scored.
No selling without a yes
Listing on StockX moves money, so it waits for Andrew’s go-ahead.
Engineering notes
One size vocabulary
Men’s sizes as bare numbers and W/Y/C tags for women’s, youth and kids, so sizes never collide between StockX and retailers.
Shared sign-in
StockX access tokens are cached in the database so the web service and the scheduled job share one sign-in.
Economics as config
Fees, ship-in, sales tax and minimums are settings, not constants in code.
What’s next
The code is complete and tested locally against synthetic data; it has not run in production yet. Next: the hosting settings and the one-time StockX sign-in, then the first real run.