Id: | 22175 |
Product: | finPOWER Connect |
Type: | NEW |
Version: | 6.00.01 |
Opened: | 15/05/2025 |
Closed: | 12/08/2025 |
Released: | 18/08/2025 |
Job: | J035615 |
![]() |
Interest in Advance Module (Beta) added
The ability to calculate and post Interest in advance has been added to finPOWER Connect as a beta module.
Whilst the method of calculating Interest has not changed, an Account Type configured as Interest in Advance will post the Interest transaction at the beginning of the interest period rather than the end. Interest will be adjusted either immediately, or at the end of the period if an 'unscheduled transaction' is posted; this is configurable in the Account Type.
An 'unscheduled transaction' is an ad-hoc transaction which wasn't forecasted in the schedule. For example, a customer-requested withdrawal.
'Unscheduled' transactions become 'scheduled' once an Interest Adjustment has been posted adjusting the interest for it. Likewise, Payment Arrangements and Restructures will also re-write what transactions are scheduled.
Account Type Settings
The following Account Type settings are available for any Account Class except for Deposit or Disbursement.
- Post Interest in Advance?
- Switches Interest in Advance functionality on / off.
- Adjust Basis
- Where an Interest adjustment is required, determines if this is posted as-at the date of the unscheduled transaction, or at the next period (which actually posts it on the last day of the interest period).
- Adjust for non-scheduled Fees and Journals
- Indicates if unscheduled Fees / Journals should adjust the Interest.
- Adjust for non-scheduled Payments?
- Indicates if unscheduled Payments should adjust the Interest.
- Adjust for non-scheduled Withdrawals?
- Indicates if unscheduled Withdrawals should adjust the Interest.
Interest Backdating does not support Reverse when configured for Interest in Advance. This is because the Reverse and Adjustment Interest logic clashes. Attempting to set an Account Type to Reverse, which has Interest in Advance enabled will result in an error when the Account Type is saved.
Note: If adjustments are switched off for a specific Element Type, a $0 Interest Adjustment transaction will be posted to record that no adjustment was required.
Scripting
A new Object Event Script type has been added to support Scripting of Interest in Advance functionality. If licenced, a Script Type of Object Events supports a new Object; AccountInterestInAdvance. Pasting the template Script Code shows the following supported events:
AccountProcessesForceScheduleUpdate
- This event will force the 'expected' schedule to be set at the end of processing an Account during Account Processes. This process will happen automatically if an Interest Adjustment transaction has been posted - but this allows it to be forced.
AddInterestAdjustmentToSchedule
- Runs when an Interest Adjustment is added to the schedule. Allows it to be overridden, or prevented entirely.
CalculateFullAdjustmentPeriod
- Runs after the adjustment Interest period has been recalculated, taking into consideration the new (unscheduled) transaction.
GetSavedSchedule
- Runs after the 'saved' schedule has been retrieved. Allows the saved schedule to be tweaked prior to identifying 'unscheduled' transactions.
SetUnscheduledTransaction
- Runs after the 'unscheduled' Transaction has been identified and allows it to be overridden.
Note: More information about each of these Script events is available in the template Script Code.
Additionally, the following method has been added to finAccountFunctions
:
Public Function UpdateInterestInAdvanceCurrentSchedule(account As finAccount,
accountCalcPk As Integer,
Optional scheduleXML As String = "",
Optional postPendingAdjustments As Boolean = True) As Boolean
This function is overloaded, and allows an AccountId
to be provided instead:
Public Function UpdateInterestInAdvanceCurrentSchedule(accountId As String,
Optional accountCalcPk As Integer = 0,
Optional scheduleXML As String = "",
Optional postPendingAdjustments As Boolean = True) As Boolean
This allows Scripts to force an update to the saved 'expected' schedule. This function optionally accepts an XML version of the schedule if the intention is to set it to something specific, otherwise it will assume the current Schedule for the Account.
Known Limitations
- Not all Summary Pages have been updated for the initial beta release of Interest in Advance. For example, the Interest Audit Block for Interest Adjustment transactions may not be very clear. They should be interpreted as a fully recalculated Interest period, rather than just the posted difference value.
- For the initial beta release, Account Types cannot be using Grace Days if Interest in Advance is enabled. Attempting to save an Account Type with both options checked will result in an error. Support for Grace Days will be added to a future release of finPOWER Connect.
Note: Interest in Advance is being released as Beta functionality - it should be tested thoroughly before a deployment into a production environment. It is also highly recommended that Interest in Advance Accounts are manually tracked to ensure accuracy while using the beta module.
The following Summary Page Standard Block has been added:
- Account_TransactionAuditSummaryInterestInAdvance
- Version: 1.00 (11/08/2025)
The following Summary Page Standard Block has been updated:
- Account_Interest2
- Version: 1.18 (16/07/2025)
The following built-in Summary Pages have been updated:
- SummaryPage2_AccountSchedule_ScheduleSummary
- Version: 2.02 (11/08/2025)
- SummaryPage2_AccountTransactions_TransactionSummary
- Version: 2.03 (11/08/2025)