This is an automated email from the ASF dual-hosted git repository.

adamsaghy pushed a commit to branch release/1.13.1
in repository https://gitbox.apache.org/repos/asf/fineract.git

commit 2b9102fbe4cefd99bb324a46e9fa87c19f50caf4
Author: MarianaDmytrivBinariks <[email protected]>
AuthorDate: Fri Oct 24 18:42:13 2025 +0300

    FINERACT-2385: e2e test scenarios for re-aging disallowed with zero amount
---
 .../test/resources/features/LoanReAging.feature    | 188 ++++++++++++++++++++-
 1 file changed, 186 insertions(+), 2 deletions(-)

diff --git 
a/fineract-e2e-tests-runner/src/test/resources/features/LoanReAging.feature 
b/fineract-e2e-tests-runner/src/test/resources/features/LoanReAging.feature
index c609009a30..cbc43f4dbe 100644
--- a/fineract-e2e-tests-runner/src/test/resources/features/LoanReAging.feature
+++ b/fineract-e2e-tests-runner/src/test/resources/features/LoanReAging.feature
@@ -3063,7 +3063,8 @@ Feature: LoanReAging
       | NSF fee | true      | Specified due date   | 01 October 2024  | Flat   
          | 20.0 | 0.0  | 0.0    | 20.0        |
       | NSF fee | true      | Specified due date   | 01 November 2024 | Flat   
          | 30.0 | 0.0  | 0.0    | 30.0        |
 
-  Scenario: Verify that Loan re-aging with zero outstanding balance is 
rejected in real-time
+  @TestRailId:C4136 @AdvancedPaymentAllocation
+  Scenario: Verify that Loan re-aging with zero outstanding balance is 
rejected in real-time - UC1
     When Admin sets the business date to "01 January 2024"
     When Admin creates a client with random data
     When Admin set "LP2_DOWNPAYMENT_AUTO_ADVANCED_PAYMENT_ALLOCATION" loan 
product "DEFAULT" transaction type to "NEXT_INSTALLMENT" future installment 
allocation rule
@@ -3079,6 +3080,13 @@ Feature: LoanReAging
       | 2  | 15   | 16 January 2024  |                 | 500.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
       | 3  | 15   | 31 January 2024  |                 | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
       | 4  | 15   | 15 February 2024 |                 | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid  | In 
advance | Late | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 0.0       | 1000.0 | 250.0 | 0.0     
   | 0.0  | 750.0       |
+    Then Loan Transactions tab has the following data:
+      | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
+      | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
+      | 01 January 2024  | Down Payment     | 250.0  | 250.0     | 0.0      | 
0.0  | 0.0       | 750.0        | false    |
     When Admin sets the business date to "20 February 2024"
     And Customer makes "AUTOPAY" repayment on "20 February 2024" with 750 EUR 
transaction amount
     Then Loan Repayment schedule has 4 periods, with the following data for 
periods:
@@ -3088,6 +3096,14 @@ Feature: LoanReAging
       | 2  | 15   | 16 January 2024  | 20 February 2024 | 500.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
       | 3  | 15   | 31 January 2024  | 20 February 2024 | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
       | 4  | 15   | 15 February 2024 | 20 February 2024 | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid   | In 
advance | Late  | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 0.0       | 1000.0 | 1000.0 | 0.0    
    | 750.0 | 0.0         |
+    Then Loan Transactions tab has the following data:
+      | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
+      | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
+      | 01 January 2024  | Down Payment     | 250.0  | 250.0     | 0.0      | 
0.0  | 0.0       | 750.0        | false    |
+      | 20 February 2024 | Repayment        | 750.0  | 750.0     | 0.0      | 
0.0  | 0.0       | 0.0          | false    |
     And Admin adds "LOAN_NSF_FEE" due date charge with "01 March 2024" due 
date and 10 EUR transaction amount
     Then Loan Repayment schedule has 5 periods, with the following data for 
periods:
       | Nr | Days | Date             | Paid date        | Balance of loan | 
Principal due | Interest | Fees | Penalties | Due   | Paid  | In advance | Late 
 | Outstanding |
