Cashiering & POS
Universal in-person payment acceptance for municipal service counters, self-service kiosks, and mobile POS — multi-tender transactions, cash drawer management, and end-of-day reconciliation.
Transaction Speed
Universal Lookup
Offline Queue
PCI-DSS
Purpose-Built for Canadian Municipalities
Purpose & Scope
What this module owns
Clear ownership boundaries prevent duplication and ensure every capability has exactly one authoritative home.
Owns
8Delegated to
4Payment gateway processing (card authorization)
GL posting of revenue
Citizen account management
Audit log storage
These capabilities are handled by dedicated modules and consumed via stable API contracts — keeping boundaries clean and ownership unambiguous.
Core Capabilities
What it does
3 capability groups comprising 8 discrete capabilities — each with API surface, business rules, and data ownership.
Search by: property roll#, utility account#, name, address, parking ticket#, court file#, dog tag#, permit#, invoice#; returns all outstanding balances across all services.
Cross-Module Search
Single search box queries property tax, utility, parking, court, recreation, licenses, and all other service balances.
Multi-Key Lookup
Search by roll number, account number, name, address, ticket number, dog tag, permit, or invoice number.
Balance Aggregation
Returns all outstanding balances for the matched entity, grouped by service type for easy selection.
Accept multiple tenders per transaction (e.g., $50 cash + $100 debit); automatic change calculation; cheque endorsement tracking.
Split Tenders
Accept any combination of cash, cheque, debit, credit, or money order in a single transaction.
Change Calculation
Automatic change calculation for cash tenders; change amount printed on receipt.
Cheque Tracking
Cheque endorsement tracking with cheque number, bank, and amount recorded for deposit preparation.
Every module owns a single bounded context, exposes stable APIs, and can be composed into any Civic product — that's the architecture that scales.
Krutik Parikh
Creator of Civic
Data Model
Entity Architecture
4 entities with 5 relationships — the authoritative schema for this bounded context.
Entities
Select an entity to explore its fields and relationships
API Surface
Integration Endpoints
8 RESTful endpoints across 4 resource groups — plus 4 domain events for async integration.
/api/v1/pos/sessions/open
Open cashier session
/api/v1/pos/sessions/{id}/close
Close & balance session
/api/v1/pos/sessions/{id}/summary
Session summary report
Ecosystem
Products that depend on this module
7 Civic products consume Cashiering & POS — making it one of the most critical platform services in the ecosystem.
Receipting
Primary — this module IS the receipting/POS product
View product →
Digital Payments
Kiosk channel
View product →
Recreation
Front desk registration payments
View product →
Court / POA
Court fine counter payments
View product →
Property Tax
Tax counter payments
View product →
Utility Billing
Utility counter payments
View product →
Licences & Permits
License/permit counter payments
View product →
Technical Specifications
Performance, Compliance & Configuration
Transaction Processing
Universal Lookup
Receipt Printing
Offline POS Queue
Cash Drawer Accuracy
PCI-DSS
FAQ
Frequently Asked Questions
Ready to Integrate
Build on Cashiering & POS
Request an architecture brief, integration guide, or live demo environment for your team.