Bookings
Table reservation and booking data.
Fields
| Field | Type | Required | Version | Description |
|---|---|---|---|---|
id |
guid | Yes | 1.1 | Unique GUID for reservation |
status |
enum | Yes | 1.1 | Booking status (see values below) |
table_ids |
array | No | 1.1 | Array of table IDs assigned to booking |
order_ids |
array | No | 1.1.1 | Array of associated Sales Order IDs |
scenario_name |
string | No | 1.1 | Booking scenario name |
booking_channel |
string | No | 1.1 | Source channel for booking |
booking_channel_identifier |
string | No | 1.1 | Channel details (email, phone, API name) |
booked_from |
date | No | 1.1 | Booking start time |
guest_count |
integer | No | 1.1 | Number of adult guests |
guest_count_kids |
integer | No | 1.1 | Number of child guests |
guest_name |
string | No | 1.1 | Guest name |
guest_email |
string | No | 1.1.1 | Guest email address |
guest_phone |
string | No | 1.1.1 | Guest phone number |
guest_groups |
array | No | 1.1.1 | Guest group memberships |
guest_types |
array | No | 1.1.1 | Guest type identifiers |
guest_tags |
array | No | 1.1.1 | Guest tags |
short_key |
integer | No | 1.1 | Short key identifier |
first_order_at |
date | No | 1.2 | First item added timestamp |
seated_at |
date | No | 1.2 | Guest seated timestamp |
waitListOrigin |
boolean | No | 1.2 | Was on waitlist before booking |
lastOrderAt |
date | No | 1.2 | Last item added timestamp |
billPrintedAt |
date | No | 1.2 | Guest bill printed timestamp |
customer_id |
integer | Yes | 1.1 | Reference to Customer |
business_unit_id |
integer | No | 1.1 | Reference to BusinessUnit |
Status Values
| Status | Description |
|---|---|
not_registered |
Booking not yet registered |
waitlist |
Guest on waitlist |
registered |
Booking registered |
confirmation_requested |
Confirmation requested from guest |
confirmed |
Guest confirmed booking |
waiting |
Guest arrived, waiting for table |
seated |
Guest seated at table |
guest_bill_printed |
Bill printed for guest |
closed |
Booking completed |
no_show |
Guest did not arrive |
cancelled |
Booking cancelled |
Booking Channels
| Channel | Description |
|---|---|
booking_app |
Mobile booking app |
api |
External API integration |
pos |
Created at POS terminal |
widget |
Website booking widget |
Example - Standard Reservation
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"status": "confirmed",
"table_ids": [5, 6],
"order_ids": [],
"scenario_name": "Dinner Service",
"booking_channel": "widget",
"booking_channel_identifier": "guest@email.com",
"booked_from": "2024-12-03T19:00:00Z",
"guest_count": 4,
"guest_count_kids": 2,
"guest_name": "John Smith",
"guest_email": "john.smith@email.com",
"guest_phone": "+47 123 45 678",
"guest_groups": ["VIP"],
"guest_types": ["regular"],
"guest_tags": ["birthday"],
"short_key": 1234,
"first_order_at": null,
"seated_at": null,
"waitListOrigin": false,
"lastOrderAt": null,
"billPrintedAt": null,
"customer_id": 12345,
"business_unit_id": 10
}
Example - Completed Booking
{
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"status": "closed",
"table_ids": [12],
"order_ids": ["order-guid-001", "order-guid-002"],
"scenario_name": "Lunch Service",
"booking_channel": "pos",
"booking_channel_identifier": "terminal-3",
"booked_from": "2024-12-03T12:00:00Z",
"guest_count": 2,
"guest_count_kids": 0,
"guest_name": "Walk-in",
"guest_email": null,
"guest_phone": null,
"guest_groups": [],
"guest_types": [],
"guest_tags": [],
"short_key": 1235,
"first_order_at": "2024-12-03T12:05:00Z",
"seated_at": "2024-12-03T12:00:00Z",
"waitListOrigin": false,
"lastOrderAt": "2024-12-03T12:45:00Z",
"billPrintedAt": "2024-12-03T13:00:00Z",
"customer_id": 12345,
"business_unit_id": 10
}
Example - Waitlist to Seated
{
"id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"status": "seated",
"table_ids": [8],
"order_ids": ["order-guid-003"],
"scenario_name": "Dinner Service",
"booking_channel": "booking_app",
"booking_channel_identifier": "+47 987 65 432",
"booked_from": "2024-12-03T18:30:00Z",
"guest_count": 3,
"guest_count_kids": 1,
"guest_name": "Maria Johnson",
"guest_email": "maria.j@email.com",
"guest_phone": "+47 987 65 432",
"guest_groups": [],
"guest_types": ["new"],
"guest_tags": [],
"short_key": 1236,
"first_order_at": "2024-12-03T18:45:00Z",
"seated_at": "2024-12-03T18:40:00Z",
"waitListOrigin": true,
"lastOrderAt": null,
"billPrintedAt": null,
"customer_id": 12345,
"business_unit_id": 10
}
Related Entities
- Customer - Parent customer/tenant (masterdata)
- BusinessUnit - Location reference (masterdata)
- Table - Table references (masterdata)
- BookingVenue - Venue configuration (masterdata)
- BookingScenario - Scenario configuration (masterdata)
- Orders - Associated sales orders