ATM - Main Subroutines Descriptions
ATM - Main Subroutines Descriptions
ATM - Main Subroutines Descriptions
AT.CALC.AVAIL.BALANCE
This routine is used to provide the balance of each account
This routine will calculate the balances based in the locked amount and transaction amount i.e.
WORK.BAL - LOCKED.AMT - TXN.AMT
AT.FMT.TXN.AMT
This routine is attached in version of all transactions
This routine will format the amount based on the decimals in the currency table.
AT.GET.CHEQUE.ISSUE.ID
This routine forms the record id for CHEQUE.ISSUE application.
This routine validates if the account category is present in CHEQUE.TYPE. If present, based on
this Cheque ID is formed.
AT.GET.ISO.FLD.VALUE
This routine fetches the Incoming ISO Message values based on the ISO field positions sent in IN
argument. OUT argument contains the record data’s.
AT.GET.STMT.ID
This routine is used to form Record Id for ATM.STMT.REQ application
AT.ISO.CALC.CR.ACCT
This routine is used to fetch the Credit account no for ATM based transactions.
If it’s our bank transaction, based on BANK IMD and Terminal ID, credit account no will be
fetched.
If it’s another bank transaction, based on BANK IMD, Credit account no will be fetched from
ATM.BIN.ACCT Table.
If no Terminal id or ATM.BIN.ACCT is configured, then default Branch or BIN configured in
ATM.PARAMETER will be fetched.
AT.ISO.CALC.DR.ACCT
This routine is used to fetch the Debit account no for ATM based transactions.
This routine picks the debit account no for LORO transactions.
When other bank customer does a transaction, Debit account number will be picked from
ATM.BIN.ACCT based on the PAN NO.
AT.ISO.FMT.BAL.RTN
This routine is used to form Balances for all transaction.
Ledger and available balances are calculated here.
AT.ISO.MINI.FMT.RTN
This routine is used to form the MINI statement entries.
AT.ISO.REV
This routine is used in full reversal and partial reversal.
This routine will decide whether the transaction has to be reversed or initiated.
This routine checks if there is any original transaction present in ATM.TRANSACTION.
If original transaction is present then it will reverse the transaction
If original transaction is present and partial amount is sent, then it work as below:
o For FT transaction system will reverse the old transaction and will raise the new
transaction for the current partial amount
o For the AC.LOCKED.EVENTS it will amend the same old transaction itself.
AT.ISO.PRE.PROCESS.MSG
This routine will convert the ISO request message to OFS request message which will be posted
through OFS SOURCE based on the mapping file defined in the request INTRF.MAPPING record.
AT.ISO.POST.PROCESS.MSG
This routine will convert the OFS response to ISO response based on the Response mapping
configured in the INTRF.MAPPING
AT.POS.CREDIT.ACCT.NO
This routine is used to fetch the Credit account no for POS based transactions.
If it’s our bank transaction, based on BANK IMD and POS device ID, Merchant account no will be
fetched from ATM.POS.MERCHANT.ACCT.
If it’s another bank transaction, based on BANK IMD, Credit account no will be fetched from
ATM.POS.BIN.ACCT Table.
If no POS id or ATM.POS.BIN.ACCT is configured, then default POS or BIN configured in
ATM.PARAMETER will be fetched.
AT.POS.DEBIT.ACCT.NO
This routine is used to fetch the Debit account no for POS based transactions.
This routine picks the debit account no for LORO transactions.
When other bank customer does a transaction, Debit account number will be picked from
ATM.POS.BIN.ACCT based on the PAN NO.
AT.POST.CHG.TXN.RTN
This routine is used for raising separate charges.
This routine will check if the charges are configured in ATM.CHG.TABLE or ATM.SPLIT.CHG.TABLE
Based on the configurations, this routine will trigger raise a separate transaction
Once the transaction is raised, ATM.TRANSACTION table is updated automatically.
AT.REV.CHG.TXN.RTN
This routine is used to reverse charges raised.
This routine will check if the charges are raised from ATM.TRANSACTION table
If charges are raised, then these charges are reversed and ATM.TRANSACTION table is updated
with reversal status.
ATM.CHK.POST.RESTRICT
This routine is used to check if there is any posting restrict is present
This routine is attached to INTRF.MAPPING record for NON Financial transactions.
ATM.COMP.SELECT
This routine is used to get the company and financial mnemonic of the Account number coming in
ISO message
ATM.ISO.ERR.CODE.RTN
This routine is used to check the error code of the particular transaction.
This routine will be triggered in OUT.MSG routine.
This routine will check if FT is transaction is successful. If its successful, then success response code
is sent through the ISO Message
If the transaction is failed, then based on the error code mapped in ATM.RES.CODE.TABLE, the
error response code will be sent through ISO Message
ATM.TXNS.ARCHIVE.RTN
This routine is used to archive the transactions from ATM.TRANSACTION to its history table based
on the days mentioned in ATM.PARAMETER
ATM.UPD.TXN.LOG.RTN
This routine is used for logging the entries into ATM.TRANSACTION.
This routine will update the table for all financial and non-financial transactions.
CAL.COMPANY.CDE
This routine is used to trigger the company code based on the account number or terminal id sent
from ISO Message
E.ISO.ATM.BAL.ENQ.BLD.RTN
This is an Enquiry routine which generates the balance message.
E.ISO.ATM.MINI.STMT.BLD.RTN
This is an Enquiry routine which generates the Mini Statement message.
E.ISO.RET.SPF.STATUS
This enquiry routine is used for Network Messages
This routine is used to check if the SYSTEM is on online and send the success response code back
V.ACLK.CALC.TO.DATE
This routine will check the LOCK Period from ATM.PARAMETER and lock the amount for
AC.LOCKED.EVENTS
V.ACLK.REV.UPD.ATM.KEY.ID
This routine will update the ATM.TRANSACTION table, if reversal or partial reversal is successfully
raised for AC.LOCKED.EVENTS.
V.ACLK.UPD.ATM.KEY.ID
This routine will update the ATM.TRANSACTION table, if AC.LOCKED.EVENTS transaction is
successfully raised for AC.LOCKED.EVENTS.
V.ATM.CHK.POST.RESTRICT
This routine will check if there is any posting restricts
This routine has to be attached only for ATM.STMT.REQ and CHEQUE.ISSUE applications
V.ATM.GET.CHG.TYPE
This routine is used for charges.
This routine will check if charges have to be raised with the Main FT.
If so, then the charge code and charge amount will be passed with the main FT
V.BAL.DUP.CHECK
This routine is used to check if the transaction is a duplicate of the existing transaction
If so, then error will be triggered preventing rising of a new entry
V.CHG.FT.UPD.ATM.KEY.ID
This routine is attached to charges version.
This routine will update the ATM.TRANSACATION with the charges details.
V.CHQ.ATM.KEY.ID
This routine is attached to CHEQUE.ISSUE version
This routine will update the balance returned and Auth code for the cheque ISO Message
V.FT.REV.UPD.ATM.KEY.ID
This routine will update the ATM.TRANSACTION table, if reversal or partial reversal is successfully
raised for FUNDS.TRANSFER.
V.FT.UNBLK.ACCT
This routine is used to release the Locked amount.
This routine will check the ATM.DUAL.TRANSCATION table and fetch the Reversal ID.
Then based on the reversal id, ATM.TRANSCATION recorded is opened and LOCKED AMOUNT is
fetched, then the locked amount is released here
V.FT.UPD.ATM.KEY.ID
This routine is used to update the ATM.TRANSACTION table, if transaction is successfully raised for
FUNDS.TRANSFER