We found some inconsistent behavior in het Subscription Billing module when putting Billing schedule lines on hold and when terminating them.

If all lines in a Billing Schedule have been put on hold, the header of the Billing Schedule will be put on hold as well. This is expected behavior (status of the header reflects the total status of the underlying lines) like the behavior with for example the sales order and its lines.

However, when all lines in a Billing Schedule are terminated (both when they are immediately terminated and when they are terminated after sending the last invoice) the status of the header stays Active. The termination of all parts does not lead to the termination of the header. This way, it is possible to have masses of so called "Active" Billing Schedules that contain no active lines at all.

So our request is to make the status of the header when all lines are terminated react to this fact and to terminate the header as a reaction to this fact, as it happens with the on hold status.

Needs Votes



Also, when a billing schedule is terminated using ‘Terminate’ button in the billing schedule header, it actually means that user wants to terminate the billing schedule as Billing schedule is longer to be used; and expects the status to change to ‘Terminated’ when all lines has been invoiced and terminated.

But in this case as well, billing schedule header status remains ‘Active’ - which in not correct.

Moreover, in this situation, there is no way a user can manually update the status of the header if the Billing schedule is longer to be used – This is because the ‘Terminate’ button is now disabled in the header action pane.

Category: Subscription Billing