Insert/update products

Insert/update Products

The 'Source of Truth' in terms of product data and structure is almost always sourced from an integrated POS system. When a POS successfully syncs products with their unique identifiers (PLUs), these will be selected by the customer for inclusion in their menu(s).

In turn, orders will be created with these same PLUs and injected into the POS via an 'Order Webhook'

This process does not necessarily need a complete transfer of products stored in the POS, but can involve only a subset of products i.e. 'Online Only products' which a customer can possibly flag as being suitable for selling online.

ⓘ Endpoint Behaviour
Every call to this endpoint will either; create, update or delete products, based on the products that already exist in the specified location.

Product Model

For a full list of all product attributes, see the link below;

▶ See Product Model

Account and Location ID

As you can see from the examples the Deliverect"accountId" and "locationId" are both set in the body content. These IDs are required and should be obtained via the Register POS webhook.

Deleting products

There is currently no way to directly delete a product. To achieve the desired effect, a list of products can be pushed again, in which products "to be deleted" are omitted.

Duplicate products

Where a duplicate PLU exists, the product sync will proceed, but only one of the duplicated items will be created.

Preview

It is possible to preview how many products will be created, update or deleted without actually applying any updates to the products within Deliverect.

To do this, add an extra url parameter ?previewSync and set to true e.g. https://api.staging.deliverect.com/productAndCategories?previewSync=true

Sample response shown in the examples to the right

Force Update

By default, any product will be deleted if not included in the product data synced, but existing in Deliverect.

Deliverect allows for a precaution to identify if more than 30% of existing items will be deleted and returns a warning in the response.

To apply a precaution to all sync requests, add ?forceUpdate and set to false e.g. https://api.staging.deliverect.com/productAndCategories?forceUpdate=false

{
    "error": "Product Sync aborted: Too many products 17 would be deleted.\nThis may affect your menus and is irreversible. If you still want to proceed, please use the \"Force Sync\" option."
}

Product sync (GET Products)

We require that all POS partners can call this endpoint with POS products in response to a GET Request from Deliverect. See the section on Sync Products here

Product Configurations

For more detailed guidelines on how to structure products and set e.g. price, tax, combos etc see the page below;

▶ See Product Configurations
ⓘ Menus vs Products
We do expect products to be sourced from a POS, but don't have a facility to push structured menus built within a POS into Deliverect. This process of 'Menu Building' is fully handled in Deliverect see guide on this here
Language
Credentials
OAuth2
Click Try It! to start a request and see the response here!