A computer program product embodied on a non-transitory computer readable medium, comprising:
- computer code for determining, by a computer system, that a first billing plan associated with a telecommunications subscriber has changed to a second billing plan during a current billing cycle;
- computer code, responsive to determining that the first billing plan has changed to the second billing plan, for identifying, by the computer system, accumulated events of the current billing cycle that were rated using the first billing plan;
- computer code for rerating, by the computer system, the identified accumulated events using the second billing plan;
- computer code for identifying, by the computer system, one or more resource allowances corresponding to the telecommunications subscriber;
- computer code for updating, by the computer system, one or more counters indicating an available portion of the one or more resource allowances corresponding to the telecommunications subscriber, based on the rerating of the accumulated events;
- computer code for identifying, by the computer system, one or more open sessions associated with the telecommunications subscriber being executed during the rerating and that have not yet been applied to the one or more counters;
- computer code for identifying, by the computer system, at least one existing reservation allocating a portion of the one or more resource allowances to the one or more open sessions;
- computer code for determining, by the computer system, that the portion of the one or more resource allowances allocated by the at least one existing reservation is more than the available portion of the one or more resource allowances indicated by the updated one or more counters, and accordingly that the at least one existing reservation requires modification as a result of updating the one or more counters associated with the one or more resource allowance;
- and
- computer code, responsive to determining that the at least one existing reservation requires modification, for automatically requesting, by the computer system, authorization for at least one updated reservation that includes the required modification of the at least one existing reservation.