Skip to main content

How To Guide Native Android POS Installation WIP

Introduction

The purpose of this document is to describe the necessary configuration needed to install the Enactor Native POS application on Android.

Overview

This guide will cover the installation of the Enactor Native POS application on Android.

The Estate Manager must be installed and configured before you install the Native POS application. Additionally, the following entities should be configured prior to installation: Device, Location, and POS Terminal.

The Enactor Native POS application can be downloaded and installed from the Google Play Store. When the Enactor Native POS is launched for the first time, the application initialises without any device-specific configuration. During serial number registration, the device specific configuration will be downloaded based on the configurations set in the Estate Manager.

Prerequisites

To complete the installation, you need:

  • An Android device which utilises a minimum of 64GB is recommended.

  • Android version 14 and above is recommended.

  • Estate Manager on version 2.7.1529 or greater.

  • The following configuration present in the Estate Manager:

    • Option set - NATIVE_POS_CONFIG_OPTIONS

    • User - BROADCAST_USER

    • Predefined broadcast - NATIVE_POS_PDB

    • Process detail - PingExtension

  • Network connectivity to the Estate Manager.

  • Network connectivity to the Store Server (v2.7.1529 or greater), if applicable.

* Contact your Enactor CSM to receive any of these.

If the Embedded PDC is used, you will also need the following payment configuration:

  • Device (for the PDC)

  • Payment Device (for the PED)

  • Payment Device Host (for the PDC)

  • EFT Merchant ID (for the location)

  • EFT Terminal ID (for the PDC)

Deployment Models

The Native POS configuration will depend on the deployment model. Specifically, will the store server be deployed or will the Native POS connect directly to the Estate Manager.

Store Server

When a store server is deployed for a location, the Native POS will need additional information about the store server hostname for each of the component servers - application, processing, services, and reports.

The process connection will be StandardPosBackOfficeEstateManager.

Architecture diagram showing deployment with a Store Server

No Store Server

When the store server is not deployed for a location, the Native POS will connect to the Estate Manager for the component servers - application, processing, services, and reports. Use the Estate Manager hostnames for the store server component server hostnames.

The process connection will be StandardPosEstateManager.

Architecture diagram showing deployment without a Store Server

Configuration Steps

The following steps outline how to configure the Option Set, Client Configuration Set, and Device to enable serial registration for a Native POS device.

Attribute / Option Sets

Option Sets are typically used to create user-configurable data entry fields, for which Value options may also be supplied. The Option Set described in this step contains all the necessary properties used by the Enactor Native POS application.

The Attribute / Option Set maintenance application can be accessed through:

Configuration -> Merchandise -> Attribute / Option Sets

Estate Manager menu navigation to Attribute and Option Sets

List view of available Option Sets in Estate Manager

Find and press View on the NATIVE_POS_CONFIG_OPTIONS entry to view its contents. This Option Set is included in the Standard Configuration 2 bundle.

Detailed view of NATIVE_POS_CONFIG_OPTIONS settings

Client Configuration region and environment settings

This entry is of type 'Client Configuration' for the Region 'All' and is already populated with core, additional, and payment configuration options.

Core Configuration

