Overview

This document provides a comprehensive, step-by-step guide for integrating SAP SuccessFactors with StackOne for background checks. It covers enabling the Background Check Vendor option, configuring integration templates in SAP SuccessFactors, mapping the required fields, and setting up permissions and picklists. The guide also details how to activate the integration in StackOne, obtain the necessary tokens, and ensure users can initiate and view background checks directly within the SAP SuccessFactors user interface.

Partner Requirements

There is no formal or explicit partnership requirement with SAP SuccessFactors for this integration. However, you must have administrative privileges with the necessary permissions to access various features in SAP SuccessFactors. You will need the following mandatory permissions to access and utilise the Integration Center for modelling and executing the integration:
  • Admin access to MDF OData API
  • Access to Integration Center
  • Access to non-Secured Objects

Provider Side Setup

Enable the Other Background Check Vendor option

1

Background Check Central Configuration

Go to the Admin Center and search for Background Check Central
Search for BC Central
Enable Background Check in Recruiting and choose Other Background Check Vendor.
Enable Background Check in Recruiting

Select the type of integration template for the external background check

1

Go to Integration Center

Navigate to the Admin Center and search for Integration Center.
Go to Integration Center
To view the list of available integrations, click on My Integrations.
My Integrations
2

Select the Type of Integration Center Template

Click the + Create button and select More Integration Types to access the list of available integration types.
Select More Integration Types
Select the following values from the modal:
  • Application/UI for Trigger Type
  • SuccessFactors for Source Type
  • REST for Destination Type
  • JSON for Format
Click the Create button.
Select correct values from the Modal
Use the search box to find the entity called JobApplicationBackgroundCheckRequest, and then select it from the search results.
Search for JobApplicationBackgroundCheckRequest

Create and configure an integration template for background checks

1

Options Step

Enter the name of the integration, then click the Next button to proceed with further configuration steps. You may also click the Save button to save the current step’s configuration.
Select More Integration Types
2

Configure Fields Step

Click the + button > Insert Sibling Element, then click on the inserted element to open a prompt where you can enter the name of the element.
Please refer to the mapping listed here.
Select option to map fields
Click the + button > Add Child Element for the added element, then click on the inserted element to open a prompt where you can enter the name of the child element.
Select option to map child fields
To set the association for the added element, click on the Set as Associated Field icon.
Open Modal to select association
Choose the specific fields to map, which can be found in the Entity Tree View.
Open Modal to select association
Select the field and click on the Change Association button.
Click on the change association
You will notice that the association has been updated for the data field.
Updated data field association
Map the properties of the data fields to their corresponding properties in the OData API.
Expected properties of data fieldsToCorresponding properties in the OData API entity
backgroundCheckInfo/requestId->requestId
backgroundCheckInfo/bgiAccountId->jobApplication/jobRequisition/bgiAccountId/id
backgroundCheckInfo/packageId->jobApplication/jobRequisition/packageId/id
backgroundCheckInfo/packageExternalCode->jobApplication/jobRequisition/packageId/externalCode
backgroundCheckInfo/packageLocaleLabel->jobApplication/jobRequisition/packageId/localeLabel
createdByUserInfo/userId->createdByUserNav/userId
createdByUserInfo/firstName->createdByUserNav/firstName
createdByUserInfo/lastName->createdByUserNav/lastName
createdByUserInfo/email->createdByUserNav/email
createdByUserInfo/jobRole->createdByUserNav/jobRole
createdDateTime->createdDateTime
lastModifiedDateTime->lastModifiedDateTime
orderStatus->orderStatus
responseCode->responseCode
responseDetail->responseDetail
vendorCode->vendorCode
vendorOrderNo->vendorOrderNo
applicationInfo/applicationId->jobApplication/applicationId
applicationInfo/appStatusName->jobApplication/jobAppStatus/appStatusName
jobRequisitionInfo/jobReqId->jobApplication/jobReqId
jobRequisitionInfo/externalTitle->jobApplication/jobRequisition/jobReqLocale/externalTitle
jobRequisitionInfo/hiringManager/usersSysId->jobApplication/jobRequisition/hiringManager/usersSysId
jobRequisitionInfo/hiringManager/firstName->jobApplication/jobRequisition/hiringManager/userNav/firstName
jobRequisitionInfo/hiringManager/lastName->jobApplication/jobRequisition/hiringManager/userNav/lastName
jobRequisitionInfo/hiringManager/email->jobApplication/jobRequisition/hiringManager/userNav/email
jobRequisitionInfo/hiringManager/operatorRole->jobApplication/jobRequisition/hiringManager/operatorRole
jobRequisitionInfo/hiringManagerTeam/usersSysId->jobApplication/jobRequisition/hiringManagerTeam/usersSysId
jobRequisitionInfo/hiringManagerTeam/firstName->jobApplication/jobRequisition/hiringManagerTeam/userNav/firstName
jobRequisitionInfo/hiringManagerTeam/lastName->jobApplication/jobRequisition/hiringManagerTeam/userNav/lastName
jobRequisitionInfo/hiringManagerTeam/email->jobApplication/jobRequisition/hiringManagerTeam/userNav/email
jobRequisitionInfo/hiringManagerTeam/operatorRole->jobApplication/jobRequisition/hiringManagerTeam/operatorRole
candidateInfo/candidateId->jobApplication/candidate/candidateId
candidateInfo/firstName->jobApplication/candidate/firstName
candidateInfo/lastName->jobApplication/candidate/lastName
candidateInfo/primaryEmail->jobApplication/candidate/primaryEmail
candidateInfo/contactEmail->jobApplication/candidate/contactEmail
After mapping will look like
3

