Release notes
Version 1.5.0
Features
-
Card Acquisition support
Integrators can now trigger a Card Acquisition request through the API, allowing the terminal to read card data without initiating a payment. This supports use cases such as loyalty enrolment and card-based identification.
-
Idempotency cache for duplicate request handling
Duplicate requests with the same exchange identification are now detected and handled automatically. In-flight duplicates wait for the original response; already-completed duplicates return the cached response immediately. Cached entries are retained for 7 days.
Bug fixes
-
Fix app not restarting after an upgrade
The app now listens for the MY_PACKAGE_REPLACED broadcast to automatically restart after an update, ensuring the service resumes without manual intervention.
-
Fix payment brand name in Card Acquisition responses
The payment brand in Card Acquisition responses now correctly uses the application label from the payment app instead of a hardcoded value.
Updates
-
Migrate to Koin for dependency injection
The app dependency injection has been migrated from manual wiring to Koin with annotation-based modules, improving maintainability and reducing boilerplate across all layers.
Update history
Release date: March 11, 2026
Features
Print mixed content in a single receipt request
You can now combine text, QR codes, and barcodes into one print request. This eliminates the risk of incomplete receipts caused by multiple separate requests failing midway.
Structured JSON receipt format
Receipts can now be delivered in a rich, structured format alongside the standard plain-text format. Both can be requested at the same time, giving integrators full flexibility in how they display and process receipt data.
Open the payment menu via API
The payment solution menu on the terminal can now be triggered directly through an API call, making it easier to integrate terminal navigation into point-of-sale workflows.
Control whether the terminal prints the receipt
Integrators who manage their own receipt printing can now instruct the terminal to skip printing on its side, preventing duplicate receipts. The receipt data is still returned in the response regardless.
Transaction reference echoed back in responses
Every transaction response now includes the same unique reference ID as in the original request, making it straightforward to match requests to responses and supporting idempotency.
Terminal settings survive app downgrades
Terminal configuration is now backed up to the cloud. If the app is downgraded and reinstalled, which previously wiped all local settings, the terminal can restore its configuration automatically on first launch, with no manual setup needed.