***

title: Ingenico - Windows
published: true
---------------------

For clean Markdown of any page, append .md to the page URL. For a complete documentation index, see https://docs.payroc.com/essentials-guides/payroc-cloud/configure-your-device/ingenico/llms.txt. For full documentation content, see https://docs.payroc.com/essentials-guides/payroc-cloud/configure-your-device/ingenico/llms-full.txt.

In this configuration, your Ingenico device communicates with your Windows host machine through the Payroc Cloud middleware. To ensure your POS can communicate with your Ingenico device, you need to configure your Windows host machine.

### Integration steps

1. Prepare your host machine for configuration.
2. Configure the native libraries.
3. Configure the payconfig.xml file.
4. Run the middleware.

### Before you begin

Your host machine must have Java 8 or later installed. If you use a Windows 32-bit host machine, make sure you have installed 32-bit Java and configured its path.

## Step 1. Prepare your host machine for configuration

To download the Payroc Cloud middleware and connect your payment device to your host machine, complete the following steps:

1. Connect your payment device to a USB port on your host machine.
2. Go to our [Github repository](https://github.com/payroc/payroc-pos-sdks) and download Payroc Cloud middleware from the release files.
   * If your host machine has Java 8 up to Java 16 installed, download version 1.6.76.
   * If your host machine has Java 17 or later installed, download version 1.6.78+.
3. Extract the files from the zipped folder.

## Step 2. Configure native libraries

You need to copy the libraries that match your operating system into the middleware root folder so the middleware can load them when it starts. To do this, complete the following steps:

1. Open the folder that you extracted the Payroc Cloud middleware to.
2. Go to the folder that contains the library that you want to use, for example, to use 64-bit Windows with Ingenico, go to libs > ingenico > nativeLibsWindows > 64bit.
3. Copy the contents of the folder into the root folder.

## Step 3. Configure the payconfig.xml file

The payconfig.xml file defines how the middleware communicates with your Ingenico device and our gateway, including:

* Which Payroc account and integration you are working with, for example, you send your API key to authenticate your requests.
* Which payment device the middleware is communicating with, for example, you send the value for the port that your Ingenico device is connected to on your host machine.
* How your Ingenico device should behave in transactions, for example, you indicate if the device should accept keyed transaction details.

Use the following values to configure your payconfig.xml file:

| Field                    | Value                                                                                                                                                                                                                                                                                                                                                                             |
| ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| apiKey                   | Enter your Payroc App API key.                                                                                                                                                                                                                                                                                                                                                    |
| integrationId            | Enter your integrationId.                                                                                                                                                                                                                                                                                                                                                         |
| terminalId               | Enter your processingTerminalId.                                                                                                                                                                                                                                                                                                                                                  |
| deviceType               | Indicates the type of payment device you are using. Enter `INGENICO`.                                                                                                                                                                                                                                                                                                             |
| sdkMode                  | Indicates the SDK mode. Enter one of the following values:<br />– `LIVE` - Production mode<br />– `TEST` - Test environment<br />– `DEV` - Developer mode                                                                                                                                                                                                                         |
| logLevel                 | Indicates the logging level for the SDK. Enter one of the following values:<br />– `LEVEL_FUL` - Verbose<br />– `LEVEL_INFO` - Informational messages<br />– `LEVEL_ERROR` - Errors only<br />– `LEVEL_NONE` - Disables logging                                                                                                                                                   |
| portName                 | Indicates the Serial/COM port name of the USB port that you connected the Ingenico device to.                                                                                                                                                                                                                                                                                     |
| emvType                  | Indicates the EMV processing type you want the device to support. Enter one of the following values:<br />– `STANDARD` - Standard EMV processing.<br />– `QUICK_CHIP` - Faster EMV transaction flow.                                                                                                                                                                              |
| inputMethod              | Indicates the EMV processing type you want the device to support. Enter one of the following values:<br />– `SWIPE_OR_INSERT_OR_TAP_OR_KEYED` - Cardholder can swipe, insert, tap, or key in their card number manually.<br />– `SWIPE_OR_INSERT_OR_TAP` - Cardholder can swipe, insert, or tap their card.<br />– `SWIPE_OR_INSERT` - Cardholder can swipe or insert their card. |
| debitAIDPreference       | Indicates the Debit Application Identifier (AID). Applies to dual banded cards. The value must be one of the following: <br />–`PREFER_GLOBAL_DEBIT_AID` - Prioritize global AID.<br />–`PREFER_US_COMMON_DEBIT_AID` - Prioritize U.S. debit AID.<br />–`APPLICATION_SELECTION` - Cardholder can choose between debit or credit.                                                  |
| disableOnDeviceSignature | For Ingenico 5000 and 7000 devices, enter one of the following values:<br />–`true` - Device does not support cardholder signatures.<br />–`false` - Device supports cardholder signatures.<br /><br />For other Ingenico devices, do not edit this value.                                                                                                                        |
| enableDeviceLogs         | Indicates whether the device collects debug logs. Enter one of the following values:<br />– `true` - Device collects debug logs.<br />– `false` - Device does not collect debug logs.                                                                                                                                                                                             |

## Step 4. Run the middleware

To run the middleware, double-click the start-ingenico batch file in the root folder. This establishes communication between your host machine, your Ingenico device, and our gateway.

After the middleware starts, the logs display the serial number of your Ingenico device. You need this serial number to send transaction requests so the gateway can route the instructions to the correct device.

## Next steps

To program your POS to send instructions to your Ingenico device, go to [Run a sale](/guides/take-payments/payroc-cloud/run-sale.mdx).