@@ -3097,6 +3113,14 @@ Feature: LoanReAging
       | 3  | 15   | 31 January 2024  | 20 February 2024 | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
       | 4  | 15   | 15 February 2024 | 20 February 2024 | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
       | 5  | 15   | 01 March 2024    |                  | 0.0             | 
0.0           | 0.0      | 0.0  | 10.0      | 10.0  | 0.0   | 0.0        | 0.0  
 | 10.0        |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid   | In 
advance | Late  | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 10.0      | 1010.0 | 1000.0 | 0.0    
    | 750.0 | 10.0        |
+    Then Loan Transactions tab has the following data:
+      | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
+      | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
+      | 01 January 2024  | Down Payment     | 250.0  | 250.0     | 0.0      | 
0.0  | 0.0       | 750.0        | false    |
+      | 20 February 2024 | Repayment        | 750.0  | 750.0     | 0.0      | 
0.0  | 0.0       | 0.0          | false    |
     When Admin fails to create a Loan re-aging transaction with error 
"error.msg.loan.reage.no.outstanding.balance.to.reage" and with the following 
data:
       | frequencyNumber | frequencyType | startDate     | numberOfInstallments 
|
       | 1               | MONTHS        | 01 March 2024 | 3                    
|
@@ -3108,6 +3132,9 @@ Feature: LoanReAging
       | 3  | 15   | 31 January 2024  | 20 February 2024 | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
       | 4  | 15   | 15 February 2024 | 20 February 2024 | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
       | 5  | 15   | 01 March 2024    |                  | 0.0             | 
0.0           | 0.0      | 0.0  | 10.0      | 10.0  | 0.0   | 0.0        | 0.0  
 | 10.0        |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid   | In 
advance | Late  | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 10.0      | 1010.0 | 1000.0 | 0.0    
    | 750.0 | 10.0        |
     Then Loan Transactions tab has the following data:
       | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
       | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
@@ -3117,7 +3144,12 @@ Feature: LoanReAging
       | Name    | isPenalty | Payment due at     | Due as of     | Calculation 
type | Due  | Paid | Waived | Outstanding |
       | NSF fee | true      | Specified due date | 01 March 2024 | Flat        
     | 10.0 | 0.0  | 0.0    | 10.0        |
 
-  Scenario: Verify that zero amount reage transaction is reverted during 
reverse-replay
+    When Loan Pay-off is made on "20 February 2024"
+    Then Loan status will be "CLOSED_OBLIGATIONS_MET"
+    Then Loan has 0 outstanding amount
+
+  @TestRailId:C4137 @AdvancedPaymentAllocation
+  Scenario: Verify that zero amount reage transaction is reverted during 
reverse-replay with backdated repayment that fully paid loan - UC2
     When Admin sets the business date to "01 January 2024"
     When Admin creates a client with random data
     When Admin set "LP2_DOWNPAYMENT_AUTO_ADVANCED_PAYMENT_ALLOCATION" loan 
product "DEFAULT" transaction type to "NEXT_INSTALLMENT" future installment 
allocation rule
@@ -3133,6 +3165,13 @@ Feature: LoanReAging
       | 2  | 15   | 16 January 2024  |                 | 500.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
       | 3  | 15   | 31 January 2024  |                 | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
       | 4  | 15   | 15 February 2024 |                 | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid  | In 
advance | Late | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 0.0       | 1000.0 | 250.0 | 0.0     
   | 0.0  | 750.0       |
+    Then Loan Transactions tab has the following data:
+      | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
+      | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
+      | 01 January 2024  | Down Payment     | 250.0  | 250.0     | 0.0      | 
0.0  | 0.0       | 750.0        | false    |
     When Admin sets the business date to "20 February 2024"
     When Admin creates a Loan re-aging transaction with the following data:
       | frequencyNumber | frequencyType | startDate     | numberOfInstallments 
|
@@ -3147,6 +3186,9 @@ Feature: LoanReAging
       | 5  | 15   | 01 March 2024    |                  | 500.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
       | 6  | 31   | 01 April 2024    |                  | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
       | 7  | 30   | 01 May 2024      |                  | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid  | In 
