Receipts tab — history, preview, print
The Receipts tab is the fourth bottom-tab in the app, sitting alongside Home, Devices and Settings. It is a standalone, location-independent receipt log: every receipt the operator has issued from this install — whether through this tab's own Create receipt flow or through the per-device flow under Device Detail → Operations — appears here in reverse-chronological order. Tapping a row opens the preview/print screen; the FAB opens a standalone create form.
::callout
icon: i-lucide-info
This page covers the standalone Receipts bottom-tab. The per-device variant of the New Receipt form, accessed from inside Device Detail, is documented under Daily operations and is not duplicated here. Proces Verbal generation is portal-only — see Portal Receipts. ::
Browse receipt history
The tab opens straight onto the list of receipts issued on this device. There is no header bar, no search box, no filter chips, no date-range picker, no per-row edit/delete and no export button — it is a flat, chronological history.
Empty state
If you haven't issued any receipts yet, the list is replaced by a centered message:
- title No Receipts
- description Issued receipts will appear here. Tap the button below to create the first receipt.
- a primary action Create receipt that opens the standalone New Receipt form
Row shape
Each row is a tappable card with three blocks:
- A type badge on the left, color-coded:
- SALE — green
- REFUND — amber
- STORNO — red
- A middle column with the formatted total (e.g.
123,45 RON), the date and time the receipt was created, and a fiscal-state line:- Fiscal: <id> in green when the receipt has been printed on the fiscal printer
- Not printed in amber when the receipt has not yet reached the printer
- A right-side item count (
5 items/1 item)
Tapping anywhere on the row navigates to Receipt Preview for that receipt id.
Floating action button
When at least one receipt exists, a + Create receipt floating action button anchored bottom-right takes the place of the empty-state CTA. Tapping it opens the standalone New Receipt form.
::callout
icon: i-lucide-info
The STORNO type appears in this list when a storno receipt has been issued locally on this device, but the standalone Receipts tab does not issue stornos. Proces Verbal generation is a portal-only flow — see Portal Receipts. ::
Preview and print a receipt
Tapping a row in the history opens the Receipt Preview screen, which is also where the standalone create flow lands after Preview & Print. It is a single scroll view that re-renders the receipt and exposes the print action.
If the receipt is no longer available on this device, the screen renders a single error line Receipt not found and stops — there is no auto-back.
Layout
Top to bottom, when the receipt is found:
- Success banner — only visible after a successful print. Shows Receipt Printed (large, green) and Fiscal ID: <id> underneath.
- Header card — the receipt type in uppercase (SALE, REFUND, STORNO) and the creation date/time on a centered card.
- ITEMS section — one row per item: name on the left,
quantity x unit priceunderneath, line total on the right. - Total — a heavy top-bordered row with Total on the left and the formatted total on the right.
- VAT BREAKDOWN card — one row per VAT rate used (
21%,11%,9%,0%), Base: <amount> and VAT: <amount>. - PAYMENT section — one card per payment method used: the method name in upper-case (CASH, CARD, VOUCHER) on the left, amount on the right.
- Action row — either the print button (before printing) or the done button (after printing).
Print flow
Tap Print Receipt
The button sends the receipt to the paired fiscal printer, switches to a disabled state, and renders an inline spinner with Printing....
Wait for the printer
On success, the receipt is stamped with the fiscal ID and fiscal date returned by the printer, the success banner appears at the top of the screen with the new fiscal id, and the print button is replaced by a Done button.
Tap Done
Done closes the current receipt and returns you to the home screen of the app.
If the printer returns an error, a native alert is raised with the title Print Failed and the exact error message. The receipt stays unmarked as printed, and the print button re-enables — you can retry.
::callout
icon: i-lucide-info
First device wins. The receipt is printed on the first fiscal printer paired to your active location. There is no device picker on this screen. To print on a different device, switch your active location to one paired with the printer you want (see App settings & location switching), or remove the printer you don't want to use (see Devices browser). ::
::callout
icon: i-lucide-alert-triangle color: warning
If no fiscal printer is paired to your active location, tapping Print shows the alert No Device with the message Please pair a fiscal printer first. Add a printer from Devices → Add Device before printing any receipt. ::
Create a new receipt
Tapping + Create receipt (FAB) or the empty-state CTA opens the standalone New Receipt form. The form has three blocks stacked top to bottom and a Cancel action that discards the draft and returns to the Receipts list.
- ADD ITEM — text inputs for Item name, Quantity and Price, a VAT RATE chip row (the Romanian VAT rates 21%, 11%, 9%, 0%) and a DEPARTMENT chip row (None, 1–9;
Noneis the default and prints the item's own name). The Add Item button validates the inputs (non-empty name, positive numeric quantity, positive numeric price — each raising a native alert under Validation if it fails) and pushes a new item into the draft. - ITEMS (<count>) — appears once at least one item is in the draft. Each item card shows name,
quantity x price = line total, a VAT <rate>% badge and — only when a department was picked — a Dept <n> badge, plus a destructive Remove button. Below the list, a Total row sums everything (rounded to 2 decimals). - PAYMENT — appears once at least one item is in the draft. A METHOD chip row (Cash, Card, Voucher) and an AMOUNT input that defaults to the running total. The Preview & Print button validates that at least one item exists (alert No Items) and that the payment amount is at least the total (alert Insufficient Payment), finalises the draft and navigates to Receipt Preview.
::callout
icon: i-lucide-info
The Receipts tab's New Receipt form is a standalone entry point — it does not pre-bind to a specific device, and the print step on Receipt Preview falls back to the first paired printer in the active location (see above). For the per-device variant of the same form — accessed from inside Device Detail and bound to that device for the print step — see Daily operations. ::
::callout
icon: i-lucide-info
The standalone form lets the operator create Sale receipts. Proces Verbal (cancellation of a previously fiscalized receipt) is a portal-only flow — see Portal Receipts. ::
Where to next
- Daily operations — the per-device New Receipt variant inside Device Detail and every other one-shot fiscal command.
- Devices browser & device detail — pair a fiscal printer (without one, the print button raises No Device).
- Portal Receipts — generate Proces Verbal documents and review the org-wide receipt log.
- App settings & location switching — switching the active location changes which device sorts first.
Browse and manage paired devices
Browse the fiscal printers paired at your active location, add new ones via Bluetooth or network discovery, and open the four-tab device detail screen — Overview, Operations, History, Settings — for any printer the app controls.
Sign in to cloud (optional)
Cloud sign-in is optional in the E-BON Android app. Reach it any time from Settings to attach this device to your Portal organization, enable remote commands and central reporting, or sign out without losing any local data.