D
DomendraPOS
Docs
Get started
User Guidelines

DomendraPOS Documentation

Everything you need to run a modern multi-branch retail business — point-of-sale, inventory, accounting, customers, suppliers, analytics, role-based security, and more. This guide walks you through every module with annotated screenshots, actionable steps, and downloadable CSV samples.

Login screen
DomendraPOS login screen
12+
Modules documented
6
Role types
8
CSV samples
7
Screenshots
On this page

Getting Started

Set up your workspace, log in, and navigate the main layout.

1. Create a workspace

On the login screen, click “New to DomendraPOS? Create a workspace”. Fill in the workspace name, your admin email, currency (e.g. KSh for Kenya Shilling), and timezone. After you submit, you receive a confirmation email and your tenant (workspace) is provisioned.

2. Log in

Fig 1. The login screen
Login screen with email, password, remember me, sign in button, and Documentation link
Open the login page
Navigate to https://app.domendrapos.com/login (or your tenant URL).
Enter your email
Use the email registered by your workspace admin.
Enter your password
Click the eye icon to reveal what you typed.
Remember me (optional)
Tick this box to stay signed in for 30 days on this device.
Click Sign in
You are redirected to /dashboard (or /superadmin if you are a platform super-admin).
Need help?
Click the Documentation button on the login screen to open this guide.

3. Navigate the dashboard

Fig 2. The dashboard
Main dashboard with KPI cards, revenue chart, top products, and recent transactions

The main layout has three regions:

Left sidebar
Collapsible rail with grouped navigation — Main, Administration, Platform.
Top app bar
Rail toggle, live clock, today's revenue, branch selector, theme toggle, user menu.
Content area
The active page (Dashboard, POS, Inventory, Reports, etc.).

4. Select a branch

Use the branch selector in the top app bar (top right). The default is “All Branches”. When you select a specific branch, all subsequent transactions, stock views, and reports are scoped to that branch.

Point of Sale (POS)

Make sales fast — scan, tap, accept payments, and issue receipts.

Fig 3. The POS terminal
POS screen with product grid on left and cart panel on right
Select a branch
In the top app bar, choose the branch for this session.
Search or scan
Type product name/SKU or scan a barcode. The match list filters as you type.
Tap to add
Tap a product tile to add one unit. Tap again for more.
Set quantity / discount
In the cart panel, change quantities and apply line or cart-level discounts.
Choose a customer (optional)
Attach a walk-in or registered customer for loyalty and credit sales.
Take payment
Tap Cash, M-Pesa, or Card. For cash, enter the amount tendered. For M-Pesa, enter the phone number. A sale receipt prints automatically.
Open or close shift
At end of day, close your shift and print a reconciliation summary.

Payment methods

Cash

Record a cash payment. Enter the amount tendered to compute change.

M-Pesa

Mobile money. Enter customer phone number and STK push reference.

Card

Credit / debit card. Record the gateway reference for reconciliation.

POS features

Park / hold a sale
Park a cart to serve another customer, then resume it.
Customer credit
Issue credit sales to registered customers with outstanding balances.
Shift management
Open / close shifts and print shift summaries (cashier reconciliation).
Receipts
Print or email receipts; thermal printer friendly.

Inventory

Track stock-on-hand across branches, adjust quantities, transfer stock, and get low-stock alerts.

Fig 4. The inventory stock-on-hand page
Inventory page with KPI cards, filters, and SKUs table

Core concepts

Stock on hand
The quantity of each SKU currently in a branch.
Reorder point
The minimum stock level that triggers a low-stock alert.
Stock value
On-hand × cost price, shown per branch and in total.
ABC class
A = top 20% by value, B = next 30%, C = remaining 50%.
Adjustments
Manual increases or decreases with a documented reason.
Transfers
Inter-branch moves tracked with source and destination.

Stock movements

Adjustment
Increase or decrease stock for a SKU. Choose a reason: damage, theft, recount, sample, return.
Transfer
Move stock from one branch to another. Source loses; destination gains.
Receive
Receive goods from a supplier PO. Updates stock and accounting simultaneously.
Return
Return goods to a supplier. Creates a debit note and a payable reversal.
Recount
A full physical count. Import a CSV of counted quantities and post the adjustments.

Sample stock data (exportable)

Stock on hand export

A preview of the data returned by the inventory export endpoint. Click Download to save it as CSV.