advance | Late | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 0.0       | 1000.0 | 250.0 | 0.0     
   | 0.0  | 750.0       |
     Then Loan Transactions tab has the following data:
       | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
       | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
@@ -3154,6 +3196,8 @@ Feature: LoanReAging
       | 20 February 2024 | Re-age           | 750.0  | 750.0     | 0.0      | 
0.0  | 0.0       | 0.0          | false    |
     When Admin sets the business date to "21 February 2024"
     And Customer makes "AUTOPAY" repayment on "19 February 2024" with 750 EUR 
transaction amount
+    Then Loan status will be "CLOSED_OBLIGATIONS_MET"
+    Then Loan has 0 outstanding amount
     Then Loan Repayment schedule has 4 periods, with the following data for 
periods:
       | Nr | Days | Date             | Paid date        | Balance of loan | 
Principal due | Interest | Fees | Penalties | Due   | Paid  | In advance | Late 
 | Outstanding |
       |    |      | 01 January 2024  |                  | 1000.0          |    
           |          | 0.0  |           | 0.0   | 0.0   |            |       | 
            |
@@ -3161,8 +3205,148 @@ Feature: LoanReAging
       | 2  | 15   | 16 January 2024  | 19 February 2024 | 500.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
       | 3  | 15   | 31 January 2024  | 19 February 2024 | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
       | 4  | 15   | 15 February 2024 | 19 February 2024 | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid   | In 
advance | Late  | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 0.0       | 1000.0 | 1000.0 | 0.0    
    | 750.0 | 0.0         |
     Then Loan Transactions tab has the following data:
       | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
       | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
       | 01 January 2024  | Down Payment     | 250.0  | 250.0     | 0.0      | 
0.0  | 0.0       | 750.0        | false    |
       | 19 February 2024 | Repayment        | 750.0  | 750.0     | 0.0      | 
0.0  | 0.0       | 0.0          | false    |
+
+
+  @TestRailId:C4138 @AdvancedPaymentAllocation
+  Scenario: Verify that zero amount reage transaction is reverted during 
reverse-replay with backdated MAR trn that fully paid loan - UC3
+    When Admin sets the business date to "01 January 2024"
+    When Admin creates a client with random data
+    When Admin set "LP2_DOWNPAYMENT_AUTO_ADVANCED_PAYMENT_ALLOCATION" loan 
product "DEFAULT" transaction type to "NEXT_INSTALLMENT" future installment 
allocation rule
+    When Admin creates a fully customized loan with the following data:
+      | LoanProduct                                      | submitted on date | 
with Principal | ANNUAL interest rate % | interest type | interest calculation 
period | amortization type  | loanTermFrequency | loanTermFrequencyType | 
repaymentEvery | repaymentFrequencyType | numberOfRepayments | 
graceOnPrincipalPayment | graceOnInterestPayment | interest free period | 
Payment strategy            |
+      | LP2_DOWNPAYMENT_AUTO_ADVANCED_PAYMENT_ALLOCATION | 01 January 2024   | 
1000           | 0                      | FLAT          | 
SAME_AS_REPAYMENT_PERIOD    | EQUAL_INSTALLMENTS | 45                | DAYS     
             | 15             | DAYS                   | 3                  | 0 
                      | 0                      | 0                    | 
ADVANCED_PAYMENT_ALLOCATION |
+    And Admin successfully approves the loan on "01 January 2024" with "1000" 
amount and expected disbursement date on "01 January 2024"
+    When Admin successfully disburse the loan on "01 January 2024" with "1000" 
EUR transaction amount
+    Then Loan Repayment schedule has 4 periods, with the following data for 
periods:
+      | Nr | Days | Date             | Paid date       | Balance of loan | 
Principal due | Interest | Fees | Penalties | Due   | Paid  | In advance | Late 
| Outstanding |
+      |    |      | 01 January 2024  |                 | 1000.0          |     
          |          | 0.0  |           | 0.0   | 0.0   |            |      |   
          |
