Building end to end RosettaNet application using logic app
Published Oct 26 2021 12:52 AM 2,205 Views

In this article I will talk about the RosettaNet integration in logic app by going through all actions offered by logic App.

please read the official documentation first and also you may refer the RosettaNet spec for more details.



Host ( Initiator) and Guest (Responder) Sequence Diagram 

RosettaNet Double Action.png





The artifacts in this article are divided into two groups based on the Role  :

For the Host (Initiator) side I have three logic apps running on Host integration account (the shared template is combining all of the logic app in one )

  • Initiator - Sender
  • Initiator - Receiver
    • Acknowledgment processor
    • Response processor  

For Guest (Responder) I have one logic app running on Guest integration account 

  • Responder 
    • Message receiver and Ack and response then wait for host to Ack

Host Initiator - Sender

The initiator flow is described below 










Steps description for the Initiator



Initialize varaiable that has the unique message ID(PIP instant identifier )

Here i am using the current time ticks function 


The encode action , I am picking the Host and the Gust based on the configured agreement

The message type is action (which mean that it is not a response to anything )


The URL of the partner http endpoint can be obtained from the agreement 


The Host will wait for the (Ack and response ) form the Sender to be processed 


process the responser ack


process the responser response and send ack to the responser 


the wait action will be complated 

Initiator Receiver: Message receiver and Ack and response






Steps description for the Responder 



Decode the incoming message that received from the Host 

Once the message received the message can be sent to backend system or store on Blob etc.


note that all the decode action in the responder side needs to be responder 



The receiver will generate an acknowledgment message 


Send the Ack message by getting the http endpoint from the agreement 


The receiver will encode a response message 

Note that the message type is Response, and the Role is Responder  


Send the Response message by getting the http endpoint from the agreement 


Send the response to the http request 


start waiting for acknowledgment for the Response


Using Azure resource explorer 


You may need to log to Azure resource explorer  Resource Explorer ( to track the Session 

It is extremely useful to see if the message get acked or response

As in the below picture and based on the lines 8 and 9 this message is not Acked and did not received any response  




To check the session information, you can go to the below URL


How to use the solution 

Click on the button below to deploy the Logic app to your subscription  


Sample logic app templates in GitHub

Deploy to Azure: 





Version history
Last update:
‎May 17 2022 05:25 AM
Updated by: