Learn BANKING-COBOL-VARIANTS with Real Code Examples
Updated Nov 27, 2025
Code Sample Descriptions
1
COBOL + CICS Banking Transaction Module
IDENTIFICATION DIVISION.
PROGRAM-ID. WITHDRAWAL.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 ACCOUNT-ID PIC X(10).
01 AMOUNT PIC 9(9)V99.
01 BALANCE PIC 9(9)V99.
PROCEDURE DIVISION.
EXEC CICS RECEIVE INTO(ACCOUNT-ID) END-EXEC.
EXEC CICS RECEIVE INTO(AMOUNT) END-EXEC.
EXEC SQL
SELECT BALANCE INTO :BALANCE
FROM ACCOUNTS WHERE ID = :ACCOUNT-ID
END-EXEC.
IF BALANCE >= AMOUNT THEN
SUBTRACT AMOUNT FROM BALANCE
EXEC SQL UPDATE ACCOUNTS SET BALANCE = :BALANCE
WHERE ID = :ACCOUNT-ID END-EXEC
ELSE
DISPLAY "INSUFFICIENT FUNDS"
END-IF.
EXEC CICS SEND FROM(BALANCE) END-EXEC.
STOP RUN.
A COBOL program handling a simple banking withdrawal transaction via CICS.
2
Proprietary COBOL Interest Calculation Macro (Bank Extension)
PERFORM CALC-INTEREST-MODULE
USING PRINCIPAL, RATE, DAYS-IN-MONTH
RETURNING INTEREST-AMOUNT.
* Proprietary CALC-INTEREST-MODULE is vendor-supplied COBOL extension.
Banking COBOL DSL-like extension for calculating monthly interest on savings accounts.