Create / Cancel Order

Create a new order for a linked location.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Your channel integration can use this endpoint to place a new order or process a cancellation of an existing order. See examples listed on the right hand side of this page.

Channel 'Scope'

The channelName represents the Scope provided to create orders.

If the channelname used is invalid or does not have access to an account, the request is considered unauthorised. Remember to write the channelname in lowercase letters.

Channel Link ID

The {channelLinkId} is the unique identifier of the channel in the restaurant location. Obtained via a registration webhook event delivered via Register Channel

If the channelLinkId used is invalid or has not been made available to your partner account, the request is considered unauthorised.

Order Types

Depending on the format of the order created, the relevant orderType should be sent;

TypeInteger Value
pick up1
delivery2
Eat-in3
Curbside4
Drive Thru5
❗️

Order Response

All orders sent in a valid format with correct scope applied will receive a 201. This does not indicate the POS has successfully processed the order, you should reference the events sent to your 'Order Status Update' webhook to understand if successful.

Request Parameters

See full list of order attributes;

â–¶ See Order Model

Payments

Details on processing discounts, payments, taxes or other charges in the guide below;

â–¶ Payments, Discounts, Taxes etc.

Create Orders for 3rd Party Dispatch / Last Mile Fulfillment

For platforms who don't directly handle delivery or aren't currently offering this order type, Deliverect allows for an order to be routed to an integrated 'Dispatch' service.

Standalone Integration

Our Dispatch functionality can be integrated as a “Standalone” solution, enabling full courier assignment and delivery, whilst bypassing POS order injection. This approach is suitable for scenarios such as:

  • First-party ordering that already integrates with your POS via an existing direct integration
  • Phone orders entered directly into your POS that require delivery

Follow the link below to find out more about this option;

â–¶ See how to Create Orders for Dispatch

Processing Channel Cancelations

Your channel integration can process a cancellation using the same endpoint used create a new order

Sending a secondary order with the same channelOrderId and "status": 100 (Cancel) will initiate a POS cancellation request which typically involves 'voiding' the order.

Once the cancellation is processed by the POS, a status CANCELED (110) will be returned to confirm this has been handled. See Update Order Status Webhook on how to receive this, and other statuses from the POS.

❗️

Cancelling Already Accepted Orders

Once an order has been accepted by the POS, it is often operationally impossible to halt preparation of the order. We therefore advice order cancellations should not be attempted once the status of 'Accepted' (20) or higher has been returned.

NB: There is no validation on our side to prevent cancellation requests based on the order status

Path Params
string
required
Defaults to {channelName}

A unique scope provided to channel integrators to create orders in authorised locations

string
required
Defaults to {channelLinkId}

The unique identifier of the channel in a specific location.

Body Params
string
required

The full unique ID from the ordering channel.

string
required

A humanly-readable order reference.

string

Validation ID returned from dispatch validation when used.

integer
required

Order type. Use 1 for pickup, 2 for delivery, 3 for eat-in, and 4 for curbside.

boolean
string
string
string
string
required

Who delivers the order.

boolean
deliveryAddress
object
deliveryInfo
object
integer
payment
object
required
taxes
array of objects
taxes
integer
items
array of objects
items
boolean
string
boolean
string
integer
customer
object
integer
integer
integer
integer
integer
integer
integer
integer
discounts
array of objects
discounts
Responses
200

Successful response

Language
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json