Skip to main content

Core Banking System (CBS)

Overviewโ€‹

The Core Banking System (CBS) is the central software platform that manages a bank's primary banking operations โ€” account management, transaction processing, product configuration, and customer records. Every payment, deposit, withdrawal, and account event ultimately flows through or is recorded in the core banking system.

Think of it as the single source of truth for:

  • What accounts exist
  • What balances they hold
  • What transactions have been posted
  • What products are configured

What CBS Doesโ€‹

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ CORE BANKING SYSTEM โ”‚
โ”‚ โ”‚
Channels โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”œโ”€โ”€ Mobile App โ”‚ โ”‚ Account โ”‚ โ”‚ Ledger / โ”‚ โ”‚
โ”œโ”€โ”€ Internet โ”‚ โ”‚ Mgmt โ”‚ โ”‚ Accounting โ”‚ โ”‚
โ”œโ”€โ”€ Branch โ”‚ โ”‚ Module โ”‚ โ”‚ Engine โ”‚ โ”‚
โ”œโ”€โ”€ ATM โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€ API โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ โ”‚ Product โ”‚ โ”‚ Customer / โ”‚ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–บโ”‚ โ”‚ Config โ”‚ โ”‚ CIF Module โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
Payments โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”œโ”€โ”€ NPP โ”‚ โ”‚ Interest โ”‚ โ”‚ Reporting & โ”‚ โ”‚
โ”œโ”€โ”€ BECS โ”‚ โ”‚ & Fees โ”‚ โ”‚ Statements โ”‚ โ”‚
โ”œโ”€โ”€ SWIFT โ”€โ”€โ”€โ”€โ–บโ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€ RTGS โ”‚ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Core Modulesโ€‹

1. Account Managementโ€‹

  • Create, modify, and close accounts
  • Manage account status (Active / Dormant / Closed / Blocked)
  • Maintain account linkages (offset accounts, joint accounts)
  • Account-level flags (direct debit allowed, international payments, etc.)

2. Customer Information File (CIF)โ€‹

  • Central customer record (KYC details)
  • Links all accounts to a customer
  • Risk classification, PEP flags, relationship history
  • One customer โ†’ many accounts
CIF (Customer Master)
โ”œโ”€โ”€ CustomerID: CUST-001
โ”œโ”€โ”€ Name: Jane Smith
โ”œโ”€โ”€ DOB: 1985-06-15
โ”œโ”€โ”€ KYC Status: VERIFIED
โ”œโ”€โ”€ PEP Flag: false
โ”œโ”€โ”€ Risk Rating: LOW
โ””โ”€โ”€ Accounts:
โ”œโ”€โ”€ Account 001 โ€” Transaction (AUD)
โ”œโ”€โ”€ Account 002 โ€” Savings (AUD)
โ””โ”€โ”€ Account 003 โ€” Term Deposit (AUD)

3. General Ledger / Accounting Engineโ€‹

  • Double-entry bookkeeping
  • Posts debits and credits for every event
  • Maintains real-time account balances
  • Generates trial balances and financial reports

4. Product Factory / Configurationโ€‹

  • Defines product parameters (interest rates, fees, limits)
  • Attaches rules to account types
  • Supports product versioning and promotional rates

5. Interest & Fees Engineโ€‹

  • Calculates interest daily (accrual basis)
  • Credits/debits interest on schedule
  • Applies transaction fees, maintenance fees, dishonour fees

6. Statement & Reportingโ€‹

  • Generates end-of-day camt.053 statements
  • Regulatory reports (APRA, AUSTRAC)
  • Customer statements

Common CBS Vendors (Market)โ€‹

VendorProductNotes
TemenosTransact (T24)Very widely used globally
InfosysFinacleMajor in Asia-Pacific
OracleFLEXCUBELarge enterprise banks
FISProfile, BancWareUS/AU market
Thought MachineVaultCloud-native; newer generation
MambuMambuCloud-native; SaaS
TCSBaNCSLarge APAC banks
In-houseCustomSome major banks built their own

CBS and the Payment Systemโ€‹

The CBS is not the payment engine itself โ€” it is the system of record that payment engines connect to:

