Skip to Content
Product Information
Author's profile photo Dobrin Tsvetkov

Extending SAP SuccessFactors, SAP S/4HANA Cloud and SAP Marketing Cloud with a Trial Account in SAP Business Technology Platform

Hello and welcome to my blog post. In this article I will share some cool new SAP BTP functionality available for you when extending SAP solutions with automated configurations.

Have you ever heard of the extension capabilities of SAP BTP and wondered whether you could try it out for your own SAP SuccessFactors, SAP S/4HANA Cloud or SAP Marketing Cloud system? Well look no further!

In this blog, I will show you how you can use the trial offering of SAP BTP to extend your SAP solution. For our demonstration, I will use an SAP SuccessFactors system. So let’s prepare:

  • Make sure you have a trial account in SAP BTP. If you do not have one, you can head over to our SAP BTP Trial Page to start your own trial experience.
  • You will also need an SAP SuccessFactors system

Now that all the prerequisites are met, you can start with the configuration.

Register a new system

  1. Access your Trial account, and in the cockpit, navigate to the Systems page under the System Landscape category. Then click the Register System button.
  2. In the Register System dialog box, enter a name for the system, and then select its type. In addition to the familiar system type options, SAP SuccessFactors, SAP S/4HANA Cloud and SAP Marketing Cloud system types are now also available on trial. For this demonstration, let’s select SAP SuccessFactors.
    sf-system-type
  3. Click Register.
    token-generated
    A new row will appear with a token that you can use to complete your system registration.
  4. Copy the token and go to the Provisioning screen of your SAP SuccessFactors system, and from there navigate to the Extension Management Configuration page.

  5. Enter the token, click Add and your system registration should be completed shortly.
    integration-starting

Back in the cockpit, you can now see that your system is in status Registered.
system-registered

Now the system is registered – that is, you have connected your trial account to your SAP SuccessFactors system. But we are not done yet – you need to configure the entitlements to make the SAP SuccessFactors HXM Suite OData APIs accessible in the trial subaccount. So let’s continue:

Configure entitlements

  1. In the cockpit, navigate to the Entity Assignment page under the Entitlements category.
  2. Select the trial subaccount and click Configure Entitlements.
    entitlements
  3. In the window that opens search for SAP SuccessFactors Extensibility.
  4. To the right, you should be able to see a drop-down with the names of all the systems of type SAP SuccessFactors that you have registered. Select the relevant one, and then select the api-access plan checkbox.sf-entitlement-api-access
  5. Click the Add 1 service plan button and then save your changes.

We are almost ready. You just need to create a service instance of the SAP SuccessFactors Extensibility service and thus allow applications running on SAP BTP to consume the SAP SuccessFactors HXM Suite OData APIs.

Create a service instance

  1. Navigate to the automatically created space in the subaccount and open the Service Marketplace page under the Services category.
  2. Search for SAP SuccessFactors Extensibility, and click Create.
    marketplace-sf-extensibility
  3. In the creation wizard, enter a name for your new service instance and click Create.
    service-instance-creation-wizard

Shortly, you should be able to see your new service instance in status Created on the Instances page, under the Services category.
instance-created

If you now navigate to your subaccount and open the Destinations page under the Connectivity category, you will be able to see that a destination of type OAuth2SAMLBearerAssertion with the same name as the service instance has been created with all the details needed for the communication with your SAP SuccessFactors system.
destination-created

Next steps – how to use this service instance

  1. For the OAuth2SAMLBearerAssertion flow to work, you will need to configure single-sign on between the subaccount in SAP BTP and SAP SuccessFactors. See this documentation
  2. Optionally, bind the new service instance to your deployed application.
  3. Consume the destination from your application using the Destination service

“I have made a mistake in my setup! I need to clean up the registered system.”

Maybe you have mistakenly integrated your productive SAP SuccessFactors system instead of your test system? And now you want to clean this up and reconfigure everything with the correct system?

No problem! We now offer the functionality for you to deregister a system.

In the cockpit, go back to the Systems page, and in the Actions column click the thrash bin button to deregister the system.
cannot-deregister-yet

Oh no! We still have configurations that are using this system. We will need to clean those up too before we can continue.

  1. First delete the previously created service instance.
    delete-service-instace
  2. Then remove the Entity Assignment of type SAP SuccessFactors Extensibility that uses the system we want to delete as a resource provider.
    remove-entitlements

