Wednesday, September 9, 2009

Electronic Payment Processing

Almost all Oracle Apps installations deal with Electronic Vendor Payments with Banks. In general the steps are as below --

1. Payables User/Manager creates a Payment Batch

2. Verifies all payments, removes payments that are too high or too low

3. Then payment is formatted, now at this stage, since most of the format reports are custom programs, a control could be easily set. Once the payment is formatted, the details could be sent to approver via a custom workflow. This way you have tracking of approver trails and any custom logic can be built around in the workflow.

4. Approver can review the batch contents, totals etc and then either reject or approve the payment.

5. Once it is approved by approver, the Payables Manger can confirm the batch.

6. Now comes the part where the format file is encrypted and sent to bank server.

This part could be built to have some sort of fail-safe mechanism. You can have a dedicated FTP program or mailer program whichever way your bank accepts files.

This program can take the payment batch as input and find out the formatted output for the batch. It can encrypt the file based on banks requirement, maintain a custom table where details such as who ran FTP, result of it and file names and locations for encrypted and raw file. You can also maintain login/password information for the bank servers in separate table and use this while doing FTP or mail.

You can also make this FTP program re-runnable in the sense that, you should be able to send the encrypted file for any past payment batches if needed.

There is one more important aspect. If you are using a FTP function, you can ask your bank to create a test folder and one production folder. That way you can put files from your test environment separately from production environment. For the encryption, you can also request two separate keys from the bank, one for test and one for production.

No comments: