Skip to content
PYD ENTERPRISES

Banking & financial services

Know every interest, fee and lending rule in your core before you replace it.

PYD ENTERPRISES parses deposit, lending and payments code on IBM z/OS and extracts accrual bases, fee waivers, rate tiers, underwriting decisions and ACH return handling into DMN 1.5 tables your analysts can sign off line by line.

pyd rules --domain deposits,lending

DDA + LOANS
Interest accrual rulesactual/360, actual/365, 30/360
214
Fee and waiver rulesmaintenance, overdraft, NSF, wire
1,086
Rate tier tablesloaded from RATE.MASTER (VSAM KSDS)
37
Underwriting decisions
412
ACH posting and return rules
268

paths flagged for review: 118 · dead paragraphs: 9.6%

Core banking logic, extracted

Five places core banking rules hide.

Switch between routines to see the COBOL, the decision table PYD ENTERPRISES extracts from it and the findings it raises for your reviewers.

DPACCR01.cblDPACCR01.cbl:2214-2231
1 2100-ACCRUE-INTEREST.
2 IF DA-ACCT-CLOSED OR DA-ACCT-DORMANT
3 GO TO 2100-EXIT
4 END-IF
5 IF DA-BASIS-360
6 MOVE 360 TO WS-DAY-BASIS
7 ELSE
8 MOVE 365 TO WS-DAY-BASIS
9 END-IF
10 COMPUTE WS-DAILY-ACCR ROUNDED =
11 DA-COLL-BAL * WS-APPLIED-RATE / WS-DAY-BASIS
12 ADD WS-DAILY-ACCR TO DA-ACCR-MTD.
13 2100-EXIT.
14 EXIT.
DMN 1.5 · Daily accrual basishit policy UNIQUE
#accountStatusdayBasisCodedayBasisdailyAccrual
1"CLOSED", "DORMANT"--0
2not("CLOSED", "DORMANT")"A"360collectedBalance * appliedRate / 360
3not("CLOSED", "DORMANT")not("A")365collectedBalance * appliedRate / 365

source: DPACCR01.cbl:2214-2231

  • resolvedDA-BASIS-360 is an 88-level on DA-DAY-BASIS-CD VALUE 'A' (copybook DPACCT, line 41)
  • resolvedROUNDED: nearest, away from zero, to WS-DAILY-ACCR PIC S9(9)V9(5) COMP-3 (8 bytes)
  • reviewAccrual uses collected balance, not ledger balance: confirm with deposit operations

Core replacement de-risking

Vendor core, custom core or a rebuild: the rules come first.

Most banks we work with are moving between core platforms rather than writing a core from nothing. PYD ENTERPRISES is neutral about the destination. Customers migrate from or to core platforms such as FIS, Fiserv and Jack Henry, from heavily customized in-house cores, and from vendor cores that were modified locally for decades until upgrades stopped being possible. PYD ENTERPRISES has no partnership with any core vendor; it reads your code and tells you what it does.

Three questions decide whether a core conversion goes well, and all three are answered in code, not in product manuals:

  • Which rules are actually live? Interest and fee logic accumulates through decades of rate-change and product projects. Dead code analysis shows which of the fourteen accrual paragraphs can still execute.
  • Where do local modifications differ from the vendor baseline? For a modified vendor core, the rule inventory of your source can be compared with the vendor's documented behavior to isolate what your bank added.
  • What must the new core reproduce to the cent? Accrual basis, rounding scale and order, tier boundaries and waiver precedence become calculation specs and equivalence fixtures the conversion team runs against the new platform.

The public cost of getting a migration wrong is high. The UK regulators fined TSB a combined £48.65M in December 2022 over its 2018 platform migration. Specifications with source references do not remove migration risk, but they move the discovery of edge cases to before cutover, when they are cheap.

combined FCA and PRA fine on TSB over its 2018 core platform migration
£48.65M
combined FCA and PRA fine on TSB over its 2018 core platform migration
UK FCA and PRA final notices, 20 December 2022
lines of COBOL estimated in daily production use worldwide
800B+
lines of COBOL estimated in daily production use worldwide
Vanson Bourne survey for Micro Focus, February 2022 (estimate range 775 to 850 billion)
of surveyed COBOL code runs on IBM z/OS
43%
of surveyed COBOL code runs on IBM z/OS
Vanson Bourne survey for Micro Focus, February 2022

How a bank program runs

Three weeks from PDS export to signed-off rules.

The sequence a Tier 2 bank followed on 2.5 million lines of COBOL and CICS.

  1. 01Install inside the bankSigned images on your Kubernetes cluster or a single 32-vCPU node, egress denied, offline license key. Security reviews the network policy before source is mounted.Day 1 to 2
  2. 02Ingest from Endevor and DB2PDS exports of COBOL, copybooks, BMS mapsets, JCL and PROCs, plus DB2 DDL. Parsing 2.5M lines takes a few hours.Day 3
  3. 03Extract and classifyBusiness rules separated from plumbing (file status checks, abend handling, audit logging). Rate and fee tables mapped to the datasets that hold them.Day 4 to 5
  4. 04Review with deposit and lending SMEsAnalysts confirm each DMN row beside its COBOL, rename rules in business language and close the review list.Week 2 to 3
  5. 05Hand off to the conversion teamDMN for decision services, OpenAPI 3.1 from CICS COMMAREAs, lineage for data conversion and equivalence fixtures for parallel run.Week 3
“We extracted thirty-five years of undocumented lending calculation rules from 1.5 million lines of COBOL, and not one byte left our data center.”
Chief Enterprise Architect, Tier 2 US commercial bank
TIER 2 US COMMERCIAL BANKA Tier 2 bank mapped 2.5 million lines of COBOL and CICS in 18 days instead of 8 months.18 daysfrom first PDS export to signed-off rule inventory$1,065,000discovery budget not spent ($1,150,000 planned minus $85,000)Read the story

FAQ

Questions from bank architects.

We are replacing our core with a vendor platform. Why extract rules from the old one?

Because the vendor platform is configured, not coded, and configuration needs a complete list of what the old core did. The rule inventory becomes the gap analysis: which accrual bases, fee waivers and return-handling rules the new core covers in parameters, which need product configuration or extension, and which can be retired.

Does any source code or customer data leave the bank?

No. PYD ENTERPRISES installs inside your data center or private VPC and runs with egress denied. It reads source code and DDL, not production account data. Generated test fixtures are synthesized from branch conditions, not copied from customer records.

How are rates and fee amounts held in VSAM or DB2 tables handled?

Values read from files and tables at run time are exported as data inputs with the dataset or table they come from, not as constants. You supply an extract of the current values if you want them populated in the decision tables.

Can regulators or internal audit use the output?

The output is evidence for your own validation: every DMN row links to the file and line range it came from, and every reviewer decision is recorded. It does not replace your model risk or audit process; it gives that process something checkable to work from.

How does PYD ENTERPRISES handle COMP-3 and rounding in interest calculations?

The COBOL front end computes byte-accurate layouts for every packed-decimal field and records the precision of every intermediate and receiving field, plus whether ROUNDED is specified. Calculation specs state the rounding mode and scale at each step so the target implementation can match it exactly.

Go deeper

Scan one core banking system in your own data center.

A Discovery Scan covers one system up to 500,000 LOC for $25,000. Or start a 14-day trial on up to 100,000 lines.