SwiftPOS operating manual

Documentation

Step-by-step SwiftPOS processes, business rules and user guides for sales, inventory, purchasing, payments, reporting and installed business modules.
67 how-to guides available in your current module scope.

Quick Start

Recommended setup order for a new SwiftPOS business.

Getting Started

3 guides
Set up a new SwiftPOS business in the correct operational order.
Initial business setupExpand guide

Configure the business before users start entering stock or transactions.

Before you begin
  • Know the business currency, tax approach, main contact details and first operating location.
Steps
  1. Open Settings → Business Settings.
  2. Confirm business name and identity details.
  3. Set currency plus significant currency and quantity precision.
  4. Review tax, invoice and reward defaults.
  5. Save the settings, then create or review Business Locations.
What SwiftPOS does
  • Currency/precision settings become the formatting and validation basis for later transactions.
  • Location records become the ownership boundary for stock, registers and notification delivery.
Prepare a cashier dayExpand guide

Prepare users, locations and the cash register before the first POS sale.

Before you begin
  • The cashier must be active, have access to the location and have sales/register permissions.
Steps
  1. Select the working location.
  2. Open Registers.
  3. Open the register and enter the actual opening cash.
  4. Open POS and confirm the selected customer/location context.
  5. Start selling only after the register is open where register control is enabled.
What SwiftPOS does
  • Opening cash becomes part of end-of-day counted-cash reconciliation.
Install SwiftPOS as an appExpand guide

Install the web application on a supported phone, tablet or desktop without turning accounting transactions into offline data.

Before you begin
  • Use SwiftPOS over HTTPS in a supported browser. Chrome/Edge on Android or desktop can show the install action after sign-in; iPhone/iPad installation uses Safari → Share → Add to Home Screen.
Steps
  1. Open SwiftPOS in the browser and sign in.
  2. Use the download icon in the authenticated SwiftPOS header when it appears, or use the browser's Install/Add to Home Screen command.
  3. Launch SwiftPOS from the new home-screen/desktop icon.
  4. Sign in normally; the installed app opens in its own standalone window.
  5. If connectivity is lost, reconnect before attempting sales, payments, purchases, stock or other accounting changes.
What SwiftPOS does
  • The installed app uses the SwiftPOS icon and green application theme.
  • Dashboard, POS, Products and Documentation shortcuts are exposed to supported launchers.
  • Only same-origin static assets are cached; authenticated HTML, API responses and accounting transactions are never stored or queued by the service worker.
  • When the network is unavailable, navigation falls back to a safe offline notice rather than a stale accounting screen.
Installable is not offline accounting
Build 3.26.344 makes SwiftPOS installable as a PWA, but transaction posting remains server-authoritative. Do not assume a sale or payment is saved unless the server confirms it.

Dashboard

1 guide
Understand business statistics and date/location filters without confusing dashboard summaries with transactional ledgers.
Use dashboard date and location filtersExpand guide

Review business performance for the intended period and branch.

Steps
  1. Open Dashboard.
  2. Select the date range.
  3. Select a location or All Locations where permitted.
  4. Review sales, receivables, payables, stock alerts and Sales Last 30 Days.
  5. Open the underlying report when you need transaction-level evidence.
What SwiftPOS does
  • Dashboard cards recalculate for the chosen accessible scope; the Sales Last 30 Days chart remains a rolling recent-day view.

Customers & Suppliers

5 guides
Create contacts and understand invoice payments, advances, return credit and statements.
Add a customerExpand guide

Create an individual or business customer for invoices, statements and payments.

Steps
  1. Open Customers and choose Add Customer.
  2. Choose Individual or Business.
  3. For Business enter the business name; for Individual enter first and last name.
  4. Add phone/email/address details as needed.
  5. Save the customer.
What SwiftPOS does
  • The customer becomes available in POS and conventional sale entry.
Add a supplierExpand guide

Create a supplier before recording supplier purchases or payments.

Steps
  1. Open Suppliers.
  2. Choose Add Supplier.
  3. Enter supplier identity and contact details.
  4. Save the supplier.
  5. Use the supplier on Purchase Orders or Purchases.
Add payment to an existing customer invoiceExpand guide

Record money received now against an invoice that may have been issued earlier.

Before you begin
  • Open the customer or sale and confirm the invoice balance still due.
Steps
  1. Open the customer Sales tab or the Sales list.
  2. Choose Pay/Add Payment for the target invoice.
  3. Enter the amount actually received.
  4. Choose the actual payment method such as Cash, M-Pesa, Paybill, Card or Bank.
  5. Apply available customer value only when intentionally using Advance or Return Credit.
  6. Save the payment and verify the updated invoice balance.
What SwiftPOS does
  • Payment date determines the register collection day; invoice date determines whether it is a current-day sale collection or an older balance collection.
