For the release notes/changelog for ChipDNA Mobile Android, please see below. A copy of this file can also be found within your ChipDNA Mobile download with the file name "Release Notes - Android.pdf".
2017 August 8 (1.19 Artemis)
• Resolved an issue where repeated database downgrades caused failed transactions to block
the offline queue.
2017 July 31 (1.19 Artemis)
• Resolved an issue causing some offline requests to be marked as failed before the retry period
• Resolved an issue where some completed offline confirm requests were not automatically
cleared from the offline queue.
2017 June 5 (1.19 Artemis)
• Added support for PCI P2PE Device Events for Miura PIN pads.
• General enhancements and performance improvements.
2017 April 24 (1.18 Moon)
• SQLCipher updated to version 3.5.6.
• SQLCipher now included via JCentral.
• Enhanced gateway connection messaging to assist with communication issues.
• DeferredAuthorizationReason now returned during callback for deferred authorization.
2017 February 20 (1.17 Hyperion)
• Performing closeTransaction for a total amount of 0 will now void the transaction.
• A StandaloneTransactionResult with ReceiptData will now be returned whenever the card has
been read and data is available.
• terminateTransaction can now be called at any point during a transaction.
• terminateTransaction can now be used with the Datecs Bluepad-50.
• User agreement text returned in US receipts is now returned in a separate ReceiptField and is
no longer part of the CVM ReceiptField.
2016 December 22 (1.16 Anatoli)
• Resolved issue with timeout getting extended past the set value during communication over a
• General enhancements and performance improvements.
2016 November 21 (1.15 Aksara)
• Merchant Number removed from cash and cheque receipts.
• Updated format of US Global US receipts.
• Added EMV tags required for US receipts to ReceiptData object.
• Deprecated getReceiptEmvTags() method.
2016 October 26 (1.15 Aksara)
• Resolved issue with End of Day tipping if the gratuity amount was lower than the minimum
2016 October 24 (1.15 Aksara)
• Added support for Deferred Authorizations (also known as Store-and-Forward) on the Miura
PINpads as an alternative for EMV Offline Authorization in online only regions such as the US.
2016 October (1.14 Excession)
• Resolved issue with migrating configuration data between API versions 1.14.1990 and
2016 August (1.14 Excession)
• Added support for multi-currency in Android.
• Added support for US Common Debit auto-selection for Miura PINpad.
• Added Acquirer Response Code to the transaction details.
• Added Card Scheme ID to the transaction details.
• Added Card Hash and Card Reference to the transaction details.
• Added support for disabling amount confirmation prompts.
2016 July (1.13 Neptune)
• Resolved issues with receipt data handling for short Merchant IDs.
• Amendments to receipt data for First Data Rapid Connect.
2016 June (1.12 Trinity)
• Added support for contactless transactions on the Datecs Bluepad-50
• PINPadCheck method call is now required in certain circumstances.
• Added isPinPadCheckRequired() to check when PINPadCheck is required.
• Added support of WorldPay US receipts for EMV transactions.
• Added support to configure the idle connection timeout on Miura PINpads.
• Fixed Bluetooth reconnection issue for Miura PINpads.
2016 March (1.11 Shamrock)
• Added support for end of day tipping.
• Added API method to get card details on the Miura PIN pad.
• Added support for Heartland US receipts.
• Changed behaviour of isGratuitySupportAvailable() to return an enum indicating the type of
• Renamed public API method isGratuitySupported to isGratuityEnabled, and changed behaviour
to return an enum indicating the type of tipping enabled.
• Renamed public API method setGratuitySupported to setGratuityEnabled, and changed
behaviour to specify the type of tipping to enable.
2016 February (1.10 Hadron)
• Added support for Miura M007 PIN pad.
• Added USB support for the Miura PIN pad.
• Added US magstripe support for the Miura PIN pad.
• Added contactless support for the Miura PIN pad.
• Added partial approvals support for the Miura and Bluepad50 PIN pads.
• Added support for integrators to display text on the Miura PIN pad.
• Added support for terminating transaction on the Miura PIN pad.
• Added support for TLS 1.2.
• Added support for setting Terminal Capabilities per AID for the Miura PIN pad.
• Added API method to get CardEase Mobile version name.
• Improved support for account selection.
• Increased minimum supported SDK version from API 12 to API 16.
• Masked PAN returned for offline transactions in StandaloneTransactionResult.
• Receipt data passed back during signature verification.
• Added API method in CardEaseMobile for integrators to control enabling and disabling Gratuity
• Resolved issue in connecting to TLS1.2 services for alternate execution paths
• Added offline and forced acceptance functionality.
• Added checks for minimum and maximum amount allowed for the specific terminal.
• Added SOAP transaction history support (requires TMS set-up).
• Renamed TmsUpdateErrorCode to ConnectionErrorCode to allow the same errors to be used
for TMS update and transaction history connection errors.
• Added Bluepad50 support.
• Added operator PIN for refund and verification.
• Added Honour with ID support.
• Added a method for checking whether cash/cheque transactions are supported.
• Added a method for checking whether gratuity is supported.
• Ensured that calls from ICardEaseMobileListener are always invoked in the same order.
• Added ReceiptData object to TransactionResult and StandaloneTransactionResult to allow
the creation of the custom receipts. Added new methods to CardEaseMobile to allow
issuing custom receipts through printing, email and SMS.
• Added 'Receipt from' text support to IReceiptTextManager.
• Added handling for UTF-8 characters in the user reference field.
• Removed unused card start and expiry date entries from IReceiptTextManager.
• Ensured PIN pad listener disconnected method is called when the PIN pad connection is
closed by the SDK.
• Enhanced handling of terminates and declines. SDK will now return declines and allow
issuing receipts in some cases where previously transaction terminated.
• Added new error codes for StandaloneRefundNotSupported and
LinkedRefundNotSupported (previously both used TransactionTypeNotSupported).
• Added Process Updates for gratuity.
• Added additional error code for PosMate, to handle cases where communication is lost
during the configuration update.
• Added support for Bixilon SPP-R200II printer. iOS mode should be disabled on the printer
for the successful connection to the printer to be established through Android SDK.
• Added pairing for Bluetooth printers through SDK. Listeners have been renamed to support
both PIN pad and printer pairing.
• Modified the printer connection handling the PIN pad connection handling. Method
connectToPrinter will now throw a configuration exception if a connection is attempted while
the previous connection attempt is still in progress.
• Added UTC time to StandaloneTransactionResult and TransactionResult.
• Added support for Datecs DPP-250C printer.
• Added methods to CardEaseMobileUtil class to validate TerminalID and TransactionKey
• Simplified status and configuration updates.
• Application identifier now is only required for CardEaseMobile initialisation.
• Converted SDK to use SQLCipher 3.1.0.
• Added gratuity for Miura.
• Added Online PIN for Miura.
• Ensured a receipt cannot be issued if the transaction is terminated.
• Ensured null can be passed as an optional reference when starting a transaction.
• Added PIN pad check to be used to confirm the version of software on the PIN pad.
• Updated documentation.
• Added merchant’s name and location.
• Added support for UTF-8 characters in receipts.
• Removed void by reference/void last completed transaction functionality.
• Fixed an issue with SMS, where country code was defaulted to UK specific (+44), which
meant SMS could not be sent from other countries without typing in full number including
the country code.
• Moved all error codes into one superclass with nested classes for each error code group.
• Added error code values to the documentation.
• Renamed some error codes to ensure consistency between how error codes are named
and between different platforms.
• Documented error codes which could be returned from specific methods.
• Added values of the Process updates to the documentation.
• IPinPadConnectionListener initialisationCompleted method now returns generic
CardEaseMobileErrorCode instead of an int.
• Ensured delegates are called when Miura P2PE injection is performed.
• Improved logging.
• Added Online PIN support.
• Added reference and amount validation checks to CardEaseMobileUtils.
• Ensured that Bluetooth connection errors are not duplicated.
• Updated documentation and changed method names referring to the last refund receipt to
instead refer to last linked refund receipt, to prevent the confusion.
• Added Bluetooth status updates and PIN pad pairing functionalities.
• Added test check to test connectivity to CEM platform and Terminal ID/Transaction Key.
• Added ReceiptSource and canSendSms/email methods.
• Added cash and cheque sale and refund transactions.
• Added isValidPhoneNumber method to CardEaseMobileUtils to check whether a phone
number has a valid format.
• Added isValidEmailAddress method to CardEaseMobileUtils to check whether an email
address has a valid format.
• Improved error reporting when sending emails, SMSs and printing receipts by changing
sendEmail, sendSms and print methods.
• Deleted pinpadConnectionRequired() callback in ICardEaseMobileListener, a configuration
exception is thrown instead.
• Added Miura voice referrals.
• End to end digital signature functionality.
• Fixed a database upgrade problem for storage of PIN pad software.
• Ensured voice referral is declined, if no auth code is entered on PosMate.
• Added check for downloading software to PosMate to ensure development signed version
is not loaded on to a production PIN pad and vice versa. Added automatic restart
functionality for newer versions of PosMate software.
• Application identifier cannot be null or empty.
• Removed IConnectionListener and added separate implementations for PIN pad and
• Ensured currency characters, such as euro, are displayed correctly on Miura device.
• Added full ICC and quick refund functionality for Miura device.
• Added digital signature support (signature sent to platform but not currently stored).
• Added date and time to transaction result.
• Added checks to ensure that TMS updates, connections to the PIN pad or transactions are
not executed simultaneously.
• Simplified methods in ICardEaseMobileListener.
• Improved connection to cross-platform PosMate from Android devices by introducing a
delay between each connection attempt.
• Ensured transaction is declined when signature is rejected rather than approved and void.
• Modified the API so only a subset of information including the transaction result is returned
for a completed transaction. The complete transaction details are no longer returned but
CardEase Mobile stores the details for the last completed standalone transaction and linked
refund to issue receipts, void etc.
• Ensured properties database is upgraded correctly.
• Added more specific error codes for errors returned by Miura PED during ICC transaction.
• Ensured voice referral for full ICC refund is handled correctly.
• Increased number of attempts when connecting to PosMate.
• Added merchant and terminal identifier to receipts for Amex transactions.
• Added amount validation when performing a refund by reference.