Response Fields Step

Click on the Switch to Field Mapping View option,
Change the mapping view
Click the + button and select the JobApplicationBackgroundCheckRequest entity. Then click Add and proceed by clicking the Next button.
After adding will look like this response mapping
4

Filter and Sort Step

You do not need to set anything on the Filter and Sort step. Simply click the Next button.
Change the mapping view
5

Destination Settings Step

Select the option for REST Server Settings and enter the following details:
  • Connection Name: You may choose any name you prefer.
    • REST API URL: This is the endpoint URL provided by StackOne, which will be used to receive background check order requests.
    https://api.stackone.com/external-trigger/sapsuccessfactors_ats
    
    • Authentication Type: Select Basic Authentication from the dropdown menu.
    • Username: Enter the External Trigger Token that you will receive from the StackOne Connector Hub during the connection.
    To obtain the External Trigger Token, follow these steps:
  • Password: This field can be left empty.
  • HTTP Method: Choose the POST method under REST Operation Settings.
Click the Next button to proceed.
Change the mapping view
6

Review and Run Step

Review the template structure in the Review and Run step. To save it, select the Save option. After creation, the template will run in the background, so there is no need to click Run Now.
Review and Run
You can access the logs by clicking on the Last Run Time link.
You can confirm the integration by returning to Integration Center > My Integrations.

Create Vendor from Recruiting External Vendor

1

Go to Manage Data

Navigate to Manage Data and select Recruiting External Vendor from the Create New dropdown.
Recruiting External Vendor
Enter the External Code, Vendor Name, and select Background Check as the Integration Type from the dropdown menu. Click Save to create the vendor.
External Code refers to a text string that serves as a code for the background check vendor. The OData API entities use this value to facilitate communication between the third-party vendor and SAP SuccessFactors. If this information is not entered correctly, certain integration scenarios may fail to function properly.
Enter all required details of Recruiting External Vendor

Create Recruiting Vendor Integration Mapping

1

Go to the Manage Data

Navigate to Manage Data and select Recruiting Vendor Integration Mapping from Create New dropdown
Recruiting Vendor Integration Mapping
Complete the following fields:
  • External Code: Enter a unique identifier code.
  • Vendor Name: Select your vendor name from the dropdown menu created in the previous step.
  • Integration Name: Choose your integration name from the dropdown menu.
  • Default Integration: Select Yes.
  • Hours Before User Can Reinitiate: This field currently has no functionality in SAP SuccessFactors. You may enter 0.
    Enter all required details of Recruiting Vendor Integration Mapping
Click Save to save the mapping between the vendor and the integration.
Only one Recruiting Vendor Integration Mapping can be active at a time. To activate the selected vendor integration for the instance, choose Yes in the Default Integration field. Additionally, ensure that No is selected for all other Recruiting Vendors you may have created.

Manage fields for the Job Requisition template

1

Go to Manage Templates