NameID
Process Connections Definition IDProcessConnections.DefinitionId
React Pos Content URLReactPos.contentUrl
Axis2 URLaxis2.url
Broadcast Default Download Server Host NameBroadcast.DefaultDownloadServerHostName
Broadcast Default Download Server PortBroadcast.DefaultDownloadServerPort
Bpel Runtime URLBpel.RuntimeURL
Back Office App URL BaseServer.BOApp.URL.Base
Back Office Proc URL BaseServer.BOProc.URL.Base
Back Office Proc RMI URL BaseServer.BOProcRMI.URL.Base
Back Office Reports URL BaseServer.BOReports.URL.Base
Back Office Web Service URL BaseServer.BOWS.URL.Base
Business Processing URL BaseServer.BP.URL.Base
Card Authorisation 1 URL BaseServer.CardAuth1.URL.Base
Card Authorisation 2 URL BaseServer.CardAuth2.URL.Base
Gift Card Authorisation 1 URL BaseServer.GiftCardAuth1.URL.Base
Gift Card Authorisation 2 URL BaseServer.GiftCardAuth2.URL.Base
CM App URL BaseServer.CMApp.URL.Base
CM Proc URL BaseServer.CMProc.URL.Base
CM Web Service URL BaseServer.CMWS.URL.Base
EM App URL BaseServer.EMApp.URL.Base
EM Proc URL BaseServer.EMProc.URL.Base
EM Reports URL BaseServer.EMReports.URL.Base
EM Web Service URL BaseServer.EMWS.URL.Base
IM Proc URL BaseServer.IMProc.URL.Base
IM WS URL BaseServer.IMWS.URL.Base
OM WS URL BaseServer.OMWS.URL.Base
PM URL BaseServer.PM.URL.Base
Payment Portal HostServer.PP.Host
RRS URL BaseServer.RRS.URL.Base
Enable Run ServicesCommon.Manage.EnableRunServices
Background Services SupportedBackgroundServices.Supported
Synchronous Retail Queue Connector ModuleServiceModules.SynchronousRetailQueueConnectorModule
Synchronous Scheduled Job Feeder ModuleServiceModules.SynchronousScheduledJobFeederModule

Additional Configuration

NameID
Automatic PurgingModule.AutomaticPurging.Enabled
Broadcast IDBroadcast.Predefined.BroadcastID
Broadcast Changes Last x YearsBroadcast.ChangesPeriod
Keep Screen OnCommon.KeepScreenOn
Customer Collections ModuleModules.CustomerCollectionsModule
Order ModuleModules.OrderModule
Time Attendance ModuleModules.TimeAttendanceModule
Re-Register PasswordApplication.Settings.Password

Payments Configuration

NameID
Embedded PDCPdc.EmbeddedPdcEnabled
PDC Company NamePdc.CompanyName
PDC Datasource NamePdc.DatasourceName
PDC Database LocationPdc.DatabaseLocation
PDC Primary PDMS URLPdc.PrimaryTmsUrl
PDC Secondary PDMS URLPdc.SecondaryTmsUrl

Press Cancel as no configuration changes are needed here.

Adding Additional Options to Option Sets

The NATIVE_POS_CONFIG_OPTIONS Option Set, referenced in this document, provides a baseline of common properties for configuration.

Please note that this set is not exhaustive; it does not contain every possible property available in the enactor.xml file. If your implementation requires a property that is not already listed, you must add it.

The following steps will guide you through adding any new properties to the Option Set.

Edit the Option Set.

Highlighted button to Edit an existing Option Set

Select Add.

Highlighted button to add a new property to the Set

Select the appropriate option type (such as 'Add Boolean Option' for true/false or 'Add Text Option' for text) that matches the kind of data this property will store.

Fill in the Option ID with the exact property ID (e.g., Broadcast.Predefined.BroadcastID) and then enter a friendly Name (e.g., 'Predefined Broadcast ID') that will be used as the display label.

Data entry fields for Option ID and Display Name

Press Save.

Client Configuration Set

To enable the use of the previously viewed Option Set, a Client Configuration Set must be configured with the appropriate values for each property. These values will be used during the serial registration step to generate the enactor.xml file used by the application.

The Client Configuration Set maintenance application can be accessed through:

Administration -> Devices -> Client Configuration Sets

Navigation menu for Client Configuration Sets

Button to create a new Client Configuration Set record

Click on the Create a new Configuration Set button.

General tab

General tab settings for Device Type and OS

Configure these properties as follow:

NameValueDescription
DescriptionNative POS Client Configuration AndroidProvide a name for the Client Configuration Set.
Device TypePOSSelect the device type.
Operating SystemAndroidSelect the operating system.

Select the Properties tab.

Properties tab

Select Native Pos Config Options from the Property Set drop down list.

Properties tab where enactor.xml values are defined

Values for each property can be entered here. These values will be used to generate the enactor.xml file during the registration process using a serial number.

All available properties are described below, along with sample values. The properties are categorized into Core, Additional, and Payments groups.

Core Configuration

Configure these properties as follow, replacing xx.xxx.xx.xxx with your Estate Manager Ip address:

