List Bill Items
The Tables API is now archived. For up-to-date Pay at Table integrations, please use the Dojo API and EPOS Data API:
The EPOS system is expected to provide a list of multiple bills for the specified session. If no session is specified, it will return
a list of all bills. In the other bill operations, the billItems
schema object is a singular parameter. In ListBillItems
, it is an array, so
the parameter can be repeated multiple times, for multiple bills.
- SUB /ListBillItems
- PUB /ListBillItems
The request for ListBillItems
does not prompt error responses. It will instead return an empty list.
- Receive a
listBillItemsRequest
from Dojo. - The EPOS should respond with a
listBillItemsResponse
.
{
"jsonrpc": "2.0",
"id": "ef096ffe-ac06-425c-b5c7-1354ca78c3e3",
"method": "ListBillItems",
"params": {
"sessionIds": [
"123e4567-e89b-12d3-a456-426614174000"
],
"requestorInfo": {
"requestorType": "REQUESTOR_TYPE_CARD_MACHINE",
"cardMachineRequestorInfo": {
"terminalId": "123123",
"waiterId": 1
}
}
}
}
- Upon receiving the
ListBillItems
request, the server verifies the session's existence. - If no bills are found or the specified sessions do not exist, the EPOS system should return an empty list.
- If the
sessionIds
parameter is omitted, the EPOS system should return all available bills. - If the session and bill exist, the server sends a
listBillItemsResponse
containing a list of items.
{
"jsonrpc": "2.0",
"id": "ef096ffe-ac06-425c-b5c7-1354ca78c3e3",
"result": {
"billItems": [
{
"totalAmount": 950,
"paidAmount": 100,
"taxAmount": 190,
"currency": "GBP",
"items": [
{
"id": "123456789",
"name": "Classic Burger",
"category": [
"mains",
"burgers"
],
"quantity": 1,
"amountPerItem": 1000,
"lastOrderedAt": "2021-01-01T15:00:00.123+02:00",
"modifiers": [
{
"id": "mod-987654321",
"name": "Extra Cheddar Cheese",
"amountPerModifier": 100,
"quantity": 3
}
]
},
{
"id": "987654321",
"name": "Peroni",
"category": [
"drinks",
"beer",
"lager"
],
"quantity": 1,
"amountPerItem": 450,
"lastOrderedAt": "2021-01-01T15:00:00.123+02:00"
},
{
"id": "987654321",
"name": "Peroni",
"category": [
"drinks",
"beer",
"lager"
],
"quantity": 1,
"amountPerItem": 0,
"lastOrderedAt": "2021-01-01T15:00:00.123+02:00",
"modifiers": [
{
"id": "mod-123123",
"name": "Buy 1 get 1 free!",
"amountPerModifier": -450,
"quantity": 1
}
]
},
{
"id": "00000001",
"name": "£5 Voucher",
"category": [
"discounts",
"vouchers"
],
"quantity": 1,
"amountPerItem": -500,
"lastOrderedAt": "2021-01-01T15:00:00.123+02:00"
}
],
"sessionId": "123e4567-e89b-12d3-a456-426614174000"
}
]
}
}