+      | 1  | 0    | 01 January 2024  | 01 January 2024 | 750.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 0.0  
| 0.0         |
+      | 2  | 15   | 16 January 2024  |                 | 500.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+      | 3  | 15   | 31 January 2024  |                 | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+      | 4  | 15   | 15 February 2024 |                 | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid  | In 
advance | Late | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 0.0       | 1000.0 | 250.0 | 0.0     
   | 0.0  | 750.0       |
+    Then Loan Transactions tab has the following data:
+      | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
+      | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
+      | 01 January 2024  | Down Payment     | 250.0  | 250.0     | 0.0      | 
0.0  | 0.0       | 750.0        | false    |
+    When Admin sets the business date to "20 February 2024"
+    When Admin creates a Loan re-aging transaction with the following data:
+      | frequencyNumber | frequencyType | startDate     | numberOfInstallments 
|
+      | 1               | MONTHS        | 01 March 2024 | 3                    
|
+    Then Loan Repayment schedule has 7 periods, with the following data for 
periods:
+      | Nr | Days | Date             | Paid date        | Balance of loan | 
Principal due | Interest | Fees | Penalties | Due   | Paid  | In advance | Late 
| Outstanding |
+      |    |      | 01 January 2024  |                  | 1000.0          |    
           |          | 0.0  |           | 0.0   | 0.0   |            |      |  
           |
+      | 1  | 0    | 01 January 2024  | 01 January 2024  | 750.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 0.0  
| 0.0         |
+      | 2  | 15   | 16 January 2024  | 20 February 2024 | 750.0           | 
0.0           | 0.0      | 0.0  | 0.0       | 0.0   | 0.0   | 0.0        | 0.0  
| 0.0         |
+      | 3  | 15   | 31 January 2024  | 20 February 2024 | 750.0           | 
0.0           | 0.0      | 0.0  | 0.0       | 0.0   | 0.0   | 0.0        | 0.0  
| 0.0         |
+      | 4  | 15   | 15 February 2024 | 20 February 2024 | 750.0           | 
0.0           | 0.0      | 0.0  | 0.0       | 0.0   | 0.0   | 0.0        | 0.0  
| 0.0         |
+      | 5  | 15   | 01 March 2024    |                  | 500.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+      | 6  | 31   | 01 April 2024    |                  | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+      | 7  | 30   | 01 May 2024      |                  | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid  | In 
advance | Late | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 0.0       | 1000.0 | 250.0 | 0.0     
   | 0.0  | 750.0       |
+    Then Loan Transactions tab has the following data:
+      | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
+      | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
+      | 01 January 2024  | Down Payment     | 250.0  | 250.0     | 0.0      | 
0.0  | 0.0       | 750.0        | false    |
+      | 20 February 2024 | Re-age           | 750.0  | 750.0     | 0.0      | 
0.0  | 0.0       | 0.0          | false    |
+    When Admin sets the business date to "21 February 2024"
+    And Customer makes "MERCHANT_ISSUED_REFUND" transaction with "AUTOPAY" 
payment type on "19 February 2024" with 750 EUR transaction amount and 
system-generated Idempotency key
+    Then Loan status will be "CLOSED_OBLIGATIONS_MET"
+    Then Loan has 0 outstanding amount
+    Then Loan Repayment schedule has 4 periods, with the following data for 
periods:
+      | Nr | Days | Date             | Paid date        | Balance of loan | 
Principal due | Interest | Fees | Penalties | Due   | Paid  | In advance | Late 
 | Outstanding |
+      |    |      | 01 January 2024  |                  | 1000.0          |    
           |          | 0.0  |           | 0.0   | 0.0   |            |       | 
            |
+      | 1  | 0    | 01 January 2024  | 01 January 2024  | 750.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 0.0  
 | 0.0         |
+      | 2  | 15   | 16 January 2024  | 19 February 2024 | 500.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
+      | 3  | 15   | 31 January 2024  | 19 February 2024 | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
+      | 4  | 15   | 15 February 2024 | 19 February 2024 | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid   | In 
advance | Late  | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 0.0       | 1000.0 | 1000.0 | 0.0    
    | 750.0 | 0.0         |
