Skip to Content
Product Information

SAP S/4HANA Cloud SDK Overview

SAP S/4HANA has become de-facto ERP standard with now more than 5,800 customers worldwide. It accompanies organizations across the world in their digital transformation journey that requires them to adopt best-in-class software with high agility. This is further extended by SAP Cloud Platform that gives developers the power to build and run high-quality applications that conform to the highest order of performance, security and reliability tests.

This is where the SAP S/4HANA Cloud SDK comes in. Making the application development experience delightful, the SDK provides you out-of-the-box capabilities, such as the simplified integration with SAP S/4HANA and Business Suite using the virtual data model for exposed APIs, abstractions of the underlying cloud platform implementation of SAP Cloud Platform, fault-tolerance, cache management, tutorials, project templates, and many more.

On a high level, the S/4HANA Cloud SDK consists of two technical components: SAP S/4HANA Cloud SDK libraries and the Continuous Delivery Toolkit, as depicted in the figure below.

The libraries are provided for Java and for JavaScript/TypeScript in SAP Cloud Platform. The SAP S/4HANA Cloud SDK is available for free under SAP Developer License. Java libraries can be downloaded from Maven Central. JavaScript/TypeScript libraries are available via SAP npm repository, as described in the announcement blog post for the SAP S/4HANA Cloud SDK for JavaScript.

Continuous Delivery Toolkit for projects based on the SAP S/4HANA Cloud SDK is an open-source component and is available via GitHub. Please, refer to the following blog post containing the detailed instructions on how to set up the CI/CD pipeline of the Continuous Delivery Toolkit.

The purpose of this blog post is to provide the step by step hands on guide for developers starting their work with the SAP S/4HANA Cloud SDK and the Continuous Delivery Toolkit. Below, you can find the following information and related links:

Interested to discover more? We also recommend you the following resources in addition to the tutorials and deep dives:

Tutorials (JavaScript): Get Started with the SAP S/4HANA Cloud SDK

Tutorials in developers.sap.com

Tutorials (Java): Get Started with the SAP S/4HANA Cloud SDK

Step 1 with SAP S/4HANA Cloud SDK: Set up

Step 2 with SAP S/4HANA Cloud SDK: HelloWorld on SCP Neo

Step 3 with SAP S/4HANA Cloud SDK: HelloWorld on SCP CloudFoundry

Step 4 with SAP S/4HANA Cloud SDK: Calling an OData Service

Step 5 with SAP S/4HANA Cloud SDK: Resilience with Hystrix

Step 6 with SAP S/4HANA Cloud SDK: Caching

Step 7 with SAP S/4HANA Cloud SDK: Secure your Application on SAP Cloud Platform, CloudFoundry

Step 8 with SAP S/4HANA Cloud SDK: Secure your Application on SAP Cloud Platform, Neo

Tutorials (Java): Learn Other Core Components of the SAP S/4HANA Cloud SDK

Step 9 with SAP S/4HANA Cloud SDK: Implement and Deploy a Frontend Application

Step 10 with SAP S/4HANA Cloud SDK: Virtual Data Model for OData

Step 11 with SAP S/4HANA Cloud SDK: Virtual Data Model for BAPI

Step 12 with SAP S/4HANA Cloud SDK: Logging with SAP S/4HANA Cloud SDK

Step 13 with SAP S/4HANA Cloud SDK: Automated Testing

Step 14 with SAP S/4HANA Cloud SDK: Continuous integration and delivery

Step 15 with SAP S/4HANA Cloud SDK: Static Code Checks

Step 16 with SAP S/4HANA Cloud SDK: Quality Checks

Step 17 with SAP S/4HANA Cloud SDK: Monitoring

Step 18 with SAP S/4HANA Cloud SDK: Your Multi-Tenant Application in SAP Fiori Launchpad on SAP Cloud Platform Cloud Foundry

Step 19 with SAP S/4HANA Cloud SDK: Mocking S/4HANA calls or how to develop an S/4HANA extension without an S/4HANA system

Step 20 with SAP S/4HANA Cloud SDK: Create and Deep Insert with the Virtual Data Model for OData

