Skip to content

System

The System section provides advanced configuration for receipt formatting, job processing, event-driven integrations, remote access, and license management.

Receipt Templates

Customize the format and content of printed receipts using a simple templating language.

Templates control:

  • Header — business name, address, contact info
  • Line items — how items, quantities, and prices are displayed
  • Totals — subtotal, tax breakdown, grand total
  • Footer — custom messages, M-PESA till number, feedback requests
  • Fiscal fields — tax authority signature data placement (KRA, URA, etc.)

Edit templates directly in the dashboard. Changes take effect immediately for all subsequent prints — no restart needed.

Queue Monitor

View and manage the system's internal job queues. Queues provide lossless, guaranteed delivery for background tasks like printing, fiscal receipt submission, and integrations.

Summary Cards

CardDescription
Total QueuesNumber of queues in the system
Active (Depth > 0)Queues with pending messages
Total MessagesAll-time message count across all queues
DLQ MessagesMessages in dead-letter queues (failed processing)

Queue List

ColumnDescription
QueueQueue name
DepthCurrent number of pending messages
VisibleMessages available for processing
Oldest MsgAge of the oldest message (indicates backlog)
P50 (ms)Median processing latency
P95 (ms)95th percentile latency
Err%Error rate
TotalAll-time messages processed
ActionsPeek, Replay, Purge

Queue Types

QueuePurpose
eventsCentral event bus — all system events flow through here
*.print.allPrint jobs for all configured printers
*.esd.autoAutomatic fiscal receipt submissions (sampled)
*.esd.priorityPriority fiscal submissions (100% rate, no delay)
*.dlqDead-letter queues for failed messages

Dead Letter Queues (DLQ)

Messages that fail processing repeatedly are moved to a DLQ rather than being lost. DLQ queues are highlighted in red when they contain messages.

Actions for DLQ messages:

  • Peek — view the message content without consuming it
  • Replay — move messages back to the main queue for reprocessing
  • Purge — permanently delete all messages (use with caution)

TIP

Check DLQ queues regularly. A growing DLQ often indicates a configuration issue (e.g., printer offline, fiscal API unreachable) rather than a bug.

Auto-Refresh

Toggle Auto (10s) to poll queue depths automatically, useful for monitoring during service or after restarting workers.

Event Routing

Configure how system events are routed to processing queues. Event routing powers the integration layer — printing, fiscal compliance, notifications, and custom workflows.

Summary Cards

CardDescription
Total SubscriptionsNumber of routing rules
ActiveCurrently enabled rules
Events RoutedAll-time count of events processed
DisabledInactive rules

Subscriptions

Each subscription defines a routing rule:

ColumnDescription
NameDescriptive name for the rule
Event TypesWhich events trigger this rule (e.g., print.job, order.paid, fiscal.submit)
Target QueueWhere matched events are routed
Sample RatePercentage of events to process (100% = all, 40% = sampled)
DelayTime to wait before processing (e.g., 10m for batching)
EventsCount of events received
StatusToggle on/off
ActionsEdit, Delete

Built-in Subscriptions

SubscriptionEvent TypesPurpose
All Printersprint.job, print.receiptRoutes all print events to the print worker
ESD Auto Submitorder.paidSamples paid orders for automatic fiscal submission (configurable rate and delay)
ESD Priorityfiscal.submitImmediate fiscal submission at 100% rate for manually triggered fiscal receipts

Custom Routing Rules

Click + New Subscription to create custom routing:

  • Print high-value orders to head office — route order.paid events where total > 10,000 to a separate queue consumed by a remote printer
  • SMS notification after purchase — route order.paid to an SMS integration queue
  • Backup fiscal submissions — route fiscal.submit to a secondary queue for redundancy

Sample Rate and Delay

  • Sample Rate — controls what percentage of events are processed by the rule. For fiscal compliance, this should always be set to 100% to ensure every receipt is submitted to the tax authority
  • Delay — wait before processing. Used to allow time for voids and corrections before submitting (e.g., delay fiscal submissions by 20 minutes so cashiers can void incorrect orders before they reach the tax authority)

Remote Access

A licensed add-on providing secure VPN access to your POS server from anywhere in the world.

For full details, see the Remote Access feature page.

Key Capabilities

  • Secure WireGuard tunnel to the Moneta Pay network
  • Access your dashboard from any device with an internet connection
  • Add up to 30 devices (laptops, phones, auditors) to your private subnet
  • Private DNS — access via your-slug.wg.moneta-pay.app

Dashboard Controls

  • Register — connect to the VPN network (one-time setup)
  • Toggle — start/stop the WireGuard tunnel
  • Add Device — generate QR codes for new devices
  • Status — view tunnel health, handshake times, and transfer stats

License & Hardware

View your subscription status, licensed features, and hardware binding information.

License Status

The header banner shows:

  • License status — Valid (green) or Expired (red)
  • Business name — registered business
  • Expiry date — when the license expires
  • Renew / Manage License — link to the Moneta Pay Portal

Upload License

Upload a renewed license file downloaded from the Moneta Pay Portal. The server validates and hot-reloads the license without requiring a restart.

Capacity Cards

CardDescription
Active TerminalsCurrent / maximum POS terminals allowed
Max WaitersMaximum waiter accounts
Grace Days LeftDays remaining in grace period (after expiry)
FeaturesNumber of licensed features

Licensed Features

Each feature shows its status (Enabled or Not Licensed). Features marked Not Licensed show an Unlock button linking to the portal to purchase the add-on.

FeatureDescription
BasicCore POS functionality
AnalyticsFull dashboard analytics and reporting
ESD / FiscalTax authority fiscal compliance via Digitax (KRA, URA, etc.)
M-PESAMobile money payment integration
Credit AccountsCustomer tab and unpaid bill tracking
Smart Stock EngineHierarchical ingredient tracking with regex pattern matching
CCTV OverlayLink camera feeds to transactions
Remote AccessWireGuard VPN tunnel for remote management
Unlimited PrintersNo limit on connected thermal printers
Multi-BranchMulti-location support under a single organization
BackupAutomated data backup
Market IntelligenceCompetitive insights and benchmarking

Hardware Information

Displays the Hardware ID — a unique fingerprint of the server hardware. This ID is used to bind licenses to specific machines, preventing unauthorized copying.

TIP

The Hardware ID is needed when requesting a hardware-locked license from the portal. Use the copy button to copy it to your clipboard.

Moneta Pay POS — Built for African Restaurants