Registers and shifts

Opening and closing a register, float management and variance reporting.

A register is a till session for a store. It has three states: closed, open and break. Selling is only possible while it is open.

Opening

Opening asks for the float. You can count it in by denomination rather than typing a single figure, and add a note. The opening float, denomination breakdown, note, time and the staff member who opened it are all recorded.

Break

Break suspends the session without closing it — selling stops, and Resume picks the same session back up. It is for stepping away from the counter, not for ending the day.

Closing

Closing asks you to count the drawer, again by denomination, and to enter the total from your card terminal. The expected cash is worked out as:

opening float + cash sales + cash added − cash taken out

Cash sales come from the server rather than from the browser's running tally, so reloading the page mid-shift does not turn the day's takings into a variance. Manual drawer top-ups and payouts are tracked separately from cash sales so a top-up is never counted twice.

Both the cash variance and the card variance are recorded against the closed session, along with the closing note and who closed it.

Point of Sale — Close Till
Cash Count
Notes
$100×7=$700.00
$50×4=$200.00
$20×2=$40.00
$10×1=$10.00
$5×2=$10.00
Coins
$2×3=$6.00
$1×1=$1.00
50¢×2=$1.00
Total$968.00
Opening float$200.00
Cash sales+$840.50
Cash in+$50.00
Cash out-$120.00
Expected cash in drawer$970.50
Counted$968.00
Short$2.50
EFTPOS Reconciliation
POS EFTPOS/Card sales$1,412.00
A replica of the close-till panel, in the light theme the suite runs by default. The denominations, the section headings, the row labels and the red Short pill are exactly what the screen renders — the variance is shown as Over or Short with a positive amount, not as a negative number. Expected cash is float + cash sales + cash in − cash out, with cash sales read from the server. Source: POSModule.tsx (TillPopup, expectedCash, cashVariance), DenominationCounter.tsx, pos.module.css.
Closing when nothing is open

Closing with no open register for the store is refused with an error rather than silently reporting success.

Permissions

The access matrix lists pos.open_close_register — supervisor and above by default. It is not enforced at the API today, so treat it as a convention rather than a lock.

Still stuck? We answer every message.Contact support