Skip to Content
Author's profile photo Former Member

SDK Licensing

In support we tend to get a lot of similar queries/how to questions. Every two weeks in this support blog we will highlight some of these commonly asked questions and hopefully help you understand each topic a little better.

My first topic is add-on licensing which can be confusing. In this blog I’ll go though the different SDK license types and what they are used for. I’ll also go through the process of licensing your own Add-ons.

License types for add-on development phase.


If you wish to develop an add-on that will uses the UI API only then you only need the Software Development Kit – Implementing License that is delivered free with the Professional user license. It is a concurrent license and will allow you only to change/add to/update the SAP Business One GUI. You cannot access Database tables or Business Objects in your add-on if you only have the Implementation license.

If you wish to develop an add-on that will use the DI API or a combination of the DI and UI API then you need a Software Development Kit – Development License. This is a concurrent license and it involves an additional cost and must be requested separately from the Service Market Place. This will allow you to access all Business Objects exposed in both APIs.


Options for licensing your completed add-on.

You now have some choices on how to license your own SDK add-on:

  1. Use your own License Mechanism for your add-on.
  2. Use the SDK License Mechanism available from SAP.
  3. Do not use any license mechanism – Use the Compatibility License which is the simplest option! 

1. Partners are free to develop their own license mechanism if they wish.


2. If you want to use SAP’s licensing mechanism, then you will need to utilise the AddOnIdentifier string value. This is a property of the Company(DI) and SBOGuiAPI(UI) objects in the SDK. This identifier can be generated from Administration -> License -> Add-on Identifier Generator.




Both the Implementation and the Development license are not necessary. They are available to use and I will explain what they do but its fine to use the Compatibility license in their place.


Implementation Identifier:                                                     

This identifier should be used with UI add-ons only. Once the UI add-on is developed at the partner site, an identifier must be generated at the customer network before compiling it using the customer’s SAP Business One Implementation license, insert this identifier in your code and compile the add-on. It will only work in the customer network as the identifier is network dependent. You must follow this procedure for each customer using your UI add-on.   


Development Identifier:

This identifier should be used with DI or DI/UI add-ons. The partner will generate the Development add-on Identifier and include it in their code while they are developing and testing the Add-on.                          


Solution identifier:

This is the most important identifier and the only one I would suggest you need to use if you wish to use SAP’s license mechanism.

Once the Add-on is finished you need to request a BASIS license from SAP in order to generate a Solution identifier. A BASIS license is needed for generating the add-on Identifier for the Solution identifier. You need to generate this Solution identifier if providing the add-on you developed to an end customer and wish to use SAP’s license mechanism.



1. Request the BASIS license from SAP via a customer message. Use the component SBO-SDK-AA providing the following information:

             * Your partner Number                                         
             * The full name (short description) of the solution you wish to generate    
                the license key name for.  

             * Is this a solution for a single end customer or a global available        

2. Generate the Solution Identifier once you receive the BASIS license from SAP

3. Insert the string generated into your add-on code (AddOnIdentifier property) and compile the exe file.   


Solution names with special characters (&,%,#) will cause problems in the SAP Business One system after installation of the license key for this add-on so please DO NOT use these characters on your addOn name.   


At the customer site:

Once the add-on has been installed you will need to update/request a new license file to include this add-on. This can be done through the SAP SMP ( as it is done now for the other SAP Business One licenses types. When requesting a license you will see the name of your add-on you registered in the drop down list. Once this license is requested and downloaded the end customer will be able to work with the partner Add-on. This is a named user solution so licenses will have to be allocated to designated users.  


3. If you don’t set the AddonIdentifier property in your code then you run your add-on using the Compatibility license. With the compatibility license you can work with your add-on without licensing it – so after all that maybe this is the easiest option available!


In two weeks time, we will do another blog on licensing – this time the SAP Business One License API – an external API that allows you to read information from the license service to which the application is connected. So catch you then 🙂

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Narottam Das
      Narottam Das
      This is a very good information about SDK licensing.

      But when this license gets used / absorbed at the time of development or use by the users?  Since this is concurrent license, this scenario is not very clear to us.

      Author's profile photo Former Member
      Former Member
      Blog Post Author
      Hi Narottam,

      Can you explain your question in more detail as it's not clear to me what you mean?


      Author's profile photo Narottam Das
      Narottam Das
      Lets say I have 2 profession licenses (or any other valid named user license of SAP B1) and two users have been created in SBO Company DB, they are A and B.

      Now, when A is assigned (from Admin Module -> License Admin) to one of the above mentioned professional license, then one professional license gets absorbed.

      In the same way I would like to know that when the SDK-Licenses (Concurrent Licenses)get absorbed? --- and this was my question.