Point of Sale (POS)

Updated 23 hours ago 6 min read

Overview

The POS module provides a complete point-of-sale system for in-store or counter sales. It includes terminal management, session tracking, product scanning, payment processing, promotions, suspended sales, and detailed sales reporting.

Accessing POS

Navigate to Account > POS from the left sidebar.


POS Dashboard

Quick Statistics

Metric Description
Active Terminals Number of configured POS terminals
Open Sessions Number of currently open cashier sessions
Today's Sales Transaction count and total revenue for today
Suspended Sales Number of sales put on hold

Tabs

Tab Description
Terminals Manage POS terminal hardware/software
Sessions Track cashier sessions (open/close)
Sales View completed POS sales
Suspended Manage sales put on hold
Reports POS-specific analytics

Quick Action

Click the Open POS button to launch a new point-of-sale session.


POS Interface

Opening a New POS Session

  1. Click Open POS from the dashboard or navigate to POS > New.
  2. Select a terminal (or use the default).
  3. Enter the Opening Cash amount.
  4. The POS interface opens.

POS Features

Feature Description
Product Search Search by name, SKU, or barcode
Barcode Scanning Scan product barcodes to add items
Category Filter Filter products by category
Customer Selection Associate the sale with a customer
Warehouse Selection Select which warehouse stock is drawn from
Suspend Sale Put the current sale on hold for later

Terminals

Overview

Terminals represent your POS stations. Each terminal is linked to a warehouse and can have a default bank account.

Add Terminal

Field Required Description
Terminal Name Yes Name of the terminal (e.g., "Front Counter")
Terminal ID Auto Auto-generated identifier
Warehouse Yes Warehouse to draw stock from (searchable)
Default Bank Account No Default bank for deposits (searchable)
Active Yes Toggle to enable/disable terminal

Terminal Actions

  • Edit terminal settings
  • Delete terminal

Sessions

Overview

Sessions track cashier activity from start (opening cash) to end (closing cash). Each session is tied to a terminal and a user.

Opening a Session

  1. Click Open Session.
  2. Select a terminal (only terminals without open sessions are shown).
  3. Enter the Opening Cash amount.
  4. Click Open to start the session.

Session Statistics

Card Description
Open Sessions Currently active sessions
Closed Today Sessions closed today
Total Today All sessions for today

Session Detail Page

Cash Summary

Metric Description
Opening Cash Amount in the register at session start
Cash Sales Total cash payments received
Expected Cash Calculated expected cash in register
Variance Difference between expected and actual closing cash (+ or -)
Closing Cash Actual cash counted at close (if closed)

Sales Summary

Payment method breakdown table:

Method Description
Cash Cash payments
Card (POS Terminal) Card/terminal payments
Bank Transfer Bank transfer payments
Mobile Money Mobile money payments
Total Sum of all sales

Recent Sales

Table showing sales from this session with links to sale details.

Closing a Session

  1. Click Close Session on an open session.
  2. Enter the Actual Closing Cash amount.
  3. The system calculates the Variance (difference from expected).
  4. Optionally add Closing Notes.
  5. Click Close Session to confirm.

Sales

Sales List

View all completed POS sales in a data table.

Sale Detail Page

Header

  • Sale number with status badge (Completed/Voided)
  • Date and time
  • Action buttons: Print Receipt, Void Sale, Back

Items Table

Column Description
Product + SKU Product name and stock code
Quantity Units sold
Unit Price Price per unit
Total Line total
Footer Subtotal, Discount, Tax, Total

Payments Table

Column Description
Payment Method How the customer paid
Bank Account Where the payment was deposited
Amount Payment amount
Change Change given (if applicable)

Sale Details Sidebar

  • Customer, Warehouse, Terminal, Cashier, VAT mode (Inclusive/Exclusive)

Click Print Receipt to generate a receipt preview (80mm thermal receipt format) and print.

Void Sale

Click Void Sale on a completed sale to reverse it (with confirmation).


Suspended Sales

Overview

Suspend a sale to put it on hold and serve the next customer. Resume it later to complete the transaction.

Suspended Sales Statistics

Card Description
Active Suspended Sales currently on hold
Expired Sales past their expiry time
Total Value Combined value of active suspensions

Actions

Action Description
Print Receipt Print the suspended sale receipt
Resume Sale Reopen the sale to complete it (if not expired)
Delete Remove the suspended sale

Expiry

  • Suspended sales can have an optional expiry time.
  • Expired badge shown if past expiry date.
  • Time remaining shown in relative format (e.g., "2 hours left").
  • Never shown if no expiry is set.

Promotions

Promotion Types

Type Display Description
Percentage "X%" Percentage discount off
Fixed Currency amount Fixed amount discount
Buy X Get Y "Buy X Get Y" Buy quantity to get free items

Promotion Status

Status Description
Active Currently within active date range and enabled
Scheduled Enabled but not yet within active dates
Inactive Disabled

Promotion Actions

  • Edit promotion details
  • Toggle active/inactive
  • Delete promotion

POS Reports

Report Types

Report Description
Sales Summary Total sales, revenue, tax, discounts, average ticket, daily breakdown
By Terminal Performance by terminal (transactions, total, average)
By Cashier Performance by cashier (transactions, total, average)
By Product Top 50 products by quantity sold and revenue
By Payment Method Breakdown by Cash, Bank Transfer, POS Terminal, Mobile Money, Credit

Report Filters

Filter Description
Report Type Select which report to view
Terminal Filter by specific terminal
From Date Start of reporting period (default: start of month)
To Date End of reporting period (default: today)
Reset Clear all filters

Payment Methods

Code Method
1 Cash
2 Bank Transfer
3 POS Terminal (Card)
4 Mobile Money
5 Credit
Was this page helpful?
0 found it helpful, 0 did not