Chat on WhatsApp

Drop-release flow — how do you avoid double-selling at midnight launches?

The classic fashion-drop bug: 8,000 customers refresh at 12:00:00 GMT, Magento takes the order, Stripe charges the card, then inventory hits zero and the second wave of customers gets “charged but out of stock.” Refunds + angry tweets.

The fix is three things wired together:

  • Stock reservations — native Magento 2.4+ feature. Inventory is reserved at add-to-cart, not at order placement. A 30-minute cart timeout releases unconverted reservations.
  • Payment-vault tokenization — cards are tokenized at the gateway (Stripe / Adyen / Braintree), not charged on add-to-cart. Charge only fires on successful order placement after stock is confirmed.
  • Cron-scheduled category visibility flip — the drop category is set to invisible until 11:59:59, then a cron flips it visible at 12:00:00. Same cron triggers a Cloudflare/Akamai purge of the homepage + category page so the cache reflects the new state instantly.

Pre-warm Hyvä cache 30 minutes before the drop, run a war-room playbook on the first launch, and have a manual cron-trigger fallback ready. I’ve shipped 80+ drops on this pattern with zero double-sells.

Was this helpful?