Skip to Content
Product Information

Integration Framework for SAP Business One (B1if) – Central Blog (Updated May 2020)

In my role in the Global Roll-out team, it is my passion to provide you with well-prepared information. The purpose of this blog is to serve as a central point of entry through which we would like to provide you with information and various aspects of the integration framework for SAP Business One.

I would like to start with the topic about integration in general:

The meaning and importance of integration or the question, why integration is needed?

In a daily business life, the subject of integration plays an increasingly important role. Integration affects many areas of a company, such as business cooperation, integration of employees from other countries, connecting business units, and a very important aspect is the integration of different software systems and components that best enhance your company processes.

In this blog, we will specifically look at the topic of integrating software systems and components to show how they can be connected for data exchange. Especially in times of digitalization, companies are increasingly facing the challenge of how to connect different software components, such as different systems, mobile applications, integration of sensors, and other technologies to become a more automated, intelligent and connected company.

Which kind of interfaces are available in SAP Business One for data exchange?

SAP Business One is a very open and flexible ERP system that offers various possibilities of data exchange across system boundaries.

For data exchange in SAP Business One, these two interfaces, so called Application Programming Interfaces (APIs), are present in the system:

  • SAP HANA Service Layer API Technology
    The next generation API for the digial business allowing you to create lightweight mobile apps consuming SAP Business One data and services using open core protocols such as HTTP and ODATA.
    This technology is only available for SAP Business One, version for SAP HANA.
  • SAP Business One DI API
    The DI API contains objects and methods that enable developers to read, write, update, and remove data objects on database level.
    This DI API is available for SAP Business One on MS SQL, too.

Both APIs, the SAP HANA Service Layer and the DI API can be used for data exchange in both versions of the integration framework, version 1 and version 2.

Get more general information about SAP Business One via this link.

Data Exchange and Connection of External System in General

The integration framework for SAP Business One is a Web browser-based solution to design integration flows for exchanging data between different systems.

In contrast to the classic integration of software components through in-house development and direct use of the existing API’s, various components / services already exist in the integration framework that simplify integration tasks, such as integration services, different adapters, load balancing, security functions, message flow control and monitoring, error handling, easy adjustment when APIs change, a light-weight business process management and more.

The integration framework for SAP Business One is an integral part of SAP Business One and can be used in every customer installation whatever the installation is, on premise or in the cloud.

What is the integration framework in general and why to use it?

The integration framework provides an infrastructure that allows for the communication and interaction between software applications such as SAP Business One, other SAP solutions as well as non-SAP systems; whether they are cloud applications or on-premise applications. In contrast to developing against the classical application programming interfaces (APIs) for data exchange, development within the integration framework only takes place in dedicated spaces, called atoms. There are various types of atoms to support the integration design which will be described in another blog.

The purpose of the integration framework is to provide data mapping and transformed information to the software applications involved. This means that definitions are provided for sender- and receiver systems, the mapping of data and their values, which data is to be transformed and exchanged, the specified time intervals or prompts for when the data exchange should take place, and much more.

All definitions for the data exchange is saved in the integration framework in an object or form known as a scenario.

Knowledge of IT, XML/XSLT, JavaScript as well as basic SQL, and a general understanding of the data structure of SAP Business One are sufficient.

The integration framework provides the possibility to create custom-specific scenarios. However, standard ready-to-run scenarios are already available, which can be changed or adapted to suit the specific customer needs. Some of these standard scenarios extend the various standard processes in SAP Business One, such as Request for Quotation, connection to SAP Hybris or SAP Ariba. Other scenarios cover legal requirements like electronic invoices for different localizations, and so on.

(NEW in May 2020)
The integration platform (also called B1iP) is the basis of the integration framework for SAP Business One. Get more information in the collection of technical articles in this Blog
Technical Articles About the Integration Platform (B1iP)

Please consider the licensing model according to the SAP Business One licensing terms.

What is the benefit of the integration framework?

