For the release notes/changelog for the Payment Device SDK for Android, please see below. A copy of this file can also be found within your Payment Device SDK download with the file name "Changelog.txt".
Updated API
2024 October 18 (3.16 Familiar)
• Enhanced checks for applying configuration for ID TECH VP3350 devices, resulting in improved connection times.
• Added functionality to give integrating apps greater control for initiating the firmware update process for ID TECH VP3350 devices.
• Added functionality to return more detailed progress for firmware updates for ID TECH VP3350 devices.
• Added functionality to filter data returned in getStatus response.
• Added functionality to return address verification result in transactionFinished response.
2024 August 30 (3.15.1 Impundulu)
• Updated ID TECH SDK to version 1.00.180 providing the latest features and bug fixes.
• Fixed issue with pre-formatted signature receipts being returned without a signature line.
• Fixed issue with ICC signature not prompting correctly on the VP3350 device.
• Fixed issue that could cause the SDK to lock up when connecting to a VP3350 device.
• Fixed potential crash during a disconnection from a VP3350 device.
• Fixed issue that could cause an unexpected card swiped transaction update notification to be returned from a VP3350 device.
• Fixed issue that could return an UnexpectedChipDnaError when connecting to Miura PIN pads.
• Fixed issue where a disconnection for BBPOS Devices was sometimes not detected by the SDK.
2024 July 15 (3.15 Impundulu)
• Improved thread safety for calls to setProperties function.
• Updated ID TECH SDK to version 1.00.177 providing the latest features and bug fixes.
• Improved pairing and bluetooth connection with VP3350.
• Added functionality to control the ID TECH VP3350 PINs card removal beep via TMS.
• Resolved issue that could cause the SDK to crash when an incorrect pairing pin is entered for BBPOS devices.
• General improvements and performance enhancements.
2024 June 12 (3.14 Phoenix)
• rawBatteryChargePercentage has been added to DeviceStatus for the ID TECH VP3350 device. This field provides the raw battery charge percentage, while batteryChargePercentage states the normalized battery percentage.
• Added support for BBPOS CHB 30 devices using Bluetooth Low Energy.
• Additional new dependencies on bbdevice-android-3.29.1 and bbdeviceota-android-1.6.28.
• Added Disconnect API method.
• Added functionality to control collision detection for ID TECH VP3350 PIN pads through TMS.
• Enhanced checks for applying correct firmware for ID TECH VP3350 PIN pads.
• General improvements and performance enhancements.
2024 February 19 (3.13 Emrys)
• Added support for ID Tech VP3350 devices
• Merchant Defined Fields are now returned from getTransactionInformation.
• Merchant Defined Fields are now sent in a Deferred Auth request.
• General improvements and performance enhancements.
2023 December 19 (3.12.3)
• Added TMS setting to control the Miura Amount Confirmation screen visibility when tipping is enabled. Please reach out to Support if you wish for amount confirmation to be disabled during tipping.
• General improvements and performance enhancements.
2023 June 27 (3.12 Myrddin)
• Miura Firmware 1-65/PCI P2PE Firmware 6-7 tested.
• Updated Voided receipts to include the transaction Auth Code.
• General improvements and performance enhancements.
2023 March 20 (3.11 Lake Louise)
• Added support for AVS when carrying out keyed PAN entry.
• Added functionality to control backlight for keypad on Miura M020 PIN pads.
• Resolved issue where AMEX contactless transactions were prevented on Miura PIN pads when using SDK version 3.10.
• Simplified the tipping screen on the Miura M020 PIN pads.
• General improvements and performance enhancements.
2023 January 23 (3.10 Great Bear)
• Enhanced the connection method for BBPOS Chipper 2X BT PIN pads to use Bluetooth Low Energy (BLE) instead of Bluetooth Classic.
• Added OS and kernels information to Miura PIN pads' device status.
• Improved the appearance of the amount confirmation screen on the Miura PIN pads.
• Updated the SDK to be compatible with Android 12 (API level - 31).
• General improvements and performance enhancements.
2022 November 7 (3.09 Articus)
• Removed support for the Miura M010 PIN pad
• General improvements and performance enhancements.
2022 October 10 (3.08 Mastodon)
• Added support for a custom on-device tipping prompt for Miura M020 and M021 PIN pads.
• Added support for on-device dynamic tipping for Miura M020 and M021 PIN pads.
• General improvements and performance enhancements.
2022 August 10 (3.07.100538129.341 Prime)
• Added support for Credential on File (Card-on-File) first store transactions.
• Resolved issue where a Miura PIN pad connected via USB could conflict with other USB peripherals during the device discovery phase.
• Resolved issue where including a Display Time parameter when setting an Idle Message on a Miura PIN pad would cause it to disconnect.
• General improvements and performance enhancements.
2022 May 23 (3.06.94236755.306 Nostromo)
• Added battery information for BBPOS Chipper and Miura PIN pads in getStatus response.
• Added preformatted receipt parameters in the signature verification event.
• Improved signature capture and signature verification receipt data format to match selected acquirer.
• Resolved issue where potentially confusing error codes could be presented on approved transactions.
2022 March 10 (3.05.87041543.283 Lapis Lazuli)
• Add support for Miura PCI P2PE Firmware MPI v6.4
• ChipDNA Mobile Signature Capture Edge Detection fix
• General improvements and performance enhancements.
2021 August 15 (3.04.75134781.418 Ultron)
• Added receipt data parameter in the signature capture event.
• General improvements and performance enhancements.
2021 August 2 (3.03.68296533 Oasis)
• Added support for BBPOS Chipper 2X BT CHB29 devices.
• Improved the process when updating both OS and MPI for Miura PIN pads.
• Enhancement made to avoid unnecessary parsing of track 2 for non-payment cards.
• Enhancement made to provide separate notifications when updating firmware or firmware configuration on BBPOS Chipper 2X BT devices.
2021 May 24 (3.02.61743088 Houdini)
• Enhancement to return the cardholder’s name to the integrator in boundary cases with magstripe cards.
• Resolved an issue that could cause intermittent communication failure with the BBPOS Chipper PIN pads on some Android devices.
2021 March 29 (3.01.56392612 Hypnotoad)
• Added support for offline configuration when using the Omni Platform.
• Resolved issue where providing a Display Time for an idle message that was too large, would cause the message to only show for 5 seconds.
2021 February 12 (3.00.53880503 Quantum Leap)
• Added support for Linked Refunds on Cash and Cheque transactions.
• Resolved issue where an incorrect error was displayed when Terminating from a PIN Pad during an SCA Online PIN transaction.
• Resolved issue where the Card Hash Collection and Card Reference were not being returned in a call to getTransactionInformation for a Confirmed Deferred Authorisation.
• Resolved issue where the Expiry Date was missing from Transaction Finished events on Datecs BluePad-50 PIN pads.
• Resolved issue where Display Time for an idle message was always 5 seconds, even when the time was set to a different value when using Miura M010.
• Resolved issue where termination of a transaction that requires SCA could disrupt the following transaction if it also requires SCA.
2020 December 14 (2.20.48526952 Batman City)
• Removed support for the Miura M007 PIN pad as the device is no longer available to buy.
• Added support for differentiating between Datecs Bluepad-50 v1 and v2 devices.
2020 November 9 (2.19.43078406 Ross Tiger)
• Added support for PSD2 SCA to Datecs PIN pads. Applicability depends upon appropriate certification.
• Resolved issue where signature verification required prompt was displayed on Miura devices during a Deferred Authorisation transaction.
• Resolved issue of inconsistent parameters across Android and iOS.
2020 September 4 (2.18.39360332 Beach)
• Resolved issue where DelayOnlineProcessing transactions were incorrectly flagged to auto-confirm.
2020 August 17 (2.18.37726359 Beach)
• Resolved issue where Card Scheme was not present on some receipts.
• Resolved issue where Auth Code was present on Declined and Voided receipts.
• Resolved issue where enabling Do Not Disturb mode would cause the SDK to crash on some phones.
• Resolved issue where the error code was not returned in the response when terminating a transaction during signature processing.
• Removed tip amount parameter from GetTransactionInformation response when the transaction is a linked refund.
2020 June 24 (2.17.33817754 Aria)
• Added support for BIN range whitelisting on BBPOS Chipper BT CHB22 PIN pads.
• Added support for delayed online processing on Miura and BBPOS Chipper BT PIN pads.
• Improved support for retrieval of customer first name and last name on BBPOS Chipper BT and Miura PIN pads when offline.
• Added support for Visa PSD2 SCA to Miura PIN pads. Applicability depends upon appropriate certification.
2020 April 27 (2.16.27875029 Sparks)
• Added support for Account Verification transactions.
• Added support for voiding a transaction which has previously been confirmed.
• General improvements and performance enhancements.
2020 March 2 (2.15.22957332 Athena)
• Added support for Payment Account Reference (PAR) retrieval. The availability of this data is limited to certain situations.
• Updated linked refund transactions to return more transaction information in the response.
• Remove support for the BBPOS WisePad 2 and WisePad 2 Plus PIN pads.
2020 January 27 (2.14.20790008 Zeus)
• Added support for BBPOS Chipper 2X BT CHB22 PIN pads.
• Added validation during startTransaction method to enforce implementation of mandatory callbacks.
• Added support for querying merchant configuration data.
• Added support to refund a transaction using a CardEase reference returned on a different point of sale.
• Added merchant display name parameter to getStatus response.
• Resolved issue whereby errors string would occasionally contain a trailing comma.
• Added support for Application Selection and User Notification listeners to the ChipDNA Mobile demo application.
2019 December 18 (2.13.17499063 Aldur)
• Resolved issue where ChipDNA Mobile could fail to connect when switching between BBPOS devices.
• Resolved issue where ChipDNA Mobile would not allow reconnection attempts after returning a KeysNotLoaded error.
• Resolved issue where a connection to a BBPOS device could be lost if unexpected data is returned from the device.
• General improvements and performance enhancements on BBPOS PINpads.
2019 October 28 (2.13.12067368 Aldur)
• Added support for firmware updates on BBPOS Chipper PINpads.
• Resolved issue where Miura firmware would fail to update.
• Resolved issue where by BBPOS Chipper PINpad may not return cardholder first name and last name during magstripe transactions.
• Resolved issue where on rare occasions transaction could incorrectly fall back when using Miura PINpads.
2019 September 2 (2.12.7128443 Eru Ilúvatar)
• Added support to refund a previously approved and confirmed transaction using the CardEase Reference.
• Added support for dynamic card scheme filtering on Miura PINpads to assist with EMV configuration.
• General improvements and performance enhancements on BBPOS PINpads.
2019 June 10 (2.11.5119 Aurora)
• Updated America Express Contactless transaction processing to comply with Strong Customer Authentication requirement in EU region.
• Added new signature capture event.
2019 April 8 (2.10.4859 Splendour)
• Added support for keyed PAN entry on Miura PINpads.
• Added support for logging to file.
• Upgraded SqlCipher library.
• Improved stability when processing fall forward transactions.
• Resolved issue where on rare occasions migration from API 1.x to 2.X failed to complete.
• Improved card scheme check when processing transactions.
• Improved stability when processing transactions on BBPOS Chipper PINpads.
2019 February 4 (2.09.4563 Glow Worm)
• Added pre-certification support for BBPOS Chipper BT PIN pads.
• Where available cardholder first name and last name parameters will now be returned in Transaction Finished event when processing transactions online.
2018 December 10 (2.08.4356 Luminous)
• Added support for the Miura M020.
• Added support for the Miura M021.
• Added support for Wi-Fi connection to supported PIN Pads.
• Added support for BIN range whitelisting on Miura PIN Pads.
• Enhanced detection for ATM cash only cards.
• CardEntryPrompted TransactionUpdate will now return during fallback.
2018 October 22 (2.07.4202 Aether)
• Added support for printing receipts on BBPOS WisePad2 Plus.
• Disabled magstripe fallback for deferred authorizations.
• Added UTC transaction date time in GetTransactionInformation response.
2018 August 07 (2.06.3930 Gaia)
• Added support to allow the Miura contactless prompt to be disabled.
• Resolved an issue where enabling Do not Disturb mode would cause the SDK to crash in some circumstances.
• Resolved an issue where transactions are terminated if the previous contactless transaction was terminated at amount confirmation.
2018 May 08 (2.05.3612 Terra)
• Resolved issue where building an app with the Android target SDK version greater than 23 could cause the application to raise an exception.
• General enhancements and performance improvements.
2018 January 17 (2.03.3241 Double Star)
• Beta release of ChipDNA Mobile.
• API aligned with ChipDNA Win/Lin for greater flexibility.
• Support added for BBPOS WisePad2 and WisePad2 Plus PIN pads.
Old API
2018 October 22 (1.19.4044 Artemis)
• Disabled magstripe fallback for deferred authorizations
2018 July 25 (1.19.3902 Artemis)
• Added support to allow the Miura contactless prompt to be disabled.
• Resolved an issue where enabling Do not Disturb mode would cause the SDK to crash in some
circumstances.
• Resolved an issue where transactions are terminated if the previous contactless transaction
was terminated at amount confirmation.
2018 May 8 (1.19.3594 Artemis)
• Resolved issue whereby building app with an Android target SDK version greater than 23 could cause the application to raise an exception.
• Resolved minor issue when validating the changePassword() input.
• Resolved issue where occasionally an exception was raised when connecting to a PIN pad.
2018 January 15 (1.19.3180 Artemis)
• Added support for MPI 1-45 on Miura PIN pads.
• Resolves issue causing some TMS updates to fail when connected to Miura PIN pads using USB.
2017 November 20 (1.19.2908 Artemis)
• Added deferred authorization support for Miura PIN pads for Europe.
• Added enhancement in ChipDNA Mobile to enforce a single initialization call on the API method.
• Added enhancement in retry offline request and delete offline request API methods to prevent multiple calls at the same time.
• Added support for P2PE firmware for the Miura PIN pads.
2017 September 25 (1.19.2750 Artemis)
• Resolved issue causing get card details to fail when EMV fallback is encountered.
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
has elapsed.
• 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
poor connection.
• 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
transaction amount.
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
1.14.2037.
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
tipping supported.
• 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
functionality.
• Resolved issue in connecting to TLS1.2 services for alternate execution paths
2015 March
• Added offline and forced acceptance functionality.
• Added checks for minimum and maximum amount allowed for the specific terminal.
2015 February
• 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.
2015 January
• 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.
2014 July
• Added UTC time to StandaloneTransactionResult and TransactionResult.
• Added support for Datecs DPP-250C printer.
• Added methods to CardEaseMobileUtil class to validate TerminalID and TransactionKey
format.
• Simplified status and configuration updates.
• Application identifier now is only required for CardEaseMobile initialisation.
• Converted SDK to use SQLCipher 3.1.0.
2014 March
• 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.
2014 January
• 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.
2013 December
• Added Online PIN support.
2013 November
• 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.
2013 August
• 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
printer.
• 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.
2013 May
• 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.