Step 21 with SAP S/4HANA Cloud SDK: End-To-End Tests Against Secured Applications

Step 22 with the SAP S/4HANA Cloud SDK: Extensibility, Type-safe Expand, and Dependency Injection with the Virtual Data Model for OData

Step 23 with SAP S/4HANA Cloud SDK: Performance Tests

Deep Dives (Java): Specific Technical Topics

An End-to-End Story on the Virtual Data Model using the Business Partner API

What is what? Your quick reference to Communication Management, and Identity & Access Management Artifacts in S/4HANA

Cloud Platform Abstractions in the SAP S/4HANA Cloud SDK

Continuous Delivery Pipeline for SAP S/4HANA Cloud SDK Based Projects

Executing BAPIs inside S/4HANA On-Premise from your Cloud Application

Extend your Cloud Foundry Application with Tenant-Aware Persistency

S/4HANA Connectivity – Made Simple

Leverage Principal Propagation via OAuth 2 when consuming a Business API from S/4HANA Cloud

Tenant and User Aware Microservices Communication via REST APIs

Generating Java VDM for S/4HANA Custom OData Service

Calling an OData Service from a Web IDE Project using the SAP S/4HANA Cloud SDK

Use the SAP S/4HANA Cloud SDK in the Application Programming Model for SAP Cloud Platform

Quickly build a prototype with SAP Leonardo Machine Learning Foundation, SAP API Business Hub, and SAP S/4HANA Cloud SDK

Integrate SAP Cloud Platform Blockchain using Hyperledger Fabric into a S/4HANA Cloud SDK application

Production-ready integration of SAP Leonardo Machine Learning Foundation services with an SAP S/4HANA side-by-side extension built with the SAP S/4HANA Cloud SDK

An End to End story of the integration of an OData service with SAP Conversational AI (also known as Recast AI)

Integrate SAP Cloud Platform Blockchain using MultiChain into a SAP S/4HANA Cloud SDK application

Convenient Consumption of SAP S/4HANA SOAP APIs

Experimental serverless CI/CD with SAP S/4HANA Cloud SDK Continuous Delivery Toolkit

Migrate S/4HANA SDK Based Applications from SAP Cloud Platform Neo Environment to Cloud Foundry

Consuming Messages representing Business Events from SAP S/4HANA Cloud

Access any REST service with the SAP S/4HANA Cloud SDK

Step-by-Step: Consume REST Service API with SAP S/4HANA Cloud SDK

Releases

With the SAP S/4HANA Cloud SDK, we follow the bi-weekly release strategy. We always recommend to migrate to the newer version of the SDK after its release, as each release enriches the feature set and improves the product. Below you find the links to the resources providing details on the SAP S/4HANA Cloud SDK releases:

  • Release note for the SAP S/4HANA Cloud SDK (JavaScript)
  • Release notes for the SAP S/4HANA Cloud SDK (Java): Starting from the SDK version 2.2.0, the release notes also contain links to corresponding release blogs, providing more detailed information on the main new features, as well as the information on how to migrate to new versions
  • In case you have questions to the releases, feel free to join our partner update call series where we go through the “what’s new” in the SDK and have a dedicated Q&A session
  • In case you are interested in the SDK (Java) release blogs of the older versions (before 2.2.0), here are the links, including the migration guide from the version 1.11.1 to 2.0.0:

SAP S/4HANA Cloud SDK: Version 2.1.2 is Available

SAP S/4HANA Cloud SDK: Version 2.1.0 is Available

SAP S/4HANA Cloud SDK: Version 2.0.0 is Available

Migration Guide: Moving to Version 2.0.0 of the SAP S/4HANA Cloud SDK

SAP S/4HANA Cloud SDK: Version 1.11.1 is Available

SAP S/4HANA Cloud SDK: Version 1.10.0 is Available

SAP S/4HANA Cloud SDK: Version 1.9.4 is Available

SAP S/4HANA Cloud SDK: Version 1.9.3 is Available

SAP S/4HANA Cloud SDK: Continuous Delivery Offering is Available in Version v5

SAP S/4HANA Cloud SDK: Version 1.9.2 is Available

