We have a product that the customer pays based on the number of users. Suppose it costs 10$/mo/user and that the client has 10 users. That is, he pays 100$ per month for his 10 users. We want to offer a discount if he pays it anually, making it 1000$ for 1 year. However, the number of users may float every month, so how can we grant flexibility for the customer? We don't want him to only be able to have a maximum of 10 users. Suppose that on the 2nd month he has 5 additional users, totaling 15 users. Should we bill him for the 5 additional users? Or should we reduce time from his 1 year quota?
How about if we introduced a new currency, let's call it credits. Each credit is worth 1 user*mo. Using the previous example where he had 10 users, by paying anually, what he is doing is actually buying 120 credits. Now if he has 15 users, it would use 15 instead of 10 credits per month and his time would just end shorter. Is this an acceptable solution or is it too complicated?