The usage of the integration framework has several advantages. I would like to explain some of them by using examples:

  • Fast adaptation in case of changes
    Let’s assume that a scenario is created for data exchange and synchronization with other systems. It could be possible that changes will happen, e.g. new fields are available and should be considered. These new fields could be incorporated into the mapping, or deleted if required.In addition, SAP Business One release changes generally do not have an impact on the already created integration scenarios.
  • Release independent usage
    A single scenario can be created to exchange and synchronize data across several SAP Business One company databases. This single scenario can be used for the different SAP Business One release versions.
    Let’s assume in a new release new fields are available. The existing scenario can be updated using these new fields. The same scenario can still be used for the older release versions despite not having the fields available.Furthermore, the different release versions of SAP Business One are available for selection and usage in the integration framework.
  • Reuse of scenarios
    Another benefit of the integration framework is the reuse of existing components.
    Let’s assume a scenario to exchange and synchronize data between two databases is created. It is not necessary to create a new scenario when adding a new database with similar integration requirements. The existing scenario can be enhanced or used as a template scenario.

Which versions / programming models are available for the integration framework?

Integration Framework Version 1
The current standard version of the integration framework for SAP Business One is version 1.x, also called programming model 1. This is the standard version for SAP Business One installations, that typically runs on-premise at the customer side.

Information about the functionality of this model and its components, such as System Landscape Directory (SLD), Inbound, Processing, Outbound, Monitoring, and so on, you will find in this Blog about the
Integration Framework Version 1 – Concept of Scenario Development

Integration Framework Version 2

A new, alternative approach for the creation of integration scenarios has been added with SAP Business One 9.3 PL04. It’s called the integration framework 2.0 for SAP Business One and provides possibilities to run integration content for multiple customers in the cloud.

The model resides on top of the integration platform, offers an Integrated Development Environment (IDE) for scenario development, and uses the platform capabilities with a lower-level approach than the integration framework 1.x model. The integration framework 2.0 runs directly on the integration platform. To access to the integration framework 2.0 calling a different URL is required.

Both integration framework versions 1.x and 2.0 are independent and integration packages can run simultaneously without runtime conflicts. Both integration framework versions share the same SLD.

See a highlevel example on the Integration Framework for SAP Business One 2.0 in the
Factory Automation Demo clip.

Get more information on version 2 in this Blog
Integration Framework Version 2 – Essentials

Solutions Based on the Integration Framework for SAP Business One

Besides the above mentioned standard scenarios there are additional solutions based on the integration framework, which are enhancing the scope of SAP Business One:

Intercompany Integration Solution for SAP Business One
The integration between associated companies running SAP Business One enables businesses to manage transactions across multiple SAP Business One systems by automatic replication of master data, business transactions, journal entries among companies within the group and by providing intercompany reports as well as collaboration features.
Get more information in this Central Blog and in the SAP Help Portal

Customer Checkout
SAP Customer Checkout can be used as a stand-alone solution for point of sales requirements in a fan shop or retail store. In combination with SAP Business One, the sales relevant information such as prices, item stock levels, currencies and more is managed in SAP Business One. That information can be sent via the integration package to the SAP Customer Checkout solution and displayed there to handle POS related processes and fulfill payment means like cash, standard EC and credit cards and vouchers. The relevant invoice data is sent to SAP Business One for further processing in the ERP system.
Get more information about the POS System

SAP Business One Integration for SAP NetWeaver
Subsidiary integration with headquarters is the solution used to integrate SAP Business One running in subsidiaries with the SAP Business Suite and SAP Business Warehouse in the headquarters, or into SAP Business One used as a central system in the headquarters.
Get more information in the Overview Presentation and in the SAP Help Portal

Business Process Management

The Business Process Management (BPM) is part of the integration framework and the purpose is to design, model, and automatize business processes.

Business Process Management orchestrates different integration scenarios by adding automated tasks or human actions. For example, a process needs to wait until certain information is provided or after a defined timeframe ends.

