Skip to Content
Author's profile photo Aashish Sinha

E-Payment: A Customized Solution other than SAP Integration Package SWIFT – Part -2 – Merge, Encrypt and Send to Bank

This is a continuation of Blog

E-Payment: A Customized Solution other than SAP Integration Package SWIFT – Part -1


Payment run will generate files in ECC and those files will be picked up by SAP PI. SAP PI will merge incoming files into one and then it will encrypt the file. Later, PI will fetch encrypted file to send it to bank network. Whole process will be something like below diagram. 


Scenario 1:  Merging Payment Files

E-Banking interface is triggered when user will execute payments with Payment Method E-Electronic transfer after payment run using transaction F110. Once the all approval is done, system will generate the payment files on ECC utility server and these files will be in ISO200022 xml format.


We can check the generated files using AL11 Tcode or we can login into the OS.



Now after generating payment files, our first requirement is to merge them into one and then encrypt the merged file. SAP PI receiver file adapter will post it to the target directory where encrypted file will be moved to Bank network for processing.

Merging is done in SAP PI using BPM.


SAP PI Developments



 Import the XSD of source document, generated by payment run, into SAP PI using External Definitions. We can generate XSD from existing XML using different XML editors.



In our case, source structure and target structure is same. So, we are using the same structure to generate the output file.

Now, Create Service interface for Source and Target like below diagrams.



Now, Create 2 more Service Interface of category Abstract-Asynchronous, which will be used in BPM.

Create message mapping for merging payment files.


Create Operation Mapping


Create BPM. This bpm is similar to collect pattern standard provided by SAP (BpmPatternCollectTime).

Main logic behind this BPM is to pick up the files and wait for the next files for 1 minute and append it in the loop using container operation (Append). Transform step will use Operations mapping to send the collected message to next step.



Integration Directory

Create one Sender CC and Receiver CC and One Sender and Receiver agreement for both communication channels.

Import Integration Process and Create 2 receiver determination and 2 Interface determinations.

In receiver file communication channel, we will use OS command after processing to encrypt merged file.


Scenario 2: Push Encrypted files to Bank


SAP PI Sender file adapter will pick encrypted file and using HTTP receiver adapter, post it to Bank Network for processing of Payment Files.  

For this scenario, we are not creating any ESR objects. We just created the dummy configuration object to send encrypted file to bank network.

Integration Directory


Create 2 Communication channel one as File Sender adapter and other as HTTP receiver adapter. Based on these 2 communication channel, create sender and receiver agreement. Create one Receiver determination and Interface determination.

Http Receiver Communication Channel


For posting encrypted files to Bank network, we need to create one HTTP destination of Type “G”. Target host will contain the URL and path prefix should contain service need to be executed. This parameter will be given by bank.



Next continuation of this weblog will contain the fetching encrypted Acknowledgement and Response files from bank network and pushing those files to SAP BCM.


This blog is followed by

E-Payment: A Customized Solution other than SAP Integration Package SWIFT – Part -3 – Receive From bank, Push to SAP BCM

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Raj Thukiwakam
      Raj Thukiwakam

      Good Job Ashish, well documented and very good info on SWIFT .

      Author's profile photo Former Member
      Former Member

      Much needed post at the time of need.

      Can u please elaborate more on merging and encryption? I am stuck here.

      I am getting binary file from BCM and after merging files using BCM. How are you encrypting it.

      I need to do binary to base 64 encoding over here. Please suggest.

      Also elaborate on decrypting the acknowledgment received.

      Author's profile photo Praveen Tirumareddy
      Praveen Tirumareddy

      great blog Ashish,

      I have a query. I have similar interface and I need src file name to be part of header.

      could you please help on this.

      thank and regards,

      Praveen T