Skip to content

Powered by Grav CMS + Helios Theme

Point of sale shifts and reports (add-on)

Shifts with their X and Z reports, the till sale behind an order, and the sales report.

All take kahunacart.pos.manage. A closed shift answers the Z report as it was frozen at closing, and an open one the X report so far. See Shifts and cash and Reports.

List the shifts

GET /api/v1/kahunacart/pos/admin/shifts Permission kahunacart.pos.manage

Till shifts, newest first: register, who opened and closed each and when, the float, and for a closed shift the cash counted, expected and the difference.

Parameters

Name Type Description
register_id optional integer Only this register's shifts.
from optional string Opened on or after this date (2026-10-14) or Unix time.
to optional string Opened up to the end of this date, or before this Unix time.
page optional integer At least 1.
per_page optional integer At least 1, at most 200.

Get a shift with its report

GET /api/v1/kahunacart/pos/admin/shifts/{id} Permission kahunacart.pos.manage

One shift in full: its Z report as it closed (or the X report so far while it is open), with sales and tenders, refunds given at the till, discounts, tax, sales per staff member, voided and parked sales, the cash worked out (float, cash taken, cash refunds, cash in and out, expected, counted, difference), each cash movement with its reason, and every sale rung up on it.

Parameters

Name Type Description
id required integer The shift id.

Get the counter sale behind an order

GET /api/v1/kahunacart/pos/admin/orders/{id} Permission kahunacart.pos.manage

What the till knows about one order: the register it was rung up on, the shift, who served and when. Answers sale null for an order that was not sold through the till, including a counter sale made with create_order, which has no shift.

Parameters

Name Type Description
id required integer The order id.

Get the sales report

GET /api/v1/kahunacart/pos/reports Permission kahunacart.pos.manage

Till sales over a period, grouped by register, staff member, location or tender: how many sales and what they came to, refunds given at a till, discounts and tax, with totals and the cash difference of every shift closed in the period. Defaults to the last 30 days by register.

Parameters

Name Type Description
group optional string
One of: register, staff, location, tender
from optional string From this date (2026-10-01) or Unix time.
to optional string To the end of this date, or this Unix time.

The till's own routes, which a paired tablet calls, are not tools. They are listed on Developers.