The Business Process Management is available for both integration models, version 1.x and 2.0.

See an example on the Business Process Management usage in the Cold Storage Demo clip.


Happy integrating!

Miriam Rieger
(Special thanks to Krisztian Papai, Annemarie Kiefer, and Justin McGuire for their valuable input and documents.)


Related Links

openSAP course: In Action – Integration Framework for SAP Business One
SAP Help Portal: Integration Framework for SAP Business One
YouTube Playlist: SAP Business One Integration
YouTube Playlist: Integration Framework – Development Examples (new in May 2019)
SAP Note 2700275 – Java SE Technologies in SAP Products

Document: Calling B1 (SAP Business One) Object (new in Jan. 2019)
Document: Calling the Service Layer Object
Document: Configure Connectivity to SAP Business One Service Layer
Document: Company SLD Configuration
Document: DIProxy Configuration
Clip:           Define Multiple Proxy Groups
Document: Event Sender Setup
Document: Log Maintenance in Integration Framework (new in Jan. 2019)
Document: Setup Secured Connectivity to SAP Business One Mobile App
Document: Timer-Based Inbound Adapter (new in Jan. 2019)
Document: Web Service Call Inbound Adapter (new in Jan. 2019)

Related Blogs

Integration Framework Version 1 – Concept of Scenario Development
Integration Framework Version 2 – Essentials
Additional Components in the Integration Framework for SAP Business One