NameValueDescription
Process Connections Definition IDStandardPosBackOfficeEstateManagerSet the process connection diagram based on your deployment model: StandardPosEstateManager or StandardPosBackOfficeEstateManager.
React Pos Content URLapps/react-pos-all-app/index.htmlSet the UI content URL.
Axis2 URLhttp://xx.xxx.xx.xxx:39833/axis2Set the axis 2 URL.
Broadcast Default Download Server Host Namexx.xxx.xx.xxxSet the broadcast default download server host name.
Broadcast Default Download Server Port39832Set the broadcast default download server port.
Bpel Runtime URLhttp://xx.xxx.xx.xxx:39832/WebCoreSet the bpel runtime URL.
Back Office App URL Basehttp://xx.xxx.xx.xxx:39848Set the back office app URL.
Back Office Proc URL Basehttp://xx.xxx.xx.xxx:39848Set the back office proc URL.
Back Office Proc RMI URL Basehttp://xx.xxx.xx.xxx:39848Set the back office proc RMI URL.
Back Office Reports URL Basehttp://xx.xxx.xx.xxx:39848Set the back office reports URL.
Back Office Web Service URL Basehttp://xx.xxx.xx.xxx:39848Set the back office web service URL.
Business Processing URL Basehttp://xx.xxx.xx.xxx:39832Set the business processing URL.
Card Authorisation 1 URL Basehttp://xx.xxx.xx.xxx:39856Set the first card auth server URL.
Card Authorisation 2 URL Basehttp://xx.xxx.xx.xxx:39856Set the second card auth server URL.
Gift Card Authorisation 1 URL Basehttp://xx.xxx.xx.xxx:39856Set the first gift card auth server URL.
Gift Card Authorisation 2 URL Basehttp://xx.xxx.xx.xxx:39856Set the second gift card auth server URL
CM App URL Basehttp://xx.xxx.xx.xxx:39830Set the CM app URL.
CM Proc URL Basehttp://xx.xxx.xx.xxx:39832Set the CM proc URL.
CM Web Service URL Basehttp://xx.xxx.xx.xxx:39833Set the CM web service URL.
EM App URL Basehttp://xx.xxx.xx.xxx:39830Set the EM app URL.
EM Proc URL Basehttp://xx.xxx.xx.xxx:39832Set the EM proc URL.
EM Reports URL Basehttp://xx.xxx.xx.xxx:39831Set the EM reports URL.
EM Web Service URL Basehttp://xx.xxx.xx.xxx:39833Set the EM web service URL.
IM Proc URL Basehttp://xx.xxx.xx.xxx:39832Set the IM proc URL.
IM WS URL Basehttp://xx.xxx.xx.xxx:39833Set the IM web service URL.
OM WS URL Basehttp://xx.xxx.xx.xxx:39837Set the OM web service URL.
PM URL Basehttp://xx.xxx.xx.xxx:39833Set the PM URL.
Payment Portal HostSet the payment portal host.
RRS URL Basehttp://xx.xxx.xx.xxx:39833Set the RRS URL.
Enable Run ServicesEnabledEnable the background services.
Background Services SupportedEnabledEnable the background services.
Synchronous Retail Queue Connector ModuleEnabledEnable the Synchronous Retail Queue Connector module.
Synchronous Scheduled Job Feeder ModuleEnabledEnable the Synchronous Scheduled Job Feeder module.

Note: The ports specified above are Enactor's default values - if alternative port numbers are used, they should be updated accordingly.

Additional Configuration
NameValueDescription
Automatic PurgingEnabledToggle automatic purging, which contain rules to purge certain entities and files from tables and directories. This is independent of your location purging configuration.
Broadcast IDNATIVE_POS_PDBPredefined Broadcast ID used to automatically request data from the Estate Manager during the application's first startup.
Broadcast Changes Last x Years5Specify the number of years to filter the data sent by the automatic broadcast, ensuring only data from the last 'x' years is included.
Keep Screen OnDisabledPrevent the device from sleeping. Not required on Swing.
Customer Collections ModuleEnabledEnable or disable the Customer Collections Module.
Order ModuleEnabledEnable or disable the Order Module.
Time Attendance ModuleEnabledEnable or disable the Time Attendance Module.
Re-Register Password12345Expected PIN to allow Re-Registering the device via the Context Menu.
Payments Configuration