Now let us try to delete the System again. This time we get a confirmation window. Just click Deregister, and your system’s status should change to Deregistering.
deregister-confirmation
deregistering-system

Shortly, the deregistration will finish, and the system will be removed from the list.

Conclusion

In this short demonstration, we managed to register our SAP SuccessFactors system in our trial account in SAP BTP. Then we created a destination which we could use through an application deployed in our account to call SAP SuccessFactors HXM Suite OData APIs using the OAuth2SAMLBearerAssertion flow.

And finally, we saw how we could deregister the system.

The steps covered the configuration for extending SAP SuccessFactors but the process is very similar for SAP S/4HANA Cloud and SAP Marketing Cloud, so go ahead and try that as well.

More Resources

For more information about trial accounts in SAP BTP, see Trial Accounts

Check also the official documentation for extending SAP solutions:

Assigned tags

      5 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Denys van Kempen
      Denys van Kempen

      Thanks Dobrin!

      Good to hear self-service deregistration is added to the platform.

      ==

      For those interested in a video tutorial series on the topic, see

      For those interested about de-registration versus un-registration, see

      Author's profile photo Piotr Tesny
      Piotr Tesny

      Hello Dobrin, Great blog! Thank you!

      FYI: I had written recently a series of blogs dedicated to the OAuth2SAMLBearerAssertion flow with SuccessFactors

      Your readers may find it interesting to find out what happens under the bonnet when it comes to consuming SFFS ODATA services via SAP BTP Destination service with the OAuth2SAMLBearerAssertion flow.

      thanks; Piotr

      Author's profile photo Stig Praefcke
      Stig Praefcke

      Hi Dobrin and Dennis,

      I have a scenario where SuccessFactors should call an OData API in S/4HANA On-Premise.

      Can we connect S/4HANA to SuccessFactors using Cloud Connector, or do we need to go via BTP?

      If latter, we will register SuccessFactors in BTP as described in this blog, and also setup Cloud Connector between S/4HANA and the BTP subaccount.

      Can we now call the S/4HANA OData URL from SuccessFactors using the S/4HANA virtual host/port configured in the Cloud Connector? Please advise.

      Thanks Stig

       

      Author's profile photo Dobrin Tsvetkov
      Dobrin Tsvetkov
      Blog Post Author

      Hello Stig,

      I am not very familiar with the Cloud Connector flows so I am not the best expert to advise you here. However, I did ask around and what I gather is that you cannot use Cloud Connector to directly connect SuccessFactors to S/4HANA. To achieve the scenario you have described, you will need to go through an application on BTP.

      Also keep in mind that this blog describes how to register SuccessFactors in BTP to then call SuccessFactors APIs from the BTP application. It sounds to me like you will need to achieve the reverse scenario - calling BTP from SuccessFactors which is out of the scope of this blog.

      Best regards,
      Dobrin

      Author's profile photo Piotr Tesny
      Piotr Tesny

      Hello Stig, Hello Dobrin,

      I think there are two viable options:

      1. If your S/4HANA On-Premise were exposed to the public internet via SAP Gateway or via VPN then you would be able to use the "native" destination service in SFSF out-of-the-box. 
      2. You could have a digital twin on BTP. Then you could leverage the SAP Cloud Connector to call into the  S/4HANA OData APIs without the need of exposing S/4HANA OP to the public internet. There is a great blog that precisely is showing this option in great details: [SAP Business Technology Platform on Alibaba Cloud series] Use destination in SAP Business Technology Platform on Alibaba Cloud

      On a side note I have been publishing quite a lot on this matter, namely these two blogs might help you decide what you need to do:

      a. Blueprinting LOB extensions with SAP BTP services and API Management: https://blogs.sap.com/2021/06/17/blueprinting-lob-extensions-with-sap-btp-services-and-api-management/

      b. ABAP acting as a Resource Server. App2App integration with OAuth2SAML2BearerAssertion flow: https://blogs.sap.com/2021/05/25/abap-acting-as-a-resource-server.-app2app-integration-with-oauth2saml2bearerassertion-flow./

      which is a sort of SAML2/SOAUTH2/SU01/PFCG ABAP OAuth communication primer but is dedicated to calling into S/4HANA OData APIs from anywhere.

      I hope that helps; best regards; Piotr

      PS. you may want to look-up the entire line-up of the SFSF-related blogs that I published recently. Maybe sth else is going to catch your eye: https://blogs.sap.com/tag/quovadis-sfsf/