Sku
Product
Category
On hand
Unit
Reorder point
Value
Status
SKU-001Coca-Cola 500mlBeverages240bottle5014400In Stock
SKU-002Bread LoafBakery42loaf202310In Stock
SKU-003Milk 1LDairy18carton252160Low Stock
SKU-004Sugar 1kgGroceries87bag3018270In Stock
SKU-005Eggs (tray)Dairy0tray100Out of Stock
sku,product,category,on_hand,unit,reorder_point,value,status
SKU-001,Coca-Cola 500ml,Beverages,240,bottle,50,14400,In Stock
SKU-002,Bread Loaf,Bakery,42,loaf,20,2310,In Stock
SKU-003,Milk 1L,Dairy,18,carton,25,2160,Low Stock
SKU-004,Sugar 1kg,Groceries,87,bag,30,18270,In Stock
SKU-005,Eggs (tray),Dairy,0,tray,10,0,Out of Stock
SKU-006,Rice 2kg,Groceries,56,bag,20,19040,In Stock
SKU-007,Cooking Oil 1L,Groceries,73,bottle,25,18980,In Stock
SKU-008,Tea Bags 100pk,Beverages,8,box,15,1440,Low Stock

Products

Define the catalog: products, brands, categories, units of measure, variants, and bulk import.

Open Products
Sidebar → Products. Use the toggle for table or grid view.
Add a product
Click “+ New Product”. Fill in information, pricing, inventory, and variants tabs.
Manage categories, brands, units
Use the sub-tabs inside the product modal or the settings page.
Bulk import (Excel)
Download the template, fill rows, upload. The system validates and reports row errors.
Bulk edit (spreadsheet mode)
Toggle bulk-edit on the table to edit prices inline for many products at once.
Activate / deactivate
Use the status toggle or select rows and bulk-activate / bulk-deactivate.

Sample product catalog data (exportable):

Product catalog export

Export your full product catalog with prices and stock for spreadsheet analysis.

Sku
Name
Category
Brand
Unit
Cost price
Selling price
Tax rate
Is active
SKU-001Coca-Cola 500mlBeveragesCoca-Colabottle456016true
SKU-002Bread LoafBakeryPrimaloaf40550true
SKU-003Milk 1LDairyBrooksidecarton1051200true
SKU-004Sugar 1kgGroceriesMumiasbag19021016true
SKU-005Eggs (tray)DairyKenchictray4204500false
sku,name,category,brand,unit,cost_price,selling_price,tax_rate,is_active
SKU-001,Coca-Cola 500ml,Beverages,Coca-Cola,bottle,45,60,16,true
SKU-002,Bread Loaf,Bakery,Prima,loaf,40,55,0,true
SKU-003,Milk 1L,Dairy,Brookside,carton,105,120,0,true
SKU-004,Sugar 1kg,Groceries,Mumias,bag,190,210,16,true
SKU-005,Eggs (tray),Dairy,Kenchic,tray,420,450,0,false
SKU-006,Rice 2kg,Groceries,Pishori,bag,300,340,0,true

Customers

Build a customer CRM — loyalty points, store credit, purchase history, and outstanding balances.

Open Customers
Sidebar → Customers to see the CRM list.
Add a customer
Click “+ New Customer”. Enter name, phone, email, and loyalty tier.
Sell on credit
In POS, attach the customer and choose “Credit” as the payment method. Their balance updates immediately.
View history
Click any customer to see purchase history, loyalty points, and outstanding balance.
Redeem loyalty
At checkout, apply loyalty points as a discount if the customer has enough points.

Customer balances export

Customer balances

Who owes you how much. Filter the list on the Customers page and export outstanding balances.

Name
Phone
Email
Loyalty points
Credit balance
Total spent
John Ade+254712345678john@example.com340120038400
Sarah Kamau+254722334455sarah@example.com12800124500
Moses Otieno+254733445566moses@example.com754507300
Mary Wanjiru+254700112233mary@example.com850056700
David Kiptoo+254711998877david@example.com1221001800
name,phone,email,loyalty_points,credit_balance,total_spent
John Ade,+254712345678,john@example.com,340,1200,38400
Sarah Kamau,+254722334455,sarah@example.com,1280,0,124500
Moses Otieno,+254733445566,moses@example.com,75,450,7300
Mary Wanjiru,+254700112233,mary@example.com,850,0,56700
David Kiptoo,+254711998877,david@example.com,12,2100,1800

Suppliers and Purchasing

