Note: If you use RAHaUT.exe to upload files, please see the RA Hashing and Upload Tools article.

In this Article:


Before you begin:

  • The Windows user setting up your local data upload folder must have access on your local system to read and write files to your data upload folder.  In addition, that user must have access to connect to a remote web server through any proxies or firewalls that exist at your location.
  • Since the data upload tool (pli.exe) will eventually be set up to run as a scheduled task, the user under which the schedule task executes must also have these same permissions.
  • In addition to simply uploading data, the data upload tool also performs some other critical functions. This includes replacing all sensitive information with hashed (one-way encrypted) versions so that the original values are impossible to derive.  This means that this sensitive information never leaves your local network.


System Requirements

  • Microsoft .Net Framework 4.6.2 or later must be installed
  • Credentials used for automation (Windows Task Schedule) must be able to access the PrecisionLender platform.
  • Credentials used for automation must have write access to the data upload folder.
  • Local Policy Setting below must be disabled due to the use of MD5 hashing in the PrecisionLender upload processing
    • Local Security Policy, expand Security Settings > Local Policies > Security Options > Use FIPS compliant algorithms for encryption, hashing and signing


Creating your data upload folder

  • For your core relationship data to be uploaded to your PrecisionLender environment, you will need to install our upload tool on a computer/server within your bank.
  • As part of the data upload process, your bank created a set of flat files that were exported from your core system.  The best practice for all customers is to set up that export as a reoccurring job that exports those same files (identical names) into the same folder every time.  This folder is known as your PrecisionLender RA folder.


Downloading the data upload tool

  • Our onboarding team will provide a URL where you can download the data upload tool.
  • This package consists of a zip file which contains several files.
  • Unzip these files into your local data upload folder so that the folder now contains:
    • pli.exe - the file that launches the data upload process
    • pli.exe.config - stores configuration information for the uploader tool
    • Supplemental DLL files - required for pli.exe to function
    • Your flat relationship files - exported files from your core export (in delimited format such as csv)
    • pliData.xml - this file will only appear after you've run the data upload tool at least once


Running the data upload tool for the first time


Do not execute PLI with valid credentials unless you intend to push data to PrecisionLender. If you would like to test PLI connectivity to PrecisionLender's servers, see the Testing PLI below.

  • The first time that pli.exe is run, it must be accompanied by the valid credentials of a PrecisionLender System Administrator within your organization. It is recommended that you launch a Windows command shell and run pli.exe from there so you can easily read the feedback provided by the tool. While the command line options are listed at the end of this article, an example of the command used to pass credentials is:
    c:\pli> pli.exe --username=johndoe --password=johndoespassword
  • With the proper PrecisionLender credentials supplied, the upload tool will contact the PrecisionLender server and download your institution's integration key which is then stored locally in your configuration files.
  • You will know that your initial run completed successfully when you see the message "Integration complete".
  • Please note that, although your data upload can occur at any time during the day, your data will only be processed after normal business hours to minimize impact on your users.  Data from a successful upload should be available in your PrecisionLender environment the following business day.


Running the data upload tool subsequent times

  • Once pli.exe has been run once successfully using credentials and the integration key has been stored locally, there is no longer a need to run the tool with included credentials.  Instead, you need only launch the pli.exe file and the entire process should complete automatically.


Setting up a scheduled task to run the data upload tool


Shows Windows Task Scheduler with 'run with highest privileges' checkbox checked


  • Automation (Windows Task Scheduler) settings:
    • Program/script:
    • Start in (optional):
    • Make sure your task uses valid credentials that have permissions to run the tool and send the data
    • You may need to use the option "Run with highest privileges" within the Windows Task Scheduler in order to avoid UAC issues with he scheduled task.  This option forces the schedule task to run with the highest permissions that are available to the user account assigned to the task.  


How Frequently Should I Refresh the Data for my Customer Relationship Module?

  • We recommend that you create fresh data extracts and run pli.exe weekly, bi-weekly or monthly.
  • Relationship data uploaded during the day begins processing each evening at 12AM UTC Time and is typically available the following morning. Relationship data uploaded after 12AM UTC Time may be processed the following evening.


Command Line Options:

C:\pli>pli --help
Usage: pli [OPTIONS]+
Parses inbound PrecisionLender integration files and uploads to

