[
https://issues.apache.org/jira/browse/FINERACT-2740?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
elnafateh updated FINERACT-2740:
--------------------------------
Labels: (was: features)
> Reviewed Loan-Loss Provisioning Entry Lifecycle
> -----------------------------------------------
>
> Key: FINERACT-2740
> URL: https://issues.apache.org/jira/browse/FINERACT-2740
> Project: Apache Fineract
> Issue Type: Improvement
> Components: Loan
> Affects Versions: 1.15.0
> Reporter: elnafateh
> Priority: Major
>
> Loan-loss provisioning entries can have their journal entries posted
> immediately upon creation, via the createjournalentry command. There is no
> review step: a provisioning entry that has just been generated can have its
> reserves posted to the general ledger without anyone confirming the entry is
> correct first.
> This is a gap relative to how Fineract typically treats accounting-impacting
> actions. Other financially significant workflows in the system, loan
> reschedule requests for example, require an explicit review-and-decide step.
> The record is created in a pending state, and a separate, deliberate action
> moves it forward, before the action with real financial consequences is
> allowed to happen. Provisioning has no equivalent. Creation and
> journal-posting are two separate API calls today, but nothing stops the
> second from immediately following the first.
> h4. *Expected Behavior*
> A provisioning entry should carry a review status, distinct from whether its
> journal entries have been created: draft (generated but not yet reviewed),
> approved (reviewed and accepted), or rejected (reviewed and declined).
> h4. *Transitions*
> A newly created provisioning entry starts in draft.
> A draft entry can be moved to approved or rejected
> An approved entry may be reverted back to draft ("undo"), but only if no
> journal entries have been created for it yet.
> A rejected entry has no further transitions available.
> h4. *How this constrains existing behavior*
> Journal entries may only be created for a provisioning entry that is
> currently approved. Posting for a draft or rejected entry must fail, with
> nothing posted. This includes the existing option to request immediate
> journal posting at creation time; a newly created entry is always draft, so
> that request must fail the same way.
> Regenerating a provisioning entry's underlying rows (the existing "recreate"
> action) must only be allowed while the entry is still in draft.
> h4. These three new methods should live on
> ProvisioningEntriesWritePlatformService
> approveProvisioningEntry(Long provisioningEntryId, JsonCommand command)
> rejectProvisioningEntry(Long provisioningEntryId, JsonCommand command)
> undoProvisioningEntryApproval(Long provisioningEntryId, JsonCommand command)
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)