Skip to Content

How to use Receiver Rule in PI 7.1

How to use Receiver Rule in PI7.1


Suppose scenario is File to IDOC. PI will receive all customer details through file and PI will send this to IDOC to different system. All customers with Country US should go to system A and all customers with Country India should go to system B and so on, so here we need determine receiver business system on value of field Country..

 How we can use Receiver Rule in above scenario..

Receiver Rule step by step

Create Data type “CustomerDetails” for File sender


  Create Message type ”MTCustomerDetails”


Create Context Object: “Country”

To create Context Object go to Create ObjectàInterface ObjectsàSelect Context Object and click ok create object provide name “Country” and reference type as “string”

Now create outbound service interface as following

Click on Context object in service interface to assign context object to Field from service interface.

Assign “Country” Context object in front of field “Country”  as shown below you can select Context object by taking search help here..


 Now create your Mapping and other objects..

ID side configuration:

Inside Configuration scenario create Receiver rule object as following

To create Receiver rule object






And now provide conditions to this same as xpath condition as following


And then select the receiver system for this condition.

As in our case if Country= India then we need to send message to SystemB as following

And so on add as many conditions as you want

Now here you can add as many conditions as you want…and can assign respected Business system.

Now after this create Receiver determination as following

Now configure your remaining object like Interface determination, sender agreement , and receiver agreement

Advantages of Receiver Rule over normal Condition based routing is as following

  • Working of Receiver Rule is same as working of Condition based receiver determination the only but the difference is in case of Receiver Rule we need not have to configure these conditions rules for each and every receiver determination for every interface. Instead we will configure this at separate Receiver Rule object and which we can reuse in different scenarios.
  • So it will be easy to maintain and support in future. In future if you want to change the condition just change it at one place and it will reflect in all places wherever this Receiver Rule object is used.
You must be Logged on to comment or reply to a post.
  • Nice blog.
    Better to mention why and when we need to use the feature.

    I share my experience that I used this once since my scenario has split multi-mapping, each message will go dynamically determined group of receivers. I found in this case, Receiver Rule is very nice feature to use.