Manage suppliers, raise purchase orders (POs), receive goods into stock, and track payables.

Add a supplier
Sidebar → Suppliers → “+ New Supplier”. Enter name, contact, and payment terms.
Raise a PO
Sidebar → Purchasing → “+ New PO”. Select supplier, branch, and line items. Submit for approval.
Approve a PO
A manager approves the PO. Stock is not affected yet.
Receive goods
Open the approved PO and click “Receive”. Enter quantities received. Stock-on-hand updates; a journal entry is posted to the inventory account.
Record supplier invoice
Match the PO to a supplier invoice; the payable is recorded in the general ledger.
Pay supplier
Issue a payment via cash or bank; the PO closes and the supplier balance reduces.

Sample purchase order data (exportable):

Purchase orders export

POs by status with line totals and supplier info.

Po number
Supplier
Branch
Status
Order date
Total
PO-2026-001Coca-Cola LtdCityApproved2026-01-0448000
PO-2026-002Prima BakeriesTownReceived2026-01-0512000
PO-2026-003Brookside DairyCityPending2026-01-0638500
PO-2026-004Mumias SugarTownDraft2026-01-0624000
PO-2026-005Kenchic LtdHighwayReceived2026-01-0316800
po_number,supplier,branch,status,order_date,total
PO-2026-001,Coca-Cola Ltd,City,Approved,2026-01-04,48000
PO-2026-002,Prima Bakeries,Town,Received,2026-01-05,12000
PO-2026-003,Brookside Dairy,City,Pending,2026-01-06,38500
PO-2026-004,Mumias Sugar,Town,Draft,2026-01-06,24000
PO-2026-005,Kenchic Ltd,Highway,Received,2026-01-03,16800

Reports

Generate sales summaries, profit and loss, VAT returns, and stock valuation for any period and branch.

Fig 5. Sales summary report
Sales summary report with KPIs, line chart, and payment method breakdown
Open Reports
Sidebar → Reports and choose Sales Summary, Profit and Loss, VAT, or Stock Valuation.
Pick a period
Use the date pickers or the quick period chip: Today / This Week / This Month / Quarter / Year.
Pick branches
Choose All Branches or specific branches.
Run the report
Click “Generate”. KPIs and charts populate instantly.
Export
Click Export CSV (for data) or Export PDF (for a printable report).
Schedule
Accountants can schedule recurring reports to be emailed monthly.

Interactive sample — Sales by day

Daily sales (sample)

A sample chart produced by the Reports module. Export the underlying data as CSV.

CSV data is generated from the chart series and can be opened in Excel or Google Sheets.

Analytics

Interactive dashboards: ABC analysis, revenue trends, top products, staff performance, peak hours.

Top products by revenue (sample)

Visualize which products generate the most revenue. Export for further analysis.

CSV data is generated from the chart series and can be opened in Excel or Google Sheets.

Accounts and Finance

Chart of accounts, journal entries, ledgers, VAT, and financial statements.

Chart of accounts
Settings → Accounting → Chart of Accounts. Define asset, liability, equity, income, expense accounts.
Post a journal entry
Accounting → Journal → New. Enter date, debit and credit lines. The entry must balance before posting.
View ledgers
Ledgers show all entries for an account in a date range with running balance.
Generate statements
Reports → Profit and Loss or Balance Sheet. Exports to PDF for sharing.
VAT
Reports → VAT Return. Generates the output VAT and input VAT for the period and the net payable.

Sample journal entries (exportable):

Journal entries export

Export posted journal entries with debit and credit lines for accounting review.

Entry no
Date
Account
Description
Debit
Credit
JE-10012026-01-06CashCash sale #102412500
JE-10012026-01-06Sales RevenueCash sale #102401078
JE-10012026-01-06VAT OutputVAT on sale #10240172
JE-10022026-01-06M-PesaM-Pesa sale #10258210
JE-10022026-01-06Sales RevenueM-Pesa sale #10250708
entry_no,date,account,description,debit,credit
JE-1001,2026-01-06,Cash,Cash sale #1024,1250,0
JE-1001,2026-01-06,Sales Revenue,Cash sale #1024,0,1078
JE-1001,2026-01-06,VAT Output,VAT on sale #1024,0,172
JE-1002,2026-01-06,M-Pesa,M-Pesa sale #1025,821,0
JE-1002,2026-01-06,Sales Revenue,M-Pesa sale #1025,0,708
JE-1002,2026-01-06,VAT Output,VAT on sale #1025,0,113

