Skip to main content

List orders

Returns closed orders for a venue over a date range. Each order is returned with its checks, items, and totals.

GET /v1/pos/venue/{venueId}/order
Authorization: Bearer <token>

Path parameters

NameTypeNotes
venueIdstringMozrest venue identifier (must be in token scope)

Query parameters

NameTypeRequiredNotes
fromISO 8601 date or datetimeYesInclusive lower bound on the order's close time.
untilISO 8601 date or datetimeYesInclusive upper bound on the order's close time. Max window: 31 days. Larger windows return 400.
limitintegerNoPage size. Default 50, max 100.
offsetintegerNoPagination offset. Default 0.

The endpoint returns closed orders, ordered most recent first.

Response — 200 OK

{
"total": 124,
"orders": [
{
"id": "00ceefd4-8cc8-428b-985a-207b97cc3cba",
"status": "closed",
"tables": ["T 1"],
"partySize": 4,
"reservationDate": "2026-05-11T19:00:00+00:00",
"externalId": "POS-77321",
"prepayment": null,
"openAt": "2026-05-11T18:42:00+00:00",
"createdAt": "2026-05-11T18:42:00+00:00",
"updatedAt": "2026-05-11T20:15:32+00:00",
"checks": [
{
"id": "bd108973-9b22-4f8c-b7e2-ef36c65c8fa9",
"checkNumber": "1",
"status": "closed",
"totalAmount": 84.00,
"tax": 8.40,
"tip": 5.00,
"discount": 0.00,
"paymentMethod": "card",
"items": [
{ "id": 1, "name": "Tasting Menu", "price": 35.00, "quantity": 2 },
{ "id": 2, "name": "Wine Pairing", "price": 7.00, "quantity": 2 }
],
"closedAt": "2026-05-11T20:15:32+00:00",
"voidedAt": null,
"createdAt": "2026-05-11T18:42:00+00:00",
"updatedAt": "2026-05-11T20:15:32+00:00"
}
]
}
]
}

Order

FieldNotes
idMozrest canonical order ID (UUID). Stable.
statusAlways closed for this endpoint.
tablesPOS-side table identifiers the order was seated at (array of strings). May contain multiple values for merged tables.
partySizeGuest count if the POS reported it; otherwise null.
reservationDateThe reservation start time, when the order is linked to a Mozrest reservation. null for walk-ins.
externalIdPOS-side order identifier. Useful for reconciling with the POS's own reports.
prepaymentPre-paid amount, when the booking carried one. null otherwise.
openAtWhen the order was opened on the POS.
createdAt / updatedAtWhen Mozrest first persisted / last modified the order.
checksOne or more checks (split bills) on the order.

Check

FieldNotes
idCheck UUID.
checkNumberPOS-assigned check number. Unique within the order; not unique across the venue.
statusclosed or void.
totalAmountSubtotal before tax/tip/discount, in the venue's currency.
tax / tip / discountIndividual amounts, in the venue's currency.
paymentMethodFree-form (card, cash, wallet, …), as the POS reported. May be null.
itemsLine items on the check. id, name, price, quantity are the fields you can rely on across vendors; other fields a POS may emit pass through unchanged.
closedAtWhen the check was closed.
voidedAtWhen the check was voided. null unless status = void.
createdAt / updatedAtWhen Mozrest first persisted / last modified the check.

Errors

StatusWhen
400 Bad Requestfrom/until missing or unparseable; window exceeds 31 days; invalid limit or offset. Body's details.form.errors lists the offending fields.
401 UnauthorizedMissing or invalid Authorization header.
403 ForbiddenToken does not have partner access, or venueId is not in scope.
404 Not FoundvenueId is unknown to Mozrest. (Out-of-scope venues return 403, not 404, so venue topology isn't leaked.)

Examples

Yesterday's orders

curl -s "https://api-sandbox.mozrest.com/v1/pos/venue/651f2c781027817e9f28e465/order?from=2026-05-13&until=2026-05-13" \
-H "Authorization: Bearer $TOKEN" | jq

Past 7 days, second page (50 per page)

curl -s "https://api-sandbox.mozrest.com/v1/pos/venue/651f2c781027817e9f28e465/order?from=2026-05-07&until=2026-05-13&limit=50&offset=50" \
-H "Authorization: Bearer $TOKEN" | jq