Online Order Readiness Setup
Introduction
Online Order Readiness helps integrations know when a business location is ready to accept online orders.
You can use it in two ways:
- Query the current readiness state on demand.
- Subscribe to webhook notifications when readiness changes.
Readiness Conditions
A business location is considered READY only when all of the following conditions are true:
onlineOrderingApiConfiguration.enabledistrueposStatus.salesPeriodisOPENEDposStatus.acceptingOnlineOrdersistrueposStatus.availableDevicesistrue
If any condition is not met, status is NOT_READY.
Setup Steps
Step 1: Create a webhook endpoint
Create a webhook endpoint with Create a Webhook.
PUT /o/wh/1/webhook
{
"endpointId": "my-oo-readiness-endpoint",
"url": "https://partner.example.com/webhooks/lightspeed",
"withBasicAuth": false,
"subscribeTo": [
{
"resource": "order_api",
"name": "ONLINE_ORDER_READINESS"
}
]
}
Step 2: Associate each business location
Associate each location that should send readiness notifications using Add a Business Location to a Webhook.
PUT /o/wh/1/webhook/{endpointId}/business-locations/{businessLocationId}
Only associated locations trigger webhook events.
Step 3: Validate readiness using the API
Use Get Online Order Readiness to verify current state:
GET /o/op/1/onlineOrderReadiness?businessLocationId={businessLocationId}
Authentication
The readiness endpoint requires OAuth2 with the orders-api scope.
Next Steps
- See Checking Online Order Readiness for endpoint details and payload fields.
- See Online Order Readiness Webhooks for webhook setup and payload examples.