Payments App

This application is designed to help organisations or programmes that need to manage and process cash or other types of payments for thousands of people on a regular basis.


It is accessible via a user interface (from within the Participant Management app) or a comprehensive REST API. It is built using Java, Apache Tomcat container, Spring Security implementation, ZKOSS RIA for user interface and MySQL for the database.

The app has been in production use by the Community Work Programme for two years. They use the application to manage $9 million in wage payments each month for 170,000 participants.

Multi-level approval process


  • Receives attendance and wage rate data from Participant Management app to calculate payroll for workgroup
  • Four level sign-off process on payroll
  • Verification of payroll data for the work group
  • Double check of the payroll verification for the work group
  • Preparation of the payment tranche
  • Release of payment for all the transactions in the tranche



  • Secure one time passwords
  • VPN communications to the banking system via a payment gateway


  • All payment are submitted via the gateway directly to the banking system
  • A full reconciliation is done on payments submitted, per transaction with the bank account
  • Any payment failures are identified, and reprocessed with updated bank account details
  • The tranche is closed once all the payments have been reconciled


  • Participant Management app to receive data on participant attendance and wage rate
  • Several payment gateways to process payments directly into participant bank accounts or mobile wallets
  • Management Information System application to track status of payments to each participant

Mobile participant attendance App

This application is designed to help organisations or programmes that need to manage attendance for thousands of people on a daily basis that are based at multiple locations.


The app is available as native Android or iPhone apps. It is built on HTML 5 and uses a server-side facial recognition API to compare recorded images against reference images.

Smartphone application

  • Native Android and iPhone applications
  • Offline data storage capability
  • Synchronises with server when Internet available
  • Time and attendance
  • Tracks time and attendance for a group of participants
  • Group manager can verify presence or absence by name or reference photo of participant
  • Time and attendance data relayed to Payments App to manage participant payments

Biometric verification

  • Client side facial detection
  • Server side facial matching against reference images
  • Flags low probability matches to system administrator

Output tracking

  • Group manager can record outputs at group level for each day
  • Outputs are linked back to the Management Information System app for reporting

Resource tracking

  • Group manager can allocate tools and other resources to a participant
  • Allows for check-in and check-out to track allocation


  • Integrates with Participant management app to receive data on workgroup participants for each site
  • Payments app to provide data on participant attendance for payroll purposes
  • Management Information System app to receive data on outputs produced by each group