---
updatedAt: 2026-11-01T11:13:39.000Z
agentTools:
  projectIndex: https://developers.deliverect.com/v1.1-restaurants/llms.txt
---

# Channel Integrators

## Purpose

Retrieve a list of all integrated channels in the Deliverect system to identify the ordering platform from which an order originated by it's unique  `channelId`&#x20;

## Format

When retrieving the channel integrators, the unique `channelId` will correspond to the `channel` attribute set in the order payload. All POS/Reporting systems should maintain updated reference to this list of channel integrations to ensure orders are associated to the correct channel source.

## Example

The sample response below includes only a limited set of channels. To retrieve the full and most up-to-date list, call this endpoint directly.

<HTMLBlock>{`
<div class="callout-banner callout-banner--neutral">
  <span class="callout-icon"><i class="fa-regular fa-square-info"></i></span>
  <p>
    The sample response below includes only a limited set of channels. To retrieve the full and most up-to-date list, call this endpoint directly.
  </p>
</div>
`}</HTMLBlock>

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "Deliverect Store  API",
    "description": "The Store API allows multiple functions to query and update the availability of customer's stores and the products in their account, alongside event-based webhooks that notify your endpoint whenever order data changes (new orders, order status and courier updates) and whenever a store opens or closes.",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://api.staging.deliverect.com",
      "description": "Staging"
    },
    {
      "url": "https://api.deliverect.com",
      "description": "Production"
    }
  ],
  "security": [
    {
      "oauth2ClientCredentials": []
    }
  ],
  "components": {
    "securitySchemes": {
      "oauth2ClientCredentials": {
        "type": "oauth2",
        "description": "Obtain an access token using the partner client ID and client secret. Send the returned token with each API request in the Authorization header as a Bearer token.",
        "flows": {
          "clientCredentials": {
            "tokenUrl": "/oauth/token",
            "scopes": {}
          }
        }
      }
    }
  },
  "x-readme": {
    "headers": [],
    "explorer-enabled": true,
    "proxy-enabled": true,
    "oauth-options": {
      "useInsecureClientAuthentication": true
    }
  },
  "x-readme-fauxas": true,
  "tags": [
    {
      "name": "Endpoints",
      "description": "Deliverect Endpoints. Use `https://api.staging.deliverect.com` for testing and `https://api.deliverect.com` in production."
    },
    {
      "name": "Webhooks",
      "description": "Deliverect Webhooks. Requests are signed with HMAC-SHA256 using a pre-shared secret configured on your integration, so you can verify they came from Deliverect and weren't altered in transit (see HMAC Authentication Guide <a href=\"https://developers.deliverect.com/reference/hmac-authentication\" target=\"_blank\" rel=\"noopener noreferrer\">here</a>). Each event is sent as a single HTTP `POST` request with a 20-second timeout and is delivered in one attempt, so respond with a `2xx` straight away and process the payload asynchronously."
    }
  ],
  "paths": {
    "/allChannels": {
      "get": {
        "description": "",
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "examples": {
                  "Sample Response": {
                    "summary": "Sample Response",
                    "value": [
                      {
                        "name": "DELIVEROO",
                        "channelId": 2
                      },
                      {
                        "name": "UBER_EATS",
                        "channelId": 7
                      },
                      {
                        "name": "DOORDASH",
                        "channelId": 12
                      },
                      {
                        "name": "JUST_EAT",
                        "channelId": 9
                      },
                      {
                        "name": "GRUBHUB",
                        "channelId": 42
                      },
                      {
                        "name": "WOLT",
                        "channelId": 16
                      },
                      {
                        "name": "MENULOG",
                        "channelId": 26
                      },
                      {
                        "name": "HUNGER_STATION",
                        "channelId": 40
                      },
                      {
                        "name": "PEDIDOSYA_DH",
                        "channelId": 54
                      },
                      {
                        "name": "MEITUAN",
                        "channelId": 53
                      }
                    ]
                  }
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {}
                },
                "examples": {
                  "Bad Request": {
                    "summary": "Bad Request",
                    "value": "{}"
                  }
                }
              }
            },
            "description": "Bad Request"
          }
        },
        "parameters": [],
        "operationId": "get_allchannels",
        "summary": "Channel Integrators",
        "tags": [
          "Endpoints"
        ]
      }
    }
  },
  "webhooks": {
    "https://yourwebhook.com/new_order": {
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "New Order",
        "description": "Sends the full order whenever a new order is received.",
        "operationId": "reporting_new_order",
        "parameters": [
          {
            "name": "Content-Type",
            "in": "header",
            "description": "application/json",
            "schema": {
              "type": "string",
              "default": "application/json"
            }
          },
          {
            "name": "Accept",
            "in": "header",
            "description": "application/json",
            "schema": {
              "type": "string",
              "default": "application/json"
            }
          },
          {
            "name": "User-Agent",
            "in": "header",
            "required": true,
            "description": "Identifies Deliverect as the sender, in the format `Deliverect/{version}`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Server-Authorization-HMAC-SHA256",
            "in": "header",
            "required": true,
            "description": "Signature of the raw request body using your shared secret; recompute it on receipt to verify the request came from Deliverect (see <a href=\"https://developers.deliverect.com/reference/hmac-authentication\" target=\"_blank\" rel=\"noopener noreferrer\">HMAC authentication guide</a>).",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "description": "Sent by Deliverect as a JSON payload.",
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "_created": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Time the order was created in Deliverect, in the format `yyyy-MM-ddTHH:mm:ss.SSSZ`."
                  },
                  "_updated": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Time the order was last updated in Deliverect, in the format `yyyy-MM-ddTHH:mm:ss.SSSZ`."
                  },
                  "_id": {
                    "type": "string",
                    "description": "Unique identifier of the order in Deliverect. Please note cancel requests are processed as new orders with `\"status\": 100` and bearing original order `_id` (see cancellation guide [here](https://developers.deliverect.com/v1.1-restaurants/docs/how-to-handle-cancellations))."
                  },
                  "account": {
                    "type": "string",
                    "description": "Unique customer account ID in Deliverect."
                  },
                  "channelOrderId": {
                    "type": "string",
                    "description": "The full unique ID from the delivery channel. Together with the `channel` is guaranteed to be unique for 48h after pickup."
                  },
                  "channelOrderDisplayId": {
                    "type": "string",
                    "description": "Alternative order ID set by ordering channel, primarily for convenience and readability. This is not unique and typically a shortened version of `channelOrderId` consisting of 4-5 alphanumeric characters, although may go up to 12 characters."
                  },
                  "channelOrderKey": {
                    "type": "string",
                    "description": "Additional order reference supplied by the ordering channel."
                  },
                  "posId": {
                    "type": "string",
                    "description": "The POS order ID."
                  },
                  "posReceiptId": {
                    "type": "string",
                    "description": "Provided by the POS in response to incoming orders as a reference to a specific POS receipt."
                  },
                  "posLocationId": {
                    "type": "string",
                    "description": "<Glossary>posLocationId</Glossary> is an identifier of the location known on the POS side, it is stored within the POS config in Deliverect."
                  },
                  "location": {
                    "type": "string",
                    "description": "<Glossary>locationId</Glossary> is the unique ID for the POS to identify the store location."
                  },
                  "channelLink": {
                    "type": "string",
                    "description": "<Glossary>channelLinkId</Glossary> is the unique identifier of the channel (merchant store) in Deliverect. Retrieve all IDs per account via [GET Channel Links](https://developers.deliverect.com/v1.1-restaurants/reference/channel-integrators)."
                  },
                  "status": {
                    "type": "integer",
                    "description": "Current order status (see all <a href=\"https://developers.deliverect.com/page/order-status\" target=\"_blank\" rel=\"noopener noreferrer\">Order statuses here</a>)."
                  },
                  "statusHistory": {
                    "type": "array",
                    "description": "All status changes of the order up to the point the webhook is sent.",
                    "items": {
                      "type": "object",
                      "properties": {
                        "timeStamp": {
                          "type": "string",
                          "format": "date-time",
                          "description": "Time of the status change, in ISO 8601 UTC format, e.g. `yyyy-MM-ddTHH:mm:ss.SSSZ`; fractional seconds vary between none, 3 and 6 digits."
                        },
                        "status": {
                          "type": "integer",
                          "description": "Order status (see all <a href=\"https://developers.deliverect.com/page/order-status\" target=\"_blank\" rel=\"noopener noreferrer\">Order statuses here</a>)."
                        },
                        "response": {
                          "type": "string",
                          "description": "In case of error, it will be populated here."
                        },
                        "source": {
                          "type": "integer",
                          "description": "Source of status update `1` = POS, `2` = Channel and `5` = Internal."
                        },
                        "eventId": {
                          "type": "string",
                          "description": "Unique identifier of the status event."
                        }
                      }
                    }
                  },
                  "packaging": {
                    "type": "object",
                    "description": "Order-level packaging preferences.",
                    "properties": {
                      "includeCutlery": {
                        "type": "boolean",
                        "description": "Specifies if cutlery/utensils should be included or not."
                      }
                    }
                  },
                  "posStatusHistory": {
                    "type": "array",
                    "description": "Status updates received from the POS for the order.",
                    "items": {
                      "type": "object",
                      "properties": {
                        "timeStamp": {
                          "type": "string",
                          "format": "date-time",
                          "description": "Time of the POS status update, in ISO 8601 UTC format, e.g. `yyyy-MM-ddTHH:mm:ss.SSSZ`; fractional seconds vary between none, 3 and 6 digits."
                        },
                        "status": {
                          "type": "integer",
                          "description": "POS status code."
                        }
                      }
                    }
                  },
                  "by": {
                    "type": "string",
                    "description": "Order source (if known) e.g. `app` or `mobile`, not the same as `channel` that specifies the ordering platform (see guide [here](https://developers.deliverect.com/v1.1-restaurants/docs/how-to-recieve-orders))."
                  },
                  "orderType": {
                    "type": "integer",
                    "description": "Type of order.\n\n- Pickup: `1`\n- Delivery: `2`\n- Eat in: `3`\n- Curbside: `4`\n- Drive thru: `5`",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5
                    ]
                  },
                  "channel": {
                    "type": "integer",
                    "description": "Unique ID of the channel (see [GET Integrated channels](https://developers.deliverect.com/v1.1-restaurants/reference/channel-integrators))."
                  },
                  "pos": {
                    "type": "integer",
                    "description": "Unique ID of the POS."
                  },
                  "rating": {
                    "type": "array",
                    "description": "Legacy attribute, not to be referenced as part of an integration.",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    },
                    "deprecated": true
                  },
                  "pickupTime": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Time the order is due to be picked up, in ISO 8601 UTC format, e.g. `yyyy-MM-ddTHH:mm:ss.SSSZ`; fractional seconds vary between none, 3 and 6 digits."
                  },
                  "deliveryTime": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Time the order is due to be delivered, in the format `yyyy-MM-ddTHH:mm:ssZ`, where provided."
                  },
                  "pickupTimeETA": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Estimated time the courier picks up the order, in ISO 8601 UTC format, e.g. `yyyy-MM-ddTHH:mm:ss.SSSZ`; fractional seconds vary between none, 3 and 6 digits."
                  },
                  "deliveryTimeETA": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Estimated time the order is delivered to the customer, in the format `yyyy-MM-ddTHH:mm:ssZ`, where provided."
                  },
                  "scheduledTime": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Time the order was scheduled for processing, in the format `yyyy-MM-ddTHH:mm:ss.SSSZ`, where provided."
                  },
                  "deliveryIsAsap": {
                    "type": "boolean",
                    "description": "Signifies if the order is required as soon as possible."
                  },
                  "courier": {
                    "type": "object",
                    "description": "Details of courier, see the Courier Update webhook for the full object.",
                    "properties": {
                      "firstName": {
                        "type": "string",
                        "description": "Courier's first name."
                      },
                      "lastName": {
                        "type": "string",
                        "description": "Courier's last name."
                      },
                      "phoneNumber": {
                        "type": "string",
                        "description": "Courier's phone number."
                      },
                      "phoneAccessCode": {
                        "type": "string",
                        "description": "Access code to use with the courier's phone number, where provided."
                      },
                      "deliveryBy": {
                        "type": "string",
                        "description": "Name of the party fulfilling the delivery."
                      },
                      "status": {
                        "type": "integer",
                        "description": "Current courier status (see all <a href=\"https://developers.deliverect.com/page/order-status#courier-statuses\" target=\"_blank\" rel=\"noopener noreferrer\">Courier statuses here</a>)."
                      },
                      "coordinates": {
                        "type": "object",
                        "description": "Courier's last known GPS position.",
                        "properties": {
                          "coordinates": {
                            "type": "array",
                            "description": "Coordinates as `[longitude, latitude]`; `[0, 0]` where coordinates aren't available.",
                            "items": {
                              "type": "number"
                            }
                          }
                        }
                      },
                      "courierId": {
                        "type": "string",
                        "description": "Identifier of the courier, where provided."
                      },
                      "courierExternalId": {
                        "type": "string",
                        "description": "Identifier of the courier in the delivery service's system, where provided."
                      }
                    }
                  },
                  "courierUpdateHistory": {
                    "type": "array",
                    "description": "History of every courier update received for the order.",
                    "items": {
                      "type": "object",
                      "properties": {
                        "status": {
                          "type": "integer",
                          "description": "Courier status (see all <a href=\"https://developers.deliverect.com/page/order-status#courier-statuses\" target=\"_blank\" rel=\"noopener noreferrer\">Courier statuses here</a>)."
                        },
                        "received": {
                          "type": "string",
                          "format": "date-time",
                          "description": "Time the courier update was received, in ISO 8601 UTC format, e.g. `yyyy-MM-ddTHH:mm:ss.SSSZ`; fractional seconds vary between none, 3 and 6 digits."
                        },
                        "courier": {
                          "type": "object",
                          "additionalProperties": true,
                          "description": "Courier info updates.",
                          "properties": {
                            "transportType": {
                              "type": "string",
                              "description": "Courier's mode of transport, where provided, e.g. `unknown`."
                            },
                            "courierId": {
                              "type": "string",
                              "description": "Identifier of the courier, where provided."
                            },
                            "firstName": {
                              "type": "string",
                              "description": "Courier's first name."
                            },
                            "lastName": {
                              "type": "string",
                              "description": "Courier's last name."
                            },
                            "phoneNumber": {
                              "type": "string",
                              "description": "Courier's phone number."
                            },
                            "lastKnownLocation": {
                              "type": "object",
                              "description": "Courier's last known GPS coordinates.",
                              "properties": {
                                "coordinates": {
                                  "type": "array",
                                  "description": "Coordinates as `[longitude, latitude]`; `[0, 0]` where coordinates aren't available.",
                                  "items": {
                                    "type": "number"
                                  }
                                }
                              }
                            }
                          }
                        },
                        "arrivalTime": {
                          "type": "string",
                          "format": "date-time",
                          "description": "Courier arrival time, in ISO 8601 UTC format, e.g. `yyyy-MM-ddTHH:mm:ss.SSSZ`; fractional seconds vary between none, 3 and 6 digits."
                        },
                        "deliveryTime": {
                          "type": "string",
                          "format": "date-time",
                          "description": "Courier delivery time, in the format `yyyy-MM-ddTHH:mm:ssZ`; may include milliseconds."
                        },
                        "source": {
                          "type": "integer",
                          "description": "The source from where the update is coming:\n\n- `1` = POS\n- `2` = Channel\n- `3` = DMA\n- `4` = Driver\n- `5` = Internal\n- `6` = Delivery System\n- `7` = Manual\n- `8` = KDS\n- `9` = Bill to Order Status"
                        },
                        "traceId": {
                          "type": "string",
                          "description": "Trace identifier of the courier update, where provided."
                        },
                        "deliveryJobId": {
                          "type": "string",
                          "description": "Identifier of the delivery job, where one exists."
                        },
                        "stackedOrders": {
                          "type": "array",
                          "description": "Other orders delivered by the same courier alongside this one, where applicable.",
                          "items": {}
                        }
                      }
                    }
                  },
                  "customer": {
                    "type": "object",
                    "description": "Customer is the end-consumer.",
                    "properties": {
                      "name": {
                        "type": "string",
                        "description": "Name of the customer."
                      },
                      "companyName": {
                        "type": "string",
                        "description": "Company name."
                      },
                      "phoneNumber": {
                        "type": "string",
                        "description": "Customer phone number, e.g. `+31618776767`."
                      },
                      "phoneAccessCode": {
                        "type": "string",
                        "description": "Phone access code used to contact channel support (e.g. `1123`)."
                      },
                      "email": {
                        "type": "string",
                        "description": "Email address, where provided."
                      },
                      "note": {
                        "type": "string",
                        "description": "Note from the customer (e.g. \"Call once you arrive\")."
                      },
                      "tin": {
                        "type": "string",
                        "description": "Tax identification number."
                      }
                    }
                  },
                  "deliveryAddress": {
                    "type": "object",
                    "description": "Provided address for an order.",
                    "properties": {
                      "street": {
                        "type": "string",
                        "description": "This includes the street number where provided, e.g. `Stationsstraat 79e`."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code, e.g. `3811 MH`."
                      },
                      "area": {
                        "type": "string",
                        "description": "Area or district, where provided."
                      },
                      "city": {
                        "type": "string",
                        "description": "City, e.g. `Amersfoort`."
                      },
                      "country": {
                        "type": "string",
                        "description": "Country, e.g. `Netherlands`."
                      },
                      "source": {
                        "type": "string",
                        "description": "Sent to the POS where address information exists, to help handle address variations from different countries."
                      },
                      "extraAddressInfo": {
                        "type": "string",
                        "description": "Additional address information, e.g. `second floor`."
                      },
                      "coordinates": {
                        "type": "object",
                        "description": "Geographic position of the address.",
                        "properties": {
                          "coordinates": {
                            "type": "array",
                            "description": "Coordinates as `[longitude, latitude]`.",
                            "items": {
                              "type": "number"
                            }
                          }
                        }
                      }
                    }
                  },
                  "orderIsAlreadyPaid": {
                    "type": "boolean",
                    "description": "Statement of whether an order was paid online or not."
                  },
                  "taxes": {
                    "type": "array",
                    "description": "All taxes applied to an order (in tax exclusive regions only).",
                    "items": {
                      "type": "object",
                      "properties": {
                        "name": {
                          "type": "string",
                          "description": "Tax name, e.g. `VAT`."
                        },
                        "taxClassId": {
                          "type": "integer",
                          "description": "Tax class ID as sent by the channel. This is not formally mapped to any integrated POS or tax class banding, so it shouldn't be relied on to identify a specific tax rate."
                        },
                        "total": {
                          "type": "integer",
                          "description": "The composite total of all taxes. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                        }
                      }
                    }
                  },
                  "payment": {
                    "type": "object",
                    "description": "Payment details.",
                    "properties": {
                      "amount": {
                        "type": "integer",
                        "description": "Total amount tendered. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                      },
                      "type": {
                        "type": "integer",
                        "description": "Payment method applied (see full list [here](https://developers.deliverect.com/page/pos-payments-taxes-discount-other-charges))."
                      },
                      "due": {
                        "type": "integer",
                        "description": "Any outstanding amount to be collected from the customer if there is a cash (unpaid) order. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                      },
                      "rebate": {
                        "type": "integer",
                        "description": "Any discounts offered by the channel. The ordering customer pays the amount without the rebate, but the restaurant receives the total amount from the channel. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                      },
                      "commissionType": {
                        "type": "string",
                        "description": "The type of commission rate charged, as categorised by the channel."
                      }
                    }
                  },
                  "note": {
                    "type": "string",
                    "description": "Overall note for an order."
                  },
                  "items": {
                    "type": "array",
                    "description": "All the items included in an order.",
                    "items": {
                      "type": "object",
                      "properties": {
                        "plu": {
                          "type": "string",
                          "description": "Unique reference for the product."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the product or modifier."
                        },
                        "sortOrder": {
                          "type": "integer",
                          "description": "The 'stepped' order of any auto-applied items, where `0` is the first item to be listed (see guide [here](https://developers.deliverect.com/page/product-configuration#auto-apply))."
                        },
                        "price": {
                          "type": "integer",
                          "description": "Price set for the product or modifier. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                        },
                        "bottleDepositPrice": {
                          "type": "integer",
                          "description": "Bottle deposit charged for the item. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                        },
                        "quantity": {
                          "type": "number",
                          "description": "Quantity of item ordered, for subItems quantity, see guide [here](https://developers.deliverect.com/docs/how-to-interpret-modifiers-and-the-quantity-ordered)."
                        },
                        "productType": {
                          "type": "integer",
                          "description": "Specific type of item (see full list [here](https://developers.deliverect.com/reference/insertupdate-products-and-categories#product-types))."
                        },
                        "remark": {
                          "type": "string",
                          "description": "A note specific to an individual item."
                        },
                        "isCombo": {
                          "type": "boolean",
                          "description": "Indicates a product sold is part of a combo."
                        },
                        "categoryInfo": {
                          "type": "object",
                          "additionalProperties": true,
                          "description": "Category metadata for the item, where available."
                        },
                        "section": {
                          "type": "string",
                          "description": "Retail-specific. Category or section name the item belongs to, e.g. `Antiseptics`."
                        },
                        "ticketSectionId": {
                          "type": "string",
                          "description": "Retail-specific. Reference ID linking the item to a ticket section."
                        },
                        "posCategoryInfo": {
                          "type": "object",
                          "description": "Category of the item on the POS side, where available.",
                          "properties": {
                            "id": {
                              "type": "string",
                              "description": "POS category ID."
                            }
                          }
                        },
                        "subItems": {
                          "type": "array",
                          "description": "All subitems are items associated with the product ordered. The quantity is multiplied by however many top-level items are ordered (see guide [here](https://developers.deliverect.com/docs/how-to-interpret-modifiers-and-the-quantity-ordered)).",
                          "items": {
                            "type": "object",
                            "properties": {
                              "plu": {
                                "type": "string",
                                "description": "Unique reference for the product."
                              },
                              "name": {
                                "type": "string",
                                "description": "The name of the product or modifier."
                              },
                              "sortOrder": {
                                "type": "integer",
                                "description": "The 'stepped' order of any auto-applied items, where `0` is the first item to be listed (see guide [here](https://developers.deliverect.com/page/product-configuration#auto-apply))."
                              },
                              "price": {
                                "type": "integer",
                                "description": "Price set for the product or modifier. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                              },
                              "bottleDepositPrice": {
                                "type": "integer",
                                "description": "Bottle deposit charged for the item. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                              },
                              "quantity": {
                                "type": "number",
                                "description": "Quantity of item ordered, for subItems quantity, see guide [here](https://developers.deliverect.com/docs/how-to-interpret-modifiers-and-the-quantity-ordered)."
                              },
                              "productType": {
                                "type": "integer",
                                "description": "Specific type of item (see full list [here](https://developers.deliverect.com/reference/insertupdate-products-and-categories#product-types))."
                              },
                              "remark": {
                                "type": "string",
                                "description": "A note specific to an individual item."
                              },
                              "inBundle": {
                                "type": "boolean",
                                "description": "Indicates the item is contained inside a bundle."
                              },
                              "categoryInfo": {
                                "type": "object",
                                "additionalProperties": true,
                                "description": "Category metadata for the item, where available."
                              },
                              "subItems": {
                                "type": "array",
                                "description": "Nested sub-items, following the same structure.",
                                "items": {
                                  "type": "object",
                                  "additionalProperties": true
                                }
                              },
                              "packaging": {
                                "type": "object",
                                "description": "Per-item packaging details.",
                                "properties": {
                                  "count": {
                                    "type": "integer",
                                    "description": "Number of packages used for the item."
                                  },
                                  "reusable": {
                                    "type": "boolean",
                                    "description": "`true` when reusable packaging is used."
                                  },
                                  "packedItems": {
                                    "type": "integer",
                                    "description": "Number of items packed."
                                  }
                                }
                              },
                              "productTags": {
                                "type": "array",
                                "description": "Indicates [the tags](https://developers.deliverect.com/page/custom-tags-and-allergens) contained inside a product.",
                                "items": {
                                  "type": "integer"
                                }
                              },
                              "discountReferenceIds": {
                                "type": "array",
                                "description": "An array of identifiers for each discount applied to an item (see guide [here](https://developers.deliverect.com/docs/how-are-discounts-sent)).",
                                "items": {
                                  "type": "integer"
                                }
                              }
                            }
                          }
                        },
                        "packaging": {
                          "type": "object",
                          "description": "Per-item packaging details.",
                          "properties": {
                            "count": {
                              "type": "integer",
                              "description": "Number of packages used for the item."
                            },
                            "reusable": {
                              "type": "boolean",
                              "description": "`true` when reusable packaging is used."
                            },
                            "packedItems": {
                              "type": "integer",
                              "description": "Number of items packed."
                            }
                          }
                        },
                        "productTags": {
                          "type": "array",
                          "description": "Indicates [the tags](https://developers.deliverect.com/page/custom-tags-and-allergens) contained inside a product.",
                          "items": {
                            "type": "integer"
                          }
                        },
                        "discountReferenceId": {
                          "type": "integer",
                          "description": "Singular discount reference, appears alongside `discountReferenceIds`."
                        },
                        "discountReferenceIds": {
                          "type": "array",
                          "description": "An array of identifiers for each discount applied to an item (see guide [here](https://developers.deliverect.com/docs/how-are-discounts-sent)).",
                          "items": {
                            "type": "integer"
                          }
                        }
                      }
                    }
                  },
                  "decimalDigits": {
                    "type": "integer",
                    "description": "Decimal precision of order and payment amounts."
                  },
                  "numberOfCustomers": {
                    "type": "integer",
                    "description": "Indicates how many diners (applicable to table ordering)."
                  },
                  "channelOrderRawId": {
                    "type": "string",
                    "description": "Deliverect internal ID of an order."
                  },
                  "channelOrderHistoryRawIds": {
                    "type": "array",
                    "description": "Legacy attribute, not to be referenced as part of an integration.",
                    "items": {
                      "type": "string"
                    },
                    "deprecated": true
                  },
                  "serviceCharge": {
                    "type": "integer",
                    "description": "Service charge applied. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                  },
                  "deliveryCost": {
                    "type": "integer",
                    "description": "Delivery cost applied. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                  },
                  "bagFee": {
                    "type": "integer",
                    "description": "A surcharge applied for the packaging. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                  },
                  "tip": {
                    "type": "integer",
                    "description": "A tip intended for the restaurant operator. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                  },
                  "driverTip": {
                    "type": "integer",
                    "description": "A tip intended for the driver/courier. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                  },
                  "smallOrderFee": {
                    "type": "integer",
                    "description": "A surcharge applied by channels who impose minimum basket fees. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                  },
                  "discountTotal": {
                    "type": "integer",
                    "description": "Ordering platforms may offer multiple forms of discount e.g. % discount. A discount total is sent as a minus value representing the deduction from the total order (see guide [here](https://developers.deliverect.com/docs/how-are-discounts-sent)). It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                  },
                  "discounts": {
                    "type": "array",
                    "description": "All applied discounts within an order.",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Mapped channel discount type from the [list of Discount Types in Deliverect](https://developers.deliverect.com/page/list-of-discount-types)."
                        },
                        "provider": {
                          "type": "string",
                          "description": "The issuer of the discount, i.e. the one who bears the discounted amount (see [list of provider types in Deliverect](https://developers.deliverect.com/page/discount-provider-type)). Can also be `unknown`."
                        },
                        "name": {
                          "type": "string",
                          "description": "The name of the discount."
                        },
                        "channelDiscountCode": {
                          "type": "string",
                          "description": "The unique discount code used by the channel."
                        },
                        "referenceId": {
                          "type": "integer",
                          "description": "A unique identifier of the discount, where applicable, this will show against items included in the discount."
                        },
                        "value": {
                          "type": "integer",
                          "description": "The flat amount of money or percentage covered by the discount, stored with precision 2, so $1.50 -> `150`, 25.1% -> `2510`."
                        },
                        "amount": {
                          "type": "integer",
                          "description": "Actual amount discounted, e.g. 10% off on a $50 bill, the `value` will be `1000` and `amount` will be `500`. May be `0`. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                        },
                        "amountRestaurant": {
                          "type": "integer",
                          "description": "The amount of the restaurant's contribution to the discount. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                        },
                        "amountChannel": {
                          "type": "integer",
                          "description": "The amount of the channel's contribution to the discount. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100."
                        }
                      }
                    }
                  },
                  "capacityUsages": {
                    "type": "array",
                    "description": "Legacy attribute, not to be referenced as part of an integration.",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    },
                    "deprecated": true
                  },
                  "recent": {
                    "type": "boolean",
                    "description": "Legacy attribute, not to be referenced as part of an integration.",
                    "deprecated": true
                  },
                  "resolvedBy": {
                    "type": "string",
                    "description": "Legacy attribute, not to be referenced as part of an integration.",
                    "deprecated": true
                  },
                  "deliveryJobId": {
                    "type": "string",
                    "description": "Identifier of the delivery job, where one exists."
                  },
                  "brandId": {
                    "type": "string",
                    "description": "Appears where the customer operates multiple brands from one location (see [Get account brands](https://developers.deliverect.com/reference/get-accounts-brands))."
                  },
                  "testOrder": {
                    "type": "boolean",
                    "description": "Only applicable as `true` in staging environment via menu preview orders."
                  },
                  "timezone": {
                    "type": "string",
                    "description": "Timezone of the location, e.g. `Europe/London` (see TZ [list here](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones))."
                  },
                  "date": {
                    "type": "integer",
                    "description": "Order created date in format `YMD`."
                  },
                  "tags": {
                    "type": "array",
                    "description": "Custom tag(s) applied to the store location, typically a brand name, e.g. `[\"Best Burger\"]`.",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "description": "<div class=\"callout-banner callout-banner--neutral\">\n  <span class=\"callout-icon\"><i class=\"fa-regular fa-square-info\"></i></span>\n  <p>\n\n    Please note any <span class=\"deprecated-label\">Deprecated</span> parameters should be ignored\n  </p>\n</div>"
              },
              "examples": {
                "newOrder": {
                  "summary": "New Order",
                  "description": "Full order containing all information available at the point of webhook delivery",
                  "value": {
                    "_created": "yyyy-MM-ddTHH:mm:ss.SSSZ",
                    "_updated": "yyyy-MM-ddTHH:mm:ss.SSSZ",
                    "_id": "63********************a7",
                    "account": "65********************e9",
                    "channelOrderId": "T5*****17e",
                    "channelOrderDisplayId": "**17E",
                    "channelOrderKey": "51*******22",
                    "posId": "",
                    "posReceiptId": "",
                    "posLocationId": "",
                    "location": "65********************a4",
                    "channelLink": "65********************e2",
                    "status": 2,
                    "statusHistory": [
                      {
                        "timeStamp": "yyyy-MM-ddTHH:mm:ss.SSSZ",
                        "status": 4,
                        "response": "",
                        "source": 2,
                        "eventId": "6a********************88"
                      },
                      {
                        "timeStamp": "yyyy-MM-ddTHH:mm:ss.SSSZ",
                        "status": 1,
                        "response": "",
                        "source": 5,
                        "eventId": "6a********************90"
                      },
                      {
                        "timeStamp": "yyyy-MM-ddTHH:mm:ss.SSSZ",
                        "status": 2,
                        "response": "",
                        "source": 1,
                        "eventId": "6a********************94"
                      }
                    ],
                    "posStatusHistory": [
                      {
                        "timeStamp": "yyyy-MM-ddTHH:mm:ss.SSSZ",
                        "status": 0
                      }
                    ],
                    "packaging": {
                      "includeCutlery": false
                    },
                    "by": "",
                    "orderType": 2,
                    "channel": 7,
                    "pos": 10000,
                    "pickupTime": "yyyy-MM-ddTHH:mm:ssZ",
                    "deliveryTime": "yyyy-MM-ddTHH:mm:ssZ",
                    "pickupTimeETA": "yyyy-MM-ddTHH:mm:ssZ",
                    "deliveryTimeETA": "yyyy-MM-ddTHH:mm:ssZ",
                    "scheduledTime": "yyyy-MM-ddTHH:mm:ss.SSSZ",
                    "deliveryIsAsap": true,
                    "courier": {
                      "firstName": "",
                      "lastName": "",
                      "phoneNumber": "",
                      "phoneAccessCode": "",
                      "deliveryBy": "",
                      "status": 83,
                      "coordinates": {
                        "coordinates": [
                          -74.0131,
                          40.7047
                        ]
                      },
                      "courierId": "",
                      "courierExternalId": ""
                    },
                    "courierUpdateHistory": [
                      {
                        "status": 81,
                        "received": "yyyy-MM-ddTHH:mm:ss.SSSZ",
                        "courier": {
                          "transportType": "unknown",
                          "courierId": "",
                          "firstName": "",
                          "lastName": "",
                          "phoneNumber": ""
                        },
                        "arrivalTime": "yyyy-MM-ddTHH:mm:ssZ",
                        "deliveryTime": "yyyy-MM-ddTHH:mm:ssZ",
                        "source": 5,
                        "traceId": "",
                        "deliveryJobId": "",
                        "stackedOrders": []
                      },
                      {
                        "status": 83,
                        "received": "yyyy-MM-ddTHH:mm:ss.SSSZ",
                        "courier": {
                          "transportType": "unknown",
                          "courierId": "",
                          "firstName": "",
                          "lastName": "",
                          "phoneNumber": "",
                          "lastKnownLocation": {
                            "coordinates": [
                              -74.0131,
                              40.7047
                            ]
                          }
                        },
                        "arrivalTime": "yyyy-MM-ddTHH:mm:ssZ",
                        "deliveryTime": "yyyy-MM-ddTHH:mm:ssZ",
                        "source": 2,
                        "traceId": "",
                        "deliveryJobId": "",
                        "stackedOrders": []
                      }
                    ],
                    "customer": {
                      "name": "",
                      "phoneNumber": "",
                      "phoneAccessCode": "",
                      "email": "",
                      "note": ""
                    },
                    "deliveryAddress": {
                      "street": "1 Greenwich Street",
                      "postalCode": "10013",
                      "area": "Manhattan",
                      "city": "New York",
                      "country": "US",
                      "source": "1 Greenwich Street, New York, NY 10013, US, 10013, Manhattan, New York, US",
                      "extraAddressInfo": "Front door has bell",
                      "coordinates": {
                        "coordinates": [
                          -74.0137,
                          40.7044
                        ]
                      }
                    },
                    "orderIsAlreadyPaid": true,
                    "taxes": [
                      {
                        "name": "VAT 10%",
                        "taxClassId": 3,
                        "total": 87
                      }
                    ],
                    "payment": {
                      "amount": 954,
                      "type": 3,
                      "due": 0,
                      "rebate": 0
                    },
                    "note": "",
                    "items": [
                      {
                        "plu": "658",
                        "name": "7UP",
                        "sortOrder": 0,
                        "price": 300,
                        "quantity": 2,
                        "productType": 1,
                        "remark": "",
                        "categoryInfo": {},
                        "section": "Soft Drinks",
                        "ticketSectionId": "6a********************f4",
                        "subItems": [],
                        "bottleDepositPrice": 0,
                        "packaging": {
                          "count": 1,
                          "reusable": false,
                          "packedItems": 0
                        },
                        "productTags": [
                          4
                        ],
                        "discountReferenceId": 1,
                        "discountReferenceIds": [
                          1
                        ]
                      },
                      {
                        "plu": "492",
                        "name": "Burger + Drink",
                        "sortOrder": 0,
                        "price": 1290,
                        "quantity": 1,
                        "productType": 1,
                        "remark": "",
                        "categoryInfo": {},
                        "section": "Meals",
                        "ticketSectionId": "6a********************c6",
                        "isCombo": true,
                        "subItems": [
                          {
                            "plu": "742",
                            "name": "Big Burger",
                            "sortOrder": 0,
                            "price": 0,
                            "quantity": 1,
                            "productType": 1,
                            "categoryInfo": {},
                            "inBundle": true,
                            "subItems": [
                              {
                                "plu": "801",
                                "name": "No Onions",
                                "sortOrder": 0,
                                "price": 0,
                                "quantity": 1,
                                "productType": 2,
                                "categoryInfo": {},
                                "subItems": [],
                                "bottleDepositPrice": 0,
                                "packaging": {
                                  "count": 1,
                                  "reusable": false,
                                  "packedItems": 0
                                },
                                "productTags": [],
                                "discountReferenceIds": []
                              }
                            ],
                            "bottleDepositPrice": 0,
                            "packaging": {
                              "count": 1,
                              "reusable": false,
                              "packedItems": 0
                            },
                            "productTags": [
                              101,
                              127,
                              129
                            ],
                            "discountReferenceIds": []
                          },
                          {
                            "plu": "656",
                            "name": "Cola",
                            "sortOrder": 0,
                            "price": 0,
                            "quantity": 1,
                            "productType": 1,
                            "categoryInfo": {},
                            "inBundle": true,
                            "subItems": [],
                            "bottleDepositPrice": 0,
                            "packaging": {
                              "count": 1,
                              "reusable": false,
                              "packedItems": 0
                            },
                            "productTags": [],
                            "discountReferenceIds": []
                          }
                        ],
                        "bottleDepositPrice": 0,
                        "packaging": {
                          "count": 1,
                          "reusable": false,
                          "packedItems": 0
                        },
                        "posCategoryInfo": {
                          "id": ""
                        },
                        "productTags": [
                          101,
                          127,
                          129
                        ],
                        "discountReferenceIds": []
                      }
                    ],
                    "decimalDigits": 2,
                    "numberOfCustomers": 0,
                    "channelOrderRawId": "65********************27",
                    "channelOrderHistoryRawIds": [
                      "64********************37",
                      "63********************27"
                    ],
                    "serviceCharge": 0,
                    "deliveryCost": 0,
                    "bagFee": 0,
                    "tip": 0,
                    "driverTip": 0,
                    "discountTotal": -936,
                    "discounts": [
                      {
                        "type": "item_bogof",
                        "provider": "restaurant",
                        "name": "BOGO",
                        "channelDiscountCode": "",
                        "referenceId": 1,
                        "value": 300,
                        "amount": 300,
                        "amountRestaurant": 300,
                        "amountChannel": 0
                      },
                      {
                        "type": "order_percent_off",
                        "provider": "restaurant",
                        "name": "PERCENTOFF",
                        "channelDiscountCode": "",
                        "referenceId": 2,
                        "value": 4000,
                        "amount": 636,
                        "amountRestaurant": 636,
                        "amountChannel": 0
                      }
                    ],
                    "capacityUsages": [],
                    "resolvedBy": "",
                    "deliveryJobId": "",
                    "tags": [],
                    "brandId": "65********************e8",
                    "timezone": "Europe/Madrid",
                    "date": 20260101
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Return a `2xx` status to acknowledge receipt."
          }
        },
        "deprecated": false,
        "x-readme": {
          "explorer-enabled": false,
          "code-samples": [
            {
              "language": "json",
              "name": "New Order",
              "code": "{\n  \"_created\": \"yyyy-MM-ddTHH:mm:ss.SSSZ\",\n  \"_updated\": \"yyyy-MM-ddTHH:mm:ss.SSSZ\",\n  \"_id\": \"63********************a7\",\n  \"account\": \"65********************e9\",\n  \"channelOrderId\": \"T5*****17e\",\n  \"channelOrderDisplayId\": \"**17E\",\n  \"channelOrderKey\": \"51*******22\",\n  \"posId\": \"\",\n  \"posReceiptId\": \"\",\n  \"posLocationId\": \"\",\n  \"location\": \"65********************a4\",\n  \"channelLink\": \"65********************e2\",\n  \"status\": 2,\n  \"statusHistory\": [\n    {\n      \"timeStamp\": \"yyyy-MM-ddTHH:mm:ss.SSSZ\",\n      \"status\": 4,\n      \"response\": \"\",\n      \"source\": 2,\n      \"eventId\": \"6a********************88\"\n    },\n    {\n      \"timeStamp\": \"yyyy-MM-ddTHH:mm:ss.SSSZ\",\n      \"status\": 1,\n      \"response\": \"\",\n      \"source\": 5,\n      \"eventId\": \"6a********************90\"\n    },\n    {\n      \"timeStamp\": \"yyyy-MM-ddTHH:mm:ss.SSSZ\",\n      \"status\": 2,\n      \"response\": \"\",\n      \"source\": 1,\n      \"eventId\": \"6a********************94\"\n    }\n  ],\n  \"posStatusHistory\": [\n    {\n      \"timeStamp\": \"yyyy-MM-ddTHH:mm:ss.SSSZ\",\n      \"status\": 0\n    }\n  ],\n  \"packaging\": {\n    \"includeCutlery\": false\n  },\n  \"by\": \"\",\n  \"orderType\": 2,\n  \"channel\": 7,\n  \"pos\": 10000,\n  \"pickupTime\": \"yyyy-MM-ddTHH:mm:ssZ\",\n  \"deliveryTime\": \"yyyy-MM-ddTHH:mm:ssZ\",\n  \"pickupTimeETA\": \"yyyy-MM-ddTHH:mm:ssZ\",\n  \"deliveryTimeETA\": \"yyyy-MM-ddTHH:mm:ssZ\",\n  \"scheduledTime\": \"yyyy-MM-ddTHH:mm:ss.SSSZ\",\n  \"deliveryIsAsap\": true,\n  \"courier\": {\n    \"firstName\": \"\",\n    \"lastName\": \"\",\n    \"phoneNumber\": \"\",\n    \"phoneAccessCode\": \"\",\n    \"deliveryBy\": \"\",\n    \"status\": 83,\n    \"coordinates\": {\n      \"coordinates\": [\n        -74.0131,\n        40.7047\n      ]\n    },\n    \"courierId\": \"\",\n    \"courierExternalId\": \"\"\n  },\n  \"courierUpdateHistory\": [\n    {\n      \"status\": 81,\n      \"received\": \"yyyy-MM-ddTHH:mm:ss.SSSZ\",\n      \"courier\": {\n        \"transportType\": \"unknown\",\n        \"courierId\": \"\",\n        \"firstName\": \"\",\n        \"lastName\": \"\",\n        \"phoneNumber\": \"\"\n      },\n      \"arrivalTime\": \"yyyy-MM-ddTHH:mm:ssZ\",\n      \"deliveryTime\": \"yyyy-MM-ddTHH:mm:ssZ\",\n      \"source\": 5,\n      \"traceId\": \"\",\n      \"deliveryJobId\": \"\",\n      \"stackedOrders\": []\n    },\n    {\n      \"status\": 83,\n      \"received\": \"yyyy-MM-ddTHH:mm:ss.SSSZ\",\n      \"courier\": {\n        \"transportType\": \"unknown\",\n        \"courierId\": \"\",\n        \"firstName\": \"\",\n        \"lastName\": \"\",\n        \"phoneNumber\": \"\",\n        \"lastKnownLocation\": {\n          \"coordinates\": [\n            -74.0131,\n            40.7047\n          ]\n        }\n      },\n      \"arrivalTime\": \"yyyy-MM-ddTHH:mm:ssZ\",\n      \"deliveryTime\": \"yyyy-MM-ddTHH:mm:ssZ\",\n      \"source\": 2,\n      \"traceId\": \"\",\n      \"deliveryJobId\": \"\",\n      \"stackedOrders\": []\n    }\n  ],\n  \"customer\": {\n    \"name\": \"\",\n    \"phoneNumber\": \"\",\n    \"phoneAccessCode\": \"\",\n    \"email\": \"\",\n    \"note\": \"\"\n  },\n  \"deliveryAddress\": {\n    \"street\": \"1 Greenwich Street\",\n    \"postalCode\": \"10013\",\n    \"area\": \"Manhattan\",\n    \"city\": \"New York\",\n    \"country\": \"US\",\n    \"source\": \"1 Greenwich Street, New York, NY 10013, US, 10013, Manhattan, New York, US\",\n    \"extraAddressInfo\": \"Front door has bell\",\n    \"coordinates\": {\n      \"coordinates\": [\n        -74.0137,\n        40.7044\n      ]\n    }\n  },\n  \"orderIsAlreadyPaid\": true,\n  \"taxes\": [\n    {\n      \"name\": \"VAT 10%\",\n      \"taxClassId\": 3,\n      \"total\": 87\n    }\n  ],\n  \"payment\": {\n    \"amount\": 954,\n    \"type\": 3,\n    \"due\": 0,\n    \"rebate\": 0\n  },\n  \"note\": \"\",\n  \"items\": [\n    {\n      \"plu\": \"658\",\n      \"name\": \"7UP\",\n      \"sortOrder\": 0,\n      \"price\": 300,\n      \"quantity\": 2,\n      \"productType\": 1,\n      \"remark\": \"\",\n      \"categoryInfo\": {},\n      \"section\": \"Soft Drinks\",\n      \"ticketSectionId\": \"6a********************f4\",\n      \"subItems\": [],\n      \"bottleDepositPrice\": 0,\n      \"packaging\": {\n        \"count\": 1,\n        \"reusable\": false,\n        \"packedItems\": 0\n      },\n      \"productTags\": [\n        4\n      ],\n      \"discountReferenceId\": 1,\n      \"discountReferenceIds\": [\n        1\n      ]\n    },\n    {\n      \"plu\": \"492\",\n      \"name\": \"Burger + Drink\",\n      \"sortOrder\": 0,\n      \"price\": 1290,\n      \"quantity\": 1,\n      \"productType\": 1,\n      \"remark\": \"\",\n      \"categoryInfo\": {},\n      \"section\": \"Meals\",\n      \"ticketSectionId\": \"6a********************c6\",\n      \"isCombo\": true,\n      \"subItems\": [\n        {\n          \"plu\": \"742\",\n          \"name\": \"Big Burger\",\n          \"sortOrder\": 0,\n          \"price\": 0,\n          \"quantity\": 1,\n          \"productType\": 1,\n          \"categoryInfo\": {},\n          \"inBundle\": true,\n          \"subItems\": [\n            {\n              \"plu\": \"801\",\n              \"name\": \"No Onions\",\n              \"sortOrder\": 0,\n              \"price\": 0,\n              \"quantity\": 1,\n              \"productType\": 2,\n              \"categoryInfo\": {},\n              \"subItems\": [],\n              \"bottleDepositPrice\": 0,\n              \"packaging\": {\n                \"count\": 1,\n                \"reusable\": false,\n                \"packedItems\": 0\n              },\n              \"productTags\": [],\n              \"discountReferenceIds\": []\n            }\n          ],\n          \"bottleDepositPrice\": 0,\n          \"packaging\": {\n            \"count\": 1,\n            \"reusable\": false,\n            \"packedItems\": 0\n          },\n          \"productTags\": [\n            101,\n            127,\n            129\n          ],\n          \"discountReferenceIds\": []\n        },\n        {\n          \"plu\": \"656\",\n          \"name\": \"Cola\",\n          \"sortOrder\": 0,\n          \"price\": 0,\n          \"quantity\": 1,\n          \"productType\": 1,\n          \"categoryInfo\": {},\n          \"inBundle\": true,\n          \"subItems\": [],\n          \"bottleDepositPrice\": 0,\n          \"packaging\": {\n            \"count\": 1,\n            \"reusable\": false,\n            \"packedItems\": 0\n          },\n          \"productTags\": [],\n          \"discountReferenceIds\": []\n        }\n      ],\n      \"bottleDepositPrice\": 0,\n      \"packaging\": {\n        \"count\": 1,\n        \"reusable\": false,\n        \"packedItems\": 0\n      },\n      \"posCategoryInfo\": {\n        \"id\": \"\"\n      },\n      \"productTags\": [\n        101,\n        127,\n        129\n      ],\n      \"discountReferenceIds\": []\n    }\n  ],\n  \"decimalDigits\": 2,\n  \"numberOfCustomers\": 0,\n  \"channelOrderRawId\": \"65********************27\",\n  \"channelOrderHistoryRawIds\": [\n    \"64********************37\",\n    \"63********************27\"\n  ],\n  \"serviceCharge\": 0,\n  \"deliveryCost\": 0,\n  \"bagFee\": 0,\n  \"tip\": 0,\n  \"driverTip\": 0,\n  \"discountTotal\": -936,\n  \"discounts\": [\n    {\n      \"type\": \"item_bogof\",\n      \"provider\": \"restaurant\",\n      \"name\": \"BOGO\",\n      \"channelDiscountCode\": \"\",\n      \"referenceId\": 1,\n      \"value\": 300,\n      \"amount\": 300,\n      \"amountRestaurant\": 300,\n      \"amountChannel\": 0\n    },\n    {\n      \"type\": \"order_percent_off\",\n      \"provider\": \"restaurant\",\n      \"name\": \"PERCENTOFF\",\n      \"channelDiscountCode\": \"\",\n      \"referenceId\": 2,\n      \"value\": 4000,\n      \"amount\": 636,\n      \"amountRestaurant\": 636,\n      \"amountChannel\": 0\n    }\n  ],\n  \"capacityUsages\": [],\n  \"resolvedBy\": \"\",\n  \"deliveryJobId\": \"\",\n  \"tags\": [],\n  \"brandId\": \"65********************e8\",\n  \"timezone\": \"Europe/Madrid\",\n  \"date\": 20260101\n}",
              "correspondingExample": "newOrder"
            }
          ]
        },
        "security": []
      }
    },
    "https://yourwebhook.com/order_status_update": {
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Status Update",
        "description": "Sends each change to an order's status.",
        "operationId": "reporting_status_update",
        "parameters": [
          {
            "name": "Content-Type",
            "in": "header",
            "description": "application/json",
            "schema": {
              "type": "string",
              "default": "application/json"
            }
          },
          {
            "name": "Accept",
            "in": "header",
            "description": "application/json",
            "schema": {
              "type": "string",
              "default": "application/json"
            }
          },
          {
            "name": "User-Agent",
            "in": "header",
            "required": true,
            "description": "Identifies Deliverect as the sender, in the format `Deliverect/{version}`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Server-Authorization-HMAC-SHA256",
            "in": "header",
            "required": true,
            "description": "Signature of the raw request body using your shared secret; recompute it on receipt to verify the request came from Deliverect (see <a href=\"https://developers.deliverect.com/reference/hmac-authentication\" target=\"_blank\" rel=\"noopener noreferrer\">HMAC authentication guide</a>).",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "description": "Sent by Deliverect as a JSON payload.",
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "orderId": {
                    "type": "string",
                    "description": "Deliverect's unique identifier of the order."
                  },
                  "status": {
                    "type": "integer",
                    "description": "New order status (see all <a href=\"https://developers.deliverect.com/page/order-status\" target=\"_blank\" rel=\"noopener noreferrer\">Order statuses here</a>)."
                  },
                  "timeStamp": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Time of the status change, in the format `yyyy-MM-ddTHH:mm:ss.SSSSSSZ`."
                  },
                  "reason": {
                    "type": "string",
                    "description": "Reason for the status change, where provided (e.g. on cancellation)."
                  },
                  "channelOrderId": {
                    "type": "string",
                    "description": "Unique identifier of the order on the ordering channel."
                  },
                  "location": {
                    "type": "string",
                    "description": "<Glossary>locationId</Glossary> is the unique ID for the POS to identify the store location."
                  },
                  "isIgnoredPOSStatus": {
                    "type": "boolean",
                    "description": "`true` when the status was sent by the POS but not applied to the order."
                  }
                }
              },
              "examples": {
                "statusUpdate": {
                  "summary": "Status Update",
                  "description": "Each order preparation status change can trigger a webhook specifying the order status",
                  "value": {
                    "orderId": "62********************e4",
                    "status": 20,
                    "timeStamp": "yyyy-MM-ddTHH:mm:ss.SSSSSSZ",
                    "reason": "",
                    "channelOrderId": "T5*****17e",
                    "location": "61********************r2",
                    "isIgnoredPOSStatus": false
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Return a `2xx` status to acknowledge receipt."
          }
        },
        "deprecated": false,
        "x-readme": {
          "explorer-enabled": false,
          "code-samples": [
            {
              "language": "json",
              "name": "Status Update",
              "code": "{\n  \"orderId\": \"62********************e4\",\n  \"status\": 20,\n  \"timeStamp\": \"yyyy-MM-ddTHH:mm:ss.SSSSSSZ\",\n  \"reason\": \"\",\n  \"channelOrderId\": \"T5*****17e\",\n  \"location\": \"61********************r2\",\n  \"isIgnoredPOSStatus\": false\n}",
              "correspondingExample": "statusUpdate"
            }
          ]
        },
        "security": []
      }
    },
    "https://yourwebhook.com/courier_update": {
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Courier Update",
        "description": "Sends courier details and delivery progress whenever they change.",
        "operationId": "reporting_courier_update",
        "parameters": [
          {
            "name": "Content-Type",
            "in": "header",
            "description": "application/json",
            "schema": {
              "type": "string",
              "default": "application/json"
            }
          },
          {
            "name": "Accept",
            "in": "header",
            "description": "application/json",
            "schema": {
              "type": "string",
              "default": "application/json"
            }
          },
          {
            "name": "User-Agent",
            "in": "header",
            "required": true,
            "description": "Identifies Deliverect as the sender, in the format `Deliverect/{version}`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Server-Authorization-HMAC-SHA256",
            "in": "header",
            "required": true,
            "description": "Signature of the raw request body using your shared secret; recompute it on receipt to verify the request came from Deliverect (see <a href=\"https://developers.deliverect.com/reference/hmac-authentication\" target=\"_blank\" rel=\"noopener noreferrer\">HMAC authentication guide</a>).",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "description": "Sent by Deliverect as a JSON payload.",
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "received": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Time the courier update was received, in the format `yyyy-MM-ddTHH:mm:ss.SSSSSSZ`."
                  },
                  "orderId": {
                    "type": "string",
                    "description": "Deliverect's unique identifier of the order."
                  },
                  "pickupTime": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Estimated time the courier picks up the order, in the format `yyyy-MM-ddTHH:mm:ss.SSSSSSZ`."
                  },
                  "deliveryTime": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Estimated time the order is delivered to the customer, in the format `yyyy-MM-ddTHH:mm:ss.SSSSSSZ`."
                  },
                  "location": {
                    "type": "string",
                    "description": "<Glossary>locationId</Glossary> is the unique ID for the POS to identify the store location."
                  },
                  "courier": {
                    "type": "object",
                    "description": "Courier assigned to the delivery and their current progress.",
                    "properties": {
                      "firstName": {
                        "type": "string",
                        "description": "Courier's first name."
                      },
                      "lastName": {
                        "type": "string",
                        "description": "Courier's last name."
                      },
                      "phoneNumber": {
                        "type": "string",
                        "description": "Courier's phone number."
                      },
                      "deliveryBy": {
                        "type": "string",
                        "description": "Identifies who is delivering an order. If the ordering platform is handling delivery, this is the channel name (e.g. `Uber Eats`); if the restaurant is managing self delivery or fulfilment is handled by a 3rd party, this is `restaurant`."
                      },
                      "status": {
                        "type": "integer",
                        "description": "Current courier status (see all <a href=\"https://developers.deliverect.com/page/order-status#courier-statuses\" target=\"_blank\" rel=\"noopener noreferrer\">Courier statuses here</a>)."
                      },
                      "lastKnownLocation": {
                        "type": "object",
                        "description": "Courier's last known GPS coordinates.",
                        "properties": {
                          "coordinates": {
                            "type": "array",
                            "description": "Coordinates as `[longitude, latitude]`.",
                            "items": {
                              "type": "number"
                            }
                          }
                        }
                      },
                      "vehicle": {
                        "type": "object",
                        "description": "Courier vehicle details, where provided by the delivery service.",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Vehicle type, e.g. `CAR`, `BICYCLE`, `MOTORCYCLE`."
                          },
                          "make": {
                            "type": "string",
                            "description": "Vehicle manufacturer."
                          },
                          "model": {
                            "type": "string",
                            "description": "Vehicle model."
                          },
                          "color": {
                            "type": "string",
                            "description": "Vehicle colour."
                          },
                          "licensePlate": {
                            "type": "string",
                            "description": "Vehicle licence plate."
                          },
                          "isAutonomous": {
                            "type": "boolean",
                            "description": "`true` when the delivery is fulfilled by an autonomous vehicle."
                          }
                        }
                      }
                    }
                  },
                  "handoffInstructions": {
                    "type": "string",
                    "description": "Instructions for handing the order to the courier."
                  },
                  "passcode": {
                    "type": "string",
                    "description": "Passcode the courier presents at pickup, where applicable."
                  },
                  "updatedOrigin": {
                    "type": "integer",
                    "description": "The source from where the update is coming:\n\n- `1` = POS\n- `2` = Channel\n- `3` = DMA\n- `4` = Driver\n- `5` = Internal\n- `6` = Delivery System\n- `7` = Manual\n- `8` = KDS\n- `9` = Bill to Order Status"
                  },
                  "rawDriverUpdate": {
                    "type": "string",
                    "description": "Raw courier update as received from the delivery service, as a JSON string."
                  }
                }
              },
              "examples": {
                "courierUpdate": {
                  "summary": "Courier Update",
                  "description": "Where delivery platforms provide courier statuses or a 3rd party 'Dispatch' service is enabled, the details of the delivery progress will be sent whenever they change",
                  "value": {
                    "received": "yyyy-MM-ddTHH:mm:ss.SSSSSSZ",
                    "orderId": "62********************e4",
                    "pickupTime": "yyyy-MM-ddTHH:mm:ss.SSSSSSZ",
                    "deliveryTime": "yyyy-MM-ddTHH:mm:ss.SSSSSSZ",
                    "location": "61********************r2",
                    "courier": {
                      "firstName": "",
                      "lastName": "",
                      "phoneNumber": "",
                      "deliveryBy": "Uber Eats",
                      "status": 83,
                      "lastKnownLocation": {
                        "coordinates": [
                          -84.1187,
                          34.4212
                        ]
                      },
                      "vehicle": {
                        "type": "CAR",
                        "make": "Volkswagen",
                        "model": "Passat",
                        "color": "Silver",
                        "licensePlate": "H808AGE",
                        "isAutonomous": false
                      }
                    },
                    "handoffInstructions": "",
                    "passcode": "",
                    "updatedOrigin": 2,
                    "rawDriverUpdate": "{}"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Return a `2xx` status to acknowledge receipt."
          }
        },
        "deprecated": false,
        "x-readme": {
          "explorer-enabled": false,
          "code-samples": [
            {
              "language": "json",
              "name": "Courier Update",
              "code": "{\n  \"received\": \"yyyy-MM-ddTHH:mm:ss.SSSSSSZ\",\n  \"orderId\": \"62********************e4\",\n  \"pickupTime\": \"yyyy-MM-ddTHH:mm:ss.SSSSSSZ\",\n  \"deliveryTime\": \"yyyy-MM-ddTHH:mm:ss.SSSSSSZ\",\n  \"location\": \"61********************r2\",\n  \"courier\": {\n    \"firstName\": \"\",\n    \"lastName\": \"\",\n    \"phoneNumber\": \"\",\n    \"deliveryBy\": \"Uber Eats\",\n    \"status\": 83,\n    \"lastKnownLocation\": {\n      \"coordinates\": [\n        -84.1187,\n        34.4212\n      ]\n    },\n    \"vehicle\": {\n      \"type\": \"CAR\",\n      \"make\": \"Volkswagen\",\n      \"model\": \"Passat\",\n      \"color\": \"Silver\",\n      \"licensePlate\": \"H808AGE\",\n      \"isAutonomous\": false\n    }\n  },\n  \"handoffInstructions\": \"\",\n  \"passcode\": \"\",\n  \"updatedOrigin\": 2,\n  \"rawDriverUpdate\": \"{}\"\n}",
              "correspondingExample": "courierUpdate"
            }
          ]
        },
        "security": []
      }
    },
    "https://yourwebhook.com/store_status": {
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Store Status",
        "description": "Sends each change when a store opens or closes on a channel.",
        "operationId": "store_store_status",
        "parameters": [
          {
            "name": "Content-Type",
            "in": "header",
            "description": "application/json",
            "schema": {
              "type": "string",
              "default": "application/json"
            }
          },
          {
            "name": "Accept",
            "in": "header",
            "description": "application/json",
            "schema": {
              "type": "string",
              "default": "application/json"
            }
          },
          {
            "name": "User-Agent",
            "in": "header",
            "required": true,
            "description": "Identifies Deliverect as the sender, in the format `Deliverect/{version}`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Server-Authorization-HMAC-SHA256",
            "in": "header",
            "required": true,
            "description": "Signature of the raw request body using your shared secret; recompute it on receipt to verify the request came from Deliverect (see <a href=\"https://developers.deliverect.com/reference/hmac-authentication\" target=\"_blank\" rel=\"noopener noreferrer\">HMAC authentication guide</a>).",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "storeStatusSyncUpdates": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "eventTime": {
                          "type": "string",
                          "format": "date-time",
                          "description": "Time stated in UTC is when the sync occurred in Deliverect or when the store changed status, depending on which timestamp is the more accurate measurement, in the format `yyyy-MM-ddTHH:mm:ss.SSSSSSZ`."
                        },
                        "event": {
                          "type": "string",
                          "enum": [
                            "storeClosed",
                            "storeOpened"
                          ],
                          "description": "The values will be either `\"storeClosed\"` or `\"storeOpened\"`"
                        },
                        "source": {
                          "type": "string",
                          "enum": [
                            "external",
                            "deliverect"
                          ],
                          "description": "The values will be;\n\n- `\"external\"` = Deliverect identified a change in store status (typically via polling)\n- `\"deliverect\"` = A Deliverect user or API user has changed the store status."
                        },
                        "reason": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "A string specifying any specific reason (if available) e.g. for example `noDriversAvailable`, `closedByUser`"
                        },
                        "averageDeliveryTime": {
                          "type": [
                            "string",
                            "null"
                          ],
                          "description": "If available, the average delivery time for a store."
                        },
                        "channelLinkId": {
                          "type": "string",
                          "description": "<Glossary>channelLinkId</Glossary> is Deliverect's unique identifier of an individual store in a location"
                        },
                        "locationId": {
                          "type": "string",
                          "description": "<Glossary>locationId</Glossary> is Deliverect's unique ID of the customer location"
                        },
                        "posLocationId": {
                          "type": "string",
                          "description": "<Glossary>posLocationId</Glossary> is an identifier of the location known on the POS side, it is stored within the POS config in Deliverect"
                        },
                        "channel": {
                          "type": "integer",
                          "description": "<Glossary>Channel</Glossary> is the global identifier of the channel platform see [Get Integrated Channels](https://developers.deliverect.com/v1.1-restaurants/reference/channel-integrators)"
                        }
                      }
                    },
                    "description": "Store status changes included in this event."
                  }
                }
              },
              "examples": {
                "storeClosed": {
                  "summary": "Store Closed Example",
                  "value": {
                    "storeStatusSyncUpdates": [
                      {
                        "eventTime": "yyyy-MM-ddTHH:mm:ss.SSSSSSZ",
                        "event": "storeClosed",
                        "source": "external",
                        "reason": null,
                        "averageDeliveryTime": null,
                        "channelLinkId": "61********************c3",
                        "locationId": "61********************b4",
                        "posLocationId": "",
                        "channel": 1
                      }
                    ]
                  }
                },
                "storeOpened": {
                  "summary": "Store Opened Example",
                  "value": {
                    "storeStatusSyncUpdates": [
                      {
                        "eventTime": "yyyy-MM-ddTHH:mm:ss.SSSSSSZ",
                        "event": "storeOpened",
                        "source": "external",
                        "reason": null,
                        "averageDeliveryTime": null,
                        "channelLinkId": "61********************c3",
                        "locationId": "61********************b4",
                        "posLocationId": "",
                        "channel": 1
                      }
                    ]
                  }
                }
              }
            }
          },
          "description": "Sent by Deliverect as a JSON payload."
        },
        "responses": {
          "200": {
            "description": "Return a `2xx` status to acknowledge receipt."
          }
        },
        "deprecated": false,
        "x-readme": {
          "explorer-enabled": false,
          "code-samples": [
            {
              "language": "json",
              "name": "Store Closed Example",
              "code": "{\n    \"storeStatusSyncUpdates\": [\n        {\n            \"eventTime\": \"yyyy-MM-ddTHH:mm:ss.SSSSSSZ\",\n            \"event\": \"storeClosed\",\n            \"source\": \"external\",\n            \"reason\": null,\n            \"averageDeliveryTime\": null,\n            \"channelLinkId\": \"61********************c3\",\n            \"locationId\": \"61********************b4\",\n            \"posLocationId\": \"\",\n            \"channel\": 1\n        }\n    ]\n}",
              "correspondingExample": "storeClosed"
            },
            {
              "language": "json",
              "name": "Store Opened Example",
              "code": "{\n    \"storeStatusSyncUpdates\": [\n        {\n            \"eventTime\": \"yyyy-MM-ddTHH:mm:ss.SSSSSSZ\",\n            \"event\": \"storeOpened\",\n            \"source\": \"external\",\n            \"reason\": null,\n            \"averageDeliveryTime\": null,\n            \"channelLinkId\": \"61********************c3\",\n            \"locationId\": \"61********************b4\",\n            \"posLocationId\": \"\",\n            \"channel\": 1\n        }\n    ]\n}",
              "correspondingExample": "storeOpened"
            }
          ]
        },
        "security": []
      }
    }
  }
}
```