Multipay

Introduction

This document describes the implementation of the Multipay plugin in LS Pay and how it communicates with the Multipay Connect (MPC) Android application running on PAX payment terminals.

MultiPay website


Deliverables from Multipay

The following items must be provided by Multipay before setup can begin:

  • A supported PAX terminal (PAX A35 or PAX A920/Pro) with the Multipay Connect (MPC) application installed.
  • The IPS-LINK_API_SetUp_9.0.2.9Z folder containing the Multipay installer.
  • For production: Multipay certificate file (.cert) required for secure communication.

Deliverables from LS Retail

The following LS Retail components are required:

  • Hardware Station service that hosts LS Pay with the Multipay plugin or
  • LS Pay Service that hosts LS Pay with the Multipay plugin

These services provide the POS machine with the required environment for the plugin to communicate with the MPC terminal.


Terminal Passwords

The PAX terminals use the following passwords:

  • Android Settings:9876 or pax9876@@ depending on firmware version
  • General (exit MPC app):1324
  • Settings → Merchant Menu:8571
  • Settings → Configuration Menu:2593
  • Reset Password:4231
  • Carte Installer Settings:06306

Setup Procedure

1. Configure the Multipay Connect application on the terminal

Note: For PAX A35, the terminal must be connected via USB to the machine running LS Pay. This ensures the pagamento.dll and configuration are correctly applied.

  1. Power on the terminal and open the Multipay Connect application.
  2. Open SettingsMerchant Menu → enter password 8571.
  3. Navigate to ECR MenuEnable ECR and enable it if not already enabled.
  4. Select Connection Type:
    • PAX A35 – choose Ethernet or WiFi depending on your setup.
    • PAX A920 – choose WiFi (Ethernet not supported).
    • Optionally enable Status Messages to receive real-time transaction progress updates on the POS.
  5. Retrieve the terminal IP address:
    • Open Settings → enter password pax9876@@About Device.
    • Note down the IP Address for use in the plugin configuration.
  6. Ensure the terminal is connected to the network and reachable from the POS.

2. Run the Multipay installer

  1. On the POS machine, run the installer from the IPS-LINK_API_SetUp_9.0.2.9Z folder.
  2. The installer will:
    • Create the C:\EPP2 directory.
    • Register pagamento.dll locally on the machine.
  3. Verify the installation completes successfully.

3. Configure the IPS-LINK.INI file

  1. Navigate to C:\EPP2 and open IPS-LINK.INI.
  2. Update the following parameters with the terminal-specific values:
  • IP_PED=<Terminal IP Address>
  • PROTOCOLLO_ECR=11
  • STATUS_MESSAGE_CHANNEL=TCP
  • RECEIPT_PARSING=2
  1. Save the file.

Plugin Settings

The following settings are configurable in the Multipay plugin:

  • IP Address – IP of the PAX terminal running the Multipay Connect app.
  • Main Port – TCP port used to send transaction requests to the terminal (default: 40001).
  • Listener IP – Local IP used by the POS to receive status messages (default: 127.0.0.1).
  • Listener Port – Local port for receiving status/messages (default: 2570).
  • Timeout in seconds – Maximum time to wait for a response from the Multipay service.
  • Receipt Delay (seconds) – Delay between completing a transaction and requesting receipt data.
  • DLL Path – Full path to the registered Multipay DLL (default: C:\EPP2\Interop.PAGAMENTOLib.dll).

Capabilities

The Multipay plugin implements the following interfaces:

  • IEFT – Standard EFT functions for all acquirers
  • IEAManagement – External Accessory / Terminal connection management
  • IReport – Payment report/reconciliation functions

Methods Available

Transaction Methods (IPED / IEFT):

  • PurchaseAsync(PurchaseRequest) – Initiates a purchase transaction.
  • RefundAsync(RefundRequest) – Initiates a refund (standalone or referenced).
  • VoidAsync(VoidRequest) – Initiates a void (last transaction or referenced).
  • GetLastTransactionAsync() – Retrieves the last transaction response for recovery.
  • GetLastRawTransactionDataAsync() – Retrieves raw data of the last transaction for recovery.

Report Methods (IReport):

  • XReportAsync() – Mid-shift report of transactions.
  • ZReportAsync() – End-of-day report.

EAM / Connection Methods (IEAManagement):

  • InitAsync() – Initializes the plugin without connecting to the terminal.
  • TerminateAsync() – Terminates plugin session safely.
  • GetEFT() – Returns an instance of the EFT class.
  • GetConnectionStatusAsync() – Returns the current connection status to the terminal.
  • GetPluginFeaturesAsync() – Returns a list of implemented plugin interfaces.
  • GetSettingsService() – Access plugin configuration.
  • SetLogService(ILogService) – Inject a logging service.
  • OnConnectionStatusChanged(ConnectionStatus) – Event invoked when the terminal connection status changes.

Plugin Features

  • Tip on Terminal: true

  • Token in response: true

  • Standalone Refund: true

  • Receipt in response: true

  • Cashback from POS: false

  • Cashback on Terminal: false

  • Tip from POS: false

  • Surcharge from POS: false

  • Tax from POS: false

  • Manual Entry from POS: false

  • MOTO from POS: false

  • Token EFT: false

  • Referenced Refund: false

  • Void Any: false

  • Product Level Blocking: false

  • Voucher: false

  • Void handled as refund: false

  • Force flag possible: false

  • Installment from POS: false

  • Installment from PED: false