How fitercx/fineract works
Fineract is an open-API core banking platform. Its principal user workflow is a financial institution submitting banking operations and queries through the application, with results returned from domain services and persisted in a tenant database. The tree also shows CredibleX extensions for loan operations, accounting, scheduled jobs, settlements, and external integrations. The README establishes the API and core-banking role; sampled sources confirm selected search and database-dispatch behavior, but do not expose enough wiring to map every banking operation end to end.
Main entry points: SearchReadPlatformService.java Banking API · OdooJournalEntryService.java Odoo journal sync · DatabaseIndependentQueryService.java Database dispatch · MySQLQueryService.java MySQL queries
Components 21
Platform services
- Banking API
fineract-provider/src/main/java/org/apache/fineract/portfolio/search/service/SearchReadPlatformService.java - Tenant authentication
fineract-provider/src/main/java/org/apache/fineract/infrastructure/security/service/BasicAuthTenantDetailsService.java - Search service
fineract-provider/src/main/java/org/apache/fineract/portfolio/search/service/SearchReadPlatformService.java - Database dispatch
fineract-core/src/main/java/org/apache/fineract/infrastructure/core/service/database/DatabaseIndependentQueryService.java - MySQL queries
fineract-core/src/main/java/org/apache/fineract/infrastructure/core/service/database/MySQLQueryService.java - PostgreSQL queries
fineract-core/src/main/java/org/apache/fineract/infrastructure/core/service/database/PostgreSQLQueryService.java
Banking operations
- Loan operations
custom/crediblex/portfolio/loanaccount - Loan schedule
fineract-progressive-loan/src/main/java/org/apache/fineract/portfolio/loanaccount/service/ProgressiveLoanInterestScheduleModelParserService.java - Loan COB selection
fineract-provider/src/main/java/org/apache/fineract/cob/loan/RetrieveLoanIdService.java - Investor search
fineract-investor/src/main/java/org/apache/fineract/investor/service/search/ExternalAssetOwnerSearchService.java
CredibleX extensions
- Custom accounting
custom/crediblex/accounting/journalentry/src/main/java/com/crediblex/fineract/accounting/journalentry/service - GL account mapping
custom/crediblex/accounting/productaccountmapping/src/main/java/com.crediblex.fineract.accounting.productaccountmapping/service/CustomProductToGLAccountMappingWritePlatformServiceImpl.java - Commands and webhooks
custom/crediblex/infrastructure/commands/src/main/java/com/crediblex/fineract/commands
External integrations
- Settlements reports
custom/crediblex/integration/odoo/src/main/java/com/crediblex/fineract/integration/odoo/settlements - Report storage
custom/crediblex/infrastructure/s3/src/main/java/com/crediblex/fineract/infrastructure/s3/service/SettlementsReportS3StorageService.java - Odoo integration
custom/crediblex/integration/odoo/src/main/java/com/crediblex/fineract/integration/odoo - Odoo journal sync
custom/crediblex/integration/odoo/src/main/java/com/crediblex/fineract/integration/odoo/service/OdooJournalEntryService.java
Other components
- Institution user
- Tenant database
- Odoo system
- Slack notifications
Connections 12
- Institution user → Banking API: submits requests
- Banking API → Tenant authentication: authenticates tenant
- Banking API → Search service: routes queries
- Search service → Tenant database: reads data
- Database dispatch → MySQL queries: delegates when supported
- Database dispatch → PostgreSQL queries: delegates when supported
- MySQL queries → Tenant database: queries metadata
- PostgreSQL queries → Tenant database: queries metadata
- Settlements reports → Report storage: stores report
- Odoo integration → Odoo journal sync: syncs entries
- Odoo journal sync → Odoo system: sends entries
- Odoo journal sync → Slack notifications: notifies failures