List Transactions
GET/api/pos/transactions
Paginated POS transaction (sales) history.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Authentication: Requires Bearer token.
Permission: pos.operate.
Filters (Spatie QueryBuilder, all optional):
filter[pos_register_session_id]— exact register session id.filter[tender_type]— exact tender type (cash, card, store_credit, split).filter[refunded]— boolean; true = refunded only, false = non-refunded only.filter[date_from]/filter[date_to]— created_at date range (Y-m-d).
Sorts: id, total, created_at (prefix - for DESC). Default sort: -created_at.
Pagination: page (default 1), per_page (default 15). Response includes standard Laravel pagination metadata.
Request
Responses
- 200
- 401
- 403
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.