At present on savings products we have a fixed notion of withdrawal and annual fee (which are very common fees for some types of savings product). As part of this issue we want to replace this 'fixed nature' of these fees and replace with ability to associate a 'defined fee' with a savings product by default.
When creating the savings account application, any default fees with be associated with the new account and the end user will have the option (like they do in loans) to add/remove any charges they wish. Existing functionality around fees been applied to account on each withdrawal and annually need to be supported through the 'definition of the fee'.
So basically we are moving to same approach to fees as we do with loans whilst retaining at a minimum existing functionality for withdrawal and annual fees.
Defining fees for savings:
Need to be able to name the fee and indicate this is only for savings accounts
Need to be able to choose when the fee is applied to account
a) anytime (fee can be ad hocly applied to the savings account whenever the end users wishes)
b) on savings account event (fee is applied to account when a event occurs)
c) periodically (monthly / annually the fee is applied on a given date)
Need to be able to indicate wheter its a 'Flat amount' or '% Amount'
If a % Amount type is used, we should support min/max cap on the value also from (https://mifosforge.jira.com/browse/MIFOSX-437)
Also very important to take into account is our need to support https://mifosforge.jira.com/browse/MIFOSX-642 for loan accounts - it wont effect savings accounts of savings accounts fees though.