Register rule
Cash received today against yesterday's invoice is Balance Paid (Cash) today, not a current-day cash sale.
Understand customer advance and return creditExpand guide

Use stored customer value without confusing it with a new cash receipt.

Steps
  1. Record new money in excess of an invoice as an advance when the payment workflow creates/retains customer value.
  2. Use Customer Return Credit when value was created by an eligible sale return.
  3. When paying an invoice, choose the amount of advance and/or return credit to apply.
  4. Do not record a fake Cash payment when only stored customer value is used.
What SwiftPOS does
  • Stored value allocations reduce invoice balances but do not represent new cash received into today's register.
Different accounting concepts
Invoice payment, customer advance and customer return credit are separate sources and remain auditable separately.
Import customers and suppliersExpand guide

Use the contact importer owned by Contacts rather than the retired Data Management screen.

Steps
  1. Open Contacts Import.
  2. Download/review the expected columns if offered.
  3. Upload the source file.
  4. Review validation and row-selection results.
  5. Import only validated rows and correct rejected records before retrying.

Products & Services

8 guides
Create simple, variable, combo and accessory-enabled products with authoritative pricing and stock rules.
Add a simple productExpand guide

Create a normal sellable stock item with its own price and stock identity.

Steps
  1. Open Products → Add Product.
  2. Choose Single product.
  3. Enter product name, SKU/barcode, category, brand and unit.
  4. Enter purchase cost and selling price where permitted.
  5. Configure tax, minimum stock and inventory tracking.
  6. Save, then add opening stock if this item already exists physically.
What SwiftPOS does
  • A simple product owns its selling price and its inventory quantity.
Add a serviceExpand guide

Create a sellable non-stock item without forcing inventory units onto the service.

Steps
  1. Open Products → Add Product.
  2. Choose Service.
  3. Enter the service name, category/brand and selling price.
  4. Leave Unit and Selling units blank when the service is simply sold by quantity, or choose a meaningful unit such as Hour, Session, Job or Day when measurement is useful.
  5. Configure tax and optional group prices, then save and assign the Service to selling locations.
What SwiftPOS does
  • A Service never creates or consumes inventory. Unit and Selling units are optional and affect only how a measured service is presented/sold. Invoices and receipts label a Service with no configured Unit as Service and print its quantity without inventing a unit.
Service unit rule
Service → Unit and Selling units are optional. Service products may remain unitless; Piece(s) is the protected default only for products that require a unit.
Create a variable productExpand guide

Create a parent catalogue product whose sellable prices and stock belong to exact variations.

Steps
  1. Add a product and choose Variable.
  2. Save the parent product first.
  3. Define/generate the required variations.
  4. Give each variation its exact identity/SKU.
  5. Set variation price and stock as applicable.
  6. Sell the exact variation rather than relying on a vague parent price.
What SwiftPOS does
  • The parent organizes the catalogue; each variation is the authoritative sellable entity for price and stock.
Pricing rule
Variable product → price belongs to each variation.
Create a combo productExpand guide

Sell one combo at a defined selling price while consuming component inventory.

Steps
  1. Add a product and choose Combo.
  2. Save/open Combo Setup.
  3. Search and select each component product or exact variation.
  4. Enter component quantities.
  5. Set the combo selling price.
  6. Save and sell the combo normally.
What SwiftPOS does
  • The combo owns the selling price; cost and stock consumption come from the selected components.
Combo rule
Combo selling price belongs to the combo; component products determine inventory consumption and cost.
Configure product accessoriesExpand guide

Offer independently priced and stocked add-on products before the selected parent/variation is committed to the POS cart.

Before you begin
  • Create every accessory first as a normal active Single or Variable product.
Steps
  1. Open the main product and choose Configure Accessories.
  2. Create an accessory group and enter its name.
  3. Set Minimum, Maximum and Required according to the selection rule.
  4. Use the Accessory product search/dropdown as one field to find the eligible product.
  5. For a Variable accessory, use Exact variation; SwiftPOS shows only variations that belong to the selected accessory product.
  6. Choose Quantity per parent item or Fixed quantity and enter Qty.
  7. Set Default/Active where appropriate and save the group.
  8. In POS select the parent or any exact variation. SwiftPOS opens the parent accessory groups before adding that sellable line to the cart; choose Skip or Add Selected as allowed.
What SwiftPOS does
  • Every sellable variation of a Variable parent inherits the parent product's configured accessory groups.
  • Accessory price, tax, selling unit and stock stay on the accessory product/variation.
  • Parent-linked quantities scale automatically when Quantity per parent item is used.
  • Removing the parent removes its linked accessory lines; receipts and returns preserve the relationship.
