Generates a unique basket ID for checkout by validating order details, applying taxes, store charges and performing basket calculations.
Basket ID
If basket validation is successful, an id is returned that will be used when proceeding to Checkout Basket
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
| Type | Definition |
|---|---|
delivery | Commerce platform will be arranging delivery |
pickup | Will be collected i.e. for takeaway (can apply for Kiosk orders) |
curbside | Will be as per pickup, but specific handoff to customer in vehicle |
eat-in | Customer will be ordering on-premise e.g. QR Code ordering |
dispatch | Distinct from 'Delivery' where Deliverect will be facilitating delivery via an integrated Dispatch partner |
Below are examples showing the minimum requirements for an initial basket to be created per fulfilment type:
{
"storeId": "67********************2c",
"fulfillment": {
"type": "delivery"
}
}{
"storeId": "67********************2c",
"fulfillment": {
"type": "dispatch",
"address": {
"line": "5030 W Lovers Ln, Dallas, TX 75209, US",
"coordinates": [
32.850713,
-96.828014
],
"note": "first floor, left door, happy dog"
},
"offer": {
"validationId": "62********************3w",
"available": true,
"expiresAt": "YYYY-MM-DDTHH:mm:ss.SSSSSSZZ",
"pickupTimeETA": "YYYY-MM-DDTHH:mm:ss.SSSSSSZ",
"deliveryTimeETA": "YYYY-MM-DDTHH:mm:ss.SSSSSSZ",
"price": 0
}
},
"items": []
}{
"storeId": "67********************2c",
"fulfillment": {
"type": "pickup"
}
}{
"storeId": "67********************2c",
"fulfillment": {
"type": "curbside",
"pickupNotes": "Yellow Honda"
}
}{
"storeId": "67********************2c",
"fulfillment": {
"type": "eatIn",
"spot": "table-5"
}
}Pre-defined charges
Extra charges can be applied automatically if configured in Deliverect.
| Charge | Definition |
|---|---|
| Delivery Fee | Cost of delivery payable by the customer |
| Service Charge | Any additional charges levied e.g. transaction fees |
| Bag Fee | Unique charge for provision of packaging for orders |
Validations
Certain validations will be run against the current basket, based on the order and it's content. This ensures the order is valid and conforms to the following:
- Item selections comply with menu rules, e.g, minimum and maximum values
- Requested times fall within store operating hours
- Fulfilment types are available at the store
Items
The combination of storeId and a valid menuId will provide the required reference to validate basket items. A basket can be first created without items and updated later via PATCH Items
View this guide for instructions on updating a basket before checkout.