All Collections
Integrations and IT
Synching your HR system with Sana
Synching your HR system with Sana
Mai Johansson Alm avatar
Written by Mai Johansson Alm
Updated over a week ago

In this article we will go through how you can synchronize users and their metadata to Sana.

Why synch your HR system with Sana?

If you synch user data with Sana, you can then use the user metadata to automatically enrol the right user to the right content at the right time, pull out custom reports or set the right permissions on group of users based on your org structure.

Some examples of what you can make happen:

  1. Generate a course completion report of anyone in the Finance department in Spain.

  2. Setup an automation that enrols anyone in the Product department to the "First time Product Manager program", right when they are freshly promoted to a manager position

  3. Make any manager an administrator of their own department in Sana, so they can generate reports related to their own team

  4. Automatically deactivate user profiles of employees who left your company

How do I synchronize my employee data with Sana?

The first step is to setup an integration between Sana and your HR system or your Identity Provider.

Synchronizing your Identity Provider with Sana

If you have an Identity Provider (e.g. Okta, MS Azure) that contains the relevant employee data, integrating Sana to the Identity Provider should always be the preferred way to go. Why? Because the Identity Provider supports and maintains all the right secure protocols to do that, and it can easily work as the single source of truth for employee data in your company. It is easy to synchronize the Identity Provider with a lot of different systems, as it is the main functionality it offers.

You can synchronize your Identity Provider with Sana by setting up SSO and SCIM. More details in the related articles:

Synchronizing your HR System with Sana

In case you don't have an Identity Provider or if your employee data is not in your Identity Provider, Sana can integrate directly with your HR System.

Today, we support user synchronization from HiBob, Personio, BambooHR, Google Workspace, Quyinyx, Success Factors, CatalystOne, TOTVS, Workday, Salesforce, Snowflake, and we continue to add support for additional employee data sources.

All our integrations are built using the Sana Open API and the APIs exposed by the target HR system. They perform the data synchronization every hour by default (you can change the synchronization interval). The integrations are middlewares hosted securely on Google Cloud Platform, so there are no other data processors involved.

Security of HR System integrations

The integration are hosted and run on Google Cloud Platform.

Data transmission

Data in transit is encrypted at all points through SSL/TLS protocols. The data transmission between Sana and the HR System happens through authenticated and secure REST API calls. API credentials are utilized to request secure access tokens that are required to perform all API requests.

Storage of credentials

The credentials to Sana and to the HR Systems are stored and transmitted securely (encryption in transit and at rest). Credentials are stored in Google Cloud Run SECRETS and in GitHub SECRETS. The deployment of the codebase from a GitHub dedicated repository to Google Cloud Run happens in a secure channel through GitHub actions.

Follow the instructions for API Service Users in Hibob:

After you're done, define a custom permission group with the needed access and assign the service user to the custom permission group.

Contact your Sana Customer Success Manager who will provide you with a secure form to submit the credentials for API access. Your Sana Customer Success Manager will guide you through the rest of the process until you are done.

How to set up an integration?

The setup can be done together with your Customer Success Manager. They will ask you for the API credentials to access data in your HR system in read-only mode. It usually takes one day to setup the integration if the plugin is already supported, and 10 working days if it is not supported.

How do I customize my integration?

You can decide what user data in your HR System you want to synchronize with Sana:

  1. You can enable or disable the synchronization for each user field or group you see in your HR system (e.g. "I want to synchronize only the information about departments and the field startDate, I don't want to see the field creationDate in Sana.").

  2. You can filter out users based on conditions on field or group values. The following are example of filters you can setup:

    1. “I don’t want to have in Sana anyone from the IT Department”

    2. “I want to filter out all users who have the status field set to inactive

    3. "I want to filter out all users who joined before April 2018"

  3. You can decide whether new users will automatically receive a welcome to Sana email

  4. You can decide whether you want to remove or retain the learning history of the employees who leave your company.

We continuously expand the customization capabilities of our integrations. Have ideas? reach out!

Everything is synched! What now?

You have just set up a one-way synchronization: it creates and deactivates user profiles, synchronizes their attributes (i.e. user metadata), and creates and updates user groups. Discover how to use this information to set up Smart Groups, Enrolment Rules, assign advanced permissions and generate custom reports.

Did this answer your question?