Microservice Internal Views
Per-service breakdown of controllers, services, repositories, Kafka topics, and Redis keys. These reflect the actual package structure in cbms-ai-microservies/.
Customer Service :8082
Controllers Services Repositories Kafka & Redis
Controller
Endpoints
Description
CustomerController
POST, GET, PUT /api/v1/customers
Individual customer CRUD
CorporateCustomerController
POST, GET, PUT /api/v1/customers/corporate
Corporate customer management
CustomerIdController
POST /api/v1/customers/check-id, PUT /api/v1/customers/{custId}/change-id
ID operations
DeathMarkingController
POST /api/v1/customers/{custId}/death-marking
Deceased marking
CustomerSecurityController
GET, PUT /api/v1/customers/{custId}/security
Security and watchlist
BlockListController
POST, DELETE /api/v1/customers/{custId}/block
Block list management
CustomerNomineeController
POST, GET /api/v1/customers/{custId}/nominees
Nominee management
Service Class
Responsibility
CustomerService
Create / update / retrieve customer master
CustomerValidationService
PAN / Aadhaar format, age check, duplicate detection
CustomerSearchService
Multi-criteria search with pagination
DeathMarkingService
Status transition to DECEASED, nominee unlock
BlockListService
Watchlist / blacklist management
CustomerEventPublisher
Publishes customer-created, customer-updated to Kafka
Repository
Entity
Table
CustomerRepository
CustomerMaster
customer_master
CustomerKycRepository
CustomerKyc
customer_kyc
CustomerAddressRepository
CustomerAddress
customer_address
CustomerContactRepository
CustomerContact
customer_contact
CustomerNomineeRepository
CustomerNominee
customer_nominee
CustomerSecurityRepository
CustomerSecurity
customer_security
CustomerBlockListRepository
CustomerBlockList
customer_block_list
DeathMarkingRepository
CustomerDeathMarking
customer_death_marking
Kafka topics published:
Topic
Trigger
customer-created
New customer saved
customer-updated
Customer profile updated
customer-deceased
Death marking applied
Redis keys:
Key Pattern
TTL
Content
customer:{custId}
600s
Full customer detail response
customer:search:{hashOfParams}
120s
Search result page
Deposit Service :8081
Controllers Services Repositories Kafka & Redis
Controller
Endpoints
Description
TermDepositController
POST, GET, PUT /api/v1/deposits/term-deposits
Term deposit CRUD
DepositAuthorizeController
POST /{depositNumber}/authorize
Authorization workflow
DepositClosingController
POST /{depositNumber}/close
Closure processing
DepositRenewalController
POST /{depositNumber}/renew
Renewal processing
DepositJointHolderController
POST, GET /{depositNumber}/joint-holders
Joint holder management
DepositNomineeController
POST, GET /{depositNumber}/nominees
Nominee management
TDSController
POST /calculate-tds
TDS computation
Service Class
Responsibility
TermDepositService
Core create/update/retrieve with product and customer validation
DepositAuthorizeService
Authorizer role check, transaction posting via ms-transaction
DepositClosingService
Accrued interest from ms-periodic-activity, penalty, payout
DepositRenewalService
New deposit creation, sub-account link
TDSCalculationService
TDS rate, exemption limit, deduction amount
DepositNumberGenerator
Generates TD-{branch}-{date}-{seq}
DepositEventPublisher
Publishes deposit-created, deposit-closed, deposit-renewed
Repository
Entity
Table
TermDepositRepository
TermDeposit
term_deposit
DepositAuthorizeRepository
DepositAuthorize
deposit_authorize
DepositClosingRepository
DepositClosing
deposit_closing
DepositJointHolderRepository
DepositJointHolder
deposit_joint_holder
DepositNomineeRepository
DepositNominee
deposit_nominee
DepositSubAcinfoRepository
DepositSubAcinfo
deposit_sub_acinfo
Kafka topics published:
Topic
Trigger
deposit-created
New term deposit booked
deposit-authorized
Deposit authorized
deposit-closed
Deposit closed (maturity or premature)
deposit-renewed
Deposit renewed
Feign clients (outgoing):
Client
Service
Usage
CustomerServiceClient
ms-customer :8082
Customer validation
ProductServiceClient
ms-product :8083
Scheme and rate lookup
PeriodicActivityServiceClient
ms-periodic-activity :8087
Accrued interest
TransactionServiceClient
ms-transaction :8085
Transaction posting
Product Service :8083
Controllers Services Repositories
Controller
Endpoints
Description
DepositSchemeController
POST, GET, PUT /api/v1/products/deposit-scheme
Deposit scheme CRUD
DepositRateSlabController
POST, GET /{schemeCode}/rate-slabs
Rate slab management
DepositRenewalParamsController
POST, GET /{schemeCode}/renewal-params
Renewal params
DepositACHeadController
POST, GET /{schemeCode}/ac-head
GL account linkage
LoanProductController
POST, GET, PUT /api/v1/products/loan-product
Loan product CRUD
LoanClassificationController
POST, GET /{productCode}/npa-classification
NPA rules
LoanSubsidyController
POST, GET /{productCode}/subsidy
Subsidy config
GroupLoanController
POST, GET /api/v1/products/group-loan
Group loan products
Service Class
Responsibility
DepositSchemeService
Scheme validation, rate slab overlap check, GL linkage via Feign
LoanProductService
Loan product CRUD, NPA and subsidy management
RateSlabService
Slab non-overlap enforcement, effective date management
Repository
Entity
Table
DepositSchemeRepository
DepositScheme
deposit_scheme
DepositRateSlabRepository
DepositRateSlab
deposit_rate_slab
DepositRenewalParamsRepository
DepositRenewalParams
deposit_renewal_params
DepositACHeadRepository
DepositACHead
deposit_ac_head
LoanProductRepository
LoanProduct
loan_product
LoanNPAClassificationRepository
LoanNpaClassification
loan_npa_classification
LoanSubsidyRepository
LoanSubsidy
loan_subsidy
Transaction Service :8085
General Ledger Service :8088
Periodic Activity Service :8087
System Setup Service :8089
Bank & Branch Service :8090
Common Service :8091