POS System User Manual
Complete documentation for all system features
Introduction
Welcome to the POS (Point of Sale) System! This comprehensive system helps you manage your retail operations efficiently.
Point of Sale
Process sales, manage payments, issue receipts
Inventory
Track products, batches, stock levels
Analytics
Reports, profit tracking, audit trails
System Overview
┌─────────────────────────────────────────────────────────────────┐
│ ADMIN │
│ (Full system control) │
└────────────────────────────┬────────────────────────────────────┘
│
┌────────────────────────┼────────────────────────────────┐
│ │ │
▼ ▼ ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────────────┐
│ PRODUCTION │───►│ STORES │───►│ SHOPS │
│ MANAGER │ │ MANAGER │ │ Manager + Attendants │
└──────────────┘ └──────────────┘ └──────────────────────┘
│ │ │
└───────────────────┴───────────────────────┘
│
┌─────────────┴─────────────┐
│ │
▼ ▼
┌───────────┐ ┌───────────┐
│ ACCOUNTANT│ │ AUDITOR │
│(Financial)│ │(Read-only)│
└───────────┘ └───────────┘
Getting Started
Logging In
- Navigate to your POS system URL
- Enter your email and password
- Click Login
First-Time Setup (Admin Only)
If you're the first admin user:
- Login with your admin credentials
- You'll be redirected to Tenant Setup
- Enter your organization details:
- Organization Name
- Currency Symbol (e.g., GH₵, $, £)
- Address and contact information
- Click Complete Setup
Data Tables & Navigation
- Sorting: Click any column header that displays a sorting icon to easily sort lists (e.g., inventory, sales, users) alphabetically or numerically. Clicking the header toggles between ascending and descending order.
- Filtering: Use the filter panels above most data lists to search by date, name, status, and other fields efficiently.
User Roles & Permissions
| Role | Description | Key Permissions |
|---|---|---|
| Admin | Full system administrator | All permissions + user management |
| Production Manager | Manages production location | Inventory, transfers, batch creation |
| Stores Manager | Manages central stores | Inventory, transfers in/out, stock write-offs, stock request approvals |
| Shop Manager | Manages retail shop | POS, sales, local inventory, cash transfers |
| Shop Attendant | Front-line sales staff | POS, basic sales only |
| Accountant | Financial management | Cash transfers, sales reports, sales history, price history (via Sales & Financial menus) |
| Auditor | Read-only auditing & oversight | Sales reports, sales history, price history, inventory ledger, transfers, cash transfers, tracking & audit reports (via Sales, Financial & Inventory menus) |
Dashboard
The dashboard provides an at-a-glance view of your business:
- Today's Sales - Total sales amount for the day
- Pending Transfers - Incoming stock awaiting receipt
- Total Locations - Number of locations
- Total Users - Staff count
- Pending Transfers - Awaiting receipt
- Disputed Transfers - Quantity discrepancies
Point of Sale (POS)
Opening a Shift
Before making sales, you must open a shift:
- Click Point of Sale in the sidebar
- If no shift is open, you'll see "Open Shift" prompt
- Enter the Opening Cash amount (cash in the drawer)
- Click Open Shift
Making a Sale
- Search for products:
- Type in the search bar (supports product name or SKU)
- Click a product to add it to the cart
- Adjust quantities:
- Use + / - buttons to change quantity
- Click the trash icon to remove an item
- Apply discounts (if permitted):
- Enter discount percentage or amount
- Complete the sale:
- Click Checkout
- Enter the amount received
- Select payment method
- Click Complete Sale
- Print receipt:
- A receipt will be generated automatically
- Click Print or share via WhatsApp
Payment Methods
| Method | Description | Requirements |
|---|---|---|
| Cash | Physical cash payment | None |
| E-Cash | Mobile money (Paystack) | Paystack integration enabled |
| Credit | Customer owes the amount | Customer must be selected |
| Mixed | Partial cash + credit | Customer must be selected |
Voiding a Sale
If a sale was made in error:
- Go to Sales History
- Find the sale
- Click View Details
- Click Void Sale (if permitted)
- Confirm the action
Closing a Shift
- Click Close Shift button
- Enter the Counted Cash (actual cash in drawer)
- The system will compare with expected cash
- Any discrepancy will be highlighted
- Click Close Shift
Offline Mode & Sync
The POS can continue processing sales even without an internet connection. Sales are stored locally in your browser and automatically synced when connectivity returns.
Status Indicator
Look at the top-left of the POS screen next to the shop name:
- ● Online — Connected to the server
- ● Offline — No internet connection (pulsing red)
- Pending badge — Shows the number of sales waiting to sync
Making Sales Offline
- Add products to cart as normal
- Choose Cash or Credit payment
- Complete the sale
- The sale is saved locally and a confirmation message appears
Automatic Syncing
When internet connectivity is restored:
- The status indicator changes back to ● Online
- A sync bar appears at the top showing progress
- Each pending sale is sent to the server one by one
- The pending badge count decreases as sales sync
- Once complete, the sync bar shows a success message
Conflict Handling
Stock changes may occur while you are offline (e.g., another attendant sold the same product). When this happens:
- The sale still syncs successfully (it is not rejected)
- A sync conflict flag is recorded on the sale for manager review
- Managers can view flagged sales in Sales History
Inventory Management
Products
Viewing Products
- Go to Inventory → Products
- Use filters to find products:
- Search by name or SKU
- Filter by category
- Filter by low stock
Creating a Product
- Click Add Product
- Fill in details:
- SKU - Unique product code
- Name - Product name
- Category - Product category
- Unit of Measure - Pieces, Kg, Liters, etc.
- Default Selling Price - Standard retail price
- Reorder Level - Alert threshold for low stock
- Click Save
Categories
Organize products into categories:
- Go to Inventory → Categories
- Click Add Category
- Enter category name
- Click Save
Batches
Batches track specific lots of products with:
- Batch Number - Unique identifier
- Unit Cost - Cost per item (for profit tracking)
- Expiry Date - For perishable goods
- Quantity - Amount in this batch
Creating a Batch (Stock In)
- Go to Inventory → Batches
- Click Add Batch
- Select product and location
- Enter batch details
- Click Save
Stock Overview
View stock levels across all locations:
- Go to Inventory → Stock Overview
- See quantities per product per location
- Identify which locations need restocking
Shop Pricing
Set location-specific prices (different from default):
- Go to Inventory → Shop Pricing
- Click Add Price
- Select product, location, and price
- Click Save
Stock Transfers
Transfers move stock between locations (e.g., Stores → Shop).
Transfer Workflow
Alternative: PARTIAL → DISPUTED → CLOSED
Creating & Editing a Transfer
- Go to Transfers
- Click New Transfer
- Select Source Location and Destination Location
- Add items:
- Search for products
- When selecting batches, the system automatically filters to show only valid available batches for that product
- Enter quantities to send
- Click Save as Draft or Send Transfer
- Editing Drafts: While a transfer is in DRAFT status, you can click on it at any time to open the edit page, where you can modify product quantities, add new products, or assign batches before sending.
Sending a Transfer
- Open a draft transfer
- For each item, enter Quantity Sent
- Click Send Transfer
- The destination will be notified
Receiving a Transfer
When stock arrives at your location:
- You'll see a notification badge
- Go to Transfers
- Find transfers with status SENT
- Click Receive
- For each item:
- Verify actual quantity received
- Enter Quantity Received
- Click Complete Receipt
Handling Discrepancies
If received quantity doesn't match sent quantity:
- Enter the actual quantity received for each item
- For each item with a discrepancy, select a reason:
Reason When to Use Damaged in Transit Products arrived broken, spilled, or physically damaged Short Quantity Fewer items arrived than listed on the transfer Expired Products have passed their expiry date Quality Rejected Products failed quality inspection on arrival Other Any other reason (explain in notes) - Choose a discrepancy action:
- Return to Source — the shortage quantity is added back to the sender's inventory (default)
- Accept Difference — the shortage is absorbed; no stock adjustment at the source
- Add optional notes to explain the situation
- Click Complete Receipt
Product Transfer History
View the transfer history of individual products across all locations:
- Go to Inventory → Transfers → Product History
- Use filters to narrow results:
- Product — search by name or SKU
- Location — filter by source or destination
- Direction — Incoming or Outgoing (relative to your location)
- Date Range — filter by transfer date
- Status — filter by transfer status
- View details including quantities sent/received and any discrepancies
Stock Adjustments & Approval Workflow
Stock adjustments allow for manual correction of inventory levels due to counting errors, damage, or other discrepancies that are not captured by sales or transfers.
New Security Policy (v1.2)
- Shop Managers can only adjust stock for their assigned location.
- Stores Managers can request adjustments for any location, but cross-location adjustments require approval.
Adjustment Workflow
- Navigate to Inventory → Adjustment.
- Select the Location and Product.
- The system will display the current Available Stock.
- Enter the Adjustment Quantity (positive to add, negative to deduct).
- Select a Reason (e.g., Counting Error, Damaged, Expired).
- Click Submit Adjustment.
Approval Process
If a Stores Manager adjusts stock for a shop, it enters a PENDING state:
- A notification is sent to the Shop Manager of that location.
- The Shop Manager must go to Inventory → Adjustment History.
- Click Review on the pending record to Approve or Reject.
- Stock levels are updated only after approval.
- The Inventory Ledger is automatically updated with the authorized entry.
Stock Write-Offs
Stores Managers can write off stock that is no longer usable:
- Go to Inventory → Write-Offs
- Click New Write-Off
- Select the product and quantity to write off
- Choose a reason:
- Damaged — physically damaged stock
- Expired — past expiry date
- Returned to Supplier — sent back to vendor
- Lost / Missing — unaccounted-for stock
- Other — specify in notes
- Add notes explaining the write-off
- Click Submit
Transfer Statuses
| Status | Meaning |
|---|---|
| Draft | Not yet sent, can be edited |
| Sent | In transit to destination |
| Received | Fully received, quantities match |
| Partial | Some items received, others pending |
| Disputed | Quantity discrepancy reported |
| Closed | Dispute resolved |
| Cancelled | Transfer voided |
Stock Requests
Shops can request stock from Stores:
Creating a Request
- Go to Stock Requests
- Click New Request
- Select requesting location
- Add products and quantities needed
- Add justification notes
- Click Submit Request
Approving Requests (Stores Manager)
- View pending requests
- Review requested items
- Click Approve or Reject
- If approved, a transfer is automatically created
Customer Management
Adding Customers
- Go to Customers
- Click Add Customer
- Enter details:
- Name
- Phone number
- Email (optional)
- Address (optional)
- Click Save
Credit Sales
To sell on credit:
- In POS, select the customer
- Complete the sale with Credit payment method
- The amount is added to customer's debt
Recording Payments
When a customer pays their debt:
- Go to Customers
- Find the customer
- Click Record Payment
- Select payment method:
- Cash — physical cash payment, recorded immediately
- E-Cash — launches a Paystack popup to process mobile money or card payment; the debt is only reduced after successful Paystack verification
- Enter amount paid
- Click Save (for cash) or complete the Paystack flow (for E-Cash)
Viewing Customer History
- See all purchases made by a customer
- View outstanding debt
- Track payment history
Cash Management
Cash on Hand
Your current cash is shown in the top navigation bar:
- Green badge shows available cash
- Click to manage transfers
Creating a Cash Transfer
When handing over cash (e.g., Shop Manager → Accountant):
- Go to Cash Transfers
- Click New Transfer
- Select recipient (Accountant)
- Enter amount
- Add notes if needed
- Click Submit
Confirming Cash Received
- View pending transfers to you
- Click Confirm when cash is received
- The transfer is completed
Cash Transfer Statuses
| Status | Meaning |
|---|---|
| Pending | Awaiting confirmation from recipient |
| Confirmed | Successfully transferred |
| Cancelled | Transfer voided |
Cash Transfer Filters
Use the filter panel at the top of the Cash Transfers page to find specific transfers:
- Date Range — filter by start and end date
- Shop — filter by specific shop location
- Attendant — filter by the staff member who created the transfer
- Shop Managers — sidebar Cash Transfers link
- Accountants, Auditors, Admins — Financial → Cash Transfers in the sidebar
Reports & Analytics
Sidebar Menu Structure
Reports and data are organized into three sidebar menus based on your role:
- Sales Report — daily sales summaries
- Sales History — individual sale records with details
- Price History — product price change log
Available to: Shop Manager, Accountant, Auditor, Admin
- Accountant Sales Report — detailed financial report across shops
- Cash Transfers — cash movement records with filters
Available to: Accountant, Auditor, Admin
- Product Lifecycle
- P&L by Product / Location / Manager
- Inventory Movements
Available to: Auditor, Accountant, Admin
Auditor Dashboard & Inventory Menu
Auditors have access to a dedicated Auditor Dashboard and an Inventory menu in the sidebar containing:
- Ledger — full inventory ledger showing all stock movements
- Transfers — view all stock transfers across the organization
This gives Auditors full read-only visibility into inventory and stock flow alongside their Sales, Financial, and Tracking access.
Sales Report (Shop Manager)
View sales performance for your shop:
- Go to Sales Report
- Select date range
- View:
- Total sales
- Sales breakdown by product
- Sales by hour
Accountant Reports
The Accountant Dashboard shows:
- Revenue by period
- Sales by payment method
- Cash vs E-Cash breakdown
- Outstanding credit
Price History
Track product price changes:
- Go to Financial → Price History
- Search for a product
- View all price changes with dates and who made them
Tracking & Audit Features
User Activity Logs
Designed for comprehensive auditing and accountability, tracking user interactions across the system:
- Go to Tracking & Reports → User Activity Logs
- View detailed logs indicating:
- User & Action: Identifies which staff member performed the action, mapped to action types (Logins, Record Creation, Updates, Deletes)
- Endpoint: The system path that was accessed
- Device Info: Displays device type and browser string for security verification
- Use top filters to drill down into specific users' actions or specified date ranges
Product Lifecycle
Track a product's journey through the system:
- Go to Tracking & Reports → Product Lifecycle
- Select a product
- View:
- Entries - Stock In, Production, Transfers In, Returns
- Exits - Sales, Transfers Out, Damage/Write-offs
- Stock by Location - Current quantities per location
- Detailed Ledger - Every movement with timestamps
Profit & Loss by Product
Analyze profitability per product:
- Go to Tracking & Reports → P&L by Product
- Select time period (Week/Month/Quarter/Year/All)
- View for each product:
- Quantity Sold
- Revenue
- Cost
- Gross Profit
- Margin %
Profit & Loss by Location
Compare shop performance:
- Go to Tracking & Reports → P&L by Location
- View for each shop:
- Transaction count
- Revenue
- Cost
- Profit
- Average sale value
Profit & Loss by Manager
Evaluate staff performance:
- Go to Tracking & Reports → P&L by Manager
- View for each staff member:
- Number of sales
- Total revenue generated
- Profit contribution
- Average sale value
Inventory Movement Report
View all stock movements with filters:
- Go to Tracking & Reports → Inventory Movements
- Filter by:
- Transaction type (Sale, Transfer, Damage, etc.)
- Location
- Date range
- Product name/SKU
- View summary by transaction type
- See detailed ledger entries
Notifications
The system provides in-app notifications to keep you informed of important events in real-time.
Notification Bell
Look for the bell icon in the top navigation bar:
- A red badge shows the count of unread notifications
- Click the bell to see a quick dropdown preview of recent notifications
- Click View all notifications to see the full list
Notification Types
| Type | Description | Triggered When |
|---|---|---|
| Transfer | Stock transfer alerts | A transfer is sent to your location, received, or has discrepancies |
| Low Stock | Inventory alerts | Product stock falls below the reorder level at your location |
| Stock Request | Request updates | A stock request is submitted, approved, or rejected |
| Subscription | Subscription alerts | Subscription is nearing expiry, expired, or renewed |
Managing Notifications
- Click a notification to navigate to the related page (e.g., transfer details)
- Click Mark All as Read to clear all unread notifications
- Individual notifications are automatically marked as read when you click on them
Stock Alerts Panel
A dedicated Stock Alerts panel appears in the sidebar showing:
- Products currently below their reorder level at your location
- The product name, current stock quantity, and reorder threshold
- Click any alert to view the product details
Settings & Administration
General Settings
- Go to Settings → General
- Update organization details:
- Organization name
- Currency symbol
- Contact information
Payment Provider
Configure Paystack for E-Cash payments:
- Go to Settings → Payment Provider
- Enter Paystack API keys
- Enable/disable E-Cash payments
User Management
Creating Users
- Go to Users
- Click Add User
- Enter:
- Name
- Role
- Assigned Location
- Set initial password
- Click Save
Resetting Passwords
- Go to Users
- Find the user
- Click Reset Password
- Enter new password
- User will be prompted to change it on next login
Location Management
Creating Locations
- Go to Locations
- Click Add Location
- Enter:
- Name
- Type (Production, Stores, Shop)
- Address
- Click Save
Subscription Management
Your organization's access to the POS system is managed through a subscription model with various plans and features.
Subscription Plans
| Plan | Monthly Price | Max Shops | Key Features |
|---|---|---|---|
| Starter | GH₵250/month | 2 shops | Unlimited products, real-time inventory, basic reports |
| Standard | GH₵350/month | 5 shops | All Starter features + transfers, multi-user support |
| Premium | GH₵350/month base +GH₵100/extra shop |
Unlimited | All Standard features + priority support, advanced reporting |
Annual Billing
All plans are available with annual billing at a discounted per-month rate:
- Pay for 12 months upfront at a reduced price
- Annual pricing is calculated automatically — the savings percentage is shown on the pricing page
- Both the base price and the additional-shop price are discounted when paying annually
Initial Setup Period
New accounts enjoy a 14-day setup period after completing initial setup:
- Full access to all features during setup
- Time to configure products, locations, and users
- Subscription billing starts after the 14-day period
- Choose your subscription plan during setup
Viewing Subscription Status
- Go to Subscription → Status in the sidebar
- View your current subscription details:
- Current plan name
- Subscription start and end dates
- Days remaining
- Current status (Active, Trial, Expired, etc.)
- See recent payment history
Payment History & Receipts
Track all subscription payments:
- Go to Subscription → Payment History
- View all payments with:
- Receipt number
- Payment date and amount
- Payment method used
- Subscription period covered
- Download PDF receipts for accounting
Subscription Lifecycle
| Status | Description | Access Level |
|---|---|---|
| Trial | 14-day setup period | Full access |
| Active | Paid and current | Full access |
| Expired | Subscription ended, 10-day grace period | Full access (grace period) |
| Inactive | 10+ days past expiry, needs renewal | Login only, no transactions |
| Locked | 6+ months inactive, contact support | No access |
Subscription Notifications
You'll receive automatic notifications about your subscription:
- 5 days before expiry - Daily reminder emails/SMS
- On expiry date - Urgent renewal notice
- Up to 10 days after expiry - Continued daily reminders
- At deactivation - Notice that account is now inactive
Renewing Your Subscription
To renew your subscription:
- Contact your account manager or the support team
- Make payment via Mobile Money, Bank Transfer, or Paystack
- Your subscription will be extended immediately upon payment confirmation
Troubleshooting
Common Issues
- Check stock levels for the product
- Create a transfer to bring more stock
- Verify the correct batch is selected
- Click Open Shift button
- Enter opening cash amount
- Only completed sales can be voided
- Sales older than 24 hours may not be voidable
- Check with Admin for override
- The destination hasn't received it yet
- Contact the destination location
- Check if they've logged in
- Verify product is marked as Active
- Check if product has stock in your location
- Verify batch isn't expired
Getting Help
If you encounter issues:
- Check this manual first
- Contact your Administrator
- Note any error messages for troubleshooting
Shop Settings & Printer Configuration
Each shop can have unique configurations for receipts and stationery.
- Go to Settings → Shop Settings.
- Printer Type: Choose between Thermal (80mm/58mm), A4, or A5.
- Stationery: Upload shop-specific logos or headers.
- Receipt Customization: Add custom "Thank You" messages or return policies to the footer.
E-Cash API Configuration (Admin Only)
To accept digital payments, each shop can be configured with its own Paystack or mobile money API keys.
- Go to Admin → Locations.
- Edit a specific Shop location.
- Enter the E-Cash Public Key and Secret Key.
- Toggle Enable E-Cash Checkout.
- Sales at this location will now show the E-Cash payment option in the POS.
Keyboard Shortcuts (POS)
| Shortcut | Action |
|---|---|
| Enter | Complete sale / Confirm action |
| Escape | Cancel / Close modal |
| / | Focus search bar |
Glossary
| Term | Definition |
|---|---|
| Batch | A lot of products with shared characteristics (cost, expiry) |
| SKU | Stock Keeping Unit - unique product identifier |
| Tenant | Your organization within the system |
| Ledger | Historical record of all inventory movements |
| COGS | Cost of Goods Sold - the cost value of items sold |
| Margin | Profit as a percentage of revenue |
| Shift | A working period for a sales attendant |
Quick Reference Cards
- Open shift (enter opening cash)
- Process sales throughout the day
- Receive any pending transfers
- Close shift (count cash, reconcile)
- Review shift reports
- Check low stock alerts
- Create stock requests if needed
- Submit cash transfers to Accountant
- Review shop sales report
- Confirm all pending cash transfers
- Review sales reports across shops
- Check customer credit balances
- Generate profit/loss reports
- Review P&L by product
- Review P&L by location
- Review P&L by manager
- Adjust pricing if needed
- Review user access and roles
POS System User Manual | Version 1.2 | Last Updated: April 2026