All Modules at a Glance

A quick reference table of every module and its main capabilities.

Module
What it does
Roles
DashboardKPI overview: revenue, transactions, low stock, top productsAll
POSMake sales, accept payments, print receiptsCashier, Manager
InventoryTrack stock, adjustments, transfers, ABC analysisManager, Stock Clerk
ProductsCatalog management, bulk Excel import, variantsManager
CustomersCRM, loyalty, store credit, balancesCashier, Manager
SuppliersSupplier directory and PO managementManager
PurchasingRaise, approve, receive purchase ordersManager
ReportsSales, P&L, VAT, stock valuation; CSV / PDF exportManager, Accountant
AnalyticsInteractive dashboards and trendsManager, Owner
AccountsChart of accounts, ledger, journal, statementsAccountant
IAM and SecurityUsers, roles, permissions, sessionsAdmin
Audit LogsImmutable trail of every user actionAdmin, Auditor
BranchesMulti-branch managementAdmin
API BillingUsage metering and subscriptionAdmin

Roles, Permissions, and Audit

Fine-grained Role-Based Access Control (RBAC) with audit logging. Every action is recorded.

Fig 6. The IAM page
IAM page showing users with roles, statuses, and KPIs

Default roles

Role
Description
Can make sales
Can manage stock
Can manage users
Can view reports
Super AdminPlatform owner — manages all tenants and billingNoAll tenantsAll tenantsAll tenants
Tenant AdminOwner of a workspace — full accessYesAll branchesYesYes
ManagerBranch manager — operations, approvals, reportsYesOwn branchOwn branchOwn branch
AccountantBooks, VAT, financial statementsNoView onlyNoYes
CashierFront-of-house sales and shiftsYesNoNoOwn sales
AuditorRead-only access to audit logs and reportsNoView onlyView onlyYes

Audit logs

Every login, create, update, delete, permission change, and export is recorded with user, IP, module, action, and timestamp. Tenant admins and auditors can filter and export the audit trail.

Fig 7. The audit log
Audit logs page with filters and timeline of actions by user, module, status
Audit log export

Filter the audit log by user, action, module, date, and export for compliance reporting.

Timestamp
User
Action
Module
Ip address
Status
2026-01-06 14:32:18John AdeLOGINAuth41.90.1.12Success
2026-01-06 14:30:02Sarah KamauCREATEProducts41.90.1.15Success
2026-01-06 14:25:44Moses OtienoSALEPOS41.90.1.18Success
2026-01-06 14:20:11John AdeDELETEInventory41.90.1.12Denied
2026-01-06 14:15:33Mary WanjiruUPDATEAccounting41.90.1.20Success
timestamp,user,action,module,ip_address,status
2026-01-06 14:32:18,John Ade,LOGIN,Auth,41.90.1.12,Success
2026-01-06 14:30:02,Sarah Kamau,CREATE,Products,41.90.1.15,Success
2026-01-06 14:25:44,Moses Otieno,SALE,POS,41.90.1.18,Success
2026-01-06 14:20:11,John Ade,DELETE,Inventory,41.90.1.12,Denied
2026-01-06 14:15:33,Mary Wanjiru,UPDATE,Accounting,41.90.1.20,Success
2026-01-06 14:10:09,David Kiptoo,LOGIN_FAILED,Auth,41.90.1.25,Failed

API and Exports

All list pages expose a REST API at /api and support CSV export. Here is how.

Authentication

The frontend uses JWT access and refresh tokens. The token is sent as Authorization: Bearer <access_token>. Access tokens expire every 15 minutes and are refreshed automatically on 401 responses.

POST /api/auth/login/
Content-Type: application/json

{
  "email": "you@example.com",
  "password": "your-password"
}

Refreshing the token

POST /api/auth/refresh/
Authorization: Bearer <refresh_token>

Listing resources

GET /api/products/?search=bread&category=groceries&ordering=-created_at
Authorization: Bearer <access_token>

# Response shape:
{
  "count": 128,
  "next": "https://…/api/products/?page=2",
  "previous": null,
  "results": [ {…}, {…}, … ]
}

Audit trail / Logs

Frequently Asked Questions

Still need help?

Contact your workspace admin or visit our support center. If you are a super-admin, open the Platform Dashboard for tenant management.

© 2026 DomendraPOS — Multi-tenant SaaS Point-of-Sale Platform · Sign in