Fulfillment Types
There are four fulfilment types available.
- Fulfilled by Deliveroo (
"deliveroo"
): The order is picked up and delivered by a Deliveroo rider. - Pick-up/Collection (
"customer"
): The Deliveroo customer picks up the order from the restaurant. - Restaurant Fulfilment/Marketplace (
"restaurant"
): The restaurant's fleet delivers the order.
Of these four fulfillment types, "deliveroo", "customer", and "table_service" share a similar webhook payload structure. The webhook payload for the fulfilment type "restaurant" includes several additional fields.
Example Webhook Payloads
{
"event": "order.new",
"body": {
"order": {
"id": "gb:32498deb-d730-4dfb-b034-38f2d24f5bfd",
"order_number": "28401753",
"location_id": "348502bd-708f-4977-a02c-600c5419e2b7",
"display_id": "1753",
"status": "placed",
"status_log": [
{
"at": "2022-03-07T16:12:12Z",
"status": "pending"
},
{
"at": "2022-03-07T16:12:13Z",
"status": "placed"
}
],
"fulfillment_type": "deliveroo",
"order_notes": "No pickles please.",
"cutlery_notes": "NO CUTLERY",
"asap": true,
"prepare_for": "2022-03-07T16:36:15Z",
"subtotal": {
"fractional": 1770,
"currency_code": "GBP"
},
"partner_order_subtotal": {
"fractional": 1770,
"currency_code": "GBP"
},
"total_price": {
"fractional": 1140,
"currency_code": "GBP"
},
"partner_order_total": {
"fractional": 1140,
"currency_code": "GBP"
},
"offer_discount": {
"fractional": 630,
"currency_code": "GBP"
},
"cash_due": {
"fractional": 0,
"currency_code": "GBP"
},
"bag_fee": {
"fractional": 0,
"currency_code": "GBP"
},
"fee_breakdown": [
{
"type": "DEPOSIT_FEE",
"amount": {
"fractional": 50,
"currency_code": "EUR"
}
}
],
"items": [
{
"pos_item_id": "4534.0",
"quantity": 2,
"name": "The Chicken Burger",
"operational_name": "The Chicken Burger (Wraps and Burgers)",
"unit_price": {
"fractional": 630,
"currency_code": "GBP"
},
"menu_unit_price": {
"fractional": 630,
"currency_code": "GBP"
},
"total_price": {
"fractional": 885,
"currency_code": "GBP"
},
"discount_amount": {
"fractional": 630,
"currency_code": "GBP"
},
"item_fees": [
{
"type": "DEPOSIT_FEE",
"cost_per_unit": {
"fractional": 25,
"currency_code": "EUR"
}
}
],
"modifiers": [
{
"pos_item_id": "99.0",
"quantity": 1,
"name": "Fries",
"operational_name": "Fries - Salted",
"unit_price": {
"fractional": 255,
"currency_code": "GBP"
},
"total_price": {
"fractional": 255,
"currency_code": "GBP"
},
"discount_amount": {
"fractional": 0,
"currency_code": "GBP"
},
"item_fees": [
{
"type": "DEPOSIT_FEE",
"cost_per_unit": {
"fractional": 25,
"currency_code": "EUR"
}
}
],
}
]
}
],
"start_preparing_at": "2022-03-07T16:12:15Z",
"promotions": [
{
"id": "fb9fa099-15c3-4995-a2a6-c81c7f666a52",
"type": "percentage_off_on_items",
"value": 50,
"pos_item_ids": [
{
"id": "4534.0"
}
]
}
],
"is_tabletless": false,
"customer": {
"first_name": "TestCustomer",
"contact_number": "442033195035",
"contact_access_code": "212140319",
"order_frequency_at_site": "NEW CUSTOMER",
"loyalty":{
"card_number": "XXXX"
}
},
"meal_cards": [
{
"provider": "EDENRED",
"amount": 100
}
]
}
}
}
{
"event": "order.new",
"body": {
"order": {
"id": "gb:3bbdb697-792a-4519-9081-34e2c6087e42",
"order_number": "28948090",
"location_id": "123",
"display_id": "8090",
"status": "placed",
"status_log": [
{
"at": "2022-05-18T08:10:50Z",
"status": "pending"
},
{
"at": "2022-05-18T08:10:51Z",
"status": "placed"
}
],
"fulfillment_type": "customer",
"order_notes": "No pickles please.",
"cutlery_notes": "NO CUTLERY",
"asap": true,
"prepare_for": "2022-05-18T08:26:18Z",
"total_price": {
"fractional": 1455,
"currency_code": "GBP"
},
"partner_order_total": {
"fractional": 1455,
"currency_code": "GBP"
},
"partner_order_subtotal": {
"fractional": 1455,
"currency_code": "GBP"
},
"offer_discount": {
"fractional": 0,
"currency_code": "GBP"
},
"cash_due": {
"fractional": 0,
"currency_code": "GBP"
},
"bag_fee": {
"fractional": 0,
"currency_code": "GBP"
},
"items": [
{
"pos_item_id": "4534.0",
"quantity": 1,
"name": "The Chicken Burger",
"operational_name": "The Chicken Burger (Wraps and Burgers)",
"unit_price": {
"fractional": 1200,
"currency_code": "GBP"
},
"menu_unit_price": {
"fractional": 1200,
"currency_code": "GBP"
},
"total_price": {
"fractional": 1455,
"currency_code": "GBP"
},
"discount_amount": {
"fractional": 0,
"currency_code": "GBP"
},
"modifiers": [
{
"pos_item_id": "99.0",
"quantity": 1,
"name": "Fries - Salted",
"operational_name": "Fries - Salted",
"unit_price": {
"fractional": 255,
"currency_code": "GBP"
},
"total_price": {
"fractional": 255,
"currency_code": "GBP"
},
"discount_amount": {
"fractional": 0,
"currency_code": "GBP"
}
}
]
}
],
"start_preparing_at": "2022-05-18T08:20:18Z",
"is_tabletless": false,
"customer": {
"first_name": "TestCustomer",
"contact_number": "442033195035",
"contact_access_code": "212140319",
"order_frequency_at_site": "NEW CUSTOMER",
"loyalty":{
"card_number": "XXXX"
}
}
}
}
}
{
"event": "order.new",
"body": {
"order": {
"id": "gb:f976b935-ed1d-4fda-a9f2-526569c75bf1",
"order_number": "28948075",
"location_id": "123",
"display_id": "8075",
"status": "placed",
"status_log": [
{
"at": "2022-05-18T08:03:13Z",
"status": "pending"
},
{
"at": "2022-05-18T08:03:14Z",
"status": "placed"
}
],
"fulfillment_type": "restaurant",
"order_notes": "Please remove pickles.",
"cutlery_notes": "NO CUTLERY",
"asap": true,
"prepare_for": "2022-05-18T08:18:41Z",
"subtotal": {
"fractional": 885,
"currency_code": "GBP"
},
"delivery": {
"delivery_fee": {
"fractional": 79,
"currency_code": "GBP"
},
"delivery_notes": "Please leave at doorstep.",
"line1": "East Mews",
"line2": "",
"city": "Birmingham",
"postcode": "B24PX",
"contact_number": "442033195000",
"contact_access_code": "212140300",
"deliver_by": "2022-05-18T08:18:41Z",
"customer_name": "John D.",
"location": {
"latitude": 52.4777288355005,
"longitude": -1.89751785700835
}
},
"total_price": {
"fractional": 964,
"currency_code": "GBP"
},
"partner_order_total": {
"fractional": 964,
"currency_code": "GBP"
},
"partner_order_subtotal": {
"fractional": 964,
"currency_code": "GBP"
},
"offer_discount": {
"fractional": 0,
"currency_code": "GBP"
},
"cash_due": {
"fractional": 0,
"currency_code": "GBP"
},
"bag_fee": {
"fractional": 0,
"currency_code": "GBP"
},
"items": [
{
"pos_item_id": "4534.0",
"quantity": 1,
"name": "The Chicken Burger",
"operational_name": "The Chicken Burger (Wraps and Burgers)",
"unit_price": {
"fractional": 630,
"currency_code": "GBP"
},
"menu_unit_price": {
"fractional": 630,
"currency_code": "GBP"
},
"total_price": {
"fractional": 885,
"currency_code": "GBP"
},
"discount_amount": {
"fractional": 0,
"currency_code": "GBP"
},
"modifiers": [
{
"pos_item_id": "99.0",
"quantity": 1,
"name": "Fries",
"operational_name": "Fries - Salted",
"unit_price": {
"fractional": 255,
"currency_code": "GBP"
},
"total_price": {
"fractional": 255,
"currency_code": "GBP"
},
"discount_amount": {
"fractional": 0,
"currency_code": "GBP"
}
}
]
}
],
"start_preparing_at": "2022-05-18T08:10:41Z",
"is_tabletless": false,
"customer": {
"order_frequency_at_site": "NEW CUSTOMER"
}
}
}
}
{
"event": "order.status_update",
"body": {
"order": {
"id": "gb:32498deb-d730-4dfb-b034-38f2d24f5bfd",
"order_number": "28401753",
"location_id": "348502bd-708f-4977-a02c-600c5419e2b7",
"display_id": "1753",
"status": "canceled",
"status_log": [
{
"at": "2022-03-07T16:12:12Z",
"status": "pending"
},
{
"at": "2022-03-07T16:12:13Z",
"status": "placed"
},
{
"at": "2022-03-07T16:15:33.124795Z",
"status": "accepted"
},
{
"at": "2022-03-07T16:25:34.865695Z",
"status": "canceled"
}
],
"fulfillment_type": "deliveroo",
"order_notes": "No pickles please.",
"cutlery_notes": "NO CUTLERY",
"asap": true,
"prepare_for": "2022-03-07T16:36:15Z",
"total_price": {
"fractional": 1770,
"currency_code": "GBP"
},
"partner_order_total": {
"fractional": 1770,
"currency_code": "GBP"
},
"partner_order_subtotal": {
"fractional": 1770,
"currency_code": "GBP"
},
"offer_discount": {
"fractional": 630,
"currency_code": "GBP"
},
"cash_due": {
"fractional": 0,
"currency_code": "GBP"
},
"bag_fee": {
"fractional": 10,
"currency_code": "GBP"
},
"items": [
{
"pos_item_id": "4534.0",
"quantity": 2,
"name": "The Chicken Burger",
"operational_name": "The Chicken Burger (Wraps and Burgers)",
"unit_price": {
"fractional": 630,
"currency_code": "GBP"
},
"menu_unit_price": {
"fractional": 630,
"currency_code": "GBP"
},
"total_price": {
"fractional": 885,
"currency_code": "GBP"
},
"discount_amount": {
"fractional": 630,
"currency_code": "GBP"
},
"modifiers": [
{
"pos_item_id": "99.0",
"quantity": 1,
"name": "Fries",
"operational_name": "Fries - Salted",
"unit_price": {
"fractional": 255,
"currency_code": "GBP"
},
"total_price": {
"fractional": 255,
"currency_code": "GBP"
},
"discount_amount": {
"fractional": 0,
"currency_code": "GBP"
}
}
]
}
],
"start_preparing_at": "2022-03-07T16:16:15Z",
"promotions": [
{
"id": "fb9fa099-15c3-4995-a2a6-c81c7f666a52",
"type": "percentage_off_on_items",
"value": 50,
"pos_item_ids": [
{
"id": "4534.0"
}
]
}
],
"is_tabletless": false
}
}
}
In contrast, the webhook payload for the fulfilment type "restaurant" includes several additional fields.
{
"event": "new_order",
"location_id": "05VIN",
"restaurant_acknowledged_at": "2018-12-04T11:39:41Z",
"order": {
"id": "gb:df8849ae-5261-446d-9481-beb53a5cac35",
"display_id": "2206",
"order_number": "128102206",
"total_price": {
"fractional": 1375,
"currency_code": "EUR"
},
"partner_order_total": {
"fractional": 1375,
"currency_code": "EUR"
},
"partner_order_subtotal": {
"fractional": 1375,
"currency_code": "EUR"
},
"items": [
{
"pos_item_id": "1666",
"unit_price": {
"fractional": 595,
"currency_code": "EUR"
},
"quantity": 1,
"modifiers": [
{
"pos_item_id": "11010049",
"unit_price": {
"fractional": 95,
"currency_code": "EUR"
},
"menu_unit_price": {
"fractional": 95,
"currency_code": "EUR"
},
"quantity": 1,
"modifiers": [],
"discount_amount": {
"fractional": 0,
"currency_code": "EUR"
}
},
{
"pos_item_id": "109841",
"unit_price": {
"fractional": 0,
"currency_code": "EUR"
},
"quantity": 1,
"modifiers": [],
"discount_amount": {
"fractional": 0,
"currency_code": "EUR"
}
}
],
"discount_amount": {
"fractional": 119,
"currency_code": "EUR"
}
},
{
"pos_item_id": "11118914",
"unit_price": {
"fractional": 320,
"currency_code": "EUR"
},
"quantity": 1,
"modifiers": [],
"discount_amount": {
"fractional": 0,
"currency_code": "EUR"
}
},
{
"pos_item_id": "11123102",
"unit_price": {
"fractional": 365,
"currency_code": "EUR"
},
"quantity": 1,
"modifiers": [],
"discount_amount": {
"fractional": 0,
"currency_code": "EUR"
}
}
],
"asap": true,
"notes": "PAS DE COUVERTS",
"fulfillment_type": "deliveroo",
"cash_due": {
"fractional": 0,
"currency_code": "EUR"
},
"bag_fee": {
"fractional": 0,
"currency_code": "EUR"
},
"offer_discount": {
"amount": {
"fractional": 0,
"currency_code": "EUR"
}
},
"pickup_at": "2018-12-04T11:51:22Z",
"promotions": [
{
"id": "305ddb7a-e25e-4a6f-944e-68471a754c9e",
"type": "percentage_off_on_item",
"value": 20,
"pos_item_ids": [
{
"id": "1666"
}
]
}
]
}
}
{
"event": "new_order",
"location_id": "05VIN",
"restaurant_acknowledged_at": "2018-12-04T11:39:41Z",
"order": {
"id": "gb:df8849ae-5261-446d-9481-beb53a5cac35",
"display_id": "2206",
"order_number": "128102206",
"total_price": {
"fractional": 1390,
"currency_code": "EUR"
},
"partner_order_total": {
"fractional": 1390,
"currency_code": "EUR"
},
"partner_order_subtotal": {
"fractional": 1390,
"currency_code": "EUR"
},
"items": [
{
"pos_item_id": "1666",
"unit_price": {
"fractional": 1390,
"currency_code": "EUR"
},
"menu_unit_price": {
"fractional": 1390,
"currency_code": "EUR"
},
"quantity": 1,
"modifiers": [],
"discount_amount": {
"fractional": 0,
"currency_code": "EUR"
}
}
],
"asap": true,
"notes": "PAS DE COUVERTS",
"fulfillment_type": "customer",
"cash_due": {
"fractional": 0,
"currency_code": "EUR"
},
"offer_discount": {
"amount": {
"fractional": 0,
"currency_code": "EUR"
}
},
"pickup_at": "2018-12-04T11:51:22Z",
"promotions":[]
}
}
{
"event": "new_order",
"location_id": "98219",
"restaurant_acknowledged_at": "2019-01-09T17:32:25Z",
"order": {
"id": "gb:df8849ae-5261-446d-9481-beb53a5cac35",
"display_id": "7487",
"order_number": "128107487",
"total_price": {
"fractional": 1850,
"currency_code": "AUD"
},
"partner_order_total": {
"fractional": 1850,
"currency_code": "AUD"
},
"partner_order_subtotal": {
"fractional": 1850,
"currency_code": "AUD"
},
"items": [
{
"pos_item_id": "P308",
"unit_price": {
"fractional": 1850,
"currency_code": "AUD"
},
"menu_unit_price": {
"fractional": 1850,
"currency_code": "AUD"
},
"quantity": 1,
"modifiers": [
{
"pos_item_id": "CLASSIC",
"unit_price": {
"fractional": 0,
"currency_code": "AUD"
},
"quantity": 1,
"modifiers": [],
"discount_amount": {
"fractional": 0,
"currency_code": "AUD"
}
}
],
"discount_amount": {
"fractional": 0,
"currency_code": "AUD"
}
}
],
"asap": true,
"notes": "NO CUTLERY",
"fulfillment_type": "restaurant",
"cash_due": {
"fractional": 0,
"currency_code": "AUD"
},
"surcharge": {
"fractional": 0,
"currency_code": "AUD"
},
"offer_discount": {
"amount": {
"fractional": 0,
"currency_code": "AUD"
}
},
"delivery": {
"line1": "43 Bourke Street",
"line2": null,
"city": "Sydney",
"postcode": "2011",
"contact_number": "61390204492",
"contact_access_code": "82167508",
"deliver_by": "2019-01-09T17:47:50Z",
"customer_name": "Ben P.",
"delivery_fee": {
"fractional": 475,
"currency_code": "AUD"
},
"location": {
"latitude": -33.8699656,
"longitude": 151.2187173
},
"note": ""
},
"promotions":[]
}
}
Updated about 2 months ago
What’s Next