SAP S/4HANA Cloud SDK: Version 1.8.0 is Available

SAP S/4HANA Cloud SDK: Version 1.7.1 is Available

SAP S/4HANA Cloud SDK: Version 1.6.0 is Available

SAP S/4HANA Cloud SDK: Version 1.5.0 is Available

SAP S/4HANA Cloud SDK: Version 1.4.0 is Available

13 Comments
You must be Logged on to comment or reply to a post.
  • Hi Ekaterina,

    provided tutorials show how to write very simple applications and how to call OData Services provided by S4/Hana. That’s ok, let’s say that this way we can access S4/Hana at business logic level. But what about customization of S4/Hana GUI ? And moreover, how does S4/SDK cope with Sap Web IDE ?

    Thanks in advance for your reply.

  • Hello Claudio,

    thanks for your question, you definitely raise important topics.

    The SDK provides a friendly environment for developers of SAP S/4HANA extensions on SAP Cloud Platform. Technically, it means that you have a set of libraries that can be used to connect your S/4HANA system (On Premise or Cloud Edition) from SAP Cloud Platform, retrieve the data using provided query builders and S/4HANA connectors and process the result. While you develop your application, you can extend the business logic and the data model (using SAP Cloud Platform Persistence Service). All OData services that are exposed in the SAP S/4HANA can be accessed using the SDK in the SAP Cloud Platform. By this means, we can develop extensions for the business logic, as you have correctly mentioned. Customizing of the SAP S/4HANA is indeed an interesting topic, which can be potentially addressed in the later releases. However, it is currently out of scope in the SAP S/4HANA Cloud SDK.

    SAP is also working on integration of the SDK with the SAP WebIDE by incorporating corresponding java project templates. More information and updates will follow during the general availability release.

  • Hi Ekaterina,

    Will it make sense to use this SDK for non S4H Extension scenarios (ie., for standalone reuse services)?

    Thanks & Regards,
    Anbu

    • Hi Anbu,

      the S/4HANA Cloud SDK strongly focuses on building side-by-side extensions for S/4HANA on the SAP Cloud Platform. Nevertheless, you can use certain aspects like our support for easy testing and mocking of the Cloud platform environment for standalone scenarios. Whether using the SDK for building your services makes sense strongly depends on your individual requirements.

      Regards
      Sander

  • Hello  Ekaterina,

    Does the SDK require developers to have Java background to use it?

    I’m newbie to Java application development. Do you have any resources that could explain more about the SDK?

    Thanks in advance.

    Tri

    • Hello Tri,

      current version of the SDK is aiming for Java developers of side-by-side extensions for S/4HANA on SAP Cloud Platform. We are planning to support other programming languages with the SDK in the future. Did you investigate the tutorials, linked in this blog post? The blogposts in the “Tutorials” section, would be the best starting point with the SDK from the developer perspective.

      Best regards,

      Ekaterina

  • There is a link to here from:  https://github.com/SAP/cloud-s4-sdk-examples/blob/master/README.md

    Stating as below:

    • Cost Center Manager App as explained in the tutorials

    The cost center manager app is not referenced in this page.

  • Hi Ekaterina,

     

    Are the SAP S/4 HANA business applications developed using UI5/Fiori Javascript or are they developed using Java.

     

    Thanks

    Vaibhav

  • Hi Ekaterina, thanks for maintaining this great ‘homepage’ for the S4SDK.  Will you be updating the JavaDoc link to the 2.9.0 release of the SDK?

    Is there an easy to switch versions once you are in the JavaDoc?

    Deep Dive 12 is great but it would be fantastic to have some more content around combining the Cloud APM with the S/4HANA Cloud SDK.  For example, you might talk about interpreting a $filter request for your own service, which you then apply to the S/4 service.  It took me quite a while to work this out.

    Thanks, Mike

     

     

     

    • Hi Mike, the version of the JavaDoc in the blog post is updated (thanks for noticing). At the moment, this is no easy way to switch between the versions of JavaDoc in help.sap.com, we will consider this for the future improvements.

      As mentioned in the comment to another blog post, we have some more integration topics with APM in the pipeline, so stay tuned 🙂