Supply Chain Management Blogs by SAP
Expand your SAP SCM knowledge and stay informed about supply chain management technology and solutions with blog posts by SAP. Follow and stay connected.
cancel
Showing results for 
Search instead for 
Did you mean: 
Saif
Product and Topic Expert
Product and Topic Expert
2,733

Getting started with Carrier API Integration in 3 simple steps


The SAP Business Network Freight Collaboration solution connects shippers and their logistics partners on a secure network for optimized collaboration and insights, integrated tightly with core business processes for efficiency and resilience. More details can be found here.

Carrier Integration involves 3 key entities/systems.

  • S/4HANA Transportation Management system - owned by Shipper.

  • SAP Business Network for Logistics (BN4L) - Both Shipper and Carrier are part of this.

  • Carrier / Network Partner's system - owned by Carriers or Network partners.



As shown above, there are 2 integration patterns:

Outbound from TM & SAP BN4L: Whenever there is a change or a business event in TM, it triggers the call to SAP BN4L which then routes it to a specific carrier webhook based on the configuration.

Inbound into TM & SAP BN4L: This is triggered by Carriers or Network Partners when they call SAP BN4L's APIs.

Note: SAP BN4L also supports EDI in addition to API and also a Web portal Interface.

In this post, we will focus on the first pattern of receiving orders from a Shipper.

1. Preparing webhook - by Carrier


As seen above, in order for carriers to receive the business events/changes, a webhook is required to be hosted by carriers and configured in BN4L. There are many platforms such as pipedream, webhook.site, Postman, Make, SAP's Integration Suite or even a simple nodejs application hosting a webhook on Business Technology platform (BTP).

While there are a number of ways listed below to create a webhook, the intent of this blog is to give a quick turnaround for carriers to receive examples and messages from SAP BN4L to build the integration.

For simplicity's sake, I use an iPaas provider pipedream. This is easy and convenient to create a webhook to test the end-end integration.


 

2. Configure System Connections - by Carrier


Pre-requisite:

  • SAP BN4L provides a portal for carriers, which carriers receive access to once ordered via sapstore. The process is explained here.

  • Carrier user will need the necessary authorization to be able to access and manage connections in the portal.

  • Make sure you also enable Inbound communication.

  • Make sure you have accepted the invitation from the Shipper.



Access the System Connections app and configure the webhook that you created in the previous step for the scenario that you wish to test. In the case below, I chose the "Freight Subcontracting All" option as an example.



3. Configure Partner Connections - by Shipper


Once you are done with Step 2, contact your shipper to configure the connection to your configured webhook.

Pre-requisite:

Shipper accesses the "Configure Partner Connections" app and establishes a connection with the scenario endpoint configured by carrier in their tenant in step 2 and also activates the connection.


 

Note: You can repeat steps 2 and 3 for other scenarios and operations.

That's it..!! Ask your Shipper to send some test orders and voilà! you will receive the orders to the configured webhook.


You can also access the "Manage Integration Logs" application to monitor the integration and also access the payload.



Conclusion


While the above may not be a productive setup, it allows the participants of the network(Shippers-Carriers/ Network Partners) to quickly understand the behavior of the system and enables you to develop and validate against production-like orders from your shippers in a very short time.

For further questions and feedback related to the blog, please check the Q&A area and feel free to post your questions in the link with the tag SAP Business Network for Logistics.

 
1 Comment
vishalakshikm
Advisor
Advisor
This is super useful !!! thanks so much for taking the time to do this 🙂