Commit Graph
120 Commits
Author SHA1 Message Date
AdityaandClaude Opus 4.7 7dea88d30f Fix family-member PUT 500; CORS POST 403; Hikari local password default
- ClientFamilyMembersWritePlatformServiceImpl#updateFamilyMember: guard
  maritalStatusId/genderId/professionId with != null instead of != 0 so a
  payload that omits these keys doesn't NPE when the boxed Long is unboxed.
- application.properties: fix the broken property name
  `fineract.security.cors.allowed-metho pas` -> `allowed-methods`. The typo
  left CORS allowed-methods empty, which made Spring reject every browser
  POST with "Invalid CORS request" 403 once the SPA sent an Origin header.
- application.properties: change the Hikari default password from 313863
  to root so the local devRun matches the tenant-DB default at line 49.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-22 13:06:38 +05:30
Nitesh Yadav 001a79e35e merge code feature/Backend-DSC-MFA this branch date 15-05-2026 2026-05-15 13:08:15 +05:30
AdityaandClaude Opus 4.7 6558ea6998 DSC-2FA login fix + Individual-only link pickers + Title Case names
- DSC-as-2FA login: UI's claimAndValidate() now calls a new
  AuthenticationService.applyTwoFactorToken(token, liveSeconds) instead of
  validateOTP(). The /v1/login/dsc/{rn}/claim response is already a minted
  TFAccessToken — POSTing it to /twofactor/validate fails because that path
  expects an in-memory OTPRequest. applyTwoFactorToken runs only the
  post-success bookkeeping (interceptor.setTwoFactorAccessToken, setCredentials,
  Authentication Success alert that drives router.navigate(['/']), and
  sessionStorage persist of {token, validFrom, validTo}). Fixes the
  OTPTokenInvalidException users hit after a successful DSC verify+claim.

- Individual-only filter for link-client pickers: ClientTextSearch gains a
  legalFormType field; SearchingClientRepository accepts an Integer legalForm
  value and adds cb.equal(r.get("legalForm"), ...) to the spec.
  ClientSearchService.parseLegalForm tolerates INDIVIDUAL/PERSON/1 and
  NON_INDIVIDUAL/ENTITY/2; unknown = no filter so a typo doesn't blank results.
  UI: clients.service.ts searchByText gains a 7th optional arg; six link
  pickers (guardian, nominee, family-member across create flow and post-create
  tabs) now pass 'INDIVIDUAL'. General client list and signatory picker are
  intentionally unchanged.

- Title-case client names on persistence: ClientWritePlatformServiceJpa
  RepositoryImpl now runs first/middle/last/full name fields through
  toTitleCase() on both create and update paths. "aditya kumar vyas",
  "ADITYA KUMAR VYAS", "Aditya Kumar Vyas" all persist as "Aditya Kumar Vyas".
  Whitespace-split title case; preserves hyphens/apostrophes inside words
  without re-capitalising after them so clerks verifying against ID documents
  see predictable output.

- Migration 0296: unique constraint to prevent duplicate nominee per account
  type (the underlying repository + service changes also persisted in this
  commit complete the enforcement path).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-15 11:50:04 +05:30
Nitesh Yadav 167079c2d7 merege code feature/Backend-DSC-MFA branch 2026-05-12 12:48:43 +05:30
LincPay ac9eb24e43 Update fineract-provider/src/main/resources/application.properties 2026-05-12 11:20:34 +05:30
LincPay a8aa941ed5 Update fineract-provider/src/main/resources/application.properties 2026-05-11 12:30:53 +05:30
Nitesh Yadav 304f694387 merging code 2026-04-20 14:51:57 +05:30
AdityaandClaude Opus 4.6 b4429d04b0 Add Client CKYC backend module with all source, migrations, and static resources
Includes CKYC batch processing, KYC proof types, non-CKYC client APIs,
ReKYC handler, SFTP upload service, and DB migrations (0250-0255).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 13:42:21 +05:30
Nitesh Yadav d7821c7824 update saving product code 2026-04-13 13:26:33 +05:30
AdityaandClaude Opus 4.6 87e132f93d Add extended fields to ClientNonPersonDetails: authorizedSignatory, additionalInfo, dateOfRegistration
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 15:06:45 +05:30
AdityaandClaude Opus 4.6 ba5365d4af Add all CBS custom modules: KYC, Sanctions, RBI Feed, OpenProject, Mobile Lookup, Charges, Avro schemas
Includes all prior work not yet committed on this branch:
- KYC module (LincPay eKYC: PAN, Aadhaar OTP, GSTIN verification)
- Sanctions screening (UN Security Council consolidated list)
- RBI Feed integration with scheduled jobs
- OpenProject API integration
- Mobile lookup service
- Charge module enhancements (current account support)
- Client family member nominee fields
- Avro schema updates
- Liquibase migrations 0216-0224
- Postman collections for OpenProject, RBI Feeds, Sanctions
- SQL seed scripts

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 17:54:10 +05:30
Aleksandar VidakovicandAleksandar Vidakovic ae3e2a6343 FINERACT-2245: New command processing - mix taxonomy 2026-02-18 20:26:51 +01:00
Aleksandar VidakovicandGitHub 3a842ecb9a FINERACT-2243: New command processing - payment type (#5506) 2026-02-18 08:19:29 -06:00
Aleksandar VidakovicandAleksandar Vidakovic 2ff0c62f40 FINERACT-2246: New command processing - document management 2026-02-16 14:56:40 +01:00
Aleksandar VidakovicandAleksandar Vidakovic 02fb166b5b FINERACT-2239: New command processing - resource notes 2026-02-11 00:15:27 +01:00
8d064ddf6c FINERACT-2452: New command processing - audit
Co-Authored-By: Adam Saghy <adam.saghy@dpc.hu>
Co-Authored-By: Yu Wati Nyi <nyi22y@mtholyoke.edu>
2026-02-05 12:55:05 +01:00
Attila BudaiandArnold Gálovics 82e6a237a6 FINERACT-2418: add origination api implementation 2026-01-28 17:01:57 +01:00
Attila BudaiandAdam Saghy f83ea7ea15 FINERACT-2418: create the loan origination module 2026-01-19 14:14:20 +01:00
mariiaKraievskaandGitHub 8644d66fc0 FINERACT-2326: Fix configuration options for CORS (#5210) 2025-12-09 06:52:34 -06:00
Adam Saghy 8391614330 FINERACT-2326: Add configuration options for CORS handling 2025-12-08 10:23:17 +01:00
Adam Saghy 4c22e2a9fc FINERACT-2326: Force single-threaded execution of tenant database upgrades 2025-12-05 15:50:41 +01:00
Adam Saghy 89e9cfcd7d FINERACT-2386: Journal entry aggregation capabilities 2025-10-03 11:07:12 +02:00
CsengeSótiandArnold Gálovics fa9c7b9364 FINERACT-1984: OAuth2.1 2025-09-12 14:58:37 +02:00
b0ca0a24cc FINERACT-2314: IP tracking (#4825)
Co-authored-by: Juan Pablo Alvarez Hernandez <work_jpa@hotmailcom>
2025-08-08 10:58:19 -06:00
Adam Saghy 271ac859bc FINERACT-2118: Make region as optional and remove hardcoded default value 2025-07-28 18:11:08 +02:00
Naphlin AkenaandAdam Saghy dadc36b6b4 FINERACT-2118: Use S3 service accounts
Allow usage of S3 service accounts and support any S3 compatible storage
endpoints
2025-07-28 11:42:29 +02:00
Arnold GalovicsandArnold Gálovics a76c189a04 Revert "FINERACT-2181: Some tweaks in the gradle build to ensure correct task processing"
This reverts commit 6cb60f48
2025-06-20 21:53:28 +02:00
Adam Monsen f28d252f17 FINERACT-2310: collate and improve security documentation
* fix various typos, spacing, formatting issues
* fix links to legacy docs in API docs
* update keycloak oauth dev instructions
* update default oauth URL for latest Keycloak
* use consistent quoting in oauth docs (single quotes)
* use asciidoc auto-enumerated lists whenever possible
* migrate security topics from readme into asciidoc: oauth, 2FA, HTTPS
* move :hardbreaks: setting to config file so all config settings are in one place. (I think it's fine that `license.adoc` will use hardbreaks -- that's how the plain text version is formatted so it should look more familiar)
* add intro to security chapter
* migrate in Securing Fineract wiki content from https://cwiki.apache.org/confluence/display/FINERACT/Securing+Fineract
* just say "oauth" (not "oauth2") to conform terminology throughout docs -- OAuth 2.0 is just the latest version
* cross-ref HTTPS section from Securing Fineract
* reposition hardening options as tips
* see also: https://lists.apache.org/thread/81qdxttffp6wn23c48zvk93hc13373qv
* simplify/clarify example oauth curl requests
  * Testing just now and I didn't need --location.
  * Also I imagine folks will need --insecure with the self-signed default cert in dev.
* don't change default oauth URL
  * no surprises for existing deployments
  * clarifies the keycloak v26 example
2025-06-16 15:12:55 -07:00
Soma SörösandAdam Saghy caf42f733c FINERACT-2304: Create Configuration assembler and move resilience4j props into fineract namespace implement proper retry for SynchronousCommandProcessingService and BatchApiServiceImpl 2025-06-06 14:03:11 +02:00
Adam Saghy 6cb60f48fc FINERACT-2181: Some tweaks in the gradle build to ensure correct task processing 2025-05-25 22:12:22 +02:00
Adam Saghy 5f59091b70 FINERACT-2283: Self-service APIs are disabled by default 2025-05-16 23:18:02 +02:00
mark.vituskaandAdam Saghy 99f12d6091 FINERACT-2140: added hsts protocol support through system property 2025-04-23 12:22:45 +02:00
Aleksandar VidakovicandAleksandar Vidakovic 8d83b5547c FINERACT-2169: New command processing infrastructure 2025-04-22 21:50:28 +02:00
Adam Saghy 1f76a8aeb2 FINERACT-2262: Improve cache handling and add customization option 2025-04-15 19:45:42 +02:00
mark.vituskaandAdam Saghy e44a60f327 FINERACT-2181: initial rounding-mode configuration 2025-03-14 13:05:30 +00:00
mark.vituskaandAdam Saghy 24cee73dc0 FINERACT-2181: modified inject-comment sql validation pattern to not match single dashes 2025-03-07 20:44:41 +00:00
Arnold GalovicsandArnold Gálovics 23887bdf1c FINERACT-2181: Tenant ID is included in the log messages 2025-03-06 22:00:52 +01:00
CsengeSótiandArnold Gálovics 1b0cc27eec FINERACT-2183: Expose Tomcat thread metrics via actuator 2025-02-19 17:26:27 +01:00
adam.magyariandArnold Gálovics dcb18d8f5e FINERACT-2081: async liquibase 2024-11-25 16:22:55 +01:00
Adam Saghy 0c7ef324b9 FINERACT-2070: COB business step order 2024-11-24 17:30:32 +01:00
adam.magyariandArnold Gálovics 425085f4eb FINERACT-2081: External event sending make mark as sent async 2024-11-20 20:17:01 +01:00
Aleksandar VidakovicandAleksandar Vidakovic a022a51189 FINERACT-2076: SQL query optimization 2024-04-25 14:08:04 +02:00
Peter BagrijandAdam Saghy d310d0dcbd FINERACT-1971: Fixing long running COB related tests 2024-03-27 12:55:35 +01:00
Peter BagrijandPeter Bagrij c34f2b4f59 FINERACT-2068: Loan Status Change History 2024-03-20 16:49:03 +01:00
taskain7 174b239c10 FINERACT-2066: Send async event job tuning 2024-03-14 06:32:45 +01:00
Adam Saghy 051b37c4b3 FINERACT-1971: Enhanced error logging: Optimistic lock exception handling + log most specific exception 2024-02-22 16:09:56 +01:00
Aleksandar VidakovicandAleksandar Vidakovic e4944c44d6 FINERACT-2009: Upgrade latest framework libs 2024-01-06 14:13:33 +01:00
jmartaandAdam Saghy ee79c58e15 FINERACT-1909: Retry feature for commands - deadlock 2023-11-20 19:49:47 +01:00
Adam Saghy 7a9bc6defe FINERACT-1971: Retry if original request is still under processing 2023-11-10 14:17:48 +01:00
Aleksandar VidakovicandAleksandar Vidakovic e2cf138437 FINERACT-1484: Micrometer Monitoring 2023-11-09 13:58:42 +01:00