How do you structure a 50,000+ singles + sealed + supplies catalog in Magento?
Three product-type patterns:
- Singles, configurable products per unique card. The parent configurable holds the card identity (e.g. “Charizard - Base Set #4”). Simple-product children hold the condition variants (NM / LP / MP / HP / DMG) and the foil flag. Each simple product has independent stock and pricing. The PDP renders a condition selector that drives the buy-box.
- Sealed product, simple products (Booster Boxes, Elite Trainer Boxes, Collection Boxes, theme decks). No variants. Bulk discounts via Magento tier pricing (5 boxes = 5% off, 10 = 8% off).
- Supplies + accessories, configurable products where it makes sense. Dragon Shield Matte Sleeves come in 18 colours = one configurable with 18 simple-product colour variants. BCW binders come in 4 sizes × 8 colours = configurable with 32 variants. Vault X binders, Ultra Pro deck boxes, KMC sleeves, playmats, etc.
Stock per condition is tracked independently. An NM Black Lotus and a HP Black Lotus are different stock keepers with different prices and different demand curves. Magento native cataloginventory_stock_item handles this. EAV attributes for set + rarity + language + foil. Custom denormalised stock-status table for category filtering at 50k+ SKUs (native indexer slows down). Hyvä storefront keeps INP under 80ms even on heavy filter pages.