Navigate to Admin Center and search for Manage Templates.
Navigate to Job Requisition template
Go to the Recruiting Management tab, select Job Requisition, and choose the template in use for the relevant job requisition, such as Standard Job Requisition.
Go to Recruiting and select any specific job requisition.
Specific Job Requisition
Click on the i icon to view the Job Requisition Template.
JR Info
Standard Job Requisition
2

Add bgiAccountId & packageId fields in template

Add the following fields, which you will receive in the order request:
  • bgiAccountId: This field allows you to create multiple accounts with a single third-party background check vendor. It enables users to select which account to use.
  • packageId: This field allows users to choose the package they wish to associate with a specific job requisition.
    This approach should only be used if you have permission to upload the Job Requisition template via an XML file; otherwise, you can manually add the fields and click the Publish button.
      <field-definition id="bgiAccountId" type="picklist" required="false" custom="false"> 
        <field-label><![CDATA[Account ID]]></field-label>
        <field-description><![CDATA[Account ID]]></field-description> 
        <picklist-id>accountId</picklist-id> 
      </field-definition>
    
      <field-definition id="packageId" type="picklist" required="false" custom="false">
        <field-label><![CDATA[packageId]]></field-label>
        <field-description><![CDATA[package]]></field-description>
        <picklist-id>packageId</picklist-id>
      </field-definition>
    
    Add two fields from JR field template
    In the next step, update the permissions to ensure the fields are visible during Job Requisition creation or updates.
    The fields bgiAccountId and packageId will only be accessible for Job Requisitions that utilise a specific Job Requisition template where these fields are configured.

Manage the permissions for the fields added to the Job Requisition template

1

Go to Manage Templates

To add or update field permissions, navigate to the relevant Job Requisition Template, select Field Permissions Defined, and then click Add Field Permission in the modal.
  • Field Permission Description: Enter any description.
    • Field Permission Type: Select Write Permission.
    • Field Permission Role Name: Select Recruiter.
    • Field Reference ID: Select the bgiAccountId and packageId fields.
    • Field Permission Status: Select All or pre-approved from the dropdown menu.
After adding the fields, click Publish to save your changes.
Add field permissions from the JR template
Once the permissions have been updated, the fields will be visible in the Job Requisition during creation or editing.

Add background check accounts from the PickList Center

1

Go to background check accounts

You can create multiple accounts with a single third-party background check vendor. All accounts added in this picklist will be available for users to select as the Background Check Account under the Job Requisition details.
Go to Admin Center and search for PickList Center.
Navigate to PickList Center
Search for bgiAccountId.
Search for bgiAccountId
2

Add New Accounts

Click on bgiAccountId. This will take you to the Picklist Values page, where you can add different Background Check Accounts.
Add new accounts for background check

Add background check packages from the PickList Center

1

Go to the packages

Go to Admin Center and search for PickList Center.
navigate to Picklist center
Search for packageId.
Search for packageId
2

Add New Packages

Click on packageId to go to the Picklist Values page, where you can add different Background Check Packages.
Add new Packages
All packages added in this picklist will be available for users to select as the Background Check Package to associate with Job Requisitions.

Include a Background Check stage in the Talent Pipeline

You may skip this step if users already have a separate Background Check stage in the talent pipeline for the Job Requisition.
1

Go to Applicant Status Configuration

Go to Admin Center and search for Edit Applicant Status Configuration. Select the specific Applicant Status Set currently in use for the job requisition, such as the Standard Status Set.
Navigate to Applicant Status Configuration
This will take you to the page for the Standard Status Set.
Direct to status set page
2

Edit Applicant Status Set configurations

Locate the Background Check stage, edit it, and select none from the Status Group dropdown. This will make the Background Check visible as a separate stage in the Job Requisition’s Talent Pipeline.
Edit Applicant Status Set configurations
Click the Save and Finish button to save your changes.
Save and finish
3

Where can you verify the added stage

Navigate to Job Requisition > Candidates. At the top, you will see the updated talent pipeline.
Where can you verify the added stage
You can now move candidates to the Background Check stage.

Grant Background Check Initiate Permission

Recruiters must have the necessary permissions to initiate background checks.
Go to the specific Job Requisition Template > Template Settings > Application Status Configuration and add the feature permission block for background check to the job requisition template.
Apply Updates
Alternatively, you can add permissions via the Job Requisition template XML file:
<feature-permission type="backgroundCheck">
    <description><![CDATA[R can launch Background Check during statuses with screening category.]]></description>
    <role-name><![CDATA[T]]></role-name>
    <role-name><![CDATA[O]]></role-name>
    <role-name><![CDATA[R]]></role-name>
    <role-name><![CDATA[S]]></role-name>
    <status><![CDATA[Background Check]]></status>
