PAX Back to Devices
PAX devices are different from our other offering as the application, with the GoChip integration, will run on the device itself.
Supported devices
| Android | |
|---|---|
| PAX A80 | ✔ | 
| PAX A920 | ✔ | 
| PAX A920 PRO | ✔ | 
| PAX E700 | ✔ | 
| PAX E800 | ✔ | 
| PAX E500 | ✔ | 
| PAX IM30 | ✔ | 
| PAX A77 | ✔ | 
Configuring PAX devices
- To be able to support decrypting EBT/EMV transactions, PAX devices need to be correctly configured with DUKPT encryption keys.
 - 
         The following slots are required to be injected (for testing use the following keys):
         
Slot 1 - used for Online PIN encryption
Slot 2 - used for DATA encryption
Slot 3 - used for EBT pin encryption
 - PAX devices will also need to be activated and registered in PAXstore.
 - Once registered, TermLink (tested using version:V1.05.09_20250124) is required to be installed which is responsible for communicating with device modules (magstripe, EMV and contactless).
 - With the PAX A80, there's the ability to use an external PED - the PAX SP30. If using the SP30 as the external PED:
 - For E700 devices, Q20L needs to have the following Termlink version installed: V1.01.00
 - For E500 devices, Q20L needs to have the following Termlink version installed: V1.01.02
 - For E800 devices, Q20L needs to have the following Termlink version installed: V1.01.02
 
Installation Instructions
SDK
                Before proceeding, please download all necessary files for your device. You can find all the necessary files in the Downloads section.
            
        - Please use the following link which describes how to install the SDK
 - Follow this link to set up your API key
 - Using the package provided, and once SDK is installed, install the PAX libraries by dropping them in your project.
 - 
            Initialize the SDK by calling
AndroidTerminal.getInstance().initWithConfiguration(this, "TERMINAL_ID"); - 
            Once onSettingsRetrieved is called, initialize the device using the following code
            
AndroidTerminal.getInstance().initDevice(DeviceEnum.PAX, DeviceConnectionType.AIDL, null, null); - For E700, E800 and E500 device please use 
DeviceConnectionType.USB AndroidTerminal.getInstance().initDevice(DeviceEnum.PAX, DeviceConnectionType.USB, null, null); - onDeviceConnected will be returned if the device has been successfully initialized.
 - At this point you can start processing EBT transactions.
 
EMV
Configuring PAX device with EMV configuration
                    Please ensure your API key is set up correctly.
            
        - Download the following configuration file. For IM30 use this configuration file.
 - Copy the configuration file to PAX sdcard
 - Import sample application to Android Studio, build it and install it on the device
 - Navigate to side menu “App Settings” and enter your terminal ID and tap on Save button
 - Once the SDK gets initialized, tap on pinpad icon in top right corner and select PAX from the list
 - Once the device get connected, navigate to App Settings and tap on Load Configuration button
 - Tap on Confirm and select paxConfig.zip from the list
 - Once loaded, tap on Save button
 - To test the transaction, enter amount, tap on SALE button and select either EMV or EBT transaction EMV transactions
 - 
                
To start EMV transaction
CoreSale coreSale = new CoreSale(BigDecimal.valueOf(12.00)); coreSale.setTransactionInputMethod(CoreTransactionInputMetho d.SWIPE_OR_INSERT_OR_TAP_OR_KEYED); AndroidTerminal.getInstance().processSale(coreSale); - If the card requires a PIN, the onRequestPin callback will be triggered the same as for EBT.
 - If the card requires signature, onSignatureRequired will be triggered with CoreSignature object to be populated with x and y coordinates of the signature. Our sample app contains the sample code for drawing signature using canvas. Below is the sample code.
 - The transaction gets processed and the transaction response will be returned in onSaleResponse callback method.