+    Then Loan Transactions tab has the following data:
+      | Transaction date | Transaction Type       | Amount | Principal | 
Interest | Fees | Penalties | Loan Balance | Reverted |
+      | 01 January 2024  | Disbursement           | 1000.0 | 0.0       | 0.0   
   | 0.0  | 0.0       | 1000.0       | false    |
+      | 01 January 2024  | Down Payment           | 250.0  | 250.0     | 0.0   
   | 0.0  | 0.0       | 750.0        | false    |
+      | 19 February 2024 | Merchant Issued Refund | 750.0  | 750.0     | 0.0   
   | 0.0  | 0.0       | 0.0          | false    |
+
+  @TestRailId:C4139 @AdvancedPaymentAllocation
+  Scenario: Verify that zero amount reage transaction is reverted during 
reverse-replay with backdated repayment that overpaid loan - UC4
+    When Admin sets the business date to "01 January 2024"
+    When Admin creates a client with random data
+    When Admin set "LP2_DOWNPAYMENT_AUTO_ADVANCED_PAYMENT_ALLOCATION" loan 
product "DEFAULT" transaction type to "NEXT_INSTALLMENT" future installment 
allocation rule
+    When Admin creates a fully customized loan with the following data:
+      | LoanProduct                                      | submitted on date | 
with Principal | ANNUAL interest rate % | interest type | interest calculation 
period | amortization type  | loanTermFrequency | loanTermFrequencyType | 
repaymentEvery | repaymentFrequencyType | numberOfRepayments | 
graceOnPrincipalPayment | graceOnInterestPayment | interest free period | 
Payment strategy            |
+      | LP2_DOWNPAYMENT_AUTO_ADVANCED_PAYMENT_ALLOCATION | 01 January 2024   | 
1000           | 0                      | FLAT          | 
SAME_AS_REPAYMENT_PERIOD    | EQUAL_INSTALLMENTS | 45                | DAYS     
             | 15             | DAYS                   | 3                  | 0 
                      | 0                      | 0                    | 
ADVANCED_PAYMENT_ALLOCATION |
+    And Admin successfully approves the loan on "01 January 2024" with "1000" 
amount and expected disbursement date on "01 January 2024"
+    When Admin successfully disburse the loan on "01 January 2024" with "1000" 
EUR transaction amount
+    Then Loan Repayment schedule has 4 periods, with the following data for 
periods:
+      | Nr | Days | Date             | Paid date       | Balance of loan | 
Principal due | Interest | Fees | Penalties | Due   | Paid  | In advance | Late 
| Outstanding |
+      |    |      | 01 January 2024  |                 | 1000.0          |     
          |          | 0.0  |           | 0.0   | 0.0   |            |      |   
          |
+      | 1  | 0    | 01 January 2024  | 01 January 2024 | 750.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 0.0  
| 0.0         |
+      | 2  | 15   | 16 January 2024  |                 | 500.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+      | 3  | 15   | 31 January 2024  |                 | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+      | 4  | 15   | 15 February 2024 |                 | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid  | In 
advance | Late | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 0.0       | 1000.0 | 250.0 | 0.0     
   | 0.0  | 750.0       |
+    Then Loan Transactions tab has the following data:
+      | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
+      | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
+      | 01 January 2024  | Down Payment     | 250.0  | 250.0     | 0.0      | 
0.0  | 0.0       | 750.0        | false    |
+    When Admin sets the business date to "20 February 2024"
+    When Admin creates a Loan re-aging transaction with the following data:
+      | frequencyNumber | frequencyType | startDate     | numberOfInstallments 
|
+      | 1               | MONTHS        | 01 March 2024 | 3                    
|
+    Then Loan Repayment schedule has 7 periods, with the following data for 
periods:
+      | Nr | Days | Date             | Paid date        | Balance of loan | 
Principal due | Interest | Fees | Penalties | Due   | Paid  | In advance | Late 
| Outstanding |
+      |    |      | 01 January 2024  |                  | 1000.0          |    
           |          | 0.0  |           | 0.0   | 0.0   |            |      |  
           |
