SFTP File Upload

Introduction

Our SFTP (Secure File Transfer Protocol) integrations let you set up a recurring CSV file upload to update and maintain your employee data via CSV files transferred over SFTP.  

SFTP integrations can be used to:

  • update data for existing employee accounts, 
  • create new employee accounts, and 
  • if enabled, deactivate employee accounts for users not found in the CSV file. 

Note: Confirm that the SFTP functionality is available for your PerformYard account with your Customer Success Manager.

You must be an Administrator in PerformYard to configure this functionality

You'll be able to learn more about the SFTP integration below.

Getting Started

If SFTP is enabled for your account, the administration area of PerformYard will offer an administration panel for configuring SFTP.

Generate an SFTP Password

SFTP allows for the secure transfer of files from one system to another.  It relies on using a username and password to authenticate the "sender" of the file as being authorized to send or upload a file.  The first step in configuring your SFTP Integration is to generate the password that will be used to validate the "sender."   This password will be used across your SFTP integrations.

Add an SFTP Integration

The SFTP functionality supports having multiple SFTP integrations. Most companies typically just need one configured SFTP Integration. Still, the support for multiple allows for sending data from multiple systems. For example, your HRIS platform can send some employee data, and another system can send additional data that tracks additional employee details not stored in your HRIS.

To add an SFTP Integration, press the "Add SFTP Integration" button

The SFTP Integration offers several options to tailor the behavior of data received via SFTP:

  • Enable or Disable Testing Mode 
  • Ability to automatically deactivate employees
  • Ability to specify emails that should receive notification of an SFTP file being received and processed.
  • Backup field for identification when email address is not an available field
  • Ability to map data from the CSV to PerformYard Employee Data Fields

Integration Name

As the SFTP functionality allows for multiple SFTP integrations, giving each one a name will help keep track of it when shown in the list. We recommend naming the integration with a descriptive name that identifies its purpose and expected data source, such as "Daily Updates from HRIS System." 

Testing Mode

Testing mode allows you to test receiving files via SFTP without updating the underlying employee data in PerformYard.  The bulk update log will display the results of the test.  

Deactivate Users

If your CSV file will only contain active employees within your company, you may want to take advantage of the  Deactivate Users When Not Present option. This feature automatically deactivates any users not found in the uploaded CSV, eliminating the requirement for an administrator to deactivate users in your account manually. When enabled, an employee's absence (by email address or backup field) would deactivate their account with a termination date matching the CSV upload date. 

Note: PerformYard performs an additional check when processing a file with deactivation enabled to ensure that no more than 10% of users are deactivated with any one file. In that case, PerformYard will not proceed with auto-deactivation to prevent accidental bulk deactivation should there be an issue with the CSV.

Email List

You can specify a list of email addresses that should be notified whenever PerformYard receives and processes a new file from SFTP.

Backup Field

You can define an optional Backup Field that can be referenced for employee identification instead of an email address. By default, PerformYard matches an employee in your CSV with an existing employee in PerformYard by email address. If you do not have an email address or would rather use a different field for employee identification, you can configure a backup field for that purpose.  Using such a backup field also allows for updating an existing employee's email address in PerformYard using the CSV file.

Custom Field Mapping

By default, PerformYard will match header values in your CSV with Employee data fields for transferring data. You can create a mapping for each header value with a different name than the associated employee data field. No action is required for all header values that match the associated employee data fields. 

Sending Files to an SFTP Integration

Once you have defined one or more SFTP Integrations, you can start sending data from your source system, such as your HRIS application or your preferred SFTP client application.  

Note: It often makes sense to validate and test that your SFTP configuration is set up as expected by sending one file in testing mode using your preferred SFTP client before setting up the automated process within your HRIS system or other application.

Your SFTP client or source application will need three pieces of information to know "where" to send the CSV file:

  • Host or hostname (sometimes called SFTP Server in some applications)
  • Authentication information, namely the Username and Password
  • Directory into which to deposit the file once connected

You can get these details by opening the SFTP integration you previously created in PerformYard by clicking its name.

Copy this URL as you will need it and its components to configure your SFTP client application successfully.

Note that the URL consists of three sections:

  • The host or hostname to use with your SFTP client, sometimes called Server in some SFTP clients.
  • The username to use when connecting to PerformYard's SFTP endpoint.  This is the "middle" portion of the URL above (without the /)
  • The directory to upload your CSV file once connected to SFTP using your username and password.

Your SFTP client or application software may have a different UI or mechanism to specify these items. Still, they will all typically require those three pieces of information and the password created earlier.

Sending/Receiving Frequency

While PerformYard will check for new files every fifteen minutes or so,  it will process files  no more frequently than once every twelve hours. Attempts to upload additional files will be ignored until at least twelve hours have elapsed since the last processed file.  It is, therefore, important to configure your HRIS or SFTP application to send data no more frequently than once every twelve hours (or effectively once daily.).

Note: SFTP Integrations configured to be in testing mode do not have the 12-hour limitation. 

Once processed, the email address(es) configured in the setup for the SFTP integration will receive a confirmation email for each upload, including whether the upload was completed with errors. Those emails will direct users to the bulk user logs as needed.

CSV File Contents

The CSV file is expected to have a header row containing the names of the fields/columns followed by one or more rows of data.  At a minimum, your CSV must include Email addresses but can include any additional data fields you want to update. PerformYard will use the email address to match an existing employee defined in PerformYard.  New employee accounts will be created for emails appearing in the CSV file but not in PerformYard.  If you have configured deactivation, employees who appear missing in the CSV file will be deactivated in PerformYard.

Note: We only support CSV Files, so ensure your system is producing and sending CSV files.  We do not support XLS files or other text file formats.

Viewing Results in Bulk User Logs

PerformYard logs all processed updates and errors in its bulk user log, which can be found in the administration area of PerformYard.

The bulk user log will display a history of uploads along with the status of each sync.

These logs will include the status of each upload, the name of the integration (in the event you have more than one), and then various counts regarding your employees, along with the completion date. Click any specific log to view its details.

Each log provides content about the upload, including the number of employees with or without updates and those created. You can also access the uploaded CSV for a detailed understanding of the file. As appropriate, the employee list can also be filtered by status (Created, Skipped, Synced, No Updates).