Customer experience — the checkout journey

Delivery Scheduling

Customer experience — the checkout journey

Everything happens on the normal checkout page. There is no extra step or pop-up.

CART → CHECKOUT
   │
   ▼
SHIPPING METHOD  →  the shopper picks a method
   │
   ▼  (only when that method has active slots and the cart ships as one package)
DELIVERY DATE AND TIME
   │   calendar: dates the store allows; the others greyed out
   │   time slots for the chosen date: "9:00 AM – 12:00 PM · Morning", "2 left", "Full"
   ▼
PAYMENT → PLACE ORDER
   │   the server re-checks the date and slot and books the seat
   ▼
CONFIRMATION  →  "Scheduled delivery: Thu, 8 October 2026, 9:00 AM – 12:00 PM · Morning"

The calendar

  • It starts today and ends at the booking horizon (Days bookable ahead, 14 by default). Every date comes from the store, never from the shopper's device clock.
  • A date that cannot be picked stays visible but greyed out. Screen readers hear why: Not available yet (before the earliest date), No deliveries this day (a holiday, or no slot on that weekday) or Fully booked.
  • The earliest date is today, or tomorrow once the cut-off time has passed, moved to a working day, plus the processing days of the slowest product in the cart.
  • Today's slots that have already started are not offered.

The time slots

  • After picking a date the shopper picks a slot. A slot with three or fewer seats left shows "2 left"; a full slot shows Full and cannot be picked. Seat counts above three are never shown.
  • A date with a single slot selects it automatically: "Delivered between 9:00 AM – 12:00 PM".
  • Times are the store's local time. When the shopper's device is in another time zone, a note says so.
  • Delivery instructions go in the normal order-notes box.

Placing the order

  • With Require a delivery slot on, the order cannot be placed until a slot is chosen.
  • The server checks the choice again inside the order itself, so two shoppers can never take the last seat. If someone was faster, the shopper sees "That delivery slot is no longer available. Please choose another.", the calendar refreshes and they pick again.
  • A cart with products from several sellers ships in more than one package, so it cannot book one slot; the shopper is told and places the order without one.
  • Collection (click & collect) orders never take a slot.
  • The mobile app and API clients that do not show the picker are never blocked by the required setting.

After the order

  • The confirmation page and the account order page show the scheduled delivery.
  • The order confirmation email shows a "Delivery" row under the order number, as long as the store still uses the standard email text (see Settings reference).
  • If the order is cancelled, refunded or fails, its seat is freed automatically.

What the shopper cannot do (yet)

  • Reschedule. There is no self-service change. Ask the store, which cancels the booking from Scheduled Deliveries; the order itself stays as it is.
  • Book several slots for one order: one order, one delivery.
  • Pay extra for a slot. Slot fees are planned.