Skip to main content

Release V5.2.5

Terminal UI Improvements

Payment terminal interface improvements to enhance user experience:


IMPROVEMENT

Improved Transaction Approval and Receipt Screens

[UP-97]

Context: Payment terminal screens had multiple steps for transaction approval, signature collection, and receipt selection, creating a lengthy process for merchants and customers.

Solution: Implemented a streamlined UI workflow that combines the approval and signature screens while optimizing receipt selection options based on transaction type.

Impact: Merchants can now complete transactions more efficiently with fewer screen interactions, and customers experience a more intuitive payment flow with clearer guidance at each step.

System Changes Overview

  • Database Changes: None
  • Configuration Changes: None
  • Code Changes: Modified UI components, navigation logic and screen layouts
  • Filesystem Changes: Updated layout XML files and resource strings
  • Data Migration: None

Implementation Actions

  • Created new combined approval/signature screen layout
  • Modified receipt selection UI to appear on the same screen when appropriate
  • Updated text and component rendering for clearer user guidance
  • Adjusted navigation logic to support the new streamlined flow
  • Added dynamic text scaling for error messages for better readability

IMPROVEMENT

Tablet UI Support for Sunmi V3 MIX

[UP-710]

Context: The SoftPOS terminal application interface was not optimized for tablet devices like the Sunmi V3 MIX, resulting in poor display and user experience on larger screens.

Solution: Implemented adaptive UI layouts for the SoftPOS application that automatically adjust to both portrait (800x1280) and landscape (1280x800) orientations on the V3 MIX tablet.

Impact: Terminal users with Sunmi V3 MIX devices now have a fully optimized interface with proper scaling, button placement, and text readability in both screen orientations.

System Changes Overview

  • Database Changes: None
  • Configuration Changes: Added device-specific configuration parameters for V3 MIX tablet display
  • Code Changes: Enhanced UI controllers with tablet-specific layouts and responsive components
  • Filesystem Changes: Added new layout XML files for tablet support
  • Data Migration: None

Implementation Actions

  • Install the updated terminal application package
  • Verify correct display on Sunmi V3 MIX tablets
  • Test both orientation modes for proper UI rendering
  • Confirm text size and component spacing across all screens

IMPROVEMENT

App Orientation Option & UI Adjustments for V3Mix

[UP-698]

Context: The V3 MIX device supports landscape mode by default, but some customers prefer using it in portrait mode, requiring UI adaptation for both orientations.

Solution: Implemented comprehensive UI adaptation for the Sunmi V3 MIX terminal device with support for both portrait and landscape orientations and screen-specific optimizations.

Impact: Terminal users can now select their preferred screen orientation in the Settings menu, and all application screens have been optimized for the V3 MIX tablet display in both orientations.

System Changes Overview

  • Database Changes: None
  • Configuration Changes: None
  • Code Changes: Modified Android XML layouts and resources to support tablet formats
  • Filesystem Changes: None
  • Data Migration: None

Implementation Actions

  • Created new layouts for tablet screen formats with sw700dp qualifier
  • Added orientation-specific layouts for both portrait and landscape modes
  • Implemented screen orientation toggle in Settings menu
  • Optimized UI components (buttons, text fields, keyboards) for tablet display
  • Enhanced language support with updated translations for all supported languages

IMPROVEMENT

App Orientation Option for V3Mix Terminal

[UP-745]

Context: V3Mix tablets support both portrait and landscape orientations, but customers had no way to switch between them as needed for different usage scenarios.

Solution: Implemented an orientation control switch in the terminal application's Settings menu, enabling users to select their preferred screen orientation.

Impact: Terminal operators can now easily adapt their V3Mix devices to operate in either portrait or landscape mode, improving ergonomics and display layouts for different environments.

System Changes Overview

  • Database Changes: None
  • Configuration Changes: Added new application preference for storing orientation settings
  • Code Changes: Added orientation detection, switching logic, and UI controls
  • Filesystem Changes: None
  • Data Migration: None

Implementation Actions

  • Added tablet device detection mechanism
  • Created screen orientation selection control in Settings screen
  • Implemented orientation persistence between application sessions
  • Added multi-language support for orientation labels
  • Ensured consistent UI appearance in both orientations

Terminal Stability Improvements

Enhanced transaction stability and reliability on terminal devices:


IMPROVEMENT

Fixed transaction processing on Sunmi/SoftPos terminals

[UP-469]

Context: When a transaction was approved and the terminal screen was subsequently locked, the transaction timer would continue running, eventually triggering an X04 error followed by an automatic void operation.

