You can log Billable and Non-Billable time on the Internal Timesheet project.
This will still show in things like the comm reports (If it is billable). Additionally, it will show in the agent utilized time, Non-Billable vs Billable time reports and such as well.
I have added some of the fields that show in the other Projects' task layouts, such as the Unit Price and Discount Amount Value(Discounted Unit Price). We currently prefill these values from the Deal when we create the tasks from the line items in CRM. You can fill the values in, and any time logged against that task as Billable will use that amount to calculate the comm.
The calculation for billable time-logs in the commission report checks: If the task Discount Amount Value is null, then use task Unit Price, if task Unit Price is null, then use the Project's Discounted Amount Value, and if thats null then use the Projects Unit Price, else the rate is 0.
So if you do not put a rate on the task itself, it will fallback to the rates on the Project. This is the same for when associating a task to a project manually. if you don't specify the unit amounts it will use the projects' values.
Fields showing in internal timesheet project on task:
I would suggest jus editing the Internal - Company Timesheet project and adding a fallback Unit Price and Discounted Amount Value, which the reports can use incase some1 logs billable time without those unit rates being specified on the task.
Example of the task values being filled from a Deal:
Fallback values on the project itself:
The only exception to this would be SLA when we create the overage invoices. The hours logged in projects pulled into the comm reports will still the use the rates as per what I discussed above, whilst the invoice will use the Overage Rate (and if thats empty then the normal Unit Price on the Project).