{{YourSetwebhookUrl}}

A status update for an order happens when a POS performs an action for it.

Each incoming status update should be confirmed with an HTTP status 200.

The table below lists statuses and their corresponding integer value.

Deliverect status tag

Description

Integer value

PARSED

Received and parsed by Deliverect.

1

RECEIVED

Received by POS.

2

NEW

Received by POS and receipt is created.

10

ACCEPTED

Accepted/confirmed.

20

DUPLICATE

Order has been received multiple times due to a technical error.

30

PRINTED

Order has been printed.

40

PREPARING

Order is in preparation.

50

PREPARED

Order is prepared.

60

READY FOR PICKUP

Order is ready for pickup

70

IN DELIVERY

En route to customer

80

FINALIZED

Order has been fully completed.

90

AUTO-FINALIZED

Accepted by POS, but any other status updates unsupported by POS (to be avoided at all costs!)

95

CANCEL

Order should be voided.

100

CANCELED

Order has been voided on POS.

110

FAILED

Order has failed. To be used when the POS could not be reached, or when an order could not be processed correctly. For example, when a product is available on the merchant's online store, but deleted in their POS account.

120

POS RECEIVED FAILED

Order not received by POS.

121

PARSE FAILED

Parsing failed for the order.

124

📘

If you receive a status that is not documented above, it can safely be ignored in most cases. Contact Deliverect to receive details.

In no case should an unknown status hinder your order processing flow.

When sending a status update for an order, make sure to include the 'channelOrderId'. The value for this corresponds to the '_id field' from the order that was originally sent.

📘

'DUPLICATE'

Only to be used if the order is already in the POS and was (accidentally) submitted a second time.

📘

'FINALIZED'

Note that this doesn't necessarily mean that the food was delivered to the end customer!

CANCEL vs CANCELED

CANCEL

Send this status from your channel to cancel an order on the POS (for example, when an end customer places an order but immediately changes their mind and cancels it).

CANCELED

The POS canceled the order. When you receive this status, you can confirm that the restaurant has canceled it. As long as you did not receive this status, your channel should not yet assume the cancellation was successful.

In this case, Deliverect will resend the order to the POS with the same 'channelOrderId' and 'channelOrderDisplayId'.

An example of a status update for a 'CANCELED' order is visible from the drop-down on the right.

You can find more information on how your channel can implement canceling orders here.

📘

Your channel is not yet required to support order cancellation in order to become or remain certified.

{
    "channelOrderId": "X7CESD",
    "orderId": "<<deliverectOrderId>>",
    "receiptId": "<<receiptId>>"
    "location": "<<deliverectLocationId>>",
    "channelLink": "<<channelLinkId>>",
    "status": 2,
    "timeStamp": "2019-05-15T11:45:36.33290Z",
    "reason": ""
}
{
    "channelOrderId": "X7CESD",
    "orderId": "<<deliverectOrderId>>",
    "location": "<<deliverectLocationId>>",
    "channelLink": "<<channelLinkId>>",
    "status": 110,
    "timeStamp": "2019-05-15T11:45:36.33290Z",
    "reason": ""
}
{
  "channelOrderId": "X7CESD",
  "orderId": "<<deliverectOrderId>>",
  "location": "<<deliverectLocationId>>",
  "channelLink": "<<channelLinkId>>",
  "status": 2,
  "timeStamp": "2019-05-15T11:45:37.79021Z",
  "reason": ""
}
{
  "channelOrderId": "X7CESD",
  "orderId": "<<deliverectOrderId>>",
  "location": "<<deliverectLocationId>>",
  "channelLink": "<<channelLinkId>>",
  "status": 110,
  "timeStamp": "2019-05-15T11:45:37.79021Z",
  "reason": ""
}