The consumption-based notifications about balance shortage are done by the qjob.predict_deactivation_accs.cron_schedule job based on the following System Settings in the JCA:
1. A period (i.e. a number of the most recent days) to calculate the average consumption for, which is provided in the account.avg.usage.period
2. Next, the obtained average consumption is compared with the current account balance considering the account.minbalance
quota to get the expected value for the number of remaining active days.
For example, if the current balance is 100, the average consumption 12 per day and the account.minbalance is zero, the expectation is 8 days.
3. Now, the expectation is compared with a list of the notification periods provided via the account.notification.periods
If the value matches with any of the listed periods, the notification is sent to the appropriate user account.
4. You can customize the frequency of the job execution with the appropriate qjob.predict_deactivation_accs.cron_schedule
It is run on the 15th minute of every hour by default. Herewith, the notification is sent no more than once a day.
5. If needed, customize the appropriate billing_account_needs_refill_in_days email template
Now, your customers will be notified on the low balance based on their personal consumption level.