Scheduled Orders
Scheduled orders allow customers to place orders ahead of time for future fulfillment. Our system supports three different approaches to handling scheduled orders, depending on how your platform manages order timing and preparation.
Order Fields for Scheduled Orders
When working with scheduled orders, these fields in the NewOrder
object are particularly important:
is_future_order
- Set to true when the order is a scheduled orderestimated_ready_at_ms
- The estimated time when the order should be ready for pickup/delivery, in epoch milliseconds
3 Approaches to Scheduled Orders
1. DSP Managed Timing
In this approach, your platform handles all the timing logic internally and only sends us the order when it should begin preparation.
How it works:
- Customer places a scheduled order on your platform.
- Your platform calculates prep time and holds the order internally.
- When it's time to start preparation, your platform sends the order via webhook.note
When sending the order webhook,
is_future_order
would befalse
. - We immediately confirm the order and begin preparation.
2. Stream-Managed Timing
In this approach, you send us the complete scheduled order information, and we handle the timing delay internally.
How it works:
- Customer places a scheduled order on your platform.
- Your platform sends us the complete order with
is_future_order: true
andestimated_ready_at_ms
. - We internally manage the delay until the appropriate preparation time.
- When it's time to prepare, we automatically confirm the order and begin preparation.