Details
-
New Feature
-
Status: In Progress
-
Major
-
Resolution: Unresolved
-
None
-
None
Description
Introduction
Transactions may change due to correction. Correction can be done by reverting a transaction. This can lead to removing and adding transactions back to an account. It results new ID distribution from the transaction sequence. External systems may not want to follow up on these changes but rather access transactions as they are at their end state. In order to be able to direct client immediately to the right record an additional identifier is to be used.
Supporting externalId is a long time wanted functionality with two major benefits:
- Not an auto incremented number (privacy, harder to guess)
- Not represent any internal state
Requirements
- 🟩 Supporting external id for identifying and fetching some if the entities in Fineract
- 🟩 API enhancement to support targeting by external id
- ✅ External id can be provided in API request
- 🟩 Extend API response with external id
- 🟩 Support external id auto generation (configurable)
External identifier
- Must be unique
- Immutable
- Customer (Caller) provided
- Ability to generate automatically (configurable)
Database
External identifier field to be stored in the loan table
type: String
indexing: true
Configuration
Enable to auto generate external id (if not provided).
By default it should be disabled.
Â