Create Basket

Purpose

Creates a Basket for a specified store to validate content, if successfully validated, an id is returned that will be used when proceeding to Checkout Basket

Basket Ids Expiry
Basket IDs become invalid once they are used in a completed checkout. If they are not used, they will remain valid for up to 45 days.

Fulfilment types

TypeDefinition
deliveryFor delivery orders (including those handled by 3rd party dispatch platforms)
pickupWill be collected i.e. for takeaway (can apply for Kiosk orders)
curbsideWill be as per pickup, but specific handoff to customer in vehicle
eatInCustomer will be ordering on-premise e.g. QR Code ordering
driveThruCustomers will be submitting an order in a drive-thru format

Basket Items

A basket can be first created without items and updated later via Update Basket - Item(s) Below are examples showing the minimum requirements for an initial basket to be created per fulfilment type:

{
    "channelLinkId": "67********************2c",
    "fulfillment": {
        "type": "delivery"
    }
}
{
    "channelLinkId": "67********************2c",
    "fulfillment": {
        "type": "pickup",
        "pickupNotes": "Yellow Honda"
    }
}
{
    "channelLinkId": "67********************2c",
    "fulfillment": {
        "type": "curbside",
        "pickupNotes": "Yellow Honda"
    }
}
{
    "channelLinkId": "67********************2c",
    "fulfillment": {
        "type": "eatIn",
        "spot": "table-5"
    }
}

Basket Validation

The combination of storeId and a valid menuId will provide the required reference to validate basket items in the following criteria;

  • Items are available and valid for the "fulfillment.type" specified.
  • Item selections comply with menu rules, e.g, minimum and maximum values
  • Requested times fall within store operating hours
  • Fulfilment type specified is offered by the store

Pre-defined charges

Extra charges can be applied automatically if configured in Deliverect.

ChargeDefinition
Delivery FeeCost of delivery payable by the customer
Service ChargeAny additional charges levied e.g. transaction fees
Bag FeeUnique charge for provision of packaging for orders

Tax Calculation

In certain 'Tax Exclusive' regions e.g. US/Canada, the complete calculate tax totals can be serviced via the integrated POS. This will be factored into "payment.total" and a specific breakdown of tax code will be returned within "taxes": []

Enquire for Specific POS Support
Tax calculation is supported by most major POS integrations, but availability depends on the capabilities of each POS. Enquire with your Deliverect contact to confirm support for your specific POS.

"payment": {
  "tips": [],
  "donationTotal": 0,
  "discountsTotal": 0,
  "chargesTotal": 0,
  "taxTotal": 43,
  "tipTotal": 0,
  "subTotal": 618,
  "total": 661
},
"taxes": [
  {
    "name": "GST",
    "amount": 43
  }
]

Group Basket

To support group ordering, a list of customers participating in a group order can be submitted, see the guide below for further information on the group ordering format.

Path Params
string
required
Body Params
string
required

A storeId is the unique identifier for a store–channel (ordering platform) at a specific location, and may also be referenced as channelLinkId.

To retrieve the stores existing on a specific location, use Get Stores.

string

Alternative to storeId.

fulfillment
object

Defines how the order will be fulfilled.

string

Identifier of the dining spot (such as a table number).

Required when type = "eatIn".

string

Optional free-text field that contains special instructions or comments from the customer about the order (e.g., cooking preferences, dietary requests, packaging notes).

items
array of objects

List of products the customer wants to order.

items
customer
object

Information about the customer placing the order.

Responses

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