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

Adam Saghy updated FINERACT-2327:
---------------------------------
    Description: 
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.

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


> 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
>            Priority: Major
>             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