Adam Saghy created FINERACT-2327:
------------------------------------

             Summary: Allow to create Interest Refund transaction manually
                 Key: FINERACT-2327
                 URL: https://issues.apache.org/jira/browse/FINERACT-2327
             Project: Apache Fineract
          Issue Type: New Feature
            Reporter: Adam Saghy
             Fix For: 1.13.0


As a User I would like the system to let me create an Interest Refund 
transaction manually for a Payout Refund / Merchant Issued Refund transaction 
(if there was no existing Interest Refund transaction already!)

In case Interest Refund transaction was manually created, we still should 
create the proper transaction relation between them (same relation as created 
in case Interest Refund txn was created automatically by Fineract)

 

*Acceptance criteria*
 * Allow to create “Interest Refund” transaction to refund type transactions

 ** Validate whether target transaction does exists

 ** Validate whether target transaction type is payout refund or merchant 
issued refund

 ** Validate it does not reversed

 ** Validate whether there is no existing Interest Refund transaction already

 ** Validate interest refund transaction date must match with target refund 
transaction date

 *** If it was provided, anyway it does not mandatory to be provided 
transaction date!

 * Make sure between the target (refund) transaction and the Interest Refund 
transaction the appropriate transaction relationship got set

 ** Same relation like Interest Refund transaction was created automatically by 
Fineract!

 * {*}New endpoint{*}:

 ** {{/loans/<loan_id>/transactions/<transaction_id>?command=interest-refund}}

 ** 
{{/loans/external-id/<loan_external_id>/transactions/<transaction_id>?command=interest-refund}}

 ** 
{{/loans/<loan_id>/transactions/external-id/<transaction_external_id>?command=interest-refund}}

 ** 
{{/loans/external-id<loan_external_id>/transactions/external-id/<transaction_external_id>?command=interest-refund}}

 * {*}Request{*}:

 ** Same fields that are allowed for any other transactions

 *** Except transaction date! We dont need to provide that!

 * *Response*

 ** Same fields that are allowed for any other transactions!

 * Make sure the relationship got set after the Interest Refund transaction got 
created!

 ** If refund transaction got reversed, this manually created Interest Refund 
transaction also should be reversed automatically!

*Template API call*
 * Amount should be on the fly calculated like (if the Fineract created 
automatically, then what would be the amount)

 ** On the fly “interest refund” calculation and amount to be provided back

 * Transaction date is not needed, so skip that

 * The rest is the same, like payment type options, etc.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to