Independent inventory
Accessories are normal stock-managed products. One parent plus one accessory deducts stock from both sellable entities independently.
No nested chains
An accessory product cannot itself have an active accessory chain.
Configure selling price groupsExpand guide

Maintain different authorized selling prices for customer/transaction contexts.

Steps
  1. Open Selling Price Groups.
  2. Create or select the required price group.
  3. Set it as default only when it should be the normal business price context.
  4. Open product/group prices; clicking a populated price field selects its existing value for immediate replacement.
  5. Enter the intended price per sellable entity using the business currency precision.
  6. Verify POS uses the expected price group before completing a sale.
Add opening stockExpand guide

Enter starting stock for inventory that existed before SwiftPOS began tracking it.

Steps
  1. Open Product Opening Stock.
  2. Review each assigned business location and exact variation row.
  3. Click an existing quantity/cost field to select its current value, then type the replacement.
  4. Enter quantities using the business quantity precision and unit costs using the business currency precision.
  5. Enter lot/serial data where the product requires it.
  6. Save Opening Stock; after a successful reconciliation SwiftPOS returns to the Products list.
What SwiftPOS does
  • Posting creates auditable opening inventory rather than silently changing current stock.
  • Quantity and money input/display precision follows Business Settings.
Use minimum stockExpand guide

Configure the low-stock threshold used by alerts and replenishment review.

Steps
  1. Edit the product or variation.
  2. Enter Minimum Stock quantity.
  3. Save.
  4. Review stock alerts/reorder reports when current quantity reaches or falls below the threshold.
What SwiftPOS does
  • Minimum Stock is a threshold only; it does not cap maximum inventory.

Sales & POS

5 guides
Create sales, collect payments, resume documents and understand statuses.
Complete a normal POS saleExpand guide

Sell stocked products quickly through the POS screen.

Before you begin
  • Use the correct location and open register when register control is enabled.
Steps
  1. Open POS.
  2. Search/scan and select the product or exact variation.
  3. If the parent has accessories, choose them before SwiftPOS adds the parent/variation to the cart; every variation of a Variable parent uses the parent's accessory groups.
  4. Select/add the customer when required.
  5. Review quantities, units, tax, discounts and price context.
  6. Choose Pay, enter payment method/amount and complete the sale.
  7. Print/view the receipt and remain in POS for the next transaction.
What SwiftPOS does
  • Final sale lines reduce stock, payment records feed register reconciliation and the invoice becomes available in customer/sales history.
Add a customer from POSExpand guide

Create a full customer record without abandoning the current cart.

Steps
  1. In the POS customer search choose Add Customer.
  2. Complete the customer form in the modal.
  3. Scroll inside the modal when the form exceeds the viewport.
  4. Correct any required fields highlighted in red.
  5. Save Customer; SwiftPOS closes the modal and selects the new customer.
Use Draft, Suspended and Quotation statusesExpand guide

Save a sale without treating every in-progress document as a final stock/payment transaction.

Steps
  1. Build the sale lines.
  2. Choose Draft when the document is incomplete and intended for later editing.
  3. Choose Suspended for a temporarily parked POS transaction.
  4. Choose Quotation when presenting an offer before final sale.
  5. Resume/convert the saved document and revalidate pricing/stock before final completion.
What SwiftPOS does
  • Final status is the point at which normal sale accounting/stock behavior becomes authoritative.
Record payment laterExpand guide

Collect all or part of an invoice after the original sale date.

Steps
  1. Open Sales or the customer record.
  2. Find the invoice with a due balance.
  3. Choose payment.
  4. Enter the amount received today and the actual payment method.
  5. Apply stored customer value only when intended.
  6. Save and verify the remaining balance/status.
What SwiftPOS does
  • A cash collection today against an older invoice appears as Balance Paid (Cash) in today's register.
Sell with different unitsExpand guide

Sell using configured selling units while keeping stock in the authoritative base quantity.

Steps
  1. Configure product selling units first.
  2. In POS choose the intended selling unit when available.
  3. Enter the customer quantity in that unit.
  4. Review the converted stock quantity and price before completing.
What SwiftPOS does
  • SwiftPOS converts units to the product's stock basis; e.g. 2 dozens consumes 24 pieces when that conversion is configured.

Sales Returns & Exchanges

3 guides
Reverse eligible sale quantities without breaking paid/due and inventory rules.
Create a sale returnExpand guide

Return selected products from an existing final sale.

Steps
  1. Open Sales and choose Return, or open Sale Return and enter the invoice number.
  2. Review original customer, date and location.
  3. Enter Return Qty only for items being returned.
  4. Confirm unit, original tax and proportional discount treatment.
  5. Choose the allowed refund/customer-credit outcome.
  6. Post the return and verify invoice balance plus stock restoration.
