Skip to Content

Integration considerations regarding SOAP connections to the ERP system

To PI or not to PI

I tend to end up in some interesting discussion, with other consultants, customers and my self. The last part is often a big problem.

I was working with a client, where we had to do and migration. From SAP business connector to SAP Process Integration. One thing that I realized this process is that all the development that we do, have to be changed at some point.

We do not know how long time is the key is going to support its appeal process integration, if there is going to be an upgrade path all the time. Or if our strategy is to move away from the PI system at some point. Therefore, whenever we develop something, it always have to be replaced later. It can be costly to do and migration from one platform to another. The people that did the original of development is no longer in the organization or may not know the new tool.

When we are developing SOA applications we all played saying that it is a great thing to have products developed using the SOA thought. SOA creates an infrastructure that allows a lot of reuse. But what happens down the line when no one knows what we have reusing. Who know what is going on 10 years from now.

One thing that I was considering was direct connections to SAP ERP. If for instance want to connect at portal to the ERP system. Then we have two options for doing this.

  • We can connect directly to the SAP system from the portal. The benefit of this is less latency, less development, and an easy-to-understand architecture. The downside it is difficult to know what is going on, who is calling which services. The security is not optimal since it allow direct access to the ERP system from the DMZ.
  • We can also connect through SAP PI, and expose the services using the ESR. By doing this we have a better way to secure who gets access to the SAP system, we can close firewall from the Internet. We have more flexibility of what we want to expose. And we have the whole SOA concepts that we can use. The downside is we have to have this system running all the time, and we have to upgraded whenever it’s needed. You are not going to change the SAP ERP system to ORACLE, so you just can change the connections with little effort.

I recorded video around some of the concepts, and thought that I had on direct connections vs thru SAP PI.

I think one important aspect is if we are dealing with web services, we should at least publish these in the ESR. So no matter what we want do we can always see where the services this exposed. We may not get the locking from the PI if we dealing with direct communication but we will get some more flexibility in other respects.

I still believe that using SAP process integration is still good use in some scenarios, way want to expose which services to a portal or a DMZ. We just have to consider some of the downsides of having an integration broker in in between.

Do you have any recommendations regarding connecting direct to ERP system or thru the PI system.

You must be Logged on to comment or reply to a post.
  • Thanks for sharing Daniel, Its a sensible topic to think about.

    Its very tough to decide on directly connecting ESR or thr PI.

    its between dev,maintenace cost and security. Both cant be put on risk.

    taking an example, in my previous prj for which I worked. couple of soap to proxy scenarios were implemented. during development of the interface lots of changes happened at that time we have to change in  ESR then proxy generation and abap code change, FEH code change uff. for even a simple change, need to modify at three/four places and testing. really its lots of effort complete.

    on the other hand without pi, exposing the service is a matter of security.

    finally little biased towards biased security, integration should happen via PI only.


    avinash M

  • Hello, nice blog Daniel.

    I will try to explain my experience about this.

    In my previous project I was working with a company which have developed some web services in their ECC system. They have developed some RFC and they have published them as web services.

    In the past they were using this webservices internally, but now, they want to publish them to be consumed from external companies. So they decided to go with PI. Using PI have for them this adventages:

    – They can add some security to the WebServices published. They will conect PI with their LDAP system to validate users and roles.

    – Security of the ECC system. Clients will access to PI, not to the ECC.

    – Flexibility: now they have several webservices. They think that in the future they will have more and more, and with data distributed in several systems. So probably have to build some BPMs. PI will make this easier.

    In terms of architecture, I suggested them to implement an SOAP–>PI–>RFC integration scenarios, Insted of SOAP–>PI–>SOAP, and not reuse old WebServices in ECC system. We consider that with SOAP in ECC we add an innecesary overload in the communication. (They already have the RFC)

    Kind regards.


    • Hi Antonio

      You are right there many not be any reason to expose the RFC as websercies on teh ECC system. It it probably easier just to use the PI to handle the RFC. In this case.

      And the security part is really big part of it. It makes it a lot easier to make sure they dont have too much access externally.


  • Hi Daniel

    your post is absolutely clear, thanks a lot for this!

    I am trying to draft the ws architecture with PI for the company I’m working and I was wondering if it’s a problem for you to post (or send privately) the infrastructure that you implemented.

    Let me know

    Thank you in advance


  • Hi Daniel,

    Its a good discussion to start with as every PI consultant would have definitely come across this point definitely once. However in case we are talking about reusability of the WS using PI what approach do you recommend. I feel that if we have a Dual stack system it can be WS on ECC end and SOAP on the receiver third party end and for dual stack SOAP/XI on ECC and SOAP on Receiver end. Your suggestions on this



    • Hi

      I dont like the dual stack. If possible i would go for ICO objects and the XISoap to the ERP system. I think there are better performance/reliability with the XI protocol compared to the SOAP protocol.

      Especialy for async messages.