Skip to main content
GET
List a venue's sales
Retrieves your venue’s sales within a date range, oldest first. Results are always scoped to the venue tied to your API key — there’s no way to list sales for another venue.
Large ranges are paginated. When a response includes a nextCursor, pass it back as the cursor parameter to fetch the next page; nextCursor is null once you’ve reached the end.
reconciliationStatus reflects whether the sale was matched to a booking: Matched (found, and enriched with service/table/diner details), Unmatched (a match was attempted but nothing found), or PendingMatch (matching couldn’t be completed and may resolve later).
recordType is Final (closed/settled), Incremental (accumulates onto the stored record on resend), or Tally (a running snapshot of a still-open sale — resends are diffed against the stored record and only changed fields are applied). See Ingest Sale for details on resend behavior per type.

Example

Response — 200 OK

Authorizations

Authorization
string
header
required

Your API key. See Authorization to create one.

Query Parameters

startDate
string<date-time>
required

Any UTC offset accepted; normalised to UTC.

endDate
string<date-time>
required

Must not be before startDate.

cursor
string

Opaque pagination cursor from a previous response's nextCursor.

limit
integer
default:50

How many sales to return at once (1–200). Defaults to 50.

Required range: 1 <= x <= 200

Response

Sales within the requested range.

sales
object[]
required

The list of sales matching your request.

nextCursor
string | null
required

Opaque pagination cursor. null when there are no more results.