What SwiftPOS does
  • Only returned quantities are reversed; shipping remains non-refundable under the current rule.
  • Accessory lines remain identifiable with their parent relationship and can reverse their own inventory/value.
Return a due or partially paid invoiceExpand guide

Respect the amount actually paid when calculating refund eligibility.

Steps
  1. Check the invoice payment status before posting the return.
  2. For an unpaid due invoice, do not issue a cash refund for value never received.
  3. For a partially paid invoice, keep immediate refund/customer-credit within the legitimately paid refundable value.
  4. Post the return and verify the remaining document balance.
Refund ceiling
A return does not create a right to refund more money than SwiftPOS records as legitimately refundable/paid.
Handle an exchangeExpand guide

Use auditable return and new-sale documents instead of rewriting the original transaction.

Steps
  1. Return the original item/quantity using Sale Return.
  2. Create a new sale for the replacement item.
  3. Apply legitimate customer credit/refund value according to the chosen settlement method.
  4. Keep both documents linked through the customer's history/audit trail.
What SwiftPOS does
  • Inventory and prices remain historically correct for both the returned and replacement products.

Purchases & Goods Receipt

4 guides
Order, invoice, receive and return supplier goods using the inventory-authoritative receipt workflow.
Create a purchaseExpand guide

Record a supplier purchase/order with products, costs, tax and expected quantities.

Steps
  1. Open Purchases → Add Purchase.
  2. Choose supplier, location, date and document reference.
  3. Add product/variation lines and quantities.
  4. Review unit cost, tax, discounts and totals.
  5. Save the purchase.
  6. Use Receive Goods when physical stock arrives.
Receive goodsExpand guide

Move purchased quantities into inventory only through Goods Receipt.

Steps
  1. From Purchases select Received or choose Receive Goods for the purchase.
  2. Review each line's outstanding quantity; Receive Now starts at the outstanding amount.
  3. Reduce rows for a partial receipt or set unreceived rows to zero.
  4. Enter lot/batch, manufacture/expiry and serial details where required.
  5. Post the goods receipt.
What SwiftPOS does
  • Partial receipt sets the purchase to Partially received; receiving all outstanding quantity sets it to Received.
  • Goods Receipt, not a manually forced status, is the authority that increases stock.
Inventory authority
Do not force a purchase status to simulate receipt. Post a Goods Receipt so stock and receipt history stay auditable.
Record supplier paymentExpand guide

Record money paid to a supplier against purchase liability.

Steps
  1. Open the supplier or purchase.
  2. Choose Add/Record Payment.
  3. Enter amount, payment method and reference/date.
  4. Save and verify the purchase/supplier balance.
Create a purchase returnExpand guide

Return received goods to the supplier and reverse inventory through a controlled document.

Steps
  1. Open Purchase Returns or choose Return from the purchase.
  2. Select the purchase and eligible lines.
  3. Enter return quantities and review values.
  4. Post the return when approved.
  5. Verify supplier credit/balance and stock reduction.

Inventory

5 guides
Understand stock movements, counts, adjustments, lots, serials and valuation.
Understand what changes stockExpand guide

Know which operational documents increase or decrease inventory.

Steps
  1. Use Goods Receipt to increase stock from purchases.
  2. Final sales decrease sold stock.
  3. Sale returns increase returned stock.
  4. Posted purchase returns decrease returned-to-supplier stock.
  5. Stock adjustments/count postings create controlled corrections.
  6. Completed transfers move quantity from source to destination.
Movement map
Purchase receipt + stock; Sale − stock; Sale return + stock; Purchase return − stock; Adjustment ± stock; Transfer out − source / + destination.
Run a stock countExpand guide

Compare physical quantity with SwiftPOS and post the approved difference.

Steps
  1. Open Stock Counts and create a count for the location/scope.
  2. Enter physical counted quantities.
  3. Review differences before posting.
  4. Post only after confirming the physical count and reason.
  5. Review resulting stock movements/history.
Create a stock write-off or adjustmentExpand guide

Record controlled inventory corrections instead of directly editing quantity.

Steps
  1. Open Inventory Controls/Stock Adjustment workflow.
  2. Select the location and product/variation.
  3. Enter quantity and reason.
  4. Review value impact where applicable.
  5. Post the document and verify stock history.
Track lots and serial numbersExpand guide

Maintain traceability for products configured for lot/batch or serial control.

Steps
  1. Enable the required tracking on the product before transacting it.
  2. Capture lot/batch/expiry or serial identities during receipt/opening stock.
  3. Use lot/serial selectors on controlled outbound transactions.
  4. Review lot/serial lists when investigating stock.
Review stock history and valuationExpand guide

Investigate quantity/value changes instead of relying only on current stock.

