I've actually strongly considered writing an addon to WHMCS for this... Not the "I accept our terms part", that's good there, but the ability to
A> allow admins to have various terms (user agreement, AUP, per service terms, cancellation terms, etc), and require the user to agree to each of these...
B> Allow admins to actually modify said terms (obviously) inside of WHMCS
C> Allow the user's login to be checked each time. If their terms acceptance is out of date, then they need to re-accept before anything.
D> Allow for non payment of invoices (automatically) if the user hasn't accepted the updated terms. This could get ugly, but very good
This is just a thought in my head at this time, but it seems like a more effective way to get this done. Each time a user accepts the terms, their ip, time / date is recorded in the DB