View cash register
Check the cash register for the selected Harbor Soho TPV terminal, confirm whether it is open, review calculated cash totals for the active service, and inspect the five most recent closed registers for the location.
In this article
Use this guide when an operator or supervisor needs to read the current cash position from the TPV without opening or closing a register.
The cash-register panels are reached from the TPV actions menu. The app currently shows these controls with Spanish labels, so the operational entry points are `Más acciones del TPV`, `Caja` and `Cierres recientes`.
Before you start
- The user is signed in to `/api/app/` and is working in Harbor Demo Group / Harbor Soho.
- The user has `tpv:use` permission for the Harbor Soho location.
- The TPV is opened with `terminalId=${TPV_TERMINAL_ID}`.
- A `service_session` is open for the TPV; if staff access is required, Olivia Hart or another configured TPV staff member has been selected.
- To view active cash totals, an open `cash_register_session` exists for the active service and selected terminal.
- To review recent closings, Harbor Soho has at least one `cash_register_session` with `status=closed`.
Instructions
- 1.
Open the TPV floor
Open `${APP_DEEPLINK_BASE}${ORG_ID}/${LOCATION_ID}/tpv?tab=floor&terminalId=${TPV_TERMINAL_ID}`. If the staff selector or credential prompt appears, select Olivia Hart or the configured TPV staff member before using TPV actions.
- 2.
Open the Cash Register panel
From `Más acciones del TPV`, choose `Caja`. The panel belongs to the active service and the terminal selected in the TPV link.
- 3.
Review the active register
When the register is open, check the status, opening float, sales, cash collected, non-cash payments, expected amount, tickets, operations and payment-method breakdown. Treat expected amount as the system-calculated cash control for this terminal.
- 4.
Open Recent Closings
Return to the TPV actions menu and choose `Cierres recientes`. Use the list to review the latest closed registers, including who opened and closed them, opening amount, expected amount, closing amount, difference and notes.
- 5.
Recognise unavailable states
If there is no active service, the cash-register panels are unavailable. If the selected terminal has no open register, the Cash Register panel appears closed and shows the opening form instead of active totals. The history panel may also show loading, error or empty states.
Validations and limits
- The active detail request uses `GET /api/app/{orgId}/{locationId}/cash-register-sessions/active?terminal_id={terminalId}`.
- Recent closings use `GET /api/app/{orgId}/{locationId}/cash-register-sessions?status=closed` and are scoped to the current location.
- The UI only loads active detail after it has detected an open register for the active service and selected terminal.
- Expected amount is recalculated as opening amount plus cash-like payments.
- Voided tickets are excluded, and only effective payments with empty status or `completed` are counted.
- For terminal registers, only payments recorded on the selected terminal are included in the summary.
- Cash-register states implemented by the product are `open` and `closed`.
Expected result
The operator can confirm the selected terminal's active cash position and supervisors can review recent closed registers without changing cash sessions, tickets or payments.