This is done using Time Tracker. [[Module_-_Time_Tracker]] Time Tracker provides a means for staff to log their hours for projects.
The system can store billable and non-billable work. So when a report is done for a client at the end of the month it becomes very clear how many extra hours you have put into the project and not charged for.