Release notes

This page provides the release notes for the SPI client library.

The release of the SPI client library may be staggered across software language. You can find a link to the latest release below:

You can download the sample application’s code by clicking the link below.

Also, here is the latest sample POS:

Version 2.9

Major Release Notes

  • Version 2.9 for JavaScript and .NET add support for additional EFTPOS test devices.
SPI Library Library Version Release Notes
JavaScript v2.9.11 - Log pairing instance identifiers
v2.9.10 - Log the current state of the SPI library when it is disconnected from the terminal
- Increase the cancellation timeout to 25 seconds
- Reset the cancellation timeout when the SPI library receives a “get transaction” response
v2.9.9 - Test mode logic enhancement to accept additional values
v2.9.8 - Reduced the SPI library reconnection attempt from 3 to 1.5 seconds
- Security and stability enhancements
v2.9.6 - Convert SPI JS to Typescript
v2.9.4 - Fixed a key rolling issue which caused a HMAC error with paired terminals
v2.9.2 - Fixed Pay at table issue
- Fixed issue of confirmation code not appearing in Spice during pairing
- Added CM5 to no-printer terminal list for SPI Libraries
- Fixed security vulnerabilities auto-created PRs (Bundle them up together and open as one commit)
.NET v2.9.7 - Fixed a false response issue with transactions requiring signatures for classic terminals (Verifone VX690 & e355)
v2.9.6 - Security and stability enhancements
v2.9.5 - Fixed SPI .NET reporting incorrect version
v2.9.4 - Callback functions will run asynchronously to ensure WebSocket communications between the library and terminal are not impacted, improving connection stability
v2.9.3 - The folder where the SPI log file is stored can now be configured
v2.9.1 - Updated DeviceHelper class in order to return different error code
- Created _getConnectionAddress() function for _resetConn functionality
- Added TransactionReportHelper functionality into Spi class
iOS v2.9.3 - Added pos_ref_id for Signature Accept and Decline messages
- Improved memory efficiency by using weakSelf to prevent retention cycles
- Security, stability and performance enhancements
v2.9.1 - Port forwarding added to enable pairing for Android terminals
- The Type definition typedef for DeviceAddressResponseCodeDeviceError
was changed to DeviceAddressResponseCodeServiceError
v2.9.0 - Removed SPIDeviceInfoTests (tests fix)
JAVA v2.9.8 - Delay broadcasting SPI connection status and transaction flow events until SPI is correctly initialised
- Security & stability enhancements
v2.9.7 - Added pos_ref_id for Signature Accept and Decline messages
v2.9.6 - Removed an unused dependency causing a POS build error
v2.9.5 - Fixed a port forwarding bug that caused pairing to fail for one of the available payment providers
v2.9.1 - Port forwarding added to enable pairing for Android terminals
v2.9.0 - Removed sample pos from current codebase
- Azure pipeline configuration updates
- Created services HttpBaseService, AnalyticsService, and DeviceAddressService
- Created TransactionReport functionality
- Added related tests
- Modified Pay at table logic for better handling with pair connected status

Version 2.8.1

.NET Only:

  • Invalid Serial Number is Returning Wrong Error for AAR
  • Library Does not Recover after a Network Disconnection
  • Runtime Error when Network is Disconnected

Version 2.8.0

Major feature release (no work required):

  • Allow library to pair with IP address only - Non-Browser based POS.
  • Auto address resolution to be maintained within SPI
  • Auto pairing confirmation internalised
  • Internal connection change
  • Transaction status message update
  • Get Transaction to replace Get Last Transaction
  • Large number of bug fixes

This release includes additional development work when upgrading: Upgrading to SPI 2.8

Version 2.6.5

.NET Pay at table release only

  • BillPaymentFlowEnded subscription changed to optional

Version 2.6.3

Minor feature release:

  • EFTPOS IP address and PosID validation added
  • Reduced number of retried before Auto Address Resolution
  • Increased HTTP Timeout for auto address resolution

Version 2.6.1

Minor feature release:

  • Auto address resolution enhancements
  • Reduced re-connect timeout from 5 to 2 seconds 
  • Settlement timeout bug fix (Unknown result)

Pay at table

  • All Pay at table configuration settings set to false 
  • Table_id length limited to 20 character

Potential required change:

  • Pay at table configuration being set to false may require development work to POS settings

Version 2.6

Minor feature release:

  • Pay at table enhancements
  • Bug and stability fixes
  • Updates to sample POS

Version 2.5

Minor feature release:

  • Freeform receipt headers and footers extended to all payment types
  • Pay at table protocol update to allow for table locking
  • Request all open tables functionality for Pay at table

This release includes additional development work when upgrading: Upgrading to SPI 2.5

Version 2.4

Major feature release:

  • Auto Address Resolution
  • Receipt header and footer formatting enhancements
  • Surcharging from POS functionality
  • WSS support for browser-based POS serving over HTTPS

This release includes additional development work when upgrading: Upgrading to SPI 2.4

Version 2.3

Minor internal functionality release:

  • Allows POS to report version information to the EFTPOS terminal
    • POS software version
    • POS vendor ID / POS name
    • SPI library
    • SPI library version
    • Other information (browser version, OS version, etc.)
  • Transaction cancel enhancements
  • Freeform receipt headers and footers for purchase transactions

This release includes additional development work when upgrading: Upgrading to SPI 2.3

Version 2.1

Major feature release:

  • Terminal-based printing
  • Pay at table
  • Tipping
  • Cashout
  • Settlement inquiry
  • MOTO transactions
  • POS reference ID (enhances reliability and recovery)
  • Pre-authorisation
    • Open
    • Completion
    • Cancellation
    • Verify
    • Topup
    • Extend
    • Partial Cancellation

Version 2.0

First major release and includes support for the below features:

  • IP address-based pairing
  • Purchase transactions
  • Refund transactions
  • Settlement requests
  • Get last transactions (used to confirm the outcome of the previous transaction)