[ 
https://issues.apache.org/jira/browse/FINERACT-2759?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Victor Romero updated FINERACT-2759:
------------------------------------
    Description: 
*Adding an issuance date and 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 are *no native issuance date and expiry date* fields 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.

  was:
*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.


> Add issuance date and 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 issuance date and 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 are *no native issuance date and expiry date* fields 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)

Reply via email to