Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
Showing results for 
Search instead for 
Did you mean: 
Product and Topic Expert
Product and Topic Expert


In this blog, I would show how you can use the extensibility option provided in solution order to copy data from solution order to the custom references field in follow-up subscriptions.  

Other blogs in the same series are: 

What is solution order? 

The solution order management provided by SAP S/4HANA Cloud is designed to provide innovative business offerings by combining sales, related services, service contracts, and subscriptions as a solution bundle. This provides flexibility to the customers by enabling them to adapt to new business models and helps in creating a competitive edge to boost their business. This also supports the transformation journey from a pure product business to higher-margin services and subscription business. 

Solution order management provides an end-to-end process of sales and fulfilment of the solution bundle. The fulfilment of the solution order is done by various follow-up business documents and the solution order provides the latest view of their current state. Solution order reference is used for the billing and finance process.  

Within SAP S/4HANA we have process extensibility, but for the subscription billing integration we need to use the BAdI to hand over custom fields. Solution order has provided BAdI CRMS4_SOLO_ORC_SB_SUBSC_MODIFY which is called during the orchestration or simulation of subscription billing items in solution order.  

When to use this BAdI 

As different applications are integrated into a composite environment, there is a need to pass data using APIs among applications according to your requirement. For example, SAP Subscription Billing is hosted on BTP, and solution order is on the SAP S/4HANA Public Cloud. This BAdI helps to copy data from solution order to the custom references field in follow-up subscriptions. Hence you can use this BAdI  to modify the subscription data as per your requirements. 

How to achieve Extensibility 

While integrating solution order with SAP Subscription Billing, you can use this BAdI to change the bill split element, custom references, and technical resources at the subscription header and item level. 

Follow the steps below for integration 

   1. Adding custom field in the subscription billing tenant

  • Log in to the SAP Subscription Billing tenant and create custom fields using the steps mentioned below. 

  • Open the Business Configuration app and select Custom References.  

  • Click the Create button.  

 A custom field for subscription header is created as shown below. 

 Similarly, a custom field is created for a subscription item as shown below. 

 Once the custom reference field is added, it can be added in the subscriptions from the Custom   References view using the add button.  

 2.Refer to the Adding custom field in the solution order

 3.BAdI Implementation

The BAdI CRMS4_SOLO_ORC_SB_SUBSC_MODIFY is available in solution order. 

To create the BAdI implementation follow the steps below: 

Log on to the SAP Fiori launchpad with the role SAP_BR_ADMINISTRATOR and launch the Custom  Logic App.    


  • Click the Add button to create an implementation of the BAdI by selecting a suitable business context (for example, Service Header or Service Item) as shown below.  

  • Select the BAdI and enter an implementation description. 

Note: A default implementation is provided as shown below. You can also add custom logic as per your requirement.  

The screenshot below explains how to fill the data using the BAdI for the subscription billing bill split element field. 


 In the following screenshot, you can see how to fill the data using the BAdI for the subscription item custom references field. 

The following screenshot shows how to copy the technical resource details passed from the solution order to SAP Subscription Billing. 


To check the integration from solution order to subscription follow the steps below: 

  • Open the solution order that you have created. 

  • Add the data in the custom field for subscription billing.  

  • Enter the product ID and release the item as shown below. 

 Once the subscription is created, navigate to the corresponding subscription in the subscription   billing system. You can see the data from the solution order in the custom references tab as shown   below. 

Navigate to the subscription item to check if the data is being copied from the solution order to the SAP Subscription Billing item custom references field. 

The below screenshot displays if the data is being copied from the solution order to the technical resources and bill split element fields in the SAP Subscription Billing item and header level. 


Note: To create a BAdI implementation, you can use the Custom Logic app. When you use the Custom Logic app, the following applies: 

  • The app provides a special ABAP language version ABAP for Key Users. This makes the implementation of the BAdIs for business experts and implementation consultants easier. 

  • The app ensures that you can use only released interfaces. 



In this blog, you have learnt how and when to use a cloud BAdI for extensibility and how data mapping can be done to support extensibility in solution order orchestration. 



Solution order orchestration 

Extensibility in SAP S/4 HANA Cloud 

Abap for key users 

SAP Subscription Billing