Billing & sales
Billing & keyboard shortcuts
Every shortcut and workflow that makes the POS counter fast.
Billing is designed to be keyboard-first. Once your team learns these ten keys, they'll never touch the mouse mid-sale.
The keys
- F2 — focus product search. Type 3 letters, press Enter to pick the top match.
- F4 — add / change customer.
- F9 — finalise the sale. Opens the tender modal.
- Ctrl+P — save & print. Intercepts the browser's print dialog so you never accidentally print an empty page.
- Ctrl+S — save only, no print.
- Esc — clear the current line or close the current modal.
- + / - — increment / decrement quantity on the focused line.
- Del — remove the focused line.
- Ctrl+D — apply / edit line discount.
The scan flow
Plug a USB barcode scanner (any brand, any HID scanner) and it just works — it types like a keyboard, ends with an Enter, and PharmaPOS reads the code, resolves the product, and adds it. No configuration.
On mobile, tap the small camera icon next to the search box. iOS Safari and Android Chrome both work; ZXing is used as a fallback where the native BarcodeDetector API is unavailable.
Split payments
At the tender modal, enter part of the total in Cash, tab to UPI, enter the rest. PharmaPOS auto-balances the last tender line so it always matches the sale total to the paisa. You can also split three ways (Cash + UPI + Card) if a customer insists.
Save & print vs Save only
- Save & print — commits to the DB, prints a copy, opens the tender modal. Default for retail counters.
- Save only — commits, no print. Useful when a customer is paying later, or you're re-billing to correct a mistake.
Reprinting an invoice
Open Sales, click any invoice, then click Print for a fresh receipt or Download PDF for an A4 GST-compliant PDF with your logo, HSN codes, tax split, and customer details. Both are re-issue safe — the invoice serial doesn't change.
Common mistakes
- Wrong customer — before finalising, F4 and pick again. After the sale is saved, you can't change the customer; you must cancel and re-bill.
- Wrong batch — click the batch chip on the line and pick a different one. Every override is logged with the cashier's name.
- Amount mismatch — if the tender modal complains that "Payment total doesn't match sale total", either the sum is wrong or a hand-typed discount didn't apply. Look at the tender lines, not the total.
Still stuck?
Email us at support@pharmapos.org — we usually reply within a business day.