Download Driven by POS Command

Simplify supports POS-driven downloads for MX PIN Pads running Simplify. If this functionality is implemented, Simplify PIN Pads will request and receive downloads via SCPGET in response to messages exchanged between the POS and Simplify. The description given in this section should allow Elavon customers to set up POS-driven downloads.

If this is set up, MX files will be downloaded in compressed form in a GZipped Tar File (.tgz) file from a SCPGET (secure file transfer) server using configuration values loaded in the PIN Pad. A .tgz file can contain any or all of the following: screens, form files, configuration, application, system upgrades/libraries. After a successful download, the PIN Pad will automatically expand the files in the .tgz, install the expanded files, and restart itself.

The Simplify API allows a merchant to control POS-driven MX downloads via SCPGET by providing/supporting two separate types of message exchange. These messages are used to:

  • Perform version number inquiries (06 message exchange).

  • Command the PIN Pad to download a new load (07 message exchange).

Combining these messages (see Fig. 16) allows Simplify to control PIN Pad downloads by using the data in the version number (06) response to determine whether a download request (07) should be sent.

Fig. 16

Requirements

In order to manage PIN Pads by messages sent between the POS and Simplify:

  1. SCPGET server software must be loaded and installed on the file server (see below).

  2. Simplify must be loaded and installed on the PIN Pad. This will automatically install SCPGET client capability on the PIN Pad.

  3. Simplify SCPGET client software must be configured to allow Simplify to communicate with an SCPGET server (see below for overview; SCPGET Configuration for details).

  4. POS code must be written to support the desired functionality: Programming a Version Number Inquiry request and storing the latest build number received from the host will allow the POS to obtain the application build number present in the PIN Pad and compare it with that received from the host. Programming a Load Simplify File request will allow the POS to initiate PIN Pad downloads from a configured SCPGET server. (See further under POS Coding below.)

SCPGET Server Installation and SCPGET Client Configuration

SCPGET server software must be present on the machine that will act as the file server for downloads. On Windows, this software will need to be downloaded and installed. Simplify customers typically use Bitvise WinSSHD for this purpose. On Linux, SCPGET is natively supported.

As part of Simplify installation, SCPGET client capability is automatically installed on the PIN Pad. Client software is delivered pre-configured, with settings (e.g. server address) that allow each PIN Pad to communicate with its configured SCPGET server and receive downloads. SCPGET configuration settings are stored in the parameter file parm.fil.

If you need to modify these settings, they can be edited using a text editor (see under SCPGET Configuration for details). The modified parm.fil will need to be digitally signed by an appropriate authority and incorporated into a loadable .tgz; if desired, Elavon can help with this process.

Supported POS-Simplify Messaging

  • The POS can send a Version Number Inquiry (06) request to a PIN Pad whenever the lane is idle. The 06 response from the PIN Pad will contain the build number of the currently loaded PIN Pad application. This message exchange can be used as part of the update process (optional) or for informational purposes only.

  • The POS can send a Load Simplify File via SCPGET (07) request to the PIN Pad whenever the lane is idle. This request commands the PIN Pad to request an application download from the configured SCPGET server. If the requested download is unsuccessful, the PIN Pad will send a 07 response indicating the reason for the download failure.

If 06 and 07 message support has been implemented, and the POS has been programmed to store the latest application build number received from the host, MX updates can be controlled from the POS by combining Version Number Inquiry (06) and Load and Load Simplify File via SCPGET (07) messages as follows: (1) After sending a 06 request, check the application build number received in the response against the stored build number. (2) Use an application build number mismatch as the trigger for sending a 07 request to the PIN Pad. PIN Pad updates can also be controlled from the POS using just a 07 request, without a preceding 06 message exchange.

POS Coding

The following four bullet points summarize the POS coding required to control Simplify MX updates by combining 06 and 07 messages:

  • Program the POS to store application build numbers received from the host covering each PIN Pad in the system. Update the stored numbers whenever new build numbers are received from the host providing this data. (Data maintenance details do not affect Simplify.)

  • Program the Version Number Inquiry (06) request from the POS to the PIN Pad.

  • Program a comparison between the build number received in the 06 response and the stored build number for the device.

  • Program the POS to send a Load Simplify File via SCPGET (07) request to the PIN Pad if the build number in the 06 response does not match the corresponding stored value. The 07 request must specify a download (.tgz) file containing an application update; the download file must be specified by filename and location on the SCPGET server.

See Simplify Developer Guide under “Version Number Inquiry Message (Tran Type 36-06)” and “Load Simplify File via Secure File Transfer Message (Tran Type 36-07)” for message details.