</feature-permission>
Assign Background Check Initiate Permission and allow users to execute “Application/UI” or “Event-based” Integrations role-based permissions from Admin Center.

Background Check fields visibility under the Job Requisition

1

Go to Job Requisition

Navigate to the relevant Job Requisition, hover over the requisition title to open the Actions menu, and then select View or Edit Requisition.
Go to Actions menu
Both Account ID and Package ID fields will be visible, allowing the user to select the account and package to associate the background check with the job.
Navigate to Admin Center and search for OData API Metadata Refresh and Export
OData API Metadata Refresh and Export
Click the Refresh button next to Cache.
Refresh button
Both fields are visible
2

Visibility of Initiate Background Check option

The Initiate Background Check option will be visible to users under the Take Actions menu within the candidate’s application.
If the Initiate Background Check option is not visible, please ensure that the user has been granted the necessary permissions to initiate background checks as outlined in the previous step.
Take Actions menu

StackOne Configuration

1

Enable SAP SuccessFactors in StackOne

Go to the ATS category on the Integrations page and enable SAP SuccessFactors.
Activate SAP SuccessFactors
2

Complete the configuration form

Fill out the required fields in the SAP SuccessFactors - Configuration model:
  • Authentication Type: Select Client Application.
  • Integration Category: Select Background Checks.
Activate SAP SuccessFactors
Click Confirm or Save Changes to enable the SAP SuccessFactors integration, allowing end users to link their accounts via the StackOne Connector Hub.
3

Add a Webhook

Navigate to the Webhooks page, click Add webhook, and complete the form:
  • Name: Enter a recognisable name for your webhook.
  • URL: Enter the URL where the webhook will send notifications of enable events.
    Add Webhook form
    Enable webhook events from the Events tab for Background Check, such as Background Check Order.
    Select webhook events

ATS User Enablement

Users can obtain an External Trigger Token if they wish to use a different token from another StackOne project. The user can then update the username under Destination Settings in the Background Check integration template. Please refer to these steps.
Navigate to the Accounts page or the StackOne Connector Hub to link your SAP SuccessFactors account with StackOne.
Link SAP SuccessFactors account
You will receive the External Trigger Token, which must be entered as the username during the Destination Settings step under configure an integration template in SAP SuccessFactors.
External Trigger Token

ATS User Experience

1

Go to Job Requisition

Navigate to the relevant Job Requisition, hover over the requisition title to open the Actions menu, and then select View or Edit Requisition.
Go to Actions menu
Select values for the Account ID and Package ID fields. Click the Save Changes button.
Navigate to Admin Center and search for OData API Metadata Refresh and Export.
OData API Metadata Refresh and Export
Click the Refresh button next to Cache.
Refresh button
Both fields are visible
2

Visibility of Initiate Background Check option

The Initiate Background Check option will be visible to users under the Take Actions menu within the candidate’s application.
Take Actions menu

Send the test to the candidate from SAP SuccessFactors

Test your integration with StackOne using your SAP SuccessFactors Sandbox

Follow the SAP SuccessFactors Background Check guide for instructions on how to send the test from SAP SuccessFactors.

User experience after the background check has been sent

When a user sends a background check to a candidate, they will see the Request Submitted status along with the background check portlet in the candidate’s application.
Job Requisition Fields

ATS User Experience Customisation

1

Update the result via Unified API

Utilise the following endpoints to update the results:Utilise the following endpoint to get metadata to update the result of the background check:
ConditionUser sees in SAP SuccessFactorsComments
Result statusFinal Status will be visible corresponding to the Background Check labelResult status enum values from Meta API result field
Result UrlVisible as a View Report link corresponding to the View Status label
2

How are background check results displayed to the user in SAP SuccessFactors?

When a user opens a candidate’s application, they will see the updated results with the background check status from the previously sent background check under the Background Check portlet.
Job Requisition Fields

Testing Checklist

