Operate

Point of Sale

A complete POS built on top of your inventory and datasets. Sells stock, books revenue, creates expected payments, and feeds reconciliation — all from the same data model.

Processing a sale

  1. Open Dashboard → POS.
  2. Search or scan SKUs to add items to the cart.
  3. Adjust quantity, apply discounts if needed.
  4. Choose one or more payment methods and complete.
  5. A receipt is generated and emailed / printed as configured.

Behind the scenes, sale_service.py decrements inventory, records stock movements, books an expected payment, and triggers real-time notifications to the store owner.

Plan limits

PlanSales per month
Free (trial)30
ProUnlimited
EnterpriseUnlimited

Payment methods

  • Cash
  • Card (via your own terminal — ScanLedger records the payment, not the swipe)
  • Bank transfer
  • Mobile money

Split payments are supported — take part cash and part transfer in a single transaction. Each leg is tracked separately for reconciliation.

Receipts

Every sale produces a receipt saved under sales history. View, reprint, or email it to the customer. Each receipt has a reference number used by bank reconciliation to match incoming deposits.

Voids and approvals

Staff cannot void a completed sale by themselves. Instead, the void request workflowrequires a manager or owner to approve:

  1. Staff opens a sale and taps Request Void with a reason.
  2. A notification is pushed to managers/owners.
  3. An approver reviews the sale and approves or rejects.
  4. On approval, stock is restored, the expected payment is cancelled, and the sale is flagged voided.

The full audit trail — requester, approver, reason, timestamps — is visible on the void request detail page.

Reports

  • Daily, weekly, monthly revenue with payment-method breakdown.
  • Top sellers and best staff / shift.
  • Voided sales with reasons.
  • Expected-payments vs. received reconciliation.

Multi-store

On Enterprise, each sale is tied to a store_id. The workspace switcher in the sidebar lets staff switch stores they have access to, and reports can be filtered accordingly.

Next steps