Skip to main content

POS Internal Architecture

POS Components

Peripheral Devices
JavaPOS
Flexible access to range of Retail Peripherals, provided by the peripheral manufacturers
Database
JDBC
Local Master Data Repository · Transaction Data Store
POS Application
JVM
POS UI · POS Engines · Peripheral Control · Real-Time APIs
Services Application
Apache Daemon / JVM
Central Server Communications · Background Data Communications · Automated Processing (Transaction Flow up, Master Data Flow down)
Application Updater
JVM
Automated Upgrades (Normally Dormant)
Java
Operating System (Windows, Linux)
ComponentRuntimeFunction
Peripheral DevicesJavaPOSFlexible access to range of Retail Peripherals (provided by peripheral manufacturers)
DatabaseJDBCLocal Master Data Repository and Transaction Data Store
POS ApplicationJVMPOS UI, POS Engines, Peripheral Control, Real-Time APIs
Services ApplicationApache Daemon / JVMCentral Server Communications, Background Data Communications, Automated Processing (Transaction Flow up, Master Data Flow down)
Application UpdaterJVMAutomated Upgrades (Normally Dormant)

All components run on Java over the Operating System (Windows, Linux).

Enactor Software Components

UI Libraries
JSPJSFHTML 5Java SwingReactiOS/Android
Enactor UI specific jars
Process Flow
Application FlowBusiness Process Flow
Enactor core UI jars
Model
Business LogicApplicationEntities/Servers
Enactor core jars
Services
Background ServicesXML TransformationIntegration Broker (JBI)Search EngineSoftware UpdatesPipelinesMonitoring (JMX)TransactionsWeb ServicesQueuesSingle Sign OnDatabase Connection (JDBC)BPEL EngineMessagingDirectory ServicesFile Import/Export
Enactor core jars + Third Party jars
Runtime
Java
Java jars
LayerComponentsPackaging
UI LibrariesJSP, JSF, HTML 5, Java Swing, React, iOS/AndroidEnactor UI specific jars
Process FlowApplication Flow, Business Process FlowEnactor core UI jars
ModelBusiness Logic, Application, Entities/ServersEnactor core jars
ServicesBackground Services, XML Transformation, Integration Broker (JBI), Search Engine, Software Updates, Pipelines, Monitoring (JMX), Transactions, Web Services, Queues, Single Sign On, Database Connection (JDBC), BPEL Engine, Messaging, Directory Services, File Import/ExportEnactor core jars + Third Party jars
RuntimeJavaJava jars

React UI

Enactor POS
Android
Embedded Native Browser
Mobile phones, tablets
iOS / macOS
Embedded Native Browser
iPhones, iPads
Windows
Chromium Browser Engine
Fixed POS terminals
Linux
Chromium Browser Engine
Fixed POS, laptops

The Enactor POS application uses a React-based UI that renders consistently across all platforms:

PlatformBrowser EngineDevices
AndroidEmbedded Native BrowserMobile phones, tablets
iOS / macOSEmbedded Native BrowseriPhones, iPads
WindowsChromium Browser EngineFixed POS terminals
LinuxChromium Browser EngineFixed POS, laptops

Further Reading

DocumentDescription
POS Styles and ThemesConfiguring React POS UI themes and styles
Configuring Branding For React POS UICustomising React POS branding
Configuring Keonn RFID ReaderPeripheral device integration - RFID reader
Devices, Locations and TerminalsDevice and terminal data integration
Technical Architecture VideosVideo tutorials on technical architecture topics