+      | 1  | 0    | 01 January 2024  | 01 January 2024  | 750.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 0.0  
| 0.0         |
+      | 2  | 15   | 16 January 2024  | 20 February 2024 | 750.0           | 
0.0           | 0.0      | 0.0  | 0.0       | 0.0   | 0.0   | 0.0        | 0.0  
| 0.0         |
+      | 3  | 15   | 31 January 2024  | 20 February 2024 | 750.0           | 
0.0           | 0.0      | 0.0  | 0.0       | 0.0   | 0.0   | 0.0        | 0.0  
| 0.0         |
+      | 4  | 15   | 15 February 2024 | 20 February 2024 | 750.0           | 
0.0           | 0.0      | 0.0  | 0.0       | 0.0   | 0.0   | 0.0        | 0.0  
| 0.0         |
+      | 5  | 15   | 01 March 2024    |                  | 500.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+      | 6  | 31   | 01 April 2024    |                  | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+      | 7  | 30   | 01 May 2024      |                  | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 0.0   | 0.0        | 0.0  
| 250.0       |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid  | In 
advance | Late | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 0.0       | 1000.0 | 250.0 | 0.0     
   | 0.0  | 750.0       |
+    Then Loan Transactions tab has the following data:
+      | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
+      | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
+      | 01 January 2024  | Down Payment     | 250.0  | 250.0     | 0.0      | 
0.0  | 0.0       | 750.0        | false    |
+      | 20 February 2024 | Re-age           | 750.0  | 750.0     | 0.0      | 
0.0  | 0.0       | 0.0          | false    |
+    When Admin sets the business date to "21 February 2024"
+    And Customer makes "AUTOPAY" repayment on "19 February 2024" with 800 EUR 
transaction amount
+    Then Loan status will be "OVERPAID"
+    And Loan has 50 overpaid amount
+    Then Loan Repayment schedule has 4 periods, with the following data for 
periods:
+      | Nr | Days | Date             | Paid date        | Balance of loan | 
Principal due | Interest | Fees | Penalties | Due   | Paid  | In advance | Late 
 | Outstanding |
+      |    |      | 01 January 2024  |                  | 1000.0          |    
           |          | 0.0  |           | 0.0   | 0.0   |            |       | 
            |
+      | 1  | 0    | 01 January 2024  | 01 January 2024  | 750.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 0.0  
 | 0.0         |
+      | 2  | 15   | 16 January 2024  | 19 February 2024 | 500.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
+      | 3  | 15   | 31 January 2024  | 19 February 2024 | 250.0           | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
+      | 4  | 15   | 15 February 2024 | 19 February 2024 | 0.0             | 
250.0         | 0.0      | 0.0  | 0.0       | 250.0 | 250.0 | 0.0        | 
250.0 | 0.0         |
+    Then Loan Repayment schedule has the following data in Total row:
+      | Principal due | Interest | Fees | Penalties | Due    | Paid   | In 
advance | Late  | Outstanding |
+      | 1000.0        | 0.0      | 0.0  | 0.0       | 1000.0 | 1000.0 | 0.0    
    | 750.0 | 0.0         |
+    Then Loan Transactions tab has the following data:
+      | Transaction date | Transaction Type | Amount | Principal | Interest | 
Fees | Penalties | Loan Balance | Reverted |
+      | 01 January 2024  | Disbursement     | 1000.0 | 0.0       | 0.0      | 
0.0  | 0.0       | 1000.0       | false    |
+      | 01 January 2024  | Down Payment     | 250.0  | 250.0     | 0.0      | 
0.0  | 0.0       | 750.0        | false    |
+      | 19 February 2024 | Repayment        | 800.0  | 750.0     | 0.0      | 
0.0  | 0.0       | 0.0          | false    |
+
+    When Admin makes Credit Balance Refund transaction on "21 February 2024" 
with 50 EUR transaction amount
+    Then Loan status will be "CLOSED_OBLIGATIONS_MET"
+    Then Loan has 0 outstanding amount

Reply via email to