whats the frequency of the letter e in:
q: implementing a pay-per-user business model introduction
im working on an application where organisations pay for each user they add to their environment. organisations have a credit/balance, and as long as the user is not removed, the organisation pays a small hourly fee per user. organisations can choose between recurring and one-time payments. an invoice will be made for every payment.
im trying to find the best way to implement this. so far, ive come up with two possible solutions:
option a
the first possible solution is to log every change of state in the system regarding users, payments and pricing.
when an organisation adds or removes a user, a log entry will be written. when a payment is being made, a log entry will be written. when the price changes, a log entry will be written. every relevant state will be recorded.
using these these logs, the application can calculate the credit/balance.
option b
the second possible solution is to implement a physical credit/balance. instead of logging everything, an hourly cron job will run that subtracts the fee per user from the organisations credit/balance.
this second option seems much simpler to me. it avoids making all kinds of complex calculations using multiple tables and records. ill probably need to log payments and stuff anyway, but im not using those logs to determine the credit/balance.
any thoughts? whats the best way to implement this kind of system?
edit
after considering @ewans answer, i do believe he brings up a good point. thats why im going with option a, or something that looks like option a.
heres a simplified db schema i created:

does this look like it could work? 

a: option a is far superior.
imagine your cron job crashes and doesnt run over a weekend. or you find a bug and its been calculating the price slightly wrong for ages. you would have no way to figure out the correct bills.
in any system like this you have to consider how you would check the results. so you need to be able to not only bill correctly, but go back and explain the bill calculation and prove it is correct.

a: have you considered something like a combination of the two? 
once per hour, compute the charge, and record everything that comprises that charge in a write-only table.   then once/month (or however long) an invoice can be generated off that data.  if theres any disputes or discrepancies, it should be relatively easy to track down.
this doesnt take the place of having good logs, which is what you would get in option a.

user
There are 231 "e"s in the text you provided.
assistant