Steps
  1. Open the product Stock History or stock-movement report.
  2. Select the business location.
  3. Search/switch the main product and exact variation where required.
  4. Review document source, quantity movement and valuation/cost context.
  5. Use integrity/audit tooling for unexplained ledger issues rather than editing history.

Stock Transfers

1 guide
Move inventory between locations with a status-controlled audit trail.
Create and complete a stock transferExpand guide

Transfer stock between business locations without losing source/destination accountability.

Steps
  1. Open Stock Transfers → Add.
  2. Select the source location. SwiftPOS disables that same location in Receiving Location so a transfer cannot point back to its source.
  3. Select a different receiving location and the required transfer status.
  4. Search and add the product/variation to transfer.
  5. The existing Available column shows the live source balance as Available: quantity + unit.
  6. Click/focus the Quantity field; its current/default value is selected automatically so typing replaces it immediately.
  7. Enter the transfer quantity. SwiftPOS validates it immediately against the source balance, gives the quantity field a red border and shows an inline error if the request exceeds availability.
  8. Correct any quantity that exceeds source availability; Save remains blocked while a row has a live stock error or its stock check is pending.
  9. If Save is attempted with required header fields or transfer lines missing, SwiftPOS marks all invalid fields red and scrolls/focuses the first error.
  10. Save as Pending while editable.
  11. Move to In Transit when dispatched.
  12. Complete/receive the transfer at the destination according to permissions.
  13. Review activity history and notes.
What SwiftPOS does
  • Live availability is advisory for immediate feedback; SwiftPOS still locks and validates source stock again inside the save transaction so concurrent stock changes cannot bypass inventory protection.
  • Status rules protect edits after dispatch and keep source/destination stock movements auditable.

Registers & Reconciliation

4 guides
Open, review and close cash registers using current-day sales, older balance collections and actual payment methods.
Open a registerExpand guide

Start a cashier/location register with authoritative opening cash.

Steps
  1. Open Registers.
  2. Choose Open Register.
  3. Confirm the cashier/location context.
  4. Enter the actual opening cash placed in the drawer.
  5. Open the register.
What SwiftPOS does
  • Opening cash is later subtracted from Notes + Coins to calculate net counted cash for the close sheet.
Understand today's collection cardsExpand guide

Distinguish current-day cash sales from money collected today for older invoices.

Steps
  1. Open Register Detail.
  2. Read Total Cash Sales as cash received today against invoices created today.
  3. Read Balance Paid in Cash as cash received today against invoices created before today.
  4. Review Balance Paid (Other Methods) by its actual payment-method breakdown.
  5. Use sale/payment history to investigate differences.
Date rule
Payment date determines today's collection activity. Invoice date determines whether that collection is current-day sale cash or an older balance payment.
Close and reconcile a registerExpand guide

Compare physical cash with the cash SwiftPOS expects from the authoritative register activity.

Steps
  1. Open the register and choose Close.
  2. Count Coins and Notes physically.
  3. Use the info icon beside Register Details to review the counted-cash formula, then compare the calculated left-side total.
  4. Review posted cash expenses in the middle column.
  5. Use the info icon beside Sales to review the expected-cash formula and non-cash audit treatment.
  6. Investigate any variance before completing the close; the info icon beside Variance / overage reason explains the shortage/overage handling.
What SwiftPOS does
  • Closed-register reconciliation is frozen as a historical snapshot so later transaction edits do not silently rewrite the close.
Variance review
A shortage/overage can be a real cash difference or a payment-method classification/counting issue. Investigate before treating it as employee loss.
Own Sales vs All Location SalesExpand guide

Choose the reconciliation scope that matches how physical cash is actually controlled at the location.

Steps
  1. Use Own Sales when the cashier/salesperson has an individual cashbox; the close uses that cashier's register-day activity.
  2. Use All Location Sales when several salespeople feed one shared physical cashbox; the close uses the location/day sales and payment records for every user.
  3. Count the shared cashbox physically, select All Location Sales, review the location total, then close normally.
  4. All Location Sales requires the broader sales-view permission in addition to register-close permission.
What SwiftPOS does
  • Both scopes can close the register and freeze the selected reconciliation snapshot.
  • Under Own Sales, a shortage belongs to the cashier who opened the register. Under All Location Sales, a shortage belongs to the employee who closes the shared cashbox.
Shared cashbox liability
Select All Location Sales only when the physical Notes + Coins being counted actually contain the location's shared sales cash. The employee who completes that close accepts any shortage in payroll.

Expenses

2 guides
Record, approve, post and report expenses with register-aware cash treatment.
Record and post an expenseExpand guide

Create an auditable expense rather than reducing register cash manually.

Steps
  1. Open Expenses → Add.
  2. Choose category, Expense For/reporting attribution, payee/payment details and amount/tax.
  3. Save/submit according to your approval workflow.
  4. Approve when required.
  5. Post the expense; use Post & Deduct from Register only for genuine register cash expenses.
