First download the PayServer bundle for Windows:
Before running the PayServer you have to supply a configuration file, which tells
the server how it should run and what devices it has connected.
The file has to be named
config.yaml and it has to be placed in
server folder (the same folder as the server Jar and the run script).
The configuration file is defined in YAML format and should have the following structure. This is a full sample configuration file with all currently available options annotated with comments.
server: - protocol: P3 # P3 protocol transport: WEBSOCKET # over WebSocket connection port: 8080 # port number - protocol: P3 # P3 protocol transport: FRAMED_TCP # over framed TCP connection port: 8081 # port number devices: # sample configuration for a mock device which can be used for testing - name: Mock Device # human readable device name identifier: mockDevice # unique identifier (will be generated randomly if omitted) type: MOCK # device type comlink: MOCK # connection type # sample configuration for a Miura reader connected on Wifi - name: Blue Miura # human readable device name identifier: blueMiura # unique identifier (will be generated randomly if omitted) type: MIURA # device type comlink: WIFI # connection type remote: 192.168.254.58 # address or DNS name of the reader port: 38521 # port number of the reader # sample configuration for a Miura reader connected via USB - name: Red Miura # human readable device name identifier: redMiura # unique identifier (will be generated randomly if omitted) type: MIURA # device type comlink: USB # connection type port: COM3 # virtual port name keep_alive: true # the device will be kept connected between transactions (false by default) idle_text: ["custom text", "with multiple", "lines", " centered"] # custom text that appears when the reader is in idle state # sample configuration for a Miura reader connected via bluetooth - name: Green Miura # human readable device name identifier: greenMiura # unique identifier (will be generated randomly if omitted) type: MIURA # device type comlink: BLUETOOTH # connection type port: COM6 # virtual port name secondary_port: COM7 # name of the secondary virtual port information: # optional extra information location: 3rd Room # human readable name of the server location settings: locale: en-US # locale to be used independent from the system one # transactions: # enable_signature_actions: true # specifies if transaction process will send out signature actions
The server can handle serving multiple protocols at the same time but for most use cases only one server
configuration is needed. If you intend to use the .NET Pay Client, use
server protocol and
WEBSOCKET as transport option.
name for a device are not required --
they are returned in some responses from the server so that you can display them in your UI if you would
In the PayServer Windows bundle we include a sample configuration file named
located in the
server subfolder. This file is correctly configured to be used
with the .NET Pay Client but make sure to review the device list before applying it.
settings.transactions.enable_signature_actionsto true, if you want to capture the shopper's signature digitally and not on the physical receipt. After enabling this option, the signature action messages will be sent out during transaction processing and you need to implement the accompanying signature capture logic in your POS. For more information about signature actions see the P3 Usage and Message Flow documentation page and the Pay Client Integration documentation.
devices.keep_aliveto true, if you want the PayServer to stay connected to that particular device after you execute a transaction on it. This will increase the transaction speed but also prevent the device from entering standby mode. Beware that the device will be connected until you disconnect from the PayServer or until you use another device for a transaction.
devices.idle_textto any custom idle text that should be shown while the device is in keep-alive state (i.e. no transaction is done, but the connection to the device is kept alive). Provide max 4 lines with 20 characters each and prefix the text with spaces to center it.
The PayServer is meant to run as a Windows Service in the background. In the PayServer bundle you'll find
Install PayServer Service shortcut on the top level: Just double click it and
it will install and run the PayServer as a Windows Service.
The PayServer will then automatically start up and shutdown with the PC, so that your merchants do not
have worry about running the PayServer. The service is also monitored and automatically restarted in
case there was an issue with the PayServer. In case there appears to be a problem with the PayServer and
you want to restart it, you can do so using the
Restart PayServer Service
Keep in mind that you need to restart the service every time you change the configuration via the
To stop the PayServer and uninstall the service use the
Remove PayServer Service
In case you need to have more control over the PayServer, there are other, more advanced ways to run the PayServer.
To verify that everything works, download and run the Pay Client Tester App.
Fill in the host Copy and paste your
then hit the Connect and Start Transaction buttons. When you start the transaction, the Tester client
executes it on the first device from the list of devices. To make sure your device is selected, try
configuring the server for only one device at first.