Register and Reports
Hyvä POS is in closed beta
Hyvä POS is currently in a closed beta (pilot phase) with a small group of merchants. It is not yet generally available: the App Store release follows the pilot, and features and configuration may still change, possibly in backwards-incompatible ways, before the general release. Want to take part? Sign up at hyva.io/pos.
This page covers the register's home screen and its cash-handling side: the tile grid the cashier works from, the float in the drawer, what goes in and out, and the day's reports. Everything on this page works on the free tier; register data lives on the device.
The Register Home Screen
The register is a grid of tiles next to the cart. The built-in tiles cover the everyday actions: product search, all products, all categories, custom product (a one-off line item), add customer, discount, hold cart, recent orders, pickup queue, cash drawer, lock screen, switch user, return, and sync issues.
The grid can be rearranged: long-press to enter edit mode, drag tiles to reorder, hide what you don't use, and add more pages when one fills up. Portrait and landscape keep their own layouts. You can also add your own tiles:
- Quick product: one tap adds a specific SKU to the cart; the tile shows the product's current price.
- Quick custom item: a preset title and price for things that aren't in the catalog (a service fee, giftwrap).
- Quick category: jumps straight into one category.
Each custom tile gets its own title, icon and color.
The Pickup Badge
The Pickup tile can show a live count of orders that are ready for collection. The count polls Magento, and polling is opt-in: turn on Check for New Pickups under Settings → Checkout and pick the interval (every 1, 2, 5 or 15 minutes; default 5). It is off by default. The badge requires PRO with a configured location, and is hidden when the count is unknown.
Opening and Closing the Register
Start the day by opening the register with a counted float, typed on a numpad or counted per denomination with bill and coin counters (the accepted denominations are configurable per currency). From that moment every cash movement is tracked: sales, refunds, cash in, cash out. With Require Open Register on (Settings → Payments), no tender is offered until the register is open.
Mid-shift movements work the same way: take excess cash to the safe or add change, each with an amount, a note, who did it and when.
How the Drawer Reconciles
The expected cash at any moment is: opening float, plus cash sales (including the cash legs of split payments), plus cash added, minus cash taken out, minus cash refunds. Closing counts the drawer, again per denomination if you like, and the difference between counted and expected is the over/short on the Z report. A mismatch never blocks closing; it is recorded and visible.
Sales that do not put money in the drawer are tracked in their own buckets: card totals, pay-by-invoice receivables and layaway balances each get their own line. The reverse case, money in the drawer that is not a sale, gets a line too: layaway payments collected against orders placed earlier join the cash and card totals, and the report's incl. Layaway Payments line explains why the tenders exceed the day's sales figure. A payment collected on an earlier order's remaining Credit Due is counted the same way, on an incl. Credit Due Collections line.
X and Z Reports
- X report mid-shift: the state of the register so far, without closing it.
- Z report at close: generated automatically when the register closes.
Both contain the session details (opened/closed, by whom, duration), order count and gross total, the VAT breakdown per rate with sales, refunds and net, the payment breakdown per tender, and the full drawer reconciliation: opening float, every cash-in and cash-out with its note, expected cash, counted cash, over/short. Reports print on the receipt printer or through the system print dialog, and export to CSV for your accounting. In fiscal countries the per-rate totals feed the official exports, and in Germany manual cash movements are signed as well.
The Reports Tab
Reports live in their own tab, in seven sections:
- Sales: a per-day table (orders, cash, card, total) for the last 30 days, with CSV export.
- Register: the session history, every open/close with its float, totals and over/short.
- Terminal Payments: card payments whose outcome the register could not confirm, with Check, Enter payment id and Settled at the provider; see terminal payments.
- Statistics: totals and averages computed from your sessions: revenue, order count, average order value, revenue per session and per day, the cash/card split, and your best day.
- Stock: the stock quantity log, every stock change with product, SKU, source, old and new quantity, who and when, with CSV export.
- Sync issues: anything that failed to reach Magento (see below).
- Errors: API, network and print failures, filterable by severity and exportable; the first place to look when troubleshooting a connection or permission problem.
Local Numbers vs Magento Numbers
Everything in the Reports tab is computed on the device, from that register's own sessions and logs, and is available offline. Every POS sale is also a Magento order, so cross-channel and cross-register reporting (revenue across locations, product performance, anything your BI reads from Magento) comes from Magento's own reports, which see register sales next to online sales. The two views reconcile: the same orders feed both.
Sync Issues
If an order, invoice, shipment or receipt could not sync, the Sync Issues section lists it with the reason, grouped per order. Failed syncs can be retried with one tap and clear themselves when the retry succeeds; discrepancies between a local sale and its Magento order are shown field by field.
Where It Is Configured
| What | On the device | In Magento |
|---|---|---|
| Tile layout and custom tiles | Long-press the register grid | |
| Pickup polling + interval | Settings → Checkout | |
| Cash denominations | The denomination editor in the register sheets | |
| Register permissions | PRO staff roles |
Register sessions, reports and logs are stored on the device; they are not Magento configuration.
PRO
On the free tier the register has a single user. PRO staff and roles adds PIN login per employee, with the register actions permission-gated per role: opening and closing the register, issuing refunds, opening the drawer and viewing reports can each be restricted to managers. Reports then show who did what, and the PRO audit log covers every staff action.