What SwiftPOS does
  • Posted cash expenses reduce expected register cash when correctly linked to the register.
Expense For
Expense For is reporting attribution; it does not by itself debit an employee's payroll.
Use recurring expensesExpand guide

Create repeatable expense definitions without manually recreating the same setup each period.

Steps
  1. Open Recurring Expenses.
  2. Create the recurrence with category, amount and schedule.
  3. Run due recurring expenses manually or through the configured process.
  4. Review generated expense records before/after posting according to permissions.

Reports

2 guides
Use date/location-aware reports and understand that report totals derive from posted transactional data.
Run operational reportsExpand guide

Review sales, purchases, stock, payments, tax, aging and profitability for the intended scope.

Steps
  1. Open Reports.
  2. Choose the report type.
  3. Set date and location filters.
  4. Apply product/customer/supplier/payment filters where offered.
  5. Review totals and drill into supporting transactions when needed.
  6. Export only after confirming the report scope.
Review register reportsExpand guide

Analyze historical register sessions and payment/cash reconciliation.

Steps
  1. Open Reports → Register Report.
  2. Select date/user/location scope.
  3. Compare register totals with underlying sale/payment/expense history.
  4. Use the frozen close snapshot when reviewing a closed session.

Users, Roles & Permissions

4 guides
Control location access and distinguish Own permissions from All permissions.
Add a user and assign locationsExpand guide

Create a staff login with only the business locations and capabilities they need.

Steps
  1. Open Users → Add User.
  2. Enter identity/login details.
  3. Assign the role/permissions.
  4. Assign accessible locations.
  5. Save and test the user's expected navigation/action access.
Enable two-factor authentication and recover passwordsExpand guide

Protect business logins with Email/SMS verification and let users recover passwords through their primary work location communication settings.

Before you begin
  • Every active user who will use the selected 2FA method needs a Primary Work Location (Default Location), plus an account email for Email or phone number for SMS. Configure that location's SMTP or SMS gateway first.
Steps
  1. Open Settings → Business Settings → Security.
  2. Choose Email or SMS and enable two-factor authentication.
  3. Review the per-user readiness table; SwiftPOS refuses to enable 2FA while an active user is missing the selected channel configuration.
  4. After username/password validation, enter the six-digit code sent through the user's primary work location.
  5. For a forgotten password, choose Forgot password? on Sign in, select Email or SMS, verify the short-lived code, then set a new password.
What SwiftPOS does
  • Verification codes are hashed in the database, single-use, expire after 10 minutes and are rate-limited.
  • Email transport uses the user's primary location SMTP settings; SMS transport uses that location's configured SMS provider/gateway. Security SMS numbers are normalized to Kenyan international MSISDN format beginning with 254 before transmission. The destination is the user's own email or phone number.
Avoid account lockout
Configure each active user's Primary Work Location and selected Email/SMS transport before enabling business-wide 2FA.
Kenyan SMS number format
A stored number such as 0712345678 is sent to the SMS gateway as 254712345678. +254 and 00254 forms are normalized to the same gateway format.
Create or edit a roleExpand guide

Bundle business permissions into a reusable staff role.

Steps
  1. Open Roles.
  2. Add or edit a role.
  3. Select only the required permissions.
  4. Pay special attention to Own vs All sales/purchases/expenses permissions.
  5. Save and assign the role to users.
Understand Own vs AllExpand guide

Prevent a user's list/report scope from exceeding their responsibility.

Steps
  1. Use View Own Sales/Purchases/Expenses for users who should see only their own activity.
  2. Grant View All only to users who need broader authorized business/location visibility.
  3. Remember that location assignment still constrains access.
  4. Test sensitive lists/reports after changing a role.
Example
View Own Sales means the user sees sales attributed to that user; View All Sales permits broader authorized sales visibility within other access rules.

Notifications & Messaging

3 guides
Use the Notification Centre plus location-owned SMS/email delivery settings.
Review notificationsExpand guide

Read and manage the application's operational alerts.

Steps
  1. Open Notification Centre.
  2. Review unread notifications.
  3. Open a notification to its related context.
  4. Mark items read/archive as appropriate.
  5. Use Preferences/Alert Settings to control supported notification behavior.
Configure location SMS and emailExpand guide

Give each branch its own outbound SMS gateway and SMTP identity.

Steps
  1. Open Settings → Locations → Edit the location.
  2. On SMS configure gateway URL, request method/payload, recipient/message parameter names, headers and extra parameters.
  3. Use Test SMS after saving.
  4. On Email configure SMTP server, credentials/security and sender.
  5. Use Test Email after saving.
