Documentation

Delivery Date & Time Slot Picker Pro Documentation

Set up delivery rules, time slots, limits and fees, and manage deliveries from your WooCommerce dashboard.

Requirements

  • WordPress 6.5+ (tested up to 7.1)
  • WooCommerce 8.9+, active and installed (required, tested up to 11.2)
  • PHP 7.4+
  • Checkout: Classic Checkout and WooCommerce Blocks Checkout

These are checked automatically on activation.

Installation

  1. Go to Plugins > Add New > Upload Plugin in your WordPress admin and upload the plugin ZIP file.
  2. Click Activate. If WooCommerce is not active, a notice asks you to install and activate it first. The plugin does not run without it.
  3. Open WooCommerce > Delivery to configure delivery rules, time slots and fees.

Every setting has a working default, so the delivery date and time fields appear at checkout right after activation. Visit each tab to tailor it to your store.

Upgrading from the free plugin

Pro replaces the free Delivery Date & Time Slot Picker for WooCommerce and uses the same settings. If the free plugin is still active, Pro pauses itself and deactivates the free plugin the next time an administrator opens the dashboard, then takes over. Your existing delivery settings are kept.

Do not delete the free plugin until you have checked your settings. Its uninstall routine removes some settings that Pro shares: blackout dates, slot limit, min and max days and time slots.

General settings

Found under Delivery > General: same-day and next-day rules, lead time and the daily cut-off.

SettingWhat it does
Allow Same-Day DeliveryLets customers pick today, subject to the cut-off time.
Allow Next-Day DeliveryIf off, the earliest date moves to at least two days out.
Preparation Time (days)Minimum full days needed to prepare an order.
Minimum Delivery Days AheadEarliest bookable date in days from today. The stricter of this and preparation time wins.
Maximum Delivery Days AheadHow far in advance customers can book.
Cut-off TimeOrders placed after this time (24-hour, store time) lose same-day eligibility for that day.
Remove Data on UninstallOff by default. Turn on only if you want every delivery setting deleted when the plugin is removed.

Delivery days and blackout dates

Found under Delivery > Delivery Days.

  • Delivery Days of the Week: tick the weekdays you deliver on. Unticked days cannot be selected at checkout.
  • Blackout Dates: click the field to open a calendar and pick specific dates to block, such as holidays or stock-take days, regardless of weekday.

Time slots

Found under Delivery > Time Slots.

Enter one time slot per line in Default Time Slots, for example:

10:00 AM - 12:00 PM

This list is used for any weekday without its own override. Each weekday, Sunday to Saturday, has an optional field of its own. Fill one in only if that day needs different slots, such as shorter Friday hours or extra Saturday slots.

Order limits

Found under Delivery > Order Limits: cap how many deliveries you take on, per slot and per day.

  • Max Orders per Time Slot: once reached, that slot shows as Full and cannot be picked for that date. 0 means no limit.
  • Maximum Orders per Day: caps total deliveries across all slots combined, per day. 0 means no limit. Per-weekday overrides work the same way as time slots.

Fees

Found under Delivery > Fees: charge more for specific slots, like an Express window.

Use Autofill from Configured Time Slots to pull in every slot you have set up, then set a fee next to any slot that should cost extra. Leave it at 0 for free delivery. The fee is added as a real WooCommerce fee line, shown in the cart total on both Classic and Blocks checkout and on the final order.

Delivery Groups

Found under Delivery > Delivery Groups: give different products their own delivery rules.

A Delivery Group is a named set of rules, for example Same-Day Bakery, Furniture (5 days) or Frozen. Click Add Delivery Group, name it, and set only the rules that differ from your store defaults. Anything left on Default uses the setting from the other tabs.

  • Same-Day / Next-Day Delivery: Default, Yes or No for this group.
  • Preparation Time, Minimum and Maximum Days: lead time and booking window for this group. The larger of preparation time and minimum days applies.
  • Cut-off Time: HH:MM, store time. After it passes, the earliest date moves one day later. Blank uses the store default.
  • Restrict delivery days: choose the weekdays the group can be delivered on, for example Tuesday and Thursday only.
  • Restrict time slots: enter one slot per line. These replace the normal slots for this group on every day it is delivered.

Assigning products

  • Product edit screen: open the product's Delivery tab and pick a Delivery Group.
  • Quick Edit and Bulk Edit: assign a group to many products from the Products list. Bulk Edit has a No change choice, so other products are not touched.
  • Override delivery rules: tick this in the same tab to set rules for that one product only. An override sits on top of the store defaults, not on top of its group. Blank fields use the store default.

Mixed carts

When a cart holds products from different groups, the strictest rules apply to the whole order: the latest of the earliest dates, the earliest of the latest dates, every weekday that any product blocks, and only the time slots that all products offer. The customer sees a short notice naming the product that moved the date.

If groups in the same cart restrict to slots with nothing in common, no slot is left to choose. Keep at least one slot in common and write slot labels identically everywhere. Order Limits and Fees are store-wide, not set per group.

Example. Store default: every day, same-day off. Furniture needs 5 days of preparation and Monday to Friday delivery. Frozen delivers Tuesday and Thursday only, 4:00 PM to 6:00 PM. A sofa alone gets a date five days out, weekdays only, with all normal slots. A sofa plus frozen food gets the sofa's earliest date moved to the next Tuesday or Thursday, with only the 4:00 PM to 6:00 PM slot.

Delivery Calendar

Found under Delivery > Delivery Calendar: see what has to be delivered, and when.

Pick a range: Upcoming (the default, today onwards), Today, This Week, This Month, This Year or a Custom Range. Only dates with at least one order are shown.

  • Day headers: each delivery day shows its date and order count, tagged Today or Tomorrow where it applies.
  • Slot, Orders and Status: one row per time slot, with colour badges for the order statuses in it. Orders with no chosen slot are listed last.
  • Order list: click the order count to open the orders in that slot, with order number (linked), customer and status. Very busy slots show the first 50 and tell you how many more there are.
  • Capacity: when Max Orders per Time Slot is set, a meter shows how full the slot is (green, amber near the limit, red when full).
  • Print and Download CSV: print a driver run sheet or export a CSV for the range you are viewing. Available to shop managers only.

Checkout experience

Both checkout types show the same two fields, label above input, matching your theme's other checkout fields: a Delivery Date picker and a Delivery Time Slot dropdown. Selecting a date updates the time slot options to whatever is configured for that weekday.

Every rule (cut-off time, blackout dates, slot and day limits) is enforced in the picker and again on the server when the order is placed, so a manipulated or stale request cannot slip through.

Orders that do not need shipping, such as a cart with only virtual or downloadable products, skip these fields automatically.

Full dates and time slots

When Order Limits are set, customers see availability before they order:

  • A date that has reached its limit is greyed out and struck through in the date picker, with a Fully booked tooltip.
  • A full time slot is shown as (Full) and cannot be selected.
  • When only a few places remain, the slot shows (2 left). By default this appears at 3 or fewer. Developers can change the number with the delidaam_low_availability_threshold filter (return 0 to only show Full).
  • The pre-selected date and slot skip anything already full.

This works on Classic and Blocks checkout and needs no extra setting. The server re-checks capacity when the order is placed, and counts refresh whenever an order is created, changed or cancelled.

Viewing delivery info

Once an order is placed, the delivery date and time slot appear automatically in these places:

  • The order edit screen in wp-admin, under the billing address, and in the Delivery box in the sidebar.
  • The order-received (thank-you) page.
  • The customer's My Account order page, in its own Delivery Details section. It looks the same for Classic and Blocks orders.
  • A sortable Delivery Date column on the WooCommerce Orders list.

On Blocks orders, WooCommerce's Additional information list is replaced by Delivery Details so the information is never shown twice. This needs WooCommerce 10.1 or newer. On older versions Blocks orders keep WooCommerce's heading.

Rescheduling an order

Open any order in wp-admin and use the Delivery box in the sidebar to change its delivery date or time slot, then click Update.

  • Pick the new date and slot. Slots come from your configured time slots.
  • If the new date or slot is already full, the change is refused. Tick Allow this change even if the date or slot is already full to override.
  • Tick Notify the customer by email to send the update as a WooCommerce customer note. It also appears on their order page.
  • Every change is recorded in the order notes.

You need permission to edit shop orders. The Delivery Calendar and availability counts update automatically after a reschedule.

Order emails

A Delivery Details section with the Delivery Date and Delivery Time Slot is included in every WooCommerce order email, in HTML and plain text. It appears below the billing and shipping address, for Classic and Blocks orders alike, and is never repeated.

Covered emails: New Order, Processing, Completed, On-hold, Cancelled, Refunded, Invoice and Customer Note.

Troubleshooting

  • Fields do not appear at checkout: confirm WooCommerce is active and the cart needs shipping. Digital-only carts skip the fields on purpose.
  • A date cannot be picked: check blackout dates, delivery days, preparation time, cut-off and order limits. If the cart mixes Delivery Groups, the strictest rules apply.
  • No time slot to choose in a mixed cart: the groups share no common slot. Keep at least one slot in common and write labels identically.
  • Settings missing after removing the free plugin: its uninstall routine removes shared settings. Check your settings before deleting it.
  • Old checkout after an update: clear your caching plugin and CDN cache, then hard-refresh.