How does user synchronisation via CSV import work?

Learn about how syncing users to the platform via a CSV import will work.

Learn Amp users are typically set up in one of the following ways:

  1. Manually via one-at-a-time or bulk upload by an Admin directly within Learn Amp.
  2. Via an HR system integration. For example: PeopleHR or BambooHR.
  3. Via an identity platform or people directory integration. For example: Okta or Microsoft AzureAD.
  4. Via an automated CSV upload

This article explores option 4. in more detail.


Why automated CSV import?

Option 1. above is not a scalable method of updating user details and/or creating/deactivating users. As a manual process, it is both labour intensive and error prone.

Options 2. and 3. may also not be possible, if your employee details are stored in a system that cannot be easily integrated with Learn Amp.

If the above options are not workable, we typically set up an automatic import of user details via CSV file. CSV (comma separated values) is a common file format, that most databases and spreadsheets export data to.

How is the file generated?

How this CSV file is generated will depend entirely on your internal systems and processes. Sometimes a scheduled job can be created by someone in your organisation, that generates the file from your IT systems. Sometimes the file will need to be manually generated from a spreadsheet. Because the creation of the file is so heavily dependent on your IT systems, more detailed discussion on this topic is outside the scope of this article.

What is Learn Amp’s preferred format?

Our Support Team can provide a template CSV if requested. A template can also be downloaded from your Learn Amp account, on the Bulk Invite People page here.

What if the file format cannot be modified to Learn Amp’s preferred format?

Sometimes your IT systems will export data to CSV with column headings etc, that cannot be modified to Learn Amp’s preferred format.

In this case, our developers will need to create a custom script to import your CSV data. In order to do this, we will need a sample CSV file to work from. We will agree the field mapping with you, and build the script to import your data.

Please discuss this with your Learn Amp implementation manager, as a Statement of Work will need to be created and agreed before we can proceed with this.


Where should this file be sent?

Typically, this CSV file will be transferred to Learn Amp via sFTP. Your organisation may have an sFTP server, and you would prefer us to fetch the file from you. If so, please let us know, as we will need sFTP credentials etc.

Normally, however, the CSV file would be uploaded to our sFTP server, on an automated schedule. Our system would fetch the file from the server, according to the agreed schedule, and perform the import.

What is required to connect to the Learn Amp sFTP server?

Our Support Team will need to create an sFTP user so you can connect to our server. Our server can only be connected to via SSH. So you will need to provide us with your SSH Public Key file, before we can set up your sFTP user account.

Once this is done, we will provide you will full details of how to connect to our sFTP server.

Do we need an encrypted CSV file or not?

Many of our customers prefer to encrypt their User CSV file, for additional security, though this is not mandatory.

If you require the file to be encrypted, we will need to provide a PGP public key, which is then used when the file is created, to encrypt the CSV. We can then decrypt the CSV file with our PGP public/private key pair during CSV processing.

How does automated scheduling work?

Typically, the automated job to fetch and process the user CSV file is scheduled to run once every 24 hours.

We will need to know the time when the latest file will be fully uploaded to the sFTP server, and then we set our scheduler to fetch and process the file shortly after this time.