What SwiftPOS does
  • Customer Order received, Payment received and Payment reminder messages use the location attached to the sale/payment, so branches can send through different transports.
Location-owned transport
Business Settings does not provide one shared SMS/email transport; delivery configuration belongs to each business location.
Manage message templatesExpand guide

Control supported customer/supplier notification wording and tags.

Steps
  1. Open Message Templates.
  2. Choose the notification/template type.
  3. Edit subject/body and supported template tags.
  4. Save and test through the relevant business workflow.

Business Settings

4 guides
Maintain identity, currency, tax, invoice numbering and locations through the owning settings screens.
Change business currency/precision safelyExpand guide

Control display and validation precision without rewriting historical transaction facts.

Steps
  1. Open Business Settings.
  2. Review currency and significant currency precision.
  3. Review quantity precision separately.
  4. Save.
  5. Test a representative product/purchase/sale entry before broad operational use.
Configure invoice numberingExpand guide

Set invoice schemes and defaults before issuing customer documents.

Steps
  1. Open Invoice Settings.
  2. Create/edit the required invoice scheme.
  3. Set prefixes/sequences/layout options as supported.
  4. Choose the default scheme where appropriate.
  5. Preview/test before issuing live documents.
Configure tax profilesExpand guide

Maintain tax rates centrally and apply them to products/transactions according to permissions.

Steps
  1. Open Tax Profiles.
  2. Add/edit the required tax rate/profile.
  3. Set the product tax configuration.
  4. Review tax on sales/purchases before posting.
Understand public SEO and search indexingExpand guide

Keep public marketing/help content discoverable while operational accounting screens stay out of search results.

Steps
  1. Public search indexing is opt-in, not automatic.
  2. The anonymous home page, Packages catalogue and Documentation centre are the approved indexable routes.
  3. SwiftPOS generates /sitemap.xml only from that public registry.
  4. Operational pages such as Products, Sales, Purchases, Reports and Settings return noindex/noarchive directives and are excluded from the sitemap.
  5. When adding a genuine public landing page, add it to the central SEO registry deliberately rather than exposing an application namespace.
What SwiftPOS does
  • Canonical URLs strip tracking query strings.
  • Public pages publish Open Graph/Twitter metadata and JSON-LD schema.
  • robots.txt advertises the sitemap while disallowing operational namespaces.
Accounting pages stay private to search engines
Authentication remains the security boundary; robots/noindex are search-index controls, not access control.

KRA eTIMS

1 guide
Configure mappings and run validation before tax submissions.
Configure and validate eTIMSExpand guide

Prepare business/environment credentials and entity mappings before submitting tax documents.

Steps
  1. Open KRA eTIMS settings.
  2. Save environment credentials and test the connection.
  3. Configure location mapping.
  4. Configure tax mappings.
  5. Map products and customers where required.
  6. Synchronize reference codes and validate products/preflight.
  7. Review eTIMS logs after submissions.

Backups & Import Tools

2 guides
Use module-owned importers and protected backup workflows.
Create a backupExpand guide

Create a managed application backup before high-risk administrative changes when policy permits.

Steps
  1. Open Backups.
  2. Choose Create Backup.
  3. Wait for completion and verify the backup appears in the list.
  4. Download/store according to your organization's retention policy.
  5. Do not treat application source ZIPs as database backups.
Use module-owned importersExpand guide

Import data from the screen that owns that business object.

Steps
  1. Customers/Suppliers → Contacts Import.
  2. Products → Product/Variation/Price import tools.
  3. Purchases → Purchase Import.
  4. Sales → Sales Import when applicable.
  5. Review validation and select only accepted rows before committing.
Retired Data Management
The old /data-management/ user surface is retired. Use import tools inside Contacts, Products, Purchases and Sales.

Accounting & Business Rules

4 guides
Reference rules that explain why SwiftPOS classifies price, stock, payments and returns the way it does.
Authoritative pricing rulesExpand guide

Know which sellable entity owns the selling price.

Steps
  1. Simple product → use the product price.
  2. Variable product → use the exact variation price.
  3. Combo product → use the combo selling price; components determine cost/stock consumption.
  4. Accessory → use the accessory product/variation's own price.
SwiftPOS pricing rule
Prices belong to the actual sellable entity; avoid vague parent prices for variable products.
Register date-classification ruleExpand guide

Understand how invoice and payment dates affect register totals.

Steps
  1. Classify a payment into today's activity by the local business/payment datetime.
  2. If the invoice was created today, cash received today contributes to current-day cash sale collection.
  3. If the invoice predates today, cash received today contributes to Balance Paid (Cash).
  4. Non-cash methods remain itemized by their actual payment method.
Example
Yesterday's KES 3,000 invoice paid in Cash today = KES 3,000 Balance Paid (Cash) today.
Return/refund ruleExpand guide

