Introduction
SAP SuccessFactors is a comprehensive Human Experience Management (HXM) software that offers a variety of operations to manage the HR processes efficiently. One of the critical parts of HR Management is dealing with the required attachments, this includes resumes, offer letters, confirmation letters, payslips, appraisal letters, tax certificates, etc. In this blog, I will walk you through the step-by-step process of uploading the attachments in the success factors system using OData API.
Pre-Requisites:
Below are the required prerequisites for this process,
1. Get access to your organization’s Success Factors Instance.
2. Get the required Success Factors credentials for your organization instance along with the required roles for the OData API, if there is any existing OData API Integration user available, will do the job for you.
Reference Link: Permission Settings | SAP Help Portal
3. Identify the API URL, based on your success factors system data center, refer to the below SAP Note in this regard,
SAP Note Reference Link: https://me.sap.com/notes/0002215682.
4. Identify the entity in which attachments need to take place.
This blog contains two parts, first is how to upload the attachment in the success factors system, second is how to achieve it via Integration Suite.
Part A: Procedure of Uploading the Attachment in the Success Factors System
Below are the Steps for uploading the attachment in the Success Factors system,
Step 1:
Understand the Success Factors Attachment Entity as it serves as the main repository for all the attachments. You need to UPSERT the record in this entity first.
Request Payload:
{
"__metadata": {
"uri": "Attachment"
},
"fileName": "Resume.pdf",
"module": "RECRUITING",
"userId": "XXXXXXXX",
"viewable": true,
"fileContent": "XJD+VGnuc......DRHujHew4FX"
}
{
"d": [
{
"key": "Attachment/attachmentId=ZZZ",
"status": "OK",
"editStatus": "UPSERTED",
"message": "Upserted successfully",
"index": 0,
"httpCode": 200,
"inlineResults": null
}
]
}
Step 2: Upload Attachment to the Desired Entity
Once the attachment gets successfully upserted into the Attachment Entity, only then you can link it to the relevant entity as the attachment navigation property in an MDF entity doesn’t allow you to inline edit attachments. To link an attachment to an MDF entity, you first create the attachment object with the Attachment entity and then link this object to the MDF entity.
Once the upserting gets successful to the Attachment Entity, you receive a new attachment ID in response, store this ID as it will be used in the next step.
Create a new entry or update an existing entry for the required MDF entity with the newly created attachment in the last step, below is the request payload for your reference,
Request Payload:
{
"__metadata": {
"uri": "cust_TestMDFObject"
},
"externalCode": "test entry 01",
"effectiveStartDate": "/Date(1565222400000)/",
"externalName": "Test MDF Entry 01",
"cust_attachmentNav": {
"__metadata": {
"uri": "Attachment(ZZZL)"
}
}
}
Note: The same attachment ID is not allowed to be added to multiple objects, in case needed, upload it again create a new attachment ID and then Add.
Part A : Procedure of Uploading the Attachment in the Success Factors System via Cloud Integration of Integration Suite
Step 1: Doing it Practically via Integration Suite
Design Integration Flow as Below
Below are the steps to achieve the above-shown Integration scenario,
Conclusion
In SAP Success Factors, uploading attachments via OData API seems too intricate but once you grasp the process, it becomes a valuable tool for managing HR-related documents. As per the above steps, it would be easy to analyze the whole process and design according to your needs efficiently in an organized manner.
Remember that SuccessFactors APIs may vary based on your specific requirement, so before starting any integration, put the majority of the time into making an effective and precise design. With the right knowledge and resources, the overall employee experience can be enhanced.