Release Notes: Windows Integration


Improvements in this release include:

  • Recovery mechanism for INCONCLUSIVE state that helps for signification reduction of errors with unstable network connection.
  • Improvements on the timeouts on terminals screens.
  • Bug Fixes

    Bug fixes related to NFC transactions and CVM fallback handling on VIPA terminals are included in this release.

    Bug fixes

    Various bug fixes related to aborting transactions via terminal and population of MaskedAccountNumber for alternative payment methods are included in this release.

    Bug Fixes

    Various bug fixes and reliability related improvements are included in this release.

    Local time offset for transactions

    Local mobile timezone is now sent to Payworks platform with every payment interaction request.

    Bug fixes

    Various bug fixes and compatibility related improvements are included in this release.

    Support for MOTO Transactions via Manual Key Entry

    A support for Mail Order/Telephone Order transactions has been added as part of this release. MOTO transaction is a type of card not presented transaction in which services are paid for and delivered via telephone or mail. This allows you to process transactions without the cardholder and their card being present in your place of business.

    Amount Confirmation after Tipping

    Additional functionality is now available for "Enter Tip Amount" and "Enter Total Amount" workflows and now you're able to add additional screen "Confirm Amount" on these two workflows to prevent situations where users are entering wrong amount for a tip.

    Bug Fixes

    Various bug fixes and compatibility related improvements are included in this release.

    New Translations

    Additional support for new translations is included in this release.

    Union Pay Common Debit Support

    Support for Union Pay Common Debit is included in this release.

    Verifone VX820 Production Ready

    We are happy to announce that Verifone VX820 integration is now production ready! Verifone VX820 is a reliable, readable and easily usable PIN pad for demanding high-volume retail environments, now available through USB and Ethernet connectivity.

    Bugfixes & Improvements

    Various bug fixes and reliability related improvements (more stable connections, better error handling) are included in this release.

    New Reader: Verifone VX820

    We are very happy to announce that the Verifone VX820 is now available for integration and very soon also for production usage! The Verifone VX820 is a reliable, readable and easily usable PIN pad for demanding high-volume retail environments.

    To get started, have a look at the updated PayServer documentation. We also put together Windows Setup Instructions, a Merchant User Guide and FAQs.

    You are able to connect to the VX820 both via Ethernet and USB. If you have an already existing integration, using the VX820 is especially easy: You just need to change the config.yaml of your PayServer accordingly.

    Note: The VX820 integration is already production-quality, however we are still polishing the user experience and will provide a final production-ready release over the next weeks.

    Bugfix: Error During Update Check

    We fixed an issue that caused a terminal error when the card was removed during an update check.

    New Reader: Verifone e355

    We are very happy to announce that the Verifone e355 is now available for integration and production usage! The e355 is a compact and flexible mobile payment device designed to be deployed in demanding retail environments.

    To get started, have a look at the updated PayServer documentation. We also put together Windows Setup Instructions, a Merchant User Guide and FAQs.

    Right now, you are able to connect to the e355 both via WiFi and USB. If you have an already existing integration, using the e355 is especially easy: You just need to change the config.yaml of your PayServer accordingly.

    Improvement: Request Tracking via Tag

    Through a new field called tag, P3 now allows you to keep track which update, action or response message is related to the request you've sent. Your implementation needs to provide a unique tag value for each request you make. We suggest generating a UUID for this.

    For example when running an EXECUTE_TRANSACTION_REQUEST with tag ea99bacc-c05e-4cb5-b2c1-858172124873, you will receive this tag in all subsequent EXECUTE_TRANSACTION_UPDATE, EXECUTE_TRANSACTION_ACTION and EXECUTE_TRANSACTION_RESPONSE messages.

    For requests referencing ongoing operations such as ABORT_OPERATION_REQUEST and SUBMIT_SIGNATURE_REQUEST you further need to provide the tag of the operation you want to affect (e.g. EXECUTE_TRANSACTION_REQUEST) as the referenceTag.

    Make sure to implement those changes in your integration before migrating to PayServer 1.9, otherwise both ABORT_OPERATION_REQUEST and SUBMIT_SIGNATURE_REQUEST will stop working.

    When integrating via PayClient no action other than updating to the latest PayClient is required.

    Bugfix: PayServer Service Failed to Install

    We fixed an issue that caused the installation of the PayServer Service to fail when using Windows 10.

    Feature: Tip Adjust (US Only)

    Tip Adjust allows you to offer your US-based restaurants their traditional, receipt-based tipping workflow for both magstripe and EMV transactions!

    To learn more, have a look at the new PayClient and P3 Tip Adjust documentation.

    Talk to your account manager regarding availability of Tip Adjust for your merchants.

    Bugfix: Reconnect Not Possible

    When a USB reader gets disconnected during the connect phase, the PayServer now allows another connect attempt.

    Feature: Metadata Support

    You can now attach metadata for each transaction. The metadata key/value pairs will be returned as part of the transaction object.

    Bugfix: NullPointerException Thrown During Abort

    We fixed a NullPointerException that occurred when an abort was triggered before the connection to the reader was established.

    Feature: Quick Chip (US Only)

    Quick Chip drastically improves the payment experience for US-based shoppers and merchants: With Quick Chip shoppers are able to dip and remove their EMV card from the card reader within 2 seconds or less, making it as fast as a swipe.

    Talk to your account manager regarding availability of Quick Chip for your merchants.

    Feature: Standalone Refunds

    Standalone Refunds allow your merchants to refund a previous transaction by asking the shopper to present the card again. This is meant only for setups, where it is impossible to retrieve the transactionIdentifier of the previous charge transaction.

    To learn more, have a look at the updated PayClient Refund and P3 Refund documentation and security requirements.

    Talk to your account manager regarding suitability and availability of Standalone Refunds for your merchants.

    Bugfixes: CVM Classification, Abort Indicator

    Two minor bugfixes were added that improve correct forwarding of the applied CVM and the correct forwarding of the abortable indicator.

    Improvement: USB Disconnect Detection

    On Windows a physical disconnect of a card reader connected via USB is now recognized correctly. In addition we added timeouts for certain kinds of messages to detect stale connections via USB.

    Improvement: Extended Logging

    The logs have been slightly modified to include more verbose timestamps and also the rollover period is now 10 days.

    Feature: Progress Bar on Miura

    The Miura readers are now showing a progress bar when running through a software update, allowing the merchant to better understand how long he has to wait for completion.

    Feature: Configurable Locales

    You are now able to specify an explicit locale in the PayServer configuration. This locale will then be used for all prompts on the device and display update callbacks.

    Feature: Custom Idle Screen Text

    The PayServer configuration now also allows setting the idle_text on the device level. This idle text will then be used when keep_alive is configured and no transaction is going on the reader.

    Bugfix: Repeated login messages on same connection blocked accessory

    When a second login message came in on the same connection, it could happen that a reader connection was blocked and no additional transactions could be started. With this release, the devices are also handled correctly as part of the second login.

    You should not login a second time on an already existing connection. Disconnect first and start a new session afterwards.

    Bugfix : Fixed PayServer initialization crashing in certain Windows machines

    We fixed a bug where the PayServer initialization failed on certain Windows machines without a device identifier.

    Bugfix: Receipts are not always attached to a transaction

    When using version 1.2.0 of the Payerver, we had instances where the merchant and customer receipts were not always attached for approved transactions in the transaction response. This has now been fixed with this release.

    New Feature: Increased Transaction Speed

    We continuously push ourselves to make card payments faster and with PayServer 1.2 we reached another important milestone: The payload for each call between PayServer and Gateway has been greatly reduced and for contactless transactions we were even able to save a full roundtrip between the PayServer and Gateway.

    Upgrade to 1.2 and then talk to your account manager to save your merchants valuable seconds on each transaction.

    Important: Along with this feature, we have also added a new TransactionStatus.INCONCLUSIVE for more clarity on errored transactions. Details on what this indicates can be found here.

    New Feature: Connection Keep-Alive

    For setups where the card reader is connected to a power source most of the time, the new Connection Keep-Alive feature allows your merchants to take card payments even faster.

    Add keep_alive: true in your config.yaml and the PayServer will keep the connection to the card reader open after the first transaction. This will greatly reduce the overall transaction time for all subsequent transactions.

    Improvement: Miura Connectivity

    We implemented a number of improvements to speed up the initial connection to the Miura devices: Especially when waking up the WiFi Miura M010 from standby, the connection will be established much quicker now. Also the first connection attempt via USB now works more reliably.

    Hotfix: Required Update for Miura MPI V1-41

    In Miura MPI V1-41 changed the way magstripe track 2 data is masked.

    In order to be able to successfully process transactions with Miura MPI V1-41 and later, you are required to update your PayServer version to 1.2 or later.

    Improvement: More Robust PayServer

    The PayServer now better handles unexpected situations during transaction processing and it is no longer necessary to restart it should it get into an inconsistent state. Instead, disconnecting and reconnecting the client is sufficient in most cases.

    Feature: Streamlined Reader Setup

    Managing your merchants' readers is now much easier with automatic reader setup: Readers can be automatically assigned to the merchant upon first usage, allowing you to streamline your reader distribution processes.

    This feature is optional, if you would like to make use of it, just talk to your account manager.

    Feature: Enhanced On-Device Tipping

    On-Device Tipping now shows the original amount also as part of the "Enter TIP Amount" screen.

    Note: Miura MPI V1-39 (or higher) is required for showing the original amount. Get in touch with your account manager to enable the latest MPI version.

    Improvement: Easier Connection to Bluetooth Devices

    You can now specify the two ports created by Windows for Bluetooth Miura devices to make the connection easier and more reliable.

    First Official Release

    The preview version has already been used to successfully process thousands live transactions! We are very happy to announce that we are dropping the "preview" tag.

    Simplified P3 Protocol

    We changed the way errors from the PayServer are represented in the P3 protocol -- all errors are now in the header of the response message, so you don't have to look out for them in the message body. However, the response body might still be filled out so that you can access the transaction data, for example.

    We have dropped the concept of "components" from P3. All resource addressing is now done to a configured device, not its components. We may reintroduce this concept again in the future, but at the moment it makes the protocol simpler.

    PayClient Adaptions

    Mirroring the changes in the protocol, we have simplified things on the PayClient. You have just one single error which you need to check in the callbacks. We have also dropped the concept of components from the PayClient in favor of ITransactionModule and IDeviceModule. Check the PayClient documentation for more detailed information.

    Bugfix: USB Buffer Issues on Windows 10

    We fixed the Miura USB connectivity issues on Windows 10: No more button pressing!

    Bugfix: Firmware and Software Updates Failing

    Miura Updates are now work reliably!

    Various Improvements

    • Fixed encoding issues on Windows: All UTF-8 characters including the currency signs should now display correctly on the readers
    • The 0.3.0 release had an issue which caused the merchantSecretKey to be logged in plain text. Please make sure you upgrade from this version before using it on LIVE.

    New Features

    Windows POS Integration now allows you to:

    • Refund previous transactions, including support for partial refunds
    • Submit digitally captured shopper signatures during transaction processing
    • Perform pre-authorizations and capture them later on
    • Ask the shopper for a tip right on the card reader

    Breaking Changes

    • The PayServer configuration file slightly changed in structure, please be aware of this.
    • The PayClient received some slight API changes, please especially review your implementation of the StartTransaction callbacks.

    Running as a Windows Service

    Now you can run the PayServer on Windows as a background service out of the box.

    Improved Transaction Workflow

    The reader doesn't show "Approved" during transaction before it was finalised.


    We fixed some issues with updating the readers on different systems. More fixes to come.

    First Release

    First release of the public preview! Enjoy!

    Can we help you?

    If you cannot find your answer, contact us and we'll get in touch with you soon.

    © Copyright 2018 Payworks GmbH. Legal.