> ## Documentation Index
> Fetch the complete documentation index at: https://developers.techwolf.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Installation

### Prerequisites

Before continuing, ensure you have the following:

* A valid TechWolf contract and access to a **live TechWolf tenant**.
  * This tenant must contain Jobs corresponding to the Job Roles present in
    SAP SuccessFactors. This can be achieved by either:
    * Using the
      [Standard Job Data Input Integration <Icon icon="link" iconType="solid" />](/integrations/datasource-integrations/sap-standard-input-integration/overview).
    * Writing custom input integrations. When doing this, ensure the
      TechWolf SkillEngine API Jobs are linked with their SAP SuccessFactors
      Job Role counterparts by using the SAP Job Role ID (`Role_GUID`) as
      the TechWolf Job ID (`external_id`).
* An SAP SuccessFactors environment with **Talent Intelligence Hub** and **Job
  Profile Builder** implemented.
* The necessary setup of the Attributes Library in SAP SuccessFactors.
  * This includes at least the following:
    * A proficiency rating scale of your choice, aligned with the one
      configured for SAP in TechWolf. Preferably, the default TechWolf
      proficiency scale (1-5) is used. Contact your TechWolf representative
      for the current configuration, or to update the configuration. See
      [How To: Manage the Skill Proficiency Rating Scale <Icon icon="link" iconType="solid" />](/integrations/sap-skill-sync-integration/how-to-manage-proficiency-rating-scale)
      for more information on how to manage the proficiency rating scale in
      SAP SuccessFactors.
    * The desired set of TechWolf skills present and active in your SAP
      Attributes Library, as Attributes of the default "Skill" iconType
  * More information on the Attributes Library and the maintenance of the
    Attributes Library in SAP SuccessFactors can be found in the
    [Skills Taxonomy Sync <Icon icon="link" iconType="solid" />](/integrations/sap-skill-sync-integration/installation-skills-taxonomy)
    installation guide.

## SAP SuccessFactors Configuration

TechWolf has already pre-configured some parts of the integration. The following
ZIP archive contains the necessary files that will be used in the subsequent
steps to configure the integration in SAP SuccessFactors.

<Card title="Required files" icon="download" href="https://techwolf-docs-public-access.s3.eu-west-3.amazonaws.com/integrations/skill-sync-integrations/sap-job-skill-sync-required-files.zip" horizontal="true">
  Required files for the SAP Job Skill Sync Integration
</Card>

### 1. Find out the correct SAP SuccessFactors Company ID

* As an SAP administrator, log into the SAP SuccessFactors environment you want
  to configure the integration for.
* Click on your profile icon in the top right corner and select "Show version
  information".
  <img src="https://mintcdn.com/techwolf/U7KDKuLgNYCJwTYn/integrations/sap-skill-sync-integration/images/show_version_information.png?fit=max&auto=format&n=U7KDKuLgNYCJwTYn&q=85&s=d00d6d291c06ba2610cd40c3245b197e" alt="Show version information" width="3420" height="864" data-path="integrations/sap-skill-sync-integration/images/show_version_information.png" />
* The Company ID will be shown in the resulting window.
  <img src="https://mintcdn.com/techwolf/U7KDKuLgNYCJwTYn/integrations/sap-skill-sync-integration/images/version_information.png?fit=max&auto=format&n=U7KDKuLgNYCJwTYn&q=85&s=d3ec199eed78d611677d741fe3aff130" alt="Version Information" width="3420" height="1680" data-path="integrations/sap-skill-sync-integration/images/version_information.png" />

### 2. Find out the correct SAP SuccessFactors API URL