Keep inventory reversal separate from the maximum money that can legitimately be refunded.

Steps
  1. Return only quantities actually sold and not already fully returned.
  2. Recalculate tax/discount from the original sale rules.
  3. Do not refund non-refundable shipping under the current rule.
  4. Cap immediate refund/customer value by legitimately refundable paid value.
Stock integrity ruleExpand guide

Use posted inventory documents rather than direct quantity manipulation.

Steps
  1. Receive purchases through Goods Receipt.
  2. Correct physical differences through stock counts/adjustments.
  3. Move locations through Stock Transfer.
  4. Investigate quantity/value drift through stock history and integrity audits.

HRM

2 guides
Employees, attendance, leave, advances, payroll, commissions and HR reporting.
Run the HRM employee-to-payroll cycleExpand guide

Maintain employee records and generate auditable payroll periods.

Steps
  1. Create/maintain Employee profiles.
  2. Record attendance/shifts/leave as used by your business.
  3. Review allowances, deductions, salary advances and approved adjustments.
  4. Generate payroll for the intended period/group.
  5. Review payroll detail before recording payment.
  6. Reverse/correct through supported payroll actions rather than editing paid history.
Review salary advances and payroll adjustmentsExpand guide

Keep requested/approved employee adjustments separate from ordinary register/payment data.

Steps
  1. Open Salary Advances or Adjustments.
  2. Review request, employee, amount and reason.
  3. Approve/reject according to permissions.
  4. Confirm the approved item is consumed by the intended payroll period.

CRM

1 guide
Leads, pipelines, activities, conversions, proposals and portal workflows.
Work a lead through the CRM pipelineExpand guide

Capture a lead, schedule activities and convert qualified business into a customer/workflow record.

Steps
  1. Open CRM Leads and add the lead.
  2. Assign source/pipeline/stage.
  3. Add follow-up activities.
  4. Move stages as work progresses.
  5. Convert the lead when qualified and verify the resulting customer/business linkage.

Manufacturing

1 guide
Recipes/BOMs, work orders, production stock consumption/output and production reporting.
Create and post a work orderExpand guide

Consume recipe inputs and create production outputs through an auditable manufacturing document.

Steps
  1. Configure Manufacturing Settings.
  2. Create/maintain the Recipe/BOM with inputs, outputs and operations.
  3. Create a Work Order from the recipe.
  4. Review planned quantities and available input stock.
  5. Update actual lines as permitted.
  6. Post the Work Order when production is complete.
  7. Review production report and inventory movements.
What SwiftPOS does
  • Posted production consumes configured inputs and creates configured output stock according to manufacturing rules.

WooCommerce

2 guides
Connect stores, synchronize products/prices/stock, import orders and review webhooks/sync logs.
Connect and synchronize a WooCommerce storeExpand guide

Configure one store connection and validate product/order synchronization rules.

Steps
  1. Open WooCommerce Stores and add/edit the store.
  2. Enter API credentials and test the connection.
  3. Configure Product Sync settings including price group/tax/description targets.
  4. Provision/review order webhooks.
  5. Run product sync and review sync logs.
  6. Review imported orders and retry failed items only after correcting the cause.
Sell SwiftPOS accessories through WooCommerceExpand guide

Mirror SwiftPOS accessory groups on the WooCommerce product page while keeping every accessory as an independently priced and stocked product or variation.

Before you begin
  • Configure and save the parent product's accessory groups in SwiftPOS.
  • Assign the parent and every accessory product to the WooCommerce store location.
  • The accessory product/variation must be eligible for normal WooCommerce Product Sync.
Steps
  1. Open WooCommerce → Product Sync and download the SwiftPOS WooCommerce Accessories companion plugin.
  2. In WordPress install and activate the companion plugin.
  3. Run Product Sync. SwiftPOS first creates/updates normal product and variation mappings, then publishes parent/accessory relationships in a second pass.
  4. Open the parent product in WooCommerce and confirm required/optional accessory groups are shown.
  5. Place a test order. Per-parent accessory quantities should follow the parent quantity; fixed accessory quantities should remain fixed.
  6. Confirm the imported SwiftPOS sale shows the accessory linked beneath its parent on receipts and returns.
What SwiftPOS does
  • The relationship metadata carries SwiftPOS option/group IDs and WooCommerce product/variation IDs only; WooCommerce reads the accessory's actual price and stock from the independently synchronized accessory item.
  • Incoming WooCommerce orders are validated against the current SwiftPOS accessory configuration before stock is posted.
SwiftPOS is the source of truth
Do not configure a second accessory relationship manually in WordPress. Rerun Product Sync after changing accessory configuration.
No documentation matches your search
Try a product, process, payment method, status or business-rule term.