You must be Logged on to comment or reply to a post.
  • Hello Miriam!

    Thanks for this nice write-up about B1iF. I have been wanting to look at further documentation for B1iF version 2.0. Can you provide additional links specific to getting started on Version 2?

    Thanks in advance!


  • Hi Miriam,


    I need an information regarding integration or API's available or used between SQL server and SAP Business one.


    Can you please advise/help on this!




    • Hi Rohini,
      it looks that your question is related to the extensibility of SAP Business One itself and the DI API.
      You will find more information on the SAP Help Portal under SAP Business One and the SAP Business One 9.3 SDK Help Center (access required).

      If you have further questions please post a new question in the SAP Community under the tag "SAP Business One Extensibility".

      Thank you and best regards

  • Hello Miriam,

    well done!! Thank you for your valuable contribution. I've worked with version 1 of B1iF for the last 5 years, and always got difficult to find good stuffs about B1iF. Now I'm following you !!
    I'm very interested in version 2.0. But at first glance about the wsdl generation on WSAR adapter, I got a little surprised. Do we have to create them in hand? Please tell me it's a mistake....




    • Hi Annemarie,

      Just wondering if support for wsdl generation has been completed and if there is any documentation beyond the WSAR adapter documentation available guiding one through the process of generating a wsdl file in B1iF 2.0?




  • Hi Miriam

    1.x and 2.0 share the same SLD. I'm wondering if they share also the same SLD Entry. I have a SAP ECC connection and the new scenarios I would like to do on the V2.0, but it looks like if it triggers either the steps in 1.x or 2.0. It this correct or can I somehow configure it different?

    Best regards,


  • Hi Damian,

    yes, it‘s not possible to run 1.x and 2.0 R/3 inbound scenarios against the same R/3 system.

    The reason is that there is only one RFC server on B1i side.

    You could develop a small scenario step in 1.x, subscribed to the required IDOC, which is just putting the incoming IDOC into a queue which will trigger your 2.0 scenario step.

    Develop you new step in 2.0, inbound is internal queue, give a name for the queue, open Deployment Panel, activate the step, open Runtime Artefacts, IPO, check the name of the queue/stream that you use in your 1.x step.

    best regards - Heinz

  • Hi Miriam and others,


    You know, We can set up the integration between Subsidiary(B1) and Headquarter(ECC) via ALE/IDoc (corresponded to the RFCA/RFCP  configurations in the SLD), I am not sure if this interface technology can also be used for SAP S/4 HANA? Is there something needs to do with oDATA or HANA Cloud Integration for the integration between B1 and S/4 HANA? 


    BR / Jim

  • Hi Jin,

    S/4 HANA OP (on-premise) supports the same RFC interfaces that are used by the subsidiary integration solution to connect to R/3 4.6c, R/3 4.7 and ECC.

    S/4 HANA Cloud has HTTP based interfaces.
    The SAP out-of-the box solution does not support these interfaces yet. Of course you can use the inbuilt HTTP adapter to connect by your own (or modify the copied SAP package) scenarios,


    best regards

  • Hi Miriam

    We would like to monitor a couple core elements of the Integration Framework (version 1) in an external monitoring system (, for example, the queue.

    But it seems that the B1i doesn't allow external monitoring. Do we miss something?

    Best Regards



  • Hi Pascal,

    you can open the url/link of the Integration Framework and also a concrete menu also from other browsers in your network but first you need to change a parameter in the file “xcellerator.cfg”. Open this file in an text editor and change the value “false” (by default) to “true”


    After changing it you also need to restart the windows service “SAP Business One Integration Service” to make this change active.

    Hope this helps!

    Regards, Nicolas




  • Hi Miriam,


    Thanks for this blog.

    We have to do a large integration for a customer between SAP Business One on HANA with ECC.

    The number of transactions is going to be in the region of 5,000 per day. We are contemplating using B1iF 2.0 for the same. Could you please send us some server sizing guide for a standalone B1iF Server.



    • Hi Tusher,

      the server sizing guide is coming together with SAP Business One.  The number of transaction you are mentioning can easily handled with a standard server and default tomcat settings. But to gain better performance you can assign  more memory (4GB or more) to tomcat .


      Regards, Nicolas

  • Hi MIriam!


    After executing the test scenario, B1if responds with the next exception: java.sql.BatchUpdateException: Violation of PRIMARY KEY constraint ‘PK_DBQSTREAMS’. Cannot insert duplicate key in object ‘dbo.DBQSTREAMS’.

    Could you please tell me how can I debug this issue?

    • Hi Miguel,

      this sounds like a very special error message. You find more information about debugging in the help menu of the Integration Framework.

      Regards, Nicolas

  • Hi Miriam!

    Thanks for sharing the information with us! Is really usefull your blog.

    But now I have a doubt. Is it possible to integrate SAP Business One with SAP Extended Warehouse Management Descentralized?

    Till now I haven´t find any information related to this integration.

    Thanks in advaced


    Luis Gerardo.

  • Hi Luis,


    the Integration Framework as part of SAP Business One can be used to integrate further SAP and external solutions. There are no out-of-the box scenarios to integrate B1 and SAP Extended Warehouse Management. This can be built using the Integration Framework.

    Regards, Nicolas

  • We need to  install a global client, on 3 main installations - One in the US, on In EU and One in Asia - Each installation will handle multiple companies in each region - 30 companies in total... The client is looking for functions such as 'stock consolidation' from one region or from the 3 regions in 'real time'... SAP B1 ICI will be deployed for this client, but instead of 'global' queries to get the stock information from the different regions, we tend to implement a B1if custom scenario.. Do you have any return on experience using B1f on multiple SAP B1 companies in a global/distributed Network ?

    Thanks for your feedback.

    Best regards - Thierry

  • Hi Thierry,

    the Integration Framework (aka B1iF)  is heavily used in the area of subsidiary/branch etc. integration also in a global distributed networks. Every implementation has also customer specific challenges which can be  solved by building your own integration scenarios. This is also the case in respect of 'stock consolidation" which the one or the other customer/partner probably might have designed already.

    I hope this helps you!

    Regards, Nicolas


  • Hi Miriam,

    Thanks for this blog post! I’m actually trying to search different documentation regarding the integration options between B1 and SAP Ariba Buying. With SAP ERPs (ECC / S4) the integration of transactional (ie POs,etc) and master data is very straight forward with CIG.

    However with SAP B1, I’m not sure of the options we have to integrate both transactional and master data for Ariba Buying. The few docs I found mention the integration of RFQs to Ariba, but nothing "out of the box" for POs / Buying integratoin.

    Could you perhaps share some insights on what is possible in the P2O scenario? Can the B1iF be used for this?

    Much appreciated!

  • Hi Adi,

    for the integration of SAP Business One with SAP Ariba the Integration Framework (aka B1iF) offers scenario packages to support buyers and suppliers. Both come as templates because every customer has different requirements which can be adjusted.

    In the packages mainly the standard transactional processes are available such as sending an purchase order (buyer) or receiving an order request (supplier) and more.

    Regards, Nicolas

  • Hello friends,

    I need to connect B1iF (netweaver) to S4HANA. How do I configure SLD in B1iF? Is there a SAP note? Now my B1iF points to Sap ECC and it works fine.

    Thanks to all for the possible answers.

    Regards, Pasquale

  • Hello Pasquale,

    please check the Configuration/Administration guide as part of the product "Integration Framework for SME" (separate download is required).

    In the section 'Setting Up the System Landscape' you get all necessary information on how to configure the SLD.

    Regards, Nicolas

  • ​Hi Nicolas, Miriam,

    Thank you for your valuable information regarding Integration Framework.

    It is easy to find B1IF good training material related to calling SAP Business One objects and inbound HTTP CALL. However, I cannot find an example/tutorial related to 'outbound HTTP CALL'. Where can I find it please?

    Thank you, Regards, Claudio

  • Hi Claudio,

    when you go to "Integration Framework 2.0 - Essentials" you can find a document named "Example about sending attachments". This example uses HTTA as a receiver system to hand over a multipart message. Hope this helps.

    Regards, Nicolas

  • Hi Nicolas, Miriam,

    There is a way to auto export package scenario periodically?

    Can I schedule auto export scenarios?

    Can I implement a scenario that automatically exports other scenarios?



  • Hi Pasquale,

    unfortunately there is no existing API calling option - please have a look to the online help for"Calling Options for the API Services".

    But for sure you can design an integration scenario which will store the relevant files from the bizstore to your FTP or local directory. The scenario could run periodically,

    You also could use an external tool which connects via webdav to the BizStore of the Integration Framework and downloads the relevant files.

    Regards, Nicolas

  • Hi Nicolas, Miriam,

    I'm working on B1iF 1.0 and with interal queue.

    I have a scenario that creates 10 packets which it puts in a interal queue, for example: "my_queue" with this order pck1, pck2 ... pck10.

    Each item in "my_queue" contains the data for an "insert into" inside second scenario.

    Sure that the first pck1 is read first?
    Sure that the first pck10 is read last?

    Is the logical handling of queued items FIFO?
    Looking forward to your reply, thank you very much and good work

  • Hi Pasquale,

    technically yes, what also depends on the scenario(s) who are consuming these queues. In case of parallel processing/consuming this scenario step this also matters. Please pay attention that sequential = true which is part of the scenario step design.

    Regards, Nicolas

    • Hi Pasquale,

      One way would be to use the Xcellerator Internal Document "dbqstatus". You will find the documentation in B1i Control Center / Development / XCL Reference.

      Here is an example:

      <xsl:variable name="DBQStatus" select="document('/')"/>
      <xsl:copy-of select="$DBQStatus"/>

      The result would look like this:

      <dbqueue xmlns="" xmlns:xsi="" xsi:schemaLocation=" ../../" schemaversion="1.0" level="streams" queues="1" streams="1" messages="1">
        <queue name="TestQ" streams="1" messages="1">
          <stream name="TestStream" messages="1"/>

      Another way would be to check the content of DBQSTREAMS table of B1i database. But take care not to cause any database locks on this highly frequented used table while reading it! 😉

      Best regards,