[
https://issues.apache.org/jira/browse/FINERACT-2759?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18105260#comment-18105260
]
Sonigra Bhavya Hemendrabhai edited comment on FINERACT-2759 at 8/17/26 11:36 AM:
---------------------------------------------------------------------------------
Hi, I would like to work on this issue. Could you please assign it to me?
was (Author: JIRAUSER314311):
Hi, I would like to work on this issue.
> Add expiry date to m_client_identifier
> --------------------------------------
>
> Key: FINERACT-2759
> URL: https://issues.apache.org/jira/browse/FINERACT-2759
> Project: Apache Fineract
> Issue Type: Bug
> Reporter: Victor Romero
> Priority: Minor
>
> *Adding an expiry date to m_client_identifier in Apache Fineract is useful
> primarily for proper KYC (Know Your Customer) compliance, risk management and
> operational efficiency.*
>
> This table stores client identification documents (passport, national ID,
> driver’s licence, voter’s card, etc.). It currently holds fields such as:
> * client_id
> * document_type_id
> * document_key (the ID number)
> * status / active
> * description
> * audit fields
> There is *no native expiry/validity date* field in the standard schema.
> h3. It is valuable because the following reasons:
> # *Regulatory / KYC & AML compliance* Most identity documents have a limited
> validity period. Regulators (central banks, financial intelligence units,
> etc.) typically require that institutions only accept _current, non-expired_
> IDs. Storing the expiry date lets the system automatically flag or reject
> expired documents instead of relying on manual checks.
> # *Automated monitoring and alerts* With an expiry date you can:
> ** Run scheduled jobs that list clients whose IDs will expire soon (e.g. in
> 30/60/90 days).
> ** Automatically mark identifiers as inactive once they expire.
> ** Trigger notifications or force clients to upload renewed documents before
> certain operations (loan disbursement, account opening, large transfers,
> etc.).
> # *Risk reduction* Using an expired ID increases the chance of identity
> fraud or non-compliance penalties. Capturing the expiry date allows the
> institution to treat the identifier as no longer trustworthy after that date.
> # *Better client lifecycle management* Staff and self-service portals can
> see at a glance which documents are still valid. This improves onboarding
> quality and reduces the need for repeated manual verification.
> # *Reporting and audits* Auditors and compliance officers can easily
> generate reports of clients with expired or soon-to-expire identifiers, which
> is a common requirement during regulatory examinations.
> h3. Practical benefits in a Fineract context
> * Enables validation rules when creating/updating an identifier (reject past
> expiry dates or warn about near-expiry ones).
> * Supports business events or hooks that fire when an identifier approaches
> or reaches expiry.
> * Makes the data more complete for integrations with external KYC/AML
> providers or credit bureaus that also expect document validity dates.
> * Aligns Fineract with common practices in commercial core banking systems,
> where document expiry is a standard attribute.
> In short, without an expiry date the system only knows _that_ a document
> exists; with it, the system knows {_}whether the document is still usable{_}.
> That single piece of information significantly strengthens compliance,
> reduces operational risk and improves day-to-day client management.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)