Host to Host Integration with Bank

Pratibha Gupta
Airtel Digital
Published in
6 min readNov 23, 2023

Payment Host to Host(H2H) is the system where Business user creates a payment batch in ERP(Enterprise Resource Planning) and ERP system creates the payment file on local server, encrypt and transfer that file on to the Bank’s server, Bank’s system decrypt that file and upload the same on Bank’s portal and make available to authorizers to Authorize the file to execute the payment transactions in that particular file.

Currently at Airtel Digital, we are processing the payments manually by excel upload or transaction upload on Bank portal on BOA, we create the payment Batch basis due date after building the batch we run a report. After completion of this report we convert this file in excel and we have detail of invoices to be paid and beneficiary account detail in this file, we upload the detail on bank portal manually. After getting authorization participation done by the authorised signatories, we release the payment basis the funds availability in the account. Once the SWIFT Msg is generated, we upload the same in ERP manually.

Host to host solution was implemented for payment files processing. Host to host solution enables payment files to be processed without any manual intervention. Payment Host to Host is the system where BO user creates a payment batch in ERP and after payment batch gets processed it creates the payment file on ERP server. Payment outbound file is transferred from ERP server to DMZ(demilitarized zone) server with help of a concurrent program. For SCB, H2H utility provided by the bank is installed on DMZ server, which encrypts the payment file, and transfers that file on to the Bank’s server. For BOA, scripts were written to encrypt and transfer encrypted payment file to bank’s server. Bank’s system decrypt that file and upload the same on Bank’s portal and make available to authorisers to authorise the file to execute the payment transactions in that particular file.

Problem Statement

Being a manual activity, there are risk of human errors and incorrect payment, Cash loss to the company.

Business Benefits/Impacts

BOA and SCB are primary bank for all foreign subsidiaries — Fx payouts handling in more than 10 various tradable currencies.

Approx 3000+ invoices processed every quarter for than 50mn in equivalent dollar terms.

Reduce chances of manual errors and robust control around fraud management — Any instances of manual upload errors for Fx payout will have cash leakages for the company.

No robust recovery management in case of manual errors due to involvement of various countries and intermediary banks till beneficiary a/c. H2H will help error free transactions with NILL errors.

Seamless reverse updation in oracle for Transaction reference / UTR(Unique Transaction Reference) — Critical for record management for future regulatory audits / queries from investigating agencies / vendor dispute handling.

Systematic solution for record management for banking compliances and end to end digital record management.

Fx payouts are technically complex and systematic solution will help to bridge understanding gaps with change of resources.

Solution

As per the format agreed with the bank Payment Files will be generated in Industry standard ISO20022 (XMLv3) format in Oracle for Bank’s consumption. Encryption is done using GnuPG encryption utility which is inbuilt in Unix server and file transmission will be performed by SFTP (in case of BOA) and (in case of SCB) encryption and file transmission will be done using Bank’s H2H utility and reverse file will be decrypted by the H2H utility and file would be placed on DMZ server. Concurrent request set will be run on ERP application to move reverse file from DMZ server to ERP server and then read reverse file from ERP server and update the UTR number in the database .

Functional Flow

The Process starts with Payment Administrator

· Creating XML Publisher Format Templates — Create and register format templates needed for your payment processing.

· Formats — Define formats, link them to your XML Publisher Templates, and assign validations.

· Payment Process Profiles — Create profiles for payment processing. The profiles contain all the rules about how payments are created and disbursed.

Under Funds disbursement page, users can submit Payment Process Requests (PPR) to generate payments. There is an option to submit a single Payment Process Request or schedule Payment Process Requests.

There are four steps in the processing of a PPR.

a) Document Selection

b) Build Payments

c) Format Payments

d) Confirm Payments

Document selection and Confirm Payments are handled by Payables (AP) code while Build Payments and Format Payments are handled by Payments code.

Submitting a Single Payment Process Request

Mandatory Fields — Payment process request name, pay through date

Under Payment Attributes Tab — Payment Date, Payment Exchange rate type.

Payment Process Profile and Disbursement bank account are optional fields.

Under Processing tab, options are available to stop the process after document selection / payment and how to create Payment Instruction.

Under Validation Failure Results Tab, choose option that best suits the business needs regarding how to handle validation failure on document(s) or payment (s).

Click on Submit to submit the Payment process request and respective payment flow to Bank through H2H Integration.

For SCB

Architecture

XSLT(Extensible Stylesheet Language Transformations) was used to generate the file in ISO20022 (XMLv3) format. XSLT transforms the XML(Extensible Markup Language) generated by the Payment Process Request and generate the output in ISO20022 (XMLv3) format. Once the payment file generated on ERP server, Concurrent Program will run and pick file from ERP server and place on the path where SCB H2H utility is installed on DMZ server.

H2H utility provided by the bank has the functionality of encrypting and transmitting the file to bank server. Payment file gets processed by the bank and bank provides reverse feed with UTR (Unique Transaction Reference) number against each transaction in the payment file. UTR number gets mapped against the transaction in the ERP application which helps in reconciliation. Bank places the reverse feed file on a path in H2H utility (provided by the bank).

Scheduled request set will be run. This request set has two programs, which gets fired as a child request.

a) FTP Program: This program will pull reverse feed file from DMZ server to ERP server and will read the file from ERP server and dump data into a staging table

b) Reverse feed UTR Update Program : This program will insert data into another custom table only if there is any record which is not there in this table and was there in staging table along with UTR number.

Through this solution we have automated the payment file processing and have also achieved reconciliation facility.

For BOA

Architecture

Functional setups are done to create a Payment Process Profile, which will be selected when the business runs the PPR. XSLT format file will be attached to the payment format of this payment process profile will generate the output in ISO xml pain.001.001.03 format.

Outbound file will be generated with the prefix and file path which we have mentioned in the Payment Process Profile.

Once the payment outbound file is generated on ERP server then business will run the Request Set.

This request set will fire two child programs

a) FTP Program: This program will transfer payment outbound file from ERP server to DMZ server and archive payment outbound file on ERP server

b) Payment Outbound Bank FTP Program: This program will encrypt and transmit the file to bank server and remove the file from DMZ server.

Encryption here is done via GnuPG utility, which is inbuilt functionality, provided in Unix server.

Public-Private key pairs are generated and shared with the bank for decrypting the file. Public key shared by Bank is imported and used for encryption.

Shell script is written to encrypt and transmit the file to bank server. Transmission of file is happening via SFTP

Conclusion

H2H integration with bank makes the payment secure and they get processed without manual intervention and manual errors.

Thanks for Reading!

We hope this blog post has shed light on Host to host integration and its application. Incorporating this integration in your projects can undoubtedly make the payment processing seamless and secure.

--

--