Payment Gateway / Processor
โ”œโ”€โ”€ Receives pacs.008
โ”œโ”€โ”€ Validates payment
โ”œโ”€โ”€ Screens for sanctions/fraud
โ”œโ”€โ”€ Calls CBS API: "Debit account X by $Y" โ—„โ”€โ”€ CBS interaction
โ”‚ "Credit account Z by $Y" โ—„โ”€โ”€ CBS interaction
โ””โ”€โ”€ Submits to NPP/RTGS/BECS

CBS:
โ”œโ”€โ”€ Checks account status
โ”œโ”€โ”€ Checks available balance
โ”œโ”€โ”€ Posts the debit/credit entry
โ”œโ”€โ”€ Updates balance
โ””โ”€โ”€ Returns transaction reference

Account Balance โ€” How CBS Tracks Itโ€‹

Every transaction creates a ledger entry in CBS. Balance is derived from all entries:

// Simplified โ€” real CBS uses optimised running balance
BigDecimal balance = ledgerEntries.stream()
.map(e -> e.isCrdt()
? e.getAmount()
: e.getAmount().negate())
.reduce(BigDecimal.ZERO, BigDecimal::add);

Balance Types in CBSโ€‹

BalanceFormulaPurpose
Ledger BalanceSum of all booked entriesBank's books
Available BalanceLedger โˆ’ HoldsWhat customer can spend
Cleared BalanceBooked entries past clearing windowNo reversal risk
Shadow/Memo BalancePre-booked/authorised amountReal-time view

CBS APIs for Payment Systemsโ€‹

Modern CBS platforms expose APIs that payment processors call:

// Typical CBS API contract for payments
interface CoreBankingService {

// Check available balance before payment
BalanceResponse getAvailableBalance(String accountId);

// Reserve funds (debit hold)
HoldResponse createHold(String accountId, BigDecimal amount, String reference);

// Convert hold to final debit
PostingResponse finaliseDebit(String holdId, String txReference);

// Release a hold (payment cancelled)
void releaseHold(String holdId);

// Direct credit (no prior hold needed for inbound)
PostingResponse postCredit(String accountId, BigDecimal amount,
String txReference, String narrative);

// Account validation
AccountValidationResponse validateAccount(String bsb, String accountNumber);

// Account details lookup
AccountDetails getAccountDetails(String accountId);
}

CBS in a Microservices Architectureโ€‹

Modern payment platforms integrate CBS as a downstream service:

API Gateway
โ”‚
โ–ผ
Payment Orchestrator (Spring Boot)
โ”‚
โ”œโ”€โ”€โ–บ Sanctions Service
โ”œโ”€โ”€โ–บ Fraud Service
โ”œโ”€โ”€โ–บ CBS Adapter (Spring Boot) โ”€โ”€โ–บ Core Banking System (T24/Finacle)
โ”œโ”€โ”€โ–บ Network Gateway (NPP/SWIFT)
โ””โ”€โ”€โ–บ Notification Service

The CBS Adapter abstracts CBS-specific APIs, so the payment orchestrator is not coupled to the vendor's proprietary interface.


CBS Availability and Resilienceโ€‹

CBS is the most critical system in a bank. Availability requirements:

RequirementTarget
Availability99.99% (< 1 hour downtime/year)
Planned maintenanceOff-peak (Sunday 2โ€“4 AM)
Disaster recoveryHot standby (< 5 min RTO for payments)
Read replicasYes โ€” balance enquiries hit replica; postings hit primary
Transaction rateMajor banks: thousands of TPS

Interview Questions (Senior Level)โ€‹

  1. How do you isolate core banking availability risk from channel and payment-service failures?
  2. What migration strategy minimizes risk when modernizing legacy CBS integrations?
  3. How do you enforce ledger integrity under high-concurrency posting workloads?
  4. What recovery controls are mandatory for CBS incident scenarios?

Short answer guide:

  • Use resilient adapters, queues, and controlled degradation around CBS dependencies.
  • Migrate via strangler patterns with parallel validation and reconciliation.
  • Enforce idempotent posting keys and strict accounting invariants.
  • Define RTO/RPO drills, replay safety, and reconciliation checkpoints.
Interview Focus

Position CBS as ledger authority with strict posting correctness and reconciliation guarantees.

Interview Trap

Treating CBS as a generic downstream service without accounting invariants.