Integrating SuccessFactors with ServiceNow Asset Management
ServiceNow Asset Management tracks inventory and life cycle of IT and non-IT asset and is a very commonly used tool to manage lifecycle of assets in the organisation on the other hand SAP SuccessFactors is a complete, cloud-based human resource management (HR) system that covers everything from payroll to employee engagement and hence deals with employee lifecycle.
It is a quite frequent scenario that we need to Integrate HR system such as SuccessFactors with the Asset management system like ServiceNow. Which helps in automation of asset management in reference to Employee lifecycle.
In these type of projects a lot of time is spent on finding out the right way to integrate the SAP system(SuccessFactors) with a non SAP system(ServiceNow) as the consultants have to go through all the possible ways of integration and have to analyse the available API’s for integration and the secure way of authentication.
In this blog post you will learn to Integrate SuccessFactors module with ServiceNow Asset Management module using ServiceNow Adapter developed by Rojo Consultancy using SAP CPI (Cloud Platform Integration)as a middleware. The ServiceNow Adapter takes away the pain of multiple calls for authentication and shields developer from the API complexity without losing the functionality exposed by the platform. Which will eventually then reduce the project implementation time and brings certainty to the project.
Business Scenario : Whenever an employee is hired by an organisation there are several assets which are made available/reserved for the future employee and as soon as the employee joins the firms the assets are assigned to employee and made ready to use for employee. When the employee will leaves the organisation the asset need to be released and made available for others.
The above scenario can be broken down in below steps:
- Replicate Employee from SuccessFactors to ServiceNow
When an employee is hired in SuccessFactors the employee should be replicated to ServiceNow as a User with basic information required in ServiceNow like Name, UserID, Email, PhoneNo, CostCenter, Company, Department etc. In below scenario I have just replicated name, User and email of the employee for explanation.
In SuccessFactors I have used the Intelligent Services feature using which we can Push the Employee information to SAP CPI using Push mechanism, In SAP CPI I have used a SOAP Sender cannel will receive the call invoked by SuccessFactors at New Hire event.
- Intelligent Service Configuration in SuccessFactors:
Create a subscriber for Event Notification Subscription
Assign the New Hire Event to newly created Subscriber with URL and Authentication details.
- So now whenever a new employee is created in SuccessFactors the information will be Pushed to the mentioned URL and which in our case is of CPI interface
In CPI the information is passed in specific format where we have the User ID detail, Now using this user ID we fetch the required information form entity User in subsequent call to SucccessFactors
After fetching the User information, the message is transformed to Json/XML Data in the format expected by ServiceNow. With you get an eclipse plugin from where you can download XSD for any table which makes the work easier.
In ServiceNow adapter we configure the ServiceNow tenant ID, credential name, table name, operation and parameters as per requirement.
Detailed functions of parameters are available in the guide provided with ServiceNow Adapter.
For example, I created one user in SuccessFactors, and it was replicated to ServiceNow
2) Fetch the Available Asset: Once the user is created in ServiceNow the interface will go and fetch the available assets in the system using Query operation on table alm_asset in ServiceNow adapter by Rojo Consultancy:
3)Reserve and assign asset to Employee: Once the assets are identified the asset will be reserved for the User created in ServiceNow by updating the “reserved_for” field in table “alm_asset” using Update operation of ServiceNow adapter by Rojo Consultancy as shown below:
Below is the Json Input to the ServiceNow Adpater(We can also pass XML using XSD of eclipse plugin):
The asset in ServiceNow will look like this :
In the next step the Asset status is updated from “In Stock” to “In Use” and as soon as the status is updated the “Reserved for” field is updated to “Assigned to” field in ServiceNow as shown below:
To update asset in ServiceNow we will use the Update operation on “alm_asset” table in Consultancy where we will pass the asset_id in System ID which we got in the 2nd Step.
4) In the last step when the Employee leaves an organisation the Termination Event in Intelligent Services can be used to push the notification to CPI and then the interface will release the Asset for another Employee. (I have not covered this scenario but this is going to be in similar manner where we will update the alm_asset table in ServiceNow)
So, in the above scenario we efficiently integrated the Employee lifecycle with asset lifecycle in the organisation with the help of ServiceNow adapter by Rojo Consultancy which will help in automation of efficient business process in enterprise.
The Business process are normally very complex and when it comes to integration the effort which goes in for exploring and understanding the full API capabilities and connectivity requirements of a non SAP platform such as SNOW can be totally avoided with the help of ServiceNow adapter and the complete focus can be given to the business scenario and its automation by the organisation.
Nice blog Ankit. Keep it up.
I believe we can do integration with S4 HANA Asset management also using SAP CP Integration.
Thanks Ankit for the wonderful blog.
If my understanding is correct "ServiceNow adapter" from Rojo consultancy takes care of API calls between SuccessFactors and ServiceNow only. One has to develop a custom Integration flow in SAP Cloud Platform Integration for the calls between SF to ServiceNow and there is no standard Integration package from SAP. Please confirm.
Good Information Ankit,
Do we need Rojo Adapter for this connection, or a developer can build and customize for client requirement. your thoughts please.