EmvX Kernel Software for Windows

EmvX is an EMV Level 2 Kernel for Windows and Windows CE. It offers a simple and rapid method of adding EMV Level 2 functionality to a payment application, using the Microsoft COM architecture.

Key Highlights

  • Ease of adding EMV Level 2 compliance to existing Windows applications. A simple example in Visual Basic performing an EMV compliant transaction with a PIN pad requires only a few lines of code
  • The EmvX Toolkit runs natively on the Windows platform.
  • Low system resource usage. The memory requirement of the EmvX Toolkit is around 2 megabytes, and on a typical PIII-based machine less than 20 milliseconds of CPU time is spent executing EmvX Toolkit Kernel code
  • Easy interface to peripherals. Drivers for popular card readers and PIN pads are already provided with the Toolkit
  • Easy interface to third party EFT packages. Template applications are included in the EmvX Toolkit

EmvX Toolkit

To ensure that EmvX can be used in a wide variety of terminal configurations it has been created as a toolkit of EMV functions that can be called in the correct order to enable an EMV Level 2 transaction to take place. All the external functions such as the online authorization and PIN pad interfaces are provided in the form of drivers. A number of these drivers are already available but in the event that a suitable one is not available, driver templates can be provided.

Easy to Update

As the cost of ownership is one of the key factors in the development of an EMV Level 2 Kernel, all the elements that change over time have been designed to enable this to be executed as simply as possible. For example, EmvX stores its configuration in the Windows registry so that it can be simply updated using a script that can be completed locally or remotely. The same is also true of the CA Public Keys used for data authentication.


EmvXCE is the Windows CE version of EmvX and offers developers implementing Chip and PIN in this environment the same benefits as EmvX. Due to its limited system dependencies, EmvXCE will work with any version of Windows CE, irrespective of the hardware platform, and provides a simple method of adding EMV Level 2 functionality to a payment system.

EMV Supported Features

The EmvX Toolkit fully supports a variety of data authentication, configuration, CVM methods and other special features within the EMV Level 2 version 4.3 specification.

Data Authentication Methods Static, Dynamic and Combined Data Authentication (SDA, DDA and CDA).
Acquirer Interfaces

Authorization Request, Financial Transaction Request, Batch Data Capture, Online Data Capture.

Cardholder Verification Methods

Offline Plaintext PIN, Offline Enciphered PIN, Signature, No CVM, Fail CVM.

Miscellaneous Certificate Revocation, Velocity and Floor Limit Checking, Exception Lists, Recommended EMV Application Selection Algorithms.