Provider Setup:
  • You have all the necessary permissions mentioned in the Partner Requirements section.
  • The Other Background Check Vendor option is enabled from Background Check Central.
  • A valid integration template is selected for the external background check.
  • Valid configurations exist in the integration template for background checks, with a valid StackOne endpoint URL and valid External Trigger Token.
  • A vendor has been created from Recruiting External Vendor with Background Check as the Integration Type.
  • A Recruiting Vendor Integration Mapping has been created with the vendor and integration from the previous steps.
  • The bgiAccountId and packageId fields have been added to the Job Requisition template with the necessary permissions.
  • Accounts have been added in the bgiAccountId picklist and packages in the packageId picklist.
  • A Background Check stage has been added to the talent pipeline for the job requisition, if not already present.
  • The feature permission for Background Check Initiate Permission has been granted to the job requisition template.
  • Account ID and Package ID fields are visible to users during creation/editing of the Job Requisition.
  • The Initiate Background Check option is visible to users under the Take Actions menu within the candidate’s application, as mentioned in this step.
StackOne Configuration:
  • The integration category Background Checks is selected.
ATS User Activation:
  • A valid External Trigger Token is entered as the username during the Destination Settings step under configure an integration template.
  • A single Recruiting Vendor Integration Mapping is activated to use the background check integration. Please refer this step.
Create a Webhook:
  • A webhook for SAP SuccessFactors has been added and enabled with the Background Check Order event.
  • A valid webhook URL has been added to receive background check notifications.
ATS User Experience:
  • The Background Check stage is visible in the talent pipeline for the job requisition.
  • Account ID and Package ID fields are visible to users during creation/editing of the Job Requisitions.
  • The Initiate Background Check option is visible to users under the Take Actions menu within the candidate’s application, as mentioned in this step.
  • After sending the background check to a candidate, the user can see the Request Submitted status along with the background check portlet in the candidate’s application.
Update Result:
  • A success response is received from the update result endpoint.
  • Updated result details are visible in SAP SuccessFactors’s UI.

Troubleshooting

SymptomLikely causeFix
Unable to access Integration Center. Insufficient permissions.

Logged-in account is not an Admin account.
Ensure the account has the necessary permissions.

Log in with an Admin account.
Account ID and Package ID fields are not visible during creation/editing of the Job Requisition. Fields are not configured in the Job Requisition template.

Fields do not have the necessary permissions in the Job Requisition template.

OData API cache is not refreshed after adding fields and permissions.
Add bgiAccountId and packageId field configurations in the Job Requisition template. Please refer this.

Add the necessary permissions for both fields. Please refer this.

Refresh the OData API cache from OData API Metadata Refresh and Export. Please refer this.
Accounts and Packages are not available to select during creation/editing of the Job Requisition. No values are added in the bgiAccountId and packageId picklists. Add values in the bgiAccountId and packageId picklists from PickList Center.
Please refer following sections:
- Add background check accounts from the PickList Center.
- Add background check packages from the PickList Center.
Background Check stage is not visible in the talent pipeline for the Job Requisition. Background Check stage is not added in the talent pipeline.

Background Check stage is added but not configured properly.
Add a Background Check stage in the talent pipeline for the job requisition. Please refer this.

Ensure the correct configurations for the Background Check stage, please refer this.
Initiate Background Check option is not visible under the Take Actions menu within the candidate’s application. User does not have the necessary permissions to initiate background checks.

Background Check feature permission is not added to the Job Requisition template.
Add the Background Check feature permission to the Job Requisition template. Please refer this.
Error when sending the background check. Invalid REST API URL.

Invalid External Trigger Token.

Invalid configurations in the integration template for background checks.
Verify the REST API URL.

The External Trigger Token should be valid.

Ensure all configurations are correct for the background check integration template. Please refer this.
Test notification is not received. Multiple Recruiting Vendor Integration Mapping records are activated for the Background Check integration.

Invalid webhook URL.

Incorrect webhook events are enabled.
Ensure only a single Recruiting Vendor Integration Mapping is activated for the expected Background Check integration.

Verify the webhook URL.

Enable the expected events as mentioned in the StackOne Configuration.
Test notification data is not correct.Invalid mappings of fields in the integration template for background checks.Ensure all field mappings are correct for the background check integration template. Please refer this.
Unable to update result.Invalid payload format.Check the Connector Meta Information endpoint for the payload format.
Result URL shows an error when opened.The result URL may have expired or is private.Ensure you add public or signed URLs; verify CORS and expiry.
For persistent issues, contact StackOne support with detailed error logs and configuration information.