Point of Sale (POS) Operations
Module 05 — Point of Sale (POS) Operations
Audience: Customer Success & Sales Agents
Goal: Understand the full POS flow — opening the POS, adding products, applying discounts, checking out, handling credits, and operating offline.
1. Opening the POS
There are two ways to reach the POS screen:
From the Dashboard:
- If a user has the Sales role with a branch assigned, tapping their business card opens the POS directly
- Owner or Manager users see the Business Detail screen first
From the Business Detail screen:
- Tap the POS / Branches KPI card at the top
- If the business has only one branch, the POS opens immediately
- If the business has multiple branches, a branch selector menu appears — tap the correct branch to open its POS
2. POS Bootstrap (First Load)
The first time the POS is opened for a branch, the app downloads and caches all data needed to operate offline. A loading screen shows the progress through six steps:
- Fetch — connecting to server
- Products — downloading product catalog
- Inventory — downloading current stock levels
- Categories — downloading product categories
- Agents — downloading team member data
- Finalize — saving everything locally
This only happens once (or when data is refreshed). After this, the POS is fully usable even without internet.
Agent Note: If a customer reports the POS is stuck on bootstrap, first check if the device has an internet connection. A stable connection is required for the initial data download.
3. Searching for Products
At the top of the POS screen is the search bar. Type a product name, SKU, or barcode number to find a product.
Results appear as a list below the search bar, each showing:
- Product name
- Stock quantity available at this branch
- Selling price
- Stock status indicator (green / yellow / red)
Tap any product to add it to the cart.
4. Scanning a Barcode
Tap the barcode scanner icon on the POS screen to open the camera scanner.
Point the camera at a product barcode. When the barcode is detected, the matching product is automatically found and added to the cart.
Agent Note: If the scanner does not recognise a barcode, it may mean the barcode has not been added to that product in the system. The cashier should search manually by product name instead, and the manager should update the product's barcode field.
Device Note: The barcode scanner requires camera permission. If the permission was denied previously, the cashier must go to phone Settings → SmartSell → Camera and enable it.
5. Managing the Cart
Adding items
Tap a product from search results to add it to the cart. Each tap adds one unit.
The cart panel
The cart is a collapsible panel at the bottom of the screen. Drag it up to expand it and see full cart details, or drag it down to collapse it while still browsing products.
Each cart item shows:
- Product name
- Quantity (with + and − buttons to adjust)
- Unit price
- Line total
Changing quantity manually
Tap the quantity number on a cart item to type in a custom quantity. SmartSell supports decimal quantities (minimum: 0.001) for products sold by weight or volume.
Removing an item
Swipe a cart item to the left to reveal the remove option. Tap it to remove the item from the cart.
Overriding an item price
Tap the price on a cart item to override it for this transaction. A modal opens where you enter the new price. This is useful for negotiated prices or promotional pricing.
6. Applying Discounts
SmartSell supports two levels of discounts:
Item-level discount
Override the unit price on any individual cart item (see section 5 above).
Cart-level discount
A discount applied to the entire order.
To apply a cart discount:
1. Tap the discount icon or discount area in the cart summary
2. Choose discount type: Fixed amount or Percentage
3. Enter the discount value
4. The cart total updates immediately
Example: A customer buys 5 items totalling 10,000 XAF. The cashier applies a 500 XAF fixed discount → customer pays 9,500 XAF.
7. Cart Summary
At the bottom of the cart (when expanded), the summary shows:
- Number of items
- Subtotal
- Item discounts total
- Cart discount
- Final total (what the customer pays)
8. Checkout — Processing a Cash or Card Sale
When the cart is ready, tap Checkout.
The Checkout modal opens with:
| Field | Notes |
|---|---|
| Total amount due | Displayed prominently at the top |
| Amount paid | Enter the amount the customer hands over |
| Change | Calculated automatically (amount paid minus total) |
| Payment method | Select: Cash, Card, or Mobile |
| Customer name | Optional |
| Customer phone | Optional |
| Customer email | Optional |
Tap Proceed to complete the sale.
On success:
- The cart is cleared
- Inventory is updated (stock is reduced)
- A receipt is generated
- A success toast notification appears
Agent Note: Customer details are optional but useful. Encourage businesses to capture at least the customer's phone number when possible — it makes credit tracking and customer history much more useful.
9. Credit Sales
A credit sale is when a customer takes goods now and pays later.
To record a credit sale instead of a regular checkout:
- Build the cart normally
- Tap Credit (instead of Checkout)
The Credit modal opens with:
| Field | Notes |
|---|---|
| Customer phone | Required — this identifies the customer |
| Customer name | Optional |
| Credit terms | Optional — notes about repayment terms |
| Payment schedule | Optional |
Tap Proceed to save the credit.
The credit is saved locally (offline-capable) and synced to the server. It appears in the Credits list with a status of Not Paid.
Agent Note: The customer phone number is required for credits because it is used to track and identify the customer in the credits list. If no phone is provided, the credit cannot be created.
10. Offline Mode
The POS is designed to work without internet.
What happens when the device goes offline:
- An offline indicator appears at the top of the POS screen
- Sales and credits are saved locally on the device
- The cashier can continue processing sales as normal
- The cart, checkout, and credit flows all work exactly the same
What happens when internet is restored:
- The app automatically syncs all pending sales and credits to the server
- A toast notification confirms successful sync
Manual sync:
If the auto-sync does not trigger, the cashier can tap the Resync button (visible on the POS screen) to manually push pending transactions.
Agent Note: If a customer reports "my sales are not showing in reports," the first thing to check is whether the device was offline during those sales. Ask them to open the POS, check if there is a resync button visible, and if so, tap it while connected to the internet.
11. POS Menu (Additional Options)
Tap the three-dot menu (⋮) in the top-right corner of the POS screen for additional options:
- Manually trigger a resync
- Switch branch (if the user has access to multiple branches)
12. Common POS Situations
| Situation | What to do |
|---|---|
| Product not found in search | Check if the product exists in the catalog. If not, add it first. |
| Barcode not recognised | Manually search by name. Update the product's barcode field afterwards. |
| Wrong price in POS | Override the item price in cart, then update the product price in the catalog. |
| Sale not appearing in reports | Check if device was offline. Tap Resync when online. |
| Customer wants to cancel a sale | Sales cannot be cancelled from the mobile POS. Direct to web portal for refunds. |
| Stock showing negative | A sale was processed without sufficient stock. Update stock levels via Manage Stock. |
Summary
| Action | How |
|---|---|
| Open POS | Dashboard (Sales role) or Business Detail → POS card |
| Add product to cart | Search or scan barcode → tap product |
| Adjust quantity | +/− buttons or tap quantity to type |
| Remove item | Swipe left on cart item |
| Apply discount | Cart summary → discount area |
| Checkout (paid now) | Cart → Checkout → fill details → Proceed |
| Credit sale (pay later) | Cart → Credit → enter customer phone → Proceed |
| Sync offline sales | Resync button or automatic when internet restored |
Previous Module → 04 — Managing Products & Inventory
Next Module → 06 — Team Management & Roles