Point of Sale
Point of Sale (POS) is the main cashier workspace. From here, cashiers manage the full transaction lifecycle: selecting products, managing tables, accepting payments, printing receipts and kitchen orders, and closing the shift. POS also receives real-time notifications for visitor orders.
When to Use
đĒShift Operations
- Cashier opens a new shift by entering beginning balances per payment type.
- Cashier resumes an active shift without opening a new one.
- Supervisor closes the shift, reconciles physical totals, and prints the closing report.
đTransactions
- Scan barcodes, search products, select from grid or category.
- Import from Sales Order or reopen a previous invoice.
- Change qty, price, discount, memo, customer, or salesperson.
- Process multiple payment types including online payment gateways.
đĒTable Management
- Open a table, fill in guest name and guest count.
- Move an order to a different table.
- Print orders to the kitchen by product group and dedicated printer.
- Receive and process visitor orders via table QR codes.
âRewards & Points
- Auto-calculate product rewards from customer rules.
- Use customer point balance as a payment method.
- Invoice discounts, product discounts, and taxes are calculated automatically.
Opening & Managing a POS Shift
Navigate to Sales & POS â Point of Sale â Point of Sale. The list of POS points is shown with their status, opening date, and the user holding the shift.
Click the POS point to use. If no shift is active, a form to enter beginning balances per payment type appears. Fill in the opening balances and click Start.
If the same user already has an active shift, click Resume to return directly to the POS screen without entering balances again.
The system loads POS point configuration: default customer, table list, printers, payment types, paper width, product categories, barcode decoder, reward rules, and table/rental mode.
Add products, manage tables, accept payments, and print receipts or kitchen orders.
Return to the PosStart screen, open Close POS, enter the physical count per payment type, review discrepancies, then click Close POS. Only users with the closepos role can close a shift.
Main POS Screen
The POS screen is split into two main areas: the product area on the left and the transaction panel on the right.
- Barcode scan â scanning a barcode automatically adds the product to the cart. Supports multiple barcode decoder formats configurable per POS point.
- Product search â search by name or code in real time. Display can be a grid with images or a text list depending on POS point layout.
- Product categories â filter products by product groups allowed in this POS point.
- Product cache â when enabled, the product list is stored locally for faster navigation.
- Special products â products with serial numbers, variants, multiple units, or departments open an additional dialog before being added to the cart.
- Cart â each item shows product name, qty, unit, price, discount, and subtotal. Click an item to select it, then use the keypad or dialog to change values.
- Keypad â number buttons to change qty, price, or discount for the selected item. Discount editing can be locked by the
locksalesdiscrole; price editing bylocksalesprice. - Customer & Salesperson â change from the POS default customer; changing customer affects discount and point rules.
- Sales Order Import â pull items from a confirmed Sales Order into the POS cart.
- Open Invoice â reopen a previously saved transaction by invoice number for revision or reprint.
- Print Bill â print a temporary bill (not final) to show the customer.
- Point Balance â current customer point balance.
- Transaction Points â points earned from this transaction, calculated from
salespointrewardrules. - Reward Products â free or bonus products added to the transaction based on customer reward rules.
- Reward calculation runs automatically before the transaction is saved.
All payment types enabled in the POS point configuration appear here.
| Type | Kind | Notes |
|---|---|---|
| Cash | 0 |
Amount minus remain (change) determines the actual payment. |
| Transfer / Card | 1â5 |
Direct amount input; can be combined with other types. |
| Customer Points | 6 |
Uses point balance. Conversion rate (points to currency) is set in the payment type configuration. |
| Online Payment Gateway | 7 |
The Pay Now button opens the gateway process. Payment must be confirmed (accepted) before Save becomes active. |
- Credit Limit â shown above the payment type list; affects whether Save is enabled.
- Quick Amount â fast amount buttons to speed up cash entry.
- QR Code â some payment types show a QR button to display a payment code.
- Save button â active when total payments satisfy the credit limit. After a successful save, cashier can print a receipt, open a new order, or return to PosStart.
Table Management & Kitchen Print Order
The table feature is active when the POS point is configured with usetable = 1. Each table has its own status communicated through the postable database table.
- Click the Select Table button to open the table grid.
- Occupied tables look different from empty ones. Tables with new unprocessed visitor orders are shown in an urgent color (orange/red).
- Click a table to open its order. The system calls the
openposAPI and loads all existing order products. - Enter guest name and guest count in the table properties dialog.
- Use Move Table to transfer the entire order to a different table.
- Click Print Order to send items to the kitchen printer.
- The system compares the last printed order snapshot with the current order. Only new items (the difference) are sent to the kitchen â previously printed items are not repeated.
- Each kitchen printer can be configured to receive items from specific product groups only.
- After a successful print, the snapshot is updated and the
isordervisitorflag is reset to 0.
postable table)| Flag | Value | Meaning |
|---|---|---|
isordervisitor |
0 | No new visitor order is waiting to be processed by the cashier. |
isordervisitor |
1 | Visitor has sent a new order. Table appears urgent in POS. Cashier should open the table and print to kitchen. |
firstorder |
1 | First visitor order at this table. POS clears the old snapshot so all items are treated as new during Print Order. |
isvisitorpaid |
1 | Visitor has fully paid via payment gateway from the Table Order screen. Cashier only needs to click Close Table. |
Visitor Order Flow
This feature is active when the POS point is configured with orderfromvisitor = 1. POS polls the server every 10 seconds.
Visitor Side
- Scan table QR â Table Order page opens.
- Browse and select products.
- If the POS has an active payment gateway: complete payment first.
- Click Send Order â order saved on server, table flags updated.
Cashier Side
- POS detects
isordervisitor = 1via polling â notification sound plays. - Table appears with urgent color in the table grid.
- Cashier clicks the table â POS loads the visitor's order.
- Cashier clicks Print Order â new items are printed to the kitchen.
- If visitor already paid: see the "Already Paid by Guest" banner in the payment panel.
- Cashier clicks Close Table â table is cleared, transaction complete.
Scenario: Guest Already Paid from the Table New
1. Guest Pays
Guest clicks the gateway button on the Table Order screen â payment confirmed â order is submitted automatically with isvisitorpaid = 1.
2. Cashier Prints to Kitchen
Cashier receives notification, opens the table, clicks Print Order as usual. The payment panel is pre-filled and marked "Already Paid by Guest".
3. Cashier Closes Table
The Save button changes to Close Table (orange). Click to clear the table. No payment re-entry needed.
- A â Already Paid by Guest banner appears above the payment type list.
- All payment types are displayed as read-only â the cashier cannot modify amounts.
- The Pay Now button (online payment gateway) is disabled.
- The Save button changes to Close Table with a meeting_room icon and orange color.
- Clicking Close Table only clears the table status â it does not rewrite payment data.
Closing POS (End of Shift)
- Return to the PosStart screen from the button in POS or the menu.
- Click Close POS (only visible to users with the
closeposrole). - The system shows a shift summary: total per payment type, number of transactions, and net sales.
- Cashier/supervisor enters the physical count per payment type.
- Review discrepancies. If there is negative stock, the page lists the affected products with a CSV export option.
- Click Close POS to save the closing. A closing report can be printed after the process completes.
Things to Check
-
Do not leave the POS screen while a transaction is unsaved. Temporary data is stored in local storage, but the official save only happens when
savepossucceeds. - POS point configuration changes (default customer, printer, payment type, etc.) take effect immediately without restarting.
- The Save button is inactive if the customer's credit limit is not satisfied by the total payment.
-
Payment gateways (kind=7) require confirmation (
accepted = 1) before the transaction can be saved.
- Print Order uses a diff/snapshot â items that were already printed will not be printed again even if they appear in the cart.
- Closing reads totals from all shift transactions. Negative stock is detected at closing and must be resolved before the report is accepted.
- Printing can go through APS (raw printer) or browser preview. If APS connection fails, prints are queued as pending and resent when the connection is restored.
- For tables with visitor payment, the cashier does not enter payment amounts â just click Close Table.
Menu Location
-
Sales & POS / Point of Sale / Point of Sale
/posstartâ/pointofsale