* As an SAP administrator, go to
  [SAP for Me <Icon icon="link" iconType="solid" />](https://me.sap.com/systemsprovisioning/systems)
  (if you have multiple credentials, sign in with your S-User credentials).
* In the *Public Cloud Systems* table, find the system you want to configure the
  integration for.
  * This system should have the value "SAP SuccessFactors HCM" in the
    `Cloud Service` column.
* The `Data Center` column will show the location of the data center of the
  system, e.g. "Netherlands: Eemshaven".
  <img src="https://mintcdn.com/techwolf/U7KDKuLgNYCJwTYn/integrations/sap-skill-sync-integration/images/list_of_systems.png?fit=max&auto=format&n=U7KDKuLgNYCJwTYn&q=85&s=9e6a58a485c0abcb25f291722cc9c975" alt="List of Systems" width="3420" height="1168" data-path="integrations/sap-skill-sync-integration/images/list_of_systems.png" />
* Go to the
  [List of SAP SuccessFactors API Servers <Icon icon="link" iconType="solid" />](https://help.sap.com/docs/successfactors-platform/it-landscape-requirements-for-sap-successfactors/list-of-sap-successfactors-api-servers)
* In the *API Servers* table, find your Data Center.
  * This Data Center should have the previously determined data center location
    as the value of the `Location` column. Note that the location name might
    differ in format from the location name in the previous step, e.g.
    "Eemshaven, The Netherlands" vs "Netherlands: Eemshaven". Among all rows
    with this location, find the row with the appropriate value for the
    `Environment` column.
* The `API Server` column will show the API URL for the API Server.
  <img src="https://mintcdn.com/techwolf/U7KDKuLgNYCJwTYn/integrations/sap-skill-sync-integration/images/list_of_api_servers.png?fit=max&auto=format&n=U7KDKuLgNYCJwTYn&q=85&s=1dec8af8effbbce0046f867c5d4b1343" alt="List of API Servers" width="3420" height="1864" data-path="integrations/sap-skill-sync-integration/images/list_of_api_servers.png" />

### 3. Create a TechWolf User in your SAP SuccessFactors environment

* In the search bar at the top right of SAP SuccessFactors, enter
  `Import Employee Data`.
* In the resulting window, under the `Select an entity` dropdown, choose "Basic
  Import". In the `Choose File` field, upload the
  `techwolf_api_user_definition.csv` file from the required-files zip downloaded
  above.
  <img src="https://mintcdn.com/techwolf/U7KDKuLgNYCJwTYn/integrations/sap-skill-sync-integration/images/import_api_user_definition.png?fit=max&auto=format&n=U7KDKuLgNYCJwTYn&q=85&s=fc722e49183f6cd26475b71c4b24c5d7" alt="Import API user definition" width="1920" height="873" data-path="integrations/sap-skill-sync-integration/images/import_api_user_definition.png" />
* Leave the other fields unchanged and click `Validate Import File Data`. If the
  validation is successful, click `Import`.

<Note>
  If you already created a TechWolf User for another TechWolf - SAP
  SuccessFactors integration, this step can be skipped.
</Note>

### 4. Create a new OAuth2 Client Application

* In the search bar at the top right of the screen, enter
  `Manage OAuth2 Client Applications` and press enter.
* In the window that opens, click `Register Client Application`.
  <img src="https://mintcdn.com/techwolf/U7KDKuLgNYCJwTYn/integrations/sap-skill-sync-integration/images/oath2_client_applications_landing_page.png?fit=max&auto=format&n=U7KDKuLgNYCJwTYn&q=85&s=b9613925371f886968f21f578464556a" alt="Manage OAuth2 Client Applications Screen" width="1857" height="941" data-path="integrations/sap-skill-sync-integration/images/oath2_client_applications_landing_page.png" />
* In the resulting page, the following fields must be filled in:
  * `Application Name`: "TechWolf Skill Sync"
  * `Application URL`: "[https://techwolf.ai](https://techwolf.ai)"
  * `Bind to Users`: Check the checkbox
  * `User IDs`: `TechWolf_TIH_GP` (refers to the user created in the previous
    step)
  * `X.509 Certificate`: Go to your TechWolf point of contact to request the
    certificate file. Once you received the file, open it. It will have the
    following text guards around it: "-----BEGIN CERTIFICATE-----" and "-----END
    CERTIFICATE-----". Copy all the text in between these guards and paste it
    into the `X.509 Certificate` field.
    <img src="https://mintcdn.com/techwolf/U7KDKuLgNYCJwTYn/integrations/sap-skill-sync-integration/images/client_application_details.png?fit=max&auto=format&n=U7KDKuLgNYCJwTYn&q=85&s=55e033afe9dc871c32d9776867288cf2" alt="Client Application Details" width="1921" height="953" data-path="integrations/sap-skill-sync-integration/images/client_application_details.png" />
* Now, click `Register`.
* Once the Client Application is registered, go back to the
  `Manage OAuth2 Client Applications` page and find the application you just
  created. Click `View` on it.
* On this view, you can see the `API Key` you will need for the integration
  configuration.
  <img src="https://mintcdn.com/techwolf/U7KDKuLgNYCJwTYn/integrations/sap-skill-sync-integration/images/view_oauth2_application.png?fit=max&auto=format&n=U7KDKuLgNYCJwTYn&q=85&s=1c4b98f007a602f7997cb847035a68e6" alt="View OAuth2 Application" width="1921" height="953" data-path="integrations/sap-skill-sync-integration/images/view_oauth2_application.png" />

### 5. Configure the permissions for the TechWolf user

The `TechWolf_TIH_GP` user needs a Permission Group and a Permission Role to run
the Skill Sync.

<Note>
  If another TechWolf - SAP SuccessFactors integration using the
  `TechWolf_TIH_GP` user has already been configured in this tenant, the
  Permission Group and Permission Role already exist. Skip the group creation
  and role assignment steps below and only **add the missing permissions** from
  the table to the existing Permission Role.
</Note>

* **Create a Permission Group**

  * In the search bar at the top, enter `Manage Permission Groups` and open
    it.
  * Click `Create New`.
  * Name the group `TechWolf_TIH_GP`.
  * Pick the `Username` filter and set it equal to `TechWolf_TIH_GP`.
  * Click `Done`.
    <img src="https://mintcdn.com/techwolf/DzhiuB8jW-7AoTeC/integrations/sap-skill-sync-integration/images/permission_group_creation.png?fit=max&auto=format&n=DzhiuB8jW-7AoTeC&q=85&s=8a11b0ab859fb51da11843cba3790c10" alt="Create Permission Group" width="1842" height="1300" data-path="integrations/sap-skill-sync-integration/images/permission_group_creation.png" />

* **Create a Permission Role**

  * In the search bar at the top, enter `Manage Permission Roles` and open it.
  * Create a new Role with user type `Employee`.
  * Under `Administrator Permissions` →
    `Manage Job & Skill Profile Visibility`, grant the following:

    | Permission                                | Access                                      |
    | ----------------------------------------- | ------------------------------------------- |
    | Role                                      | View, Edit                                  |
    | Role.Mapped Skills (Role & Skill Mapping) | View, Correct, Create, Adjust Order, Delete |

  <img src="https://mintcdn.com/techwolf/G7qK2vmhB0nzflmv/integrations/sap-skill-sync-integration/images/permission_role_admin_permissions_manage_job_skill_profile_visibility.png?fit=max&auto=format&n=G7qK2vmhB0nzflmv&q=85&s=acaf363934c52d12b96f2d5f96d4e3f3" alt="Manage Job & Skill Profile Visibility" width="3050" height="1314" data-path="integrations/sap-skill-sync-integration/images/permission_role_admin_permissions_manage_job_skill_profile_visibility.png" />

  * Save the Permission Role.

* **Assign the Permission Role to the Permission Group**
  * On the saved Permission Role, click `Add Role Assignments`.
  * Click `Next`.
  * On the `Grant Access To` page, select `From Groups`.
  * Click `Select Groups` and pick the `TechWolf_TIH_GP` group created above.
  * Click `Next`, then `Next` again, and save the Role Assignment.
    <img src="https://mintcdn.com/techwolf/DzhiuB8jW-7AoTeC/integrations/sap-skill-sync-integration/images/role_assignment_groups.png?fit=max&auto=format&n=DzhiuB8jW-7AoTeC&q=85&s=b960b0b2cf3026ad6ceb7c97b70f78c5" alt="Role Assignment" width="3172" height="1342" data-path="integrations/sap-skill-sync-integration/images/role_assignment_groups.png" />

<Note>
  If the `Role` or `Role & Skill Mapping` permissions are not visible in
  your tenant, enable separate security permissions for the `RoleEntity`
  and `RoleSkillMappingEntity` object definitions:

  * In the search bar at the top, enter `Configure Object Definitions`
    and open it.
  * Search for `Object Definition` → `Role`.
  * Use `Take Action` → `Make Correction`.

  <img src="https://mintcdn.com/techwolf/DzhiuB8jW-7AoTeC/integrations/sap-skill-sync-integration/images/configure_object_definitions_overview.png?fit=max&auto=format&n=DzhiuB8jW-7AoTeC&q=85&s=ec8d9002ba38f83a09cf95c114e86d2d" alt="Object Definition security settings" width="2842" height="1748" data-path="integrations/sap-skill-sync-integration/images/configure_object_definitions_overview.png" />

  * Configure the `Security` section according to the following screenshot. Click the "+" button in case the fields are missing.

  <img src="https://mintcdn.com/techwolf/DzhiuB8jW-7AoTeC/integrations/sap-skill-sync-integration/images/configure_object_definitions_make_correction.png?fit=max&auto=format&n=DzhiuB8jW-7AoTeC&q=85&s=4426da4a478419ea6f9f339d7a6eee4f" alt="Object Definition security settings" width="2656" height="550" data-path="integrations/sap-skill-sync-integration/images/configure_object_definitions_make_correction.png" />

  * Scroll to the bottom of the page and click `Save`.
  * Repeat the above steps for `Object Definition` → `Role & Skill Mapping`.
</Note>

<Note>
  On recent SAP SuccessFactors releases, the Talent Intelligence Hub adds data
  source governance for external skill providers. If your tenant exposes the
  **Manage Data Sources** task or a **Manage Skills Governance** section under
  **Manage Talent Intelligence Hub**, complete
  [How To: Register TechWolf as a Trusted Data Source <Icon icon="link" iconType="solid" />](/integrations/sap-skill-sync-integration/how-to-register-data-source)
  so Job Role skill updates from TechWolf flow through without additional
  manual review.
</Note>

## TechWolf Configuration

The TechWolf tenant will be configured by TechWolf itself.

1. In the integration service on the TechWolf side, TechWolf adds the
   credentials of the customer-created integration user. For this, the customer
   will need to share the following values with TechWolf:

   * The Company ID of the SAP SuccessFactors environment (see Step 1 of the
     SAP SuccessFactors Configuration section)
   * The API URL of the SAP SuccessFactors environment (see Step 2 of the SAP
     SuccessFactors Configuration section)
   * Username of the integration user (see Step 3 & 4 of the SAP SuccessFactors
     Configuration section, should be `TechWolf_TIH_GP`)
   * The API Key of the OAuth2 Client Application (see Step 4 of the SAP
     SuccessFactors Configuration section)

   Additionally, the customer will need to share the following configuration
   settings with TechWolf:

   * The minimum proficiency level for skill attributes in SAP SuccessFactors
     (see
     [How To: Manage the Skill Proficiency Rating Scale <Icon icon="link" iconType="solid" />](/integrations/sap-skill-sync-integration/how-to-manage-proficiency-rating-scale))
   * The number of proficiency levels for skill attributes in SAP
     SuccessFactors (see
     [How To: Manage the Skill Proficiency Rating Scale <Icon icon="link" iconType="solid" />](/integrations/sap-skill-sync-integration/how-to-manage-proficiency-rating-scale))

2. TechWolf adds TechWolf API credentials with correct scopes to have access to
   the TechWolf API and links that TechWolf tenant to the SAP SuccessFactors
   tenant.

## Configuration Options

### Sync Direction Settings

The integration supports three sync direction options:

* **Bidirectional** (default): Two-way sync between TechWolf and SAP
  SuccessFactors; changes made in TechWolf Job Skill Profiles are synchronized
  to their corresponding SAP SuccessFactors Job Skill Profiles, and vice versa.
* **TechWolf to SAP Only**: Skills flow from TechWolf to SAP SuccessFactors
  only; changes made in SAP SuccessFactors Job Skill Profiles are copied to
  their corresponding TechWolf Job Skill Profiles, while changes made in
  TechWolf are discarded and overwritten with the state of the SAP
  SuccessFactors Job Skill Profiles.
* **SAP to TechWolf Only**: Skills flow from SAP SuccessFactors to TechWolf
  only; changes made in TechWolf Job Skill Profiles are copied to their
  corresponding SAP SuccessFactors Job Skill Profiles, while changes made in SAP
  SuccessFactors are discarded and overwritten with the state of the TechWolf
  Job Skill Profiles.

### Merge Strategy Options

For the correct functioning of the normal operation of the integration, the
skill profiles in both systems should be initially aligned. The integration will
do this initial alignment itself automatically when the integration is first
enabled, or when it is re-enabled after having been paused, or when it
encounters a Job it had no knowledge about yet.

The initial alignment can happen in different ways; the integration supports
three such merge strategy options:

* **Merge Systems**: Combines skills from both systems, i.e. the resulting skill
  profile in both systems will contain all skills that were present in either
  system initially. In case of metadata conflicts for skills present in both
  systems (e.g. conflicting proficiency levels), the values from TechWolf will
  be used.
* **Push TechWolf**: Uses the TechWolf Job Skill Profile as the initial source
  of truth, and will align the SAP SuccessFactors Job Skill Profile with it. Any
  skills initially present in the SAP SuccessFactors Job Skill Profile but not
  in the TechWolf Job Skill Profile will be removed from the SAP SuccessFactors
  Job Skill Profile.
* **Push SAP**: Uses the SAP SuccessFactors Job Skill Profile as the initial
  source of truth, and will align the TechWolf Job Skill Profile with it. Any
  skills initially present in the TechWolf Job Skill Profile but not in the SAP
  SuccessFactors Job Skill Profile will be removed from the TechWolf Job Skill
  Profile.

## Deployment Tasks & Responsibilities

1. **TechWolf**: Setup Skill Sync environment and tenant requirements
2. **Customer**: Configure SAP SuccessFactors as described above.
3. **Customer**: Share nessary SAP SuccessFactors information and credentials
   with TechWolf:
   * Company ID
   * API URL
   * Username of the integration user
   * API Key of the OAuth2 Client Application
4. **TechWolf**: Validate API access by attempting the addition, update and
   removal of a skill in the Job Skill Profile of the integration user.
5. **TechWolf**: Run initial sync of Job Skill Profiles with TechWolf API.
6. **TechWolf**: Setup tenant configuration and start sync process based on
   configured direction.
7. **Customer**: Check end-user test scenarios.