Configure these properties as follow, replacing xx.xxx.xx.xxx with your PDMS IP address:

NameValueDescription
Embedded PDCEnabledEnable or disable the embedded PDC. This is a separate application that runs in conjunction with the Native POS.
PDC Company NameEnactor LtdThe company name.
PDC Datasource NameenactorpdcThe data source name of the PDC.
PDC Database Location/data/user/0/com.enactor.pos/files/PDC/db/pdcThe path to the PDC database location.
PDC Primary PDMS URLhttp://xx.xxx.xx.xxx/PaymentDevicemanagementServiceIP address of the primary PDMS.
PDC Secondary PDMS URLhttp://xx.xxx.xx.xxx/PaymentDevicemanagementServiceIP address of the secondary PDMS.

Press Save to save the configuration.

POS Terminals

This step is only necessary if you plan to use the Embedded PDC instead of an external one. The Embedded PDC functions like any standard PDC and is bundled directly with the Native POS application.

The POS Terminal maintenance application can be accessed through:

Configuration -> Organisation -> POS Terminals

Navigation menu for POS Terminal maintenance

List of configured POS Terminals

Edit the designated POS Terminal and select the Peripherals tab.

Peripherals tab for configuring payment hardware

Select the Payment Device Host that the Embedded PDC should use.

Selection dropdown for the Payment Device Host

Lastly, press Save.

Devices

The Device entity of a Native POS requires additional configuration to enable serial number registration. This step covers selecting the appropriate Configuration Set and the necessary values to generate a serial number.

The Devices maintenance application can be accessed through:

Administration -> Devices -> Devices

Navigation menu for Device maintenance

List of registered devices

If a Device record for the Native POS has already been created, find and Edit it. Alternatively, a new Device record can be created.

Editing screen for a specific POS device

Select the Registration tab.

Registration tab for serial number management

This is the tab where details are entered for serial number registration.

Fields for Download Hostname and Expiry Date

Configure these properties as follow, replacing xx.xxx.xx.xxx with your Estate Manager IP address:

NameValueDescription
Configuration SetNative POS Client Configuration AndroidSelect the Client Configuration Set to use.
Download Hostnamexx.xxx.xx.xxxIP address of the Estate Manager to download the configuration settings.
Download Port39833EM Server port.
Expiry DateDate of expiry of the serial number.

Once configured, press the Generate button next to the Registration Serial Number field. This will generate the new serial number needed to register the Native POS device.

Screen showing a successfully generated serial number

Take note of the serial number and press Save.

Native POS Registration

The Enactor Native POS Application should be downloaded from Google Play Store. When the Enactor Native POS is launched for the first time, the application initialises without any device-specific configuration. The download of such data is deferred to the serial number registration step.

Serial Number Registration

Launch the Enactor Native POS APP.

Initial splash screen when launching the Android app

Application initialization progress screen

This action creates the database tables and the initial data.

Select the Using a Serial Number option.

Selection screen for Serial Number registration method

Enter the device's registration serial number, then press Continue.

Input field for entering the device serial number

A call is then made to the Estate Manager to identify the POS device being configured.

If successful, a pop-up message appears asking for confirmation to register the device.

Press OK to confirm.

Confirmation pop-up to register the device

This action automatically sends a request to the Estate Manager to download static data using the predefined broadcast NATIVE_POS_PDB by the user BROADCAST_USER.

Toast message indicating data request is in progress

A series of messages indicate the progress and stages of the broadcast.

The first message reads: 'Requesting POS Data. This may take a few minutes.'

Once the request is acknowledged by the Estate Manager, the message updates to: 'Requested POS Data. This may take a few minutes.'

Toast message confirming Estate Manager has acknowledged request

In the Estate Manager's Broadcast History Maintenance, the following broadcast record can be seen:
Estate Manager screen showing broadcast status

The broadcast request is then processed, exported, and sent to the POS.

When the POS receives the instructions to download the broadcast .zip file, the toast message updates to: 'Notification received. Downloading and importing data.'

Progress bar for downloading and importing data

Once the initial broadcast has been successfully imported, a final message appears: 'Data fully received and ready to use.'

Success message indicating data is ready to use

The message disappears after a few seconds, and the POS is then ready for use.

Final login screen of the Native POS application