-s, --sourcedir=VALUE      the source directory for the import files.
-u, --username=VALUE a PrecisionLender username for an admin user (must also specify password).
-p, --password=VALUE the current PrecisionLender password for the admin username specified by the username option.
-k, --key=VALUE the current PrecisionLender Integration API Key.
-t, --testmode run this program in test mode (nothing will be uploaded).
-w, --wait Execute and wait for the user to hit enter at the end
-f, --force Force an update even if the files haven't been updated.
-c, --cdump=VALUE Internal Use Only
-d, --debug run this program in debug mode (errors output to the screen).
-l, --lookup=VALUE the name of the reverse lookup file that will be saved on the local system (not uploaded)
-h, --help show this message and exit


Testing PLI

Warning: Do not execute PLI with valid credentials unless you intend to push data to PrecisionLender.

To test PLI in your environment to see if it is able to to communicate through your network to the PrecisionLender servers, we recommend running PLI with a set of invalid credentials as follows:

  1. Unzip a copy of pli.exe and related support files into a new folder separate from your data files.  We do not recommend testing PLI in the same folder as your data files using this method.
  2. Execute PLI with the following credentials:
  3. pli.exe -u=testuser -p=testpassword
  4. The following result scenarios should tell you if PLI was able to make the initial connection to our servers:
    • Success:
      • Connecting to server to obtain a valid integration key.
      • An error has occurred, a notification has been sent to support.
    • Failure:
      • Connecting to server to obtain a valid integration key.
        1. Unable to send the following error to support: We were unable to get your integration key from the server. Please contact support.
        2. ===
        3. There was an error while trying to connect to the service: The remote name could not be resolved: ''
      • See also: Testing Your Relationship Upload with the Cdump Option


Troubleshooting / Error Codes:

  • "An error has occurred, a notification has been sent to support"

    This error usually means one of these things:
  1. The upload tools was unable to locate one or more of the required data files (names must match what the tool is expecting)
  2. A special field in your data file(s) contains a blank entry.  This can also occur due to a blank line at the beginning or end of a data file
  3. The command-line credentials supplied (if any) may be incorrect. Credentials must be for a PrecisionLender System Administrator.
  4. Local Security Policy "Use FIPS compliant algorithms for encryption, hashing and signing" is enabled. Due to the use of the MD5 hash algorithm within the pli.exe upload processing this setting must be disabled for pli.exe to work. Microsoft is no longer recommending that FIPS mode be enabled for customers who are not required to do so by government regulation. 
  • "We were unable to get your integration key from the server. Please contact support"
    • Ensure that your PrecisionLender password does not contain special characters that could interfere with the Windows Command Line environment.  You may also be able to encapsulate your password with double-quotes to protect against this.
    • Or ... Contact support
  • "An exception occurred: Object reference not set to an instance of an object"
  • "There was an error while trying to connect to the service '\', hexadecimal value 0x5C , is an invalid character."
  • Schedule task completes, but does not send data to PrecisionLender
    • Check to make sure that your Windows Task Scheduler has the proper credentials and the proper "Start In" folder (should be the same folder as the one containing PLI.exe and your data files).
  • "Unable to send the following error to support: We were unable to get your integration key from the server. Please contact support."
    • Contact support
    • If behind a proxy server you may be able to add the following to your pli.exe.config file in order to successfully connect:


      • <?xml version ="1.0" encoding="utf-8" standalone="yes"?>
        <defaultProxy useDefaultCredentials="true" />
        <add key="Integration.URL" value="" />



Advanced Options

  • Access files in a different location
    • If you need to access your relationship flat files in a different location, you can use the command line option "sourcedir" to specify that other location (such as a network file server).
  • Reverse lookup files with the Data Library
    • For example, if you need to match up Active Loan Accounts to internal reporting, complete the following steps to create the lookup file:
    • Go to the folder where PLI is sitting.
    • Hold Shift + Right Click to open a command prompt and enter the following command:
    • pli.exe -l lookup.csv
    • This creates a new file in your PrecisionLender folder that provides the hash values and their original values for all accounts in one place, allowing you the ability to perform a vlookup or similar function for report comparison with the Active Loan Accounts data feed.
    • An upload will also be sent to PrecisionLender, which is fine even if it’s in addition to your normal upload schedule.