Solution: Implemented proper timer management to stop the transaction timer when a successful approval is received and prevent timer-related cancellations when the terminal screen is locked.

Impact: Transactions now remain in approved status even when the terminal screen is locked immediately after approval, eliminating unintended voids and improving the reliability of payment processing.

System Changes Overview

  • Database Changes: None
  • Configuration Changes: None
  • Code Changes: Modified timer handling in terminal application
  • Filesystem Changes: None
  • Data Migration: None

Implementation Actions

  • Enhanced terminal timer lifecycle management
  • Improved activity state handling during transaction processing
  • Added proper termination of transaction timers when activities are stopped
  • Refactored service stopping mechanism to provide better activity context awareness

FIX

Fixed Background Thread Management during App Restart

[UP-793]

Context: During SoftPOS application restart, background threads from the previous session remained active, causing conflicts with new threads.

Solution: Implemented proper thread termination logic that correctly stops all background processes when the application is restarted.

Impact: Eliminated S20T System error that occurred when users attempted to use log-diagnostics after restarting the application, improving overall stability.

System Changes Overview

  • Database Changes: None
  • Configuration Changes: None
  • Code Changes: Modified thread management in the SoftPOS application to properly terminate background threads during app restart
  • Filesystem Changes: None
  • Data Migration: None

Implementation Actions

  • Update the application to version 5.2.5
  • No additional configuration is required after update
  • No server-side changes are needed
  • Background thread management is automatically improved with the update

Terminal Settings Improvements

The following settings improvements have been implemented in this release:


IMPROVEMENT

Optimized Settings Menu for SoftPOS Terminals

[UP-530]

Context: SoftPOS terminals in offline mode incorrectly displayed PCI-specific settings options that were intended only for Sunmi terminals, causing confusion and potential misuse of settings options.

Solution: Implemented platform-aware menu generation logic to ensure SoftPOS terminals only display relevant settings options regardless of internet connectivity status.

Impact: SoftPOS terminals now display only appropriate settings options in both online and offline modes, eliminating confusion and improving the user experience.

System Changes Overview

  • Database Changes: None
  • Configuration Changes: None
  • Code Changes: Modified the settings menu generation logic in the FormBuilder component
  • Filesystem Changes: None
  • Data Migration: None

Implementation Actions

  • Modified the FormBuilder.java file to use the already initialized platform-specific settings array in offline mode
  • Added a platform type check to ensure appropriate menu options display based on device type
  • Removed redundant array recreation for offline mode
  • Preserved the existing behavior for online mode

IMPROVEMENT

Terminal Password Reliability Improvement

[UP-546]

Context: Terminals occasionally lost connection to the gateway when they were powered off during password rotation operations, resulting in corrupted password data.

Solution: Implemented a secure terminal password update mechanism with backup storage to prevent connection loss even when terminals are unexpectedly powered off.

Impact: Terminals will now maintain gateway connectivity even after unexpected power loss during password operations, eliminating the need for manual terminal reinitialization.

System Changes Overview

  • Database Changes: None
  • Configuration Changes: Added new secure storage slot for terminal password backup
  • Code Changes: Enhanced password rotation logic with verification and recovery mechanisms
  • Filesystem Changes: None
  • Data Migration: None

Implementation Actions

  • Update terminal application to version 5.2.5
  • No additional configuration is required post-update
  • Existing password data will be automatically secured with the new mechanism
  • No merchant or operator action is required

IMPROVEMENT

Optimized Camera Permission Request on SoftPos Terminal

[UP-667]

Context: During testing of patch 5.2.3, it was discovered that on newer Android versions, the camera permission request window wasn't displaying, or appeared with a delay on older versions when starting the SoftPos application.

Solution: Implemented forced display of camera permission request before Welcome screens at every SoftPos terminal startup when permission hasn't been previously granted.

Impact: Users now receive a timely camera permission request when launching the app, ensuring NFC functionality works correctly for transactions and improving overall user experience.

System Changes Overview

  • Database Changes: None
  • Configuration Changes: None
  • Code Changes: Added camera permission handling to application startup flow
  • Filesystem Changes: None
  • Data Migration: None

Implementation Actions

  • Added new constants REQUEST_CAMERA_PERMISSION in NamingService class
  • Implemented requestCameraPermission() method to request camera permissions from the user
  • Added isCameraPermissionGranted() method to check if camera permission is already granted
  • Modified FormStartApplicationRule.java to check and request camera permission at startup
  • Added permission result handling in SingleActivity to manage user responses