Ask a Question
Questions About Store Status, Busy Mode, Channel-Level Updates, and Staging Testing
Hello Deliverect Support Team,
I am a software engineer at Peblla. We are currently integrating Deliverect restaurant/store functionality into our POS and restaurant SaaS platform.
- Client ID:
rQ3YjhpKYbV7QNgi - Environment: Staging
- Location ID:
669802c6e70ba6666bc4894a
The opening-hours integration is working correctly. We can update location and channel opening hours through POST /locations/openingHours and verify the changes successfully.
However, we have encountered several issues and ambiguities while integrating store status and Busy Mode through POST /updateStoreStatus/{locationId}.
1. Store status requests return HTTP 200 but do not take effect
We tested the following request:
{
"isActive": false,
"prepTime": 10,
"disableAt": "2026-08-20T12:00:00Z",
"channelLinks": [
"6a7ac86cdfca8e1cc3cbafaa",
"669802c6e70ba6666bc48953"
]
}The API returned HTTP 200, but the Operation Reports showed:
- Test channel (
669802c6e70ba6666bc48953): Aborted - DoorDash (
6a7ac86cdfca8e1cc3cbafaa): Failed - Busy Mode:
"CLOSED"
The channel status did not appear to change.
Could you please explain why these operations were aborted or failed? Does HTTP 200 only mean that the asynchronous operation was accepted?
Is there an API, webhook, or operation identifier that we can use to determine the final execution result programmatically?
2. Exact request format for Open, Pause, and Busy
Could you please confirm the correct payloads for these operations?
- Open: accept online orders normally
- Pause/Close: temporarily stop accepting orders
- Busy: continue accepting orders, but increase preparation time
Our current understanding is:
Open:
{
"isActive": true,
"channelLinks": ["<channelLinkId>"]
}Pause indefinitely:
{
"isActive": false,
"channelLinks": ["<channelLinkId>"]
}Timed pause:
{
"isActive": false,
"disableAt": "<future UTC timestamp>",
"channelLinks": ["<channelLinkId>"]
}Busy:
{
"isActive": true,
"prepTime": 15,
"channelLinks": ["<channelLinkId>"]
}Is this understanding correct?
In particular, does this request mean “closed” or “open with an increased preparation time”?
{
"isActive": false,
"prepTime": 15,
"channelLinks": ["<channelLinkId>"]
}Our Operation Reports classify it as "CLOSED", even when prepTime is provided.
3. Timed Busy Mode and automatic restoration
Our product allows a merchant to increase the preparation time for a limited duration, for example:
- Add 15 minutes to the preparation time
- Keep it effective for one hour
- Automatically restore the previous preparation time after one hour
How should this be implemented through the Store API?
Does the following request keep the store open with a 15-minute delay and automatically remove that delay at disableAt?
{
"isActive": true,
"prepTime": 15,
"disableAt": "<future UTC timestamp>",
"channelLinks": ["<channelLinkId>"]
}Or is disableAt only applicable when isActive is false and only used to reopen a closed store?
If Deliverect does not automatically restore prepTime, should the POS integration send another request when the Busy duration expires?
4. prepTime appears to be location-level instead of channel-level
When we provide one channelLink ID together with prepTime, the preparation time is updated for all channels under the location.
For example:
{
"isActive": true,
"prepTime": 35,
"channelLinks": ["669802c6e70ba6666bc48953"]
}Although only one channel link is specified, we observe that the preparation time changes across the entire location.
Could you please confirm:
- Is
prepTimealways location-level? - Does
channelLinksonly limit theisActiveoperation? - Is it possible to configure a different preparation-time delay for each channel?
- Does
prepTimerepresent the final preparation time or an additional delay added to the existing preparation time?
5. How can we retrieve the current operational status?
GET /channelLinks returns a status such as INACTIVE, SUSPENDED, TESTING, SUBSCRIBED, or ONBOARDING. These appear to represent the channel-link activation lifecycle rather than the current Open, Paused, or Busy state.
We found that the Commerce Store API may expose:
status: open, closed, paused, or busypreparationTimeDelay
However, our token receives:
{
"code": "insufficient_permissions",
"description": "Missing token scope: genericCommerce."
}How can our client obtain the genericCommerce scope?
Can this scope be enabled through the developer portal, requested from Deliverect, or included when requesting an access token?
If Commerce API access is not available to our integration, which API should we use to retrieve the current operational status and preparation-time delay for each connected channel?
6. Initial status before receiving Store Status webhooks
We understand that the Store Status webhook can notify us when a channel’s open or closed state changes.
However, before the first webhook event is received, how can we obtain the correct initial state for each connected channel?
Using a local default value would potentially show an incorrect status in our portal.
Is there an authoritative endpoint for performing the initial status synchronization?
7. Meaning of the numeric channel field in Store Status webhooks
The Store Status webhook contains a numeric channel field.
Could you please confirm:
- Is this value a globally fixed Deliverect channel/provider ID?
- Does it map to the IDs returned by
GET /allChannels? - What is the recommended way to map this numeric channel value to a specific channelLink belonging to a location?
8. Staging test-channel support
At present, we cannot fully verify store Open, Pause, and Busy behavior:
- The Deliverect Test channel is marked Aborted in Operation Reports.
- The staging DoorDash channel is marked Failed.
- We cannot access the Commerce Store API to read the resulting status.
- HTTP 200 does not prove that the operation was applied by the channel.
Could Deliverect provide or enable a functional third-party test channel in staging that supports:
- Opening a store
- Closing or pausing a store
- Timed reopening through
disableAt - Busy Mode/preparation-time updates
- Reading or otherwise verifying the resulting state
Alternatively, is there a simulator, certification channel, recommended test account, or documented testing procedure for these Store API operations?
Please also let us know whether our existing Test channel needs additional configuration before it can process Store Status operations.
Thank you for your help. These answers will determine how we model and implement channel status and timed Busy Mode in Peblla.
Best regards,
Peblla Engineering Team
Client ID: rQ3YjhpKYbV7QNgi
