Foo Developer created FINERACT-2753:
---------------------------------------
Summary: Improve Maker-Checker Action Endpoint Handling and
Permission Responses
Key: FINERACT-2753
URL: https://issues.apache.org/jira/browse/FINERACT-2753
Project: Apache Fineract
Issue Type: Bug
Components: Client, Loan, Savings
Reporter: Foo Developer
Assignee: Foo Developer
Summary
Improve maker-checker action endpoint behavior to properly handle:
Duplicate pending submissions
Checker-only initiation attempts
Clear FE-consumable error responses
Consistent maker/checker routing across all maker-checker enabled actions
This should apply generically across all entities and actions using
maker-checker.
Expected Rules
1. Maker User (Base Permission Only)
Example:
DISBURSE_LOAN
Behavior:
First submission:
Action is saved as AWAITING_APPROVAL
Second or multiple submissions: If another pending approval already exists for
the same action/entity/resource:
Block duplicate submission
Returned message:
"This action is already pending checker approval. Please wait for it to be
approved or rejected before resubmitting."
2. Checker-Only User
Example:
DISBURSE_LOAN_CHECKER
Behavior:
User cannot initiate the action directly
Returned message:
"You have checker-only permission for this action. You cannot initiate it. Use
maker-checker approval flow to approve a pending submission."
3. User Has Both Maker and Checker Permissions
Examples:
DISBURSE_LOAN
DISBURSE_LOAN_CHECKER
Behavior:
Existing behavior remains unchanged
Action executes and approves immediately in one shot
Scope
Apply to all maker-checker enabled actions, including:
Loan actions
Savings actions
Fixed deposit actions
Recurring deposit actions
Client actions
Any maker-checker enabled entity/action flow
Acceptance Criteria
Maker first submission accepted
Duplicate pending maker submission return error message
Checker-only initiation attempt returns meaningful refusal message
Users with both permissions continue to execute in one shot
Non maker-checker flows remain unaffected
Behavior works consistently across all supported entities and actions
--
This message was sent by Atlassian Jira
(v8.20.10#820010)