Design Buy Online Pickup In Store

Medium40 min
1 / 30
understanding6 min read

Problem Statement & BOPIS Context

How Problem Statement & BOPIS Context shapes BOPIS architecture and interviewer follow-ups.

Problem Statement & BOPIS Context

Buy Online, Pick Up In Store (BOPIS) promises convenience without the shipping cost: the customer buys on the web, the system commits store inventory, and they collect at a chosen location. The mobile UI is the easy part. The hard part is per-store ATP (available-to-promise), reservation timing, the associate workflow in the backroom, and fraud at the moment of handover.

Why BOPIS is harder than ship-from-warehouse

Ship-from-warehouse draws on a few large, well-instrumented DCs. BOPIS couples e-commerce checkout to POS-grade inventory truth across thousands of stores whose counts drift constantly — sales at the register, shrink, misplaced units. The consequence of a wrong number is physical: a phantom "3 units available" at Store #1842 is an angry customer standing in the parking lot, not a delayed-package email. The cost of inaccuracy is paid in person, which is why correctness, not latency, is the product.

Scale anchors

Assume 120M monthly active shoppers, 4,800 stores, and 18% of online orders picked up in store — about 2.2M BOPIS orders/day on average, peaking on Black Friday weekends. The SLOs that frame the design: availability read p99 < 120ms, reservation commit p99 < 250ms, and a "ready for pickup" push within 2 minutes of the backroom scan. Those three numbers — read fast, commit correct, notify quick — are the whole product in miniature.

Key Highlights

  • BOPIS couples e-commerce checkout to POS-grade inventory truth across thousands of drifting store counts — the hard part is per-store ATP, reservation timing, the associate workflow, and fraud at handover, not the UI
  • The cost of a wrong number is physical: a phantom '3 available' at Store #1842 is an angry customer in the parking lot, not a delayed-package email — correctness, not latency, is the product
  • Scale: 120M MAU, 4,800 stores, 18% BOPIS (~2.2M orders/day, 5× Black Friday peak)
  • SLOs: availability read p99 <120ms, reservation commit p99 <250ms, 'ready for pickup' push within 2 min of the backroom scan
Interviewer signal
When discussing Problem Statement & BOPIS Context, mention store-scoped ATP, pickup SLA, and fail-closed reservation.
Delivery tip
Quantify orders/day, store count, and oversell budget (<0.05%) with explicit arithmetic.

Section Rescue Kit

Buzzwords to use:

ATP-1StagingSLA-1

Safe statements:

  • "For 1, I will state ATP math and reservation TTL before drawing boxes."
  • "If challenged on phantom stock, I cite reconciliation and idempotent store events."
Design